BACK ..
DragonFly-1.0 RELEASED! 12 July 2004 ======================= (ftp://ftp.esat.net/mirrors/chlamydia.fs.ei.tum.de/pub/DragonFly/) One year after starting the project as a fork off the FreeBSD-4.x tree, the DragonFly Team is pleased to announce our 1.0 release! We've made remarkable progress in our first year. We have replaced nearly all of the core threading, process, interrupt, and network infrastructure with DragonFly native subsystems. We have our own MP-friendly slab allocator, a Light Weight Kernel Threading (LWKT) system that is separate from the dynamic userland scheduler, a fine-grained system timer abstraction for kernel use, a fully integrated light weight messaging system, and a core IPI (Inter Processor Interrupts) messaging system for inter-processor communications. We have managed to retain 4.x's vaunted stability throughout the development process, despite ripping out and replacing major subsystems, and we have a demonstratively superior coding model which is both UP (Uni-Processor) and MP (Multi-Processor) friendly and which is nearly as efficient on UP systems as the original 4.x UP-centric code is on UP systems. We have made excellent progress bringing in those pieces from FreeBSD, NetBSD, and OpenBSD that fit our model. For example, NEWBUS/BUS_DMA, the USB infrastructure, RCNG (next generation system startup infrastructure), and so forth. We have made an excellent start on reformulating the build and release infrastructure including an excellent new system installer which, while still in its infancy for the 1.0 release, has been coded in a manner that will allow us to greatly improve and expand its capabilities in coming months. We have done so much that it cannot all be listed here. Please check out the Diary for technical details. The two largest user-visible subsystems that still have major work pending are the userland threading and ports/packages subsystems. People will find that the DragonFly-1.0 release is still using the old 4.x pthreads model, and at the moment we are relying on the FreeBSD ports tree with DragonFly specific overrides for third party application support... about as severe a hack as it is possible to have. These two stop-gap items will be at the forefront of the work for the next year, along with a major move to start removing the BGL (Big Giant Lock, also known as the MP lock) from code inherited from 4.x, threading the VFS (Virtual File System) subsystem (the network subsystem is already threaded as of 1.0), and implementing asynchronously messaged system calls. And that is just the tip of the iceberg, for we will be achieving far more in the coming year!