Aleksey Bragin has held several roles in the ReactOS project since 2002, and is the current project Leader. ReactOS tries to build a novel operating system that is compatible with Windows (win32) drivers and applications.
My talk is going to provide a technical view of ReactOS - its architecture, kernel, drivers and subsystems, and a bit about project organization and code audits. In addition to this I'm going to publicly announce my work on creating a bootloader which is able to directly boot the Windows operating system. The talk will be concluded by a demonstration of the ReactOS system and a bootloader loading MS Windows.
Since the target audience are technically advanced people, I'm going to give them interesting information about implementation-details of the ReactOS operating system. As for expectations, I expect that visitors will enjoy the great FOSDEM event :-) .
The code audit started almost a year ago, and currently about 96% of the codebase has been audited with only the most complex things left to do. Occasionally a decision is made to rewrite the code instead of auditing it, because the original code was buggy.
Also, I would like to note that the ReactOS development team always pays attention to the code entering our repository, and a few developers review all commits coming into the tree, so it is not a kind of "audit finished, let's forget about it - the copyright laws and the patents".
I can't stress this enough: up to now, no suspicious or illegal code has been found during the audit. Buggy code - yes, this was either fixed or rewritten. Also, another part which is sometimes speculated about - that the remaining 3% of the unaudited codebase is illegal - this is completely wrong.
In fact, the audit should not be considered as an "emergency" measure, but as a continuous effort to improve the code quality and to ensure the legality. Also, the audit gave us a chance to think about the future development strategy and choose the best one.
Currently the only subsystem experiencing continuous improvement is the Win32-subsystem. Also ReactOS has an advantage - we do not need to worry about historical issues, and the Win32 subsystem is a good example of this: Win16-compatibility is completely absent, and thus code becomes better and more stable.
Qemu and VMWare products are the most commonly used tools for ReactOS development, however we do not ignore real hardware, and there are some developers who do not use any kind of virtualization and perform all tests on real hardware.
The world of [intellectual property rights] is just crazy, and even big companies suffer from this issue - an example is the iPhone situation between Apple and Cisco. But this is a law we must ensure we abide by, and not only ReactOS, but Linux, Samba, Wine, etc are also in a similar situation.
And when it comes to reverse engineering - it's also an issue. One side says that it's impossible to directly translate assembly code to a higher level language like C, and thus such a process can't be called copyright-violation. Another side says that this is a translation, and gives a good example with a book: if I translate a book from English to Russian, I can't claim authorship of the book.
Google Analytics shows access from Redmond, and certainly MSFT keeps an eye on us. But Microsoft developers will not be allowed to commit code to the ReactOS kernel, that's a rule defined by the code audit.
Mac OS X - this is a good example of how a commercial OS can be open source too.
Thank you for giving me an opportunity to express my opinion.
Additional links:
This interview is licensed under a Creative Commons Attribution 2.0 Belgium License.