In MemoriamIt cannot be emphasized enough that ReactOS is where it is today due to the tireless efforts of the people that make up the project. Over the course of the project developers have come and gone but they have all left a mark whether it be in their code or the memories of their interactions with those still with the project. Sadly in two cases these memories are all that we shall ever receive from them. Gé van Geldorp was one of the project’s earlier developers and was heavily involved in the development of the win32 subsystem. He also helped mentor many other developers that joined afterward and is fondly remembered for his willingness to help those just getting started in the project. Brandon Mark Turner was another developer in the earlier days of the project. He worked out a variety of components and was responsible for some of the initial work to make ReactOS buildable with Microsoft’s compiler toolchain. The 0.4.0 release is dedicated to their memory and we hope that its fruition will serve to show at least some degree of our immense gratitude for the effort they put into this project.
FeaturesHere we document some of the highlights that separate 0.4.0 from not just the 0.3.17 release but also the cumulative achievements that the 0.3.x series achieved.
First of course the bulletpoint shortlist for those of you who don't want to wade through my giant mountain of text.
- ext2 read/write and NTFS read support
- New explorer shell and theme support
- SerialATA support
- Sound support
- USB support
- VirtualBox and VirtualPC support
- Wireless networking
- CMake support for GCC and MSVC compilation
- Compilation times significantly improved
- GDB remote debugging interface for kernel debugging
- WinDBG support
Build ModernizationThose who have been with the project since its early days will likely shudder at recollecting the means by which ReactOS was compiled back then. The first attempt to normalize the situation was in the RBuild system, a custom build specification format based on XML that was supposed to make it easy for developers to add new files and modules to the project. While impressive for its time, it suffered from structural issues that not only introduced very subtle bugs but also prevented the project from using anything but GCC to compile ReactOS.
The solution to this was a migration to the CMake platform, an effort that took many months and saw countless issues fixed. The first formal release using the CMake-based build system was 0.3.15 and since then the modernized build system has allowed developers to use not only GCC but also Microsoft’s compiler and debugging suite to build and test ReactOS, an ability that was crucial to many of the features and improvements listed here today.