ReactOS, replacement for Microsoft Windows
ReactOS is an effort to create a Free Software replacement for Microsoft Windows(TM) that is compatible with existing hardware and software!
ReactOS 0.3.10 is still in under heavy development (alpha stage) and is not ready for everyday use.
You can help the ReactOS project by doing word-of-mouth advertising, donate some money to the ReactOS Foundation or spend some time on the ReactOS project and contribute in one of various ways (patch, translation, community forum, etc.).
What is ReactOS?
ReactOS is a free and open-source operating system based on the Windows NT architecture design, providing support for existing applications and drivers and an alternative to the current dominant consumer and server operating systems.
Why re-implement NT?
First of all, the ‘Windows’ the general public knows is actually just one part of the modern Windows NT operating system. They usually mean the Win32 subsystem, a layer that sits upon the NT kernel, providing the user and application interface.
“NT is still around, known as XP and Vista”
Most people think of ‘NT’ as ‘WinNT 4′, while in reality the term NT is equal to the NT series, which ranges from version 3 over NT5 (2000, XP, 2003) to NT6 (Vista).
The NT architecture was designed by a team lead by David Cutler, a former lead developer of VMS. It took them more than 4 years to combine the best of UNIX, VMS and OS/2 and create the NT architecture.
What about UNIX?
MacOS X, Linux, BSD flavors and other UNIX derivates share a common heritage based on a more than three decades old design of a simple basic operating system, that has evolved over time into a complex structure.
Modern incarnations like Mac OS X put a fancy graphical user interface on top of UNIX, to hide system details and focus mainly for beginners and likely advanced users are left out in the rain. In contrast, various Linux and BSD flavors have been put together originally for server usage and are therefore very console centric. Most advanced features cannot be accessed from the basic graphical user interface. Almost all UNIX flavors retain some of the original design flaws and binary compatibility between various versions is usually non-existent.
In theory there are a few UNIX standards like POSIX but in practice the standards are old and cover only the basic operating system and the terminal environment. Other standards such as the Linux Standard Base are often not implemented faithfully. As there is no user interface standard nor a standard API, most people still have to use command line applications or fight through the GUI mess. Many UNIX derivates use the de-facto standard X-Window system for graphical output, which might well possess one of the worst designs in software history.
Still, modern UNIX derivates are trying to catch up with recent innovations and some of them already possess important features like access control list support.
In contrast to UNIX, ReactOS was designed for people familiar and comfortable with the Windows environment. Everything can be done through the well known Win32 user interface and advanced users are free to automate tasks with scripts or use the console.
“Change your OS, not your software!”
Actually, the ReactOS project reimplements a state-of-the-art and open NT alike operating system based on the NT architecture-design. It comes of course with a WIN32 subsystem, NT driver compatibility and a handful of useful applications and tools.
ReactOS combines the power and strengths of the NT kernel – which is well known for its extensibility, portability, reliability, robustness, performance and compatibility â€“ with Win32 compatibility.
Despite statements to the contrary, NT is secure by design. It was the first mainstream operating system with a proper implementation of a very flexible security model based on access control lists.
Recent NT based operating system from Redmond, especially XP, got bad reputation for its weak default security-settings; mainly, to simplify the transition from Win9x for both users and legacy applications. This decision alone invalidated many of the security features in NT. ReactOS will incorporate proper default security settings.
ReactOS has been designed for high security; it doesn’t share common security flaws with other operating system.
On a closer view, real computer viruses (which are normal applications) are not widespread anymore. Most bad software are scripts that target common network software like browsers and email applications and software that had inbuilt scripting support like various Office products.
Obviously, more widespread systems with a large user base are more likely to be attacked by bad software writers than minor systems like Macintosh and Linux.
In short, ReactOS is designed to be powerful and lightweight. You can think of the term “lightweight” in the good old fashion of Win95, a consistent user interface and small bundle of very common and useful tools. In contrast, ReactOS offers a lot more, an up-to-date experience as well as built from scratch on a rock solid NT core.
ReactOS is free software, the source code of the whole system is available for free and it is licensed under the GNU GPL license.
“‘Free’ as in ‘free speech’ and as in ‘free beer’”
ReactOS does not phone home or track your usage, nor does it contain spy-software. As a matter of fact, other well known competitors are known for such practices.
Life with other operating systems tends to be a love-hate relationship, with most people falling strongly on one side or the other. The ReactOS project has a great community that is well appreciated.
“Open your windows to freedom”
In fact, ReactOS has been written from scratch since 1996, a rock solid NT re-implementation, and therefore a reliable and robust operating system for tasks ranging from embedded micro computer to personal computer, workstations to server cluster, mainframes and super computers.
ReactOS incorporates many design decisions from other operating system families like UNIX, VMS, OS/2 and of course NT and is meant as ‘the’ new platform that serves all.
ReactOS is lightweight and fast and will outperform other bloated operating system in several ways.
“ReactOS â€“ the XP successor people asked for”
The ReactOS operating system design is able to provide portability across families of processors, such as Intel x86 and even provide portability across different processor architectures, such as CISC and RISC.
There is only one single OS core, the kernel; porting ReactOS to other architectures involves ‘only’ the hardware abstraction layer, the lowest part that talks directly with the platform hardware.
ReactOS is flexible and extensible by design. ReactOS is probably one of the most versatile operating system platform, especially thanks to its NT kernel and the open source nature.
ReactOS can be extended with the help of so called “subsystems” to provide support for legacy applications from other platforms. For example, a POSIX subsystem would provide compatibility layer with various flavors of UNIX applications.
ReactOS is not an object-oriented system in the strictest sense of the term, but it does use objects to represent internal system resources. Software objects are a combination of computer instructions and data that model the behavior of things, real or imagined, in the world.
|“UNIX file metaphor is sooooo 1970s”|
UNIX operating system adhere to the file metaphor, and devices such as printers, storage devices, keyboards, and monitors all appear as ordinary files to both programmers and regular users. This simplifies many routine tasks, and is a key component in the extensibility of the system. The file metaphor has several downsides and it is known as a bottleneck of UNIX like operating systems.
ReactOS capitalizes on this metaphor and expands it. It uses an object metaphor that is pervasive throughout the architecture of the system. Not only are all of the things in the UNIX file metaphor viewed as objects by ReactOS, but so are things such as processes and threads, shared memory segments, the global registry database and even access rights.
Please bear in mind that ReactOS 0.3.10 is still in alpha stage and is not recommended for everyday use.