For a while now, I have been hearing about an open source operating system called ReactOS that is designed to be a Windows alternative. While there are lots of open source operating systems out there, the thing that makes this one different is that it is not a Linux build masquerading as Windows, but rather a Windows compatible operating system that has been built from the ground up.
Even though ReactOS has been around for a while, I had never bothered to take a serious look at it up until now. The first thing that caught my attention was the operating system’s tiny size. The ISO file that is used for installation is a mere 127MB in size. If you look the figure below, you can see the ReactOS ISO alongside a few Microsoft ISOs. The Windows ISOs in the screenshot are over 3GB each, and even the Microsoft Office ISO is over 2 GB.
For the purposes of trying out ReactOS, I created a Generation 2 Hyper-V VM. Generation 2 VMs perform better than first generation VMs but tend not to be compatible with as many operating systems. Since ReactOS is designed to be Windows compatible, I was curious as to whether I could install it within a second generation Hyper-V VM. Unfortunately, ReactOS did not seem to like the Generation 2 VM, so I resorted to Generation 1.
ReactOS installation: Looks familiar
The installation process reminded me a lot of installing Windows NT. For those of you who have been in IT for long enough to remember Windows NT, the image below will probably feel really familiar.
As I worked through the setup process, it quickly became apparent that ReactOS was not yet on par with Windows. For example, setup explicitly told me that ReactOS does not support NTFS volumes. The only supported file system is FAT.
After having me to set up my partition, ReactOS began copying operating system files. I found this process to be especially amusing because the process not only looked like Windows NT Setup, even the filenames were immediately recognizable. As you would probably expect from such a tiny operating system, the setup process went very quickly.
When I first decided to take ReactOS for a test drive, my hope had been that it would end up being an awesome operating system. I have no desire to replace Windows in my own organization, but I can definitely think of some uses for ReactOS. For example, I am constantly having to set up lab environments for various purposes. If I were able to use ReactOS in some of those environments, doing so would theoretically be quicker and less resource intensive than using Windows, plus I wouldn’t have to worry about licensing the operating system. Unfortunately, ReactOS just isn’t ready for prime time.
The ReactOS website is completely upfront about the project’s current state of being. The site explicitly states that the ReactOS code is currently an alpha build and that it has bugs and is not feature complete. As such, it would be unfair of me to try to hold it to the same standard as a commercial operating system. Even so, ReactOS was so buggy that I had trouble giving it a proper evaluation.
In order to explain the reasons for this, you have to understand a bit about my setup. I have several Hyper-V servers setup in another room. Typically when I need to set up a lab environment, I will RDP into one of these servers and then do whatever it is that I need to do.
A few problems
In the case of ReactOS, this approach just was not viable. Although I could RDP into Hyper-V and set up ReactOS, the operating system would not accept mouse input. Keyboard input was intermittent at best. If you look at the next image, for example, I could use the keyboard to open and navigate the Start menu, but I could not interact at all with the New Hardware Wizard.
Since there is a chance that perhaps ReactOS does not like my RDP connection to the Hyper-V server, I decided to install Hyper-V onto one of the Windows 10 desktops in my office and run ReactOS on that machine. This approach would eliminate the need for connecting to a remote Hyper-V server. Although that approach fixed the keyboard and mouse issue, the display looked really bad. Even at a high resolution, fonts were really tough to read, as shown below.
After some tinkering, I was able to fix the color problems, but I still could not get the fonts to display correctly. I suspect that if there were a way to manually install the Hyper-V integration services, it might fix the display problem.
In spite of all of the problems, I was able to spend quite a bit of time poking around in the operating system. I can honestly tell you that I felt as though I were using a native Windows OS, albeit an old one. All of the various dialog boxes and configuration options that I experimented with felt immediately familiar, although the OS felt kind of like a mashup of Windows XP and Windows 98.
Not quite ready for prime time
At this stage in the game, I cannot in good conscious recommend ReactOS for any sort of production use. Even so, the operating system does hold a lot of potential. I think that the main thing that the developers need to work on right now is driver issues. It would be nice to be able to use the mouse in an RDP session.
Once the developers manage to get the driver issues sorted out, I think that ReactOS will become a much more viable OS. Because of its tiny footprint, the OS is extremely fast and responsive and based on my own experiences it also seems to be stable. I am really looking forward to seeing what happens with ReactOS in the future.