The ReactOS project has seen some major progress during 2008. The project, which aims to create a Windows NT-compatible operating system, has published a ‘year-in-review‘ article concerning 2008, detailing the various area of work. It provides some interesting insights into the project’s development.
Last year was a busy one for ReactOS. After the kernel rewrite, which allowed them to stabilise the kernel, the gained the ability to direct attention towards elements slightly higher up the software stack, such as the graphics subsystem and filesystem support.
ReactOS’ graphics subsystem was old, full of hacks, and in dire need of attention. Several ReactOS developers have therefore spent time on what is essentially a rewrite of the Win32 subsystem. Lots of work needed to be done on this subsystem anyway; it had internal data and architecture structures that aren’t present in the Windows implementation, and those need to be removed. In addition, several interdependency issues in the Win32 subsystem need to be addressed.
Work is also being done on ReactX, the project’s DirectX replacement. ReactX is a very daunting and difficult effort, and as such, they put several interim solutions in place, such using Wine code to translate DirectX calls into OpenGL calls, which ReactOS already supports. They are also working on getting the actual DirectX runtime working on ReactOS, and they have already managed some basic hardware accelerated 2D rendering.
The Filesystem Runtime Library and the Common Cache implementation also need to be reworked. Currently, FAT32 is implemented as a sort of hack in ReactOS, since the two mentioned components aren’t very mature. CC functionality needs to be separated from the memory manager; the CC is not a separate component, but merely exposes functionality within the memory manager. By fixing up the memory manager, the team could start working on the CC elements. Work on CC is progressing, but large strides have already been made. The FsRtl wasn’t present during the earlier years of ReactOS, but it’s coming along nicely in the present.
Efforts to port ReactOS to the ARM anc x64 architectures are also under way, with both projects being able to initialise the first few parts of the operating system.
While I personally believe that ReactOS will always be chasing a moving target, with the target driving a Ferrari and the ReactOS team chasing it on a tricycle with two wheels, one can do nothing but admire the efforts and pogress the project is constantly making. Let’s hope 2009 will be as productive for them as 2008 has been.