Is ReactOS or WINE the more stable replacement for Windows XP? [closed]

As Windows XP is now out of support and any freshly discovered vulnerabilities will not be addressed, it's time to retire Windows XP from my Internet-connected computers. There's a lot of Windows-specific software installed on these machines, and that locks the machines into a binary-compatible environment.

More powerful machines could reasonably be "upgraded" to Windows Vista. However, netbooks and low-powered laptops and desktops that don't have a lot of memory or CPU capability won't survive with all the extra bloat of the more recent Microsoft OSes. I've already paid once for an operating system, so a free-as-in-beer operating system replacement of the OS will make retaining this low-end hardware viable.

As an example, one of the computers I'm concerned about is a EEE PC 1000H, which has a 80GB hard drive, 1GB of RAM and a 1.6GHz Atom N270.

From what I can tell, ReactOS and WINE provide code to each other to broaden and deepen their compatibility with Windows, so I presume that if a program will run under WINE, it will run under ReactOS, and vice versa. Even though "ReactOS 0.3.16 is still in alpha stage, meaning it is not feature-complete and is recommended only for evaluation and testing purposes", WINE has been around more than 20 years. As such, the attraction of (the idea of) ReactOS is that it just drops in and replaces WinXP, whereas a non-binary-compatible OS (such as a Linux variant running WINE) would require re-installation and re-configuration of the user software.

Is ReactOS a stable, functional replacement for Windows XP? I've had problems getting various bits of Windows software running happily out-of-the-box on WINE, so is using that just a matter of trying harder? To estimate the danger of inaction, what are the odds of a catastrophic security failure being revealed in Windows XP?

Feel free to create the ReactOS tag for me.


Solution 1:

No, ReactOS is not a viable replacement for Windows XP. It may never be, but it certainly isn't now, as of April 2014.

The primary area where ReactOS is lacking is in the very lowest levels of the operating system: the kernel. Device drivers in ReactOS, as well as the kernel's overall architecture, are greatly simplified (simplified = lacking features and support for basic stuff) compared to Windows XP, or even Windows 2000. With as few developers as there are to work on the project, I don't expect this to change any time soon.

Actually, Wine running on GNU/Linux with X11 is a better replacement for Windows XP than ReactOS is! You may question this logic, but stick with me here:

  • ReactOS will flat-out crash your system almost on a whim, for doing almost anything. It'll crash more often and more readily than Windows 95 or Windows 3.1.
  • By comparison, GNU/Linux is an extremely stable operating system on the whole, with well-tested, fully-featured infrastructure to support fast 2D and 3D graphics; robust networking; excellent multi-tasking and multi-processor scheduling; and world-class, advanced filesystem drivers. Comparing Xorg (the display server) on GNU/Linux to ReactOS, Xorg is orders of magnitude more stable, faster, more featureful, and can much better support the Wine API than can ReactOS's display subsystem.

  • ReactOS has a lot of grueling low-level reverse engineering work to do, before it can start to become a more stable, feature-complete OS. Reverse engineering work takes more time than forward engineering work, and since Linux is open source and Windows XP is not, almost all of the work that goes into it is forward engineering. So ReactOS has many fewer engineers working on it, and the work they have to do is much harder than the work Linux's engineers have to do.

  • ReactOS has the goal of eventually supporting the kernel driver infrastructure of Windows XP enough that drivers written for the Windows XP kernel can run unmodified on ReactOS. Let's assume they succeed 100% with this goal. Well, most manufacturers are going to stop supporting their drivers for Windows XP very soon, if they haven't already stopped supporting the hardware completely. So, what do you do if there's a security problem with one of the proprietary drivers you're running? In short, the ReactOS folks don't have the manpower to implement a bunch of open source drivers for common hardware on top of the NT kernel infrastructure, so they're hoping to leverage existing drivers -- a tactic that is not good news for the security-minded user.

You see, ReactOS would be fine if it had a modern, well-maintained kernel infrastructure where the drivers were stable, open source, and received continuous updates. But none of those things are true about ReactOS's drivers or kernel.

If you were to pick a project to invest time and/or money into to keep running Windows XP-only programs after XP's death, I'd say put your time/money behind the Wine project running on GNU/Linux, or even on the Mac, depending on your preference. They've done some amazing work in the past, and given the difficulty of their task, they still have a lot of people working on it (e.g. all the engineers at CodeWeavers), and they continue to make great progress with each incremental release.

Don't get me wrong. ReactOS is a great research project. But it will likely never be more than just that: a research project. Especially if you have security in mind. The absolute worst thing imaginable for someone conscious of security is stagnant software that is not receiving incremental bug fixes and updates. As a matter of fact, if you are running XP programs that are no long receiving updates, I'd say that alone undermines your security model, irrespective of what platform you run it on, whether it be XP itself, GNU/Linux/wine, or ReactOS!

Solution 2:

If you need windows-specific software those specs are just about adequate for windows 7. There are third-party tools (example via lifehacker) to produce lightweight installations.

If you need XP-specific software you may consider taking the machine offline, or running XP in a virtual machine on a lightweight linux host (my option).

Windows 7 also has "XP mode" but that is also no longer supported (it could well still be better than running XP). This is basically XP in a virtual machine - a DIY option can be configured to be more secure (in terms of booting from a known clean state each time you use it, for example).

Wine on a (lightweight) linux may be an option as in your other (very good) answer. I've not found Wine to help me much, given some of the windows- and XP- specific software I use, and have opted for an XP VM under linux for all my windows needs, rather than running some under a VM and some under wine.