I commend their dedication, but I don't quite understand why they do it. Is it fun to develop? What do the developers get from it?
I understand what the Linux kernel developers get (it touches the lives of almost every living human being) or the BSD folks do (it's a exquisitely well built OS) or the Haiku ones (it's a really cool OS), but reimplementing Windows, with all the cruft needed to be binary compatible is an exercise the joys of which completely elude me.
For those who work on it, it probably is just for fun.
But Windows is, at its core, not a completely bad OS. I heard many parts of it are actually pretty well-engineered. The Windows NT kernel has pluggable subsystems, one of which is for Windows applications, but there used to be also a POSIX layer. In the kernel, almost everything is an object and can have ACLs (security descriptors). You actually do have something like Linux' /dev and /proc, it's just not exposed to the shell (you can sometimes see hard drive device paths, not legacy drive letters like C:, shine through the cracks, but mostly when there are boot problems).
Even in the shell, there are a few neat ideas. Everything is a (COM) object, and has interfaces. Applications can embed parts of the shell, e.g. explorer windows, and they can also contribute back parts, like custom places and icon types.
Of course there are layers and layers of cruft in Windows, but funnily, the older parts seem to be better engineered (especially taking to account their age, and looking over things like legacy 8.3 module names). Its a bit telling that the new Windows Runtime is actually a new version of native COM underneath, and not .NET CLR (but both are fully brigded).
I think the hardest part to emulate for ReactOS is not the old cruft, but the modern cruft. WPF for example does have a few nice ideas, but its insanely huge and complicated. And a typical windows system has like 4 different, incompatible .NET runtime libraries (.NET, Silverlight, WPF, WinRT). This is one thing I hope MS will get sorted out in the future.
Core Windows is, still, Windows NT, which was designed by Dave Cutler, who designed a number of OSes for DEC, which changed its name to Digital before it was bought by Compaq, which then merged with HP, which is its own can of worms.
Cutler designed RSX-11M, VMS, and VAXELN (a real-time OS for the VAX), which are or were all serious OSes. VMS in specific was a serious competitor to Unix; in the form of OpenVMS, running on Alpha and Itanium, it still exists.
So Windows NT is a foundation made by someone who knows OSes and OS design; in many markets (not all, not that I think my parenthetical will stop people from "correcting" me) it's the last OS family not based on a fundamentally Unix-like foundation. Having an Open Source version of that is interesting for historical reasons, if nothing else, and there's something to be said for hybrid vigor if some bright spark figures a way to port a few concepts to the rest of the OS world.
In between his work on VMS and VAXELN, and leaving for Microsoft, he was also responsible for a system called "Mica" which was intended to be a micro kernel system which supported both a Unix and VMS layer on the system, and was written in an in-house Pascal-like language called Pillar. FWIW, NT was inspired by some of the ideas they had while designing Mica.
I would agree, not read my copy for a very long time but it's very enjoyable. I think I read it at around the same time as I last read "The Soul of a New Machine" by Tracy Kidder, also a worthwhile read for some of the younger HN'ers who missed out on that era.
As surprising as this may sound, it seems OpenVMS is still under active development, even though not by HP. Even an x86-based version is on their roadmap.
The core Windows OS is actually very cool, IMO. Pity it's closed source. Some time ago, I did some research on Windows 2000 and wrote a lot of it down on the Windows 2000 Wikipedia article. I later split it to the "Architecture of Windows 2000", which interestingly (and correctly) has been renamed to "Architecture of Windows NT" [1]
What you are referring to, however, is in user mode, in the environment subsystem. There is actually a few subsystems - the one you are talking about is the POSIX subsystem. I believe it's actually still there in the latest versions (might be wrong about that).
POSIX was not. It's call SUA and I still enable it, and on w7 run Gentoo bootstrap under it. It works well enough and I even see sshd run as a service process.
Thanks, I didn't know that SUA still uses a subsystem that's different from the Win32 subsystem. However, it's a different one (Interix) from the old POSIX subsystem, as far as I know. Or does anyone know whether it shares or inherits some code from it?
No of course Windows is not bad by itself. Only people who haven't looked closely enough would say that. Windows OS just like Linux has its dark sides but also its bright sides where it shines. The Windows kernel runs extremly well on ARM Devices like Windows Phone as well.
The POSIX implementation in Windows was a shim to satisfy requirements about "POSIX compliance" when selling Windows NT. Even Microsoft tells it's not really useful:
http://msdn.microsoft.com/de-de/library/y23kc048.aspx
> WPF for example does have a few nice ideas, but its insanely huge and complicated.
I have not written Windows code in a while, and what code I touched was C/Win32 and C++/MFC. But my impression with Microsoft software has been that they seem to like doing things in an unnecessarily complicated manner, then realize it does not really work out all that well, then reinvent the wheel, but make it even more complicated than whatever they tried to replace.
‘Reverse engineering’ must be a joy all to itself.
And it’s hugely important because it lets old software live on. Think of 90ies games for example, so often made for the DOS/Windows platform. Projects like ScummVM, Dosbox and Wine make that accessible right now. React takes that a step further still I imagine.
Helped a relative set up a new computer this year. Found that a program they enjoyed using dated back to 3.11 or something. Only noticed this because it refused to run on 64-bit Windows 8...
Yes, but a modern computer is certainly capable of running that program perfectly under a virtual machine running the actual matching release of Windows.
Heck... I once started porting Hercules, the mainframe emulator, so I could have a fully functional 370 series mainframe in my Nokia E62 phone.
Yes, i would be the one do set up the VM, install Windows within it etc. But after that they still would need to fire up that VM each time they wanted to use that program.
You can make Windows inside the VM run the program on boot and then put a desktop shortcut on the host that launches the VM. That's what I do for Office.
Personally, I get a lot from knowing FreeDos exists. It makes things like DosBox much more compelling.
I look at this project in the same light, before too long you'll be able to download WinBox and play all your favorite old Windows Games or use some long forgotten old productivity tool.
This is amazing work that will ensure we can keep alive our culture and history in a meaningful way.
The interview series were part of the relaunch of the ReactOS website (2005) and community iniatives (2006). I know it first hand, I was the interviewer. OSNews was not involved, but they were open minded amd supportive to ReactOS - often featured news articles - thanks.
Looking at those screenshots made me a bit nostalgic for the old windows 2000 UI. It wasn't exactly showy, but from a UX experience it was great (clean lines, nice spacing, easy to find things, responsive, consistent). Every UI Microsoft has done since then has sort of been a regression, even if not a terrible one. Windows XP looked like a cheap toy, Aero was pretty but their insistence on killing menus and blending UI elements with the title bar was weird, and metro is awkward on a desktop. I know you can still go back to "classic" mode, but it's definitely a second class citizen at this point.
I'm generally with you, but preferred XP with the Classic theme, and stupid sidebars disabled. It had a quite a few improvements over 2k.
I miss real menus and configurable tool bars. I've had to piece together a Frankenstien of gnome-classic and xfce4 tools to almost approximate how good XP was 15 years ago. And some parts of it still weren't as good as the classic Mac OS long before that.
I use Windows 7 at work, and I have to admit it has kind of grown on me. For once, Microsoft got a couple of things right. Aero Snap is great, and the search field in the start menu is very useful, too.
But otherwise, I agree, they had a good thing going, and then they went and ruined it. I am not opposed to change, but if it is change just for the sake of change, I do not see the point.
Why is it "second class citizen"? I've used it exclusively with Win7 and it works fine (granted it does need 7 Taskbar Tweaker for best results..). I have never ever liked the Aero Peek feature of Win7: it invariably adds extra steps and mouse work to the simple task of switching between apps for no good reason (no, seeing a mini thumbnail of an app I already know is running does not make anything clearer or better).
ReactOS, I will be happy to go there if I ever get the chance from a compatibility standpoint.
I guess it's subjective, but in windows 7 the aesthetics are weird. The taskbar looks funny, a lot of the UI dialogs were obviously not designed with that styling in mind, and so on. In windows 8 they killed the theme completely. (Although once you get rid of metro, I actually like the windows 8 theme quite a bit).
As someone who often trains people in places in the world with low levels of IT literacy - where Windows is by far the dominant platform (very little chance of most people affording Mac or being able to pick up Linux). I've always thought ReactOS had a useful ability to bridge the problem of people a) not being able to afford new versions of Windows b) Even when they do, often ending up with counterfeit versions of it.
Looks good at first glance, but there's something about the icons that compared to the real Windows ones doesn't seem quite right; I understand there's copyright issues with using the Windows icons exactly, but these icons have a very "Linux-ish" appearance to them, for lack of a better term.
I never heard about reactos before. Am I right to assume that this is Windows 98 as Open Source project? Am I right to assume that a lot of people who hate that XP is not maintaned anymore will switch to something like that instead of Linux or BSD? If that's true I have to sit in a corner for a while crying my heart out...
http://community.reactos.org/index.php/news/enjoy-the-new-re...