Slashdot is powered by your submissions, so send in your scoop


Forgot your password?

ReactOS Being Rewritten, Gets Wine Infusion 387

xlotlu writes "ReactOS was meant as a free and open-source operating system, binary-compatible with Microsoft Windows. But after 11 years in development it never reached a satisfactory level of usability. Due to lack of developers, reimplementing the Win32 subsystem proved to be a much too complex task, holding the project back. Given the deficiencies of the current implementation, developer Aleksey Bragin decided to rewrite it from scratch, drawing heavily from the Wine project. Bragin's announcement on the ReactOS mailing list makes a compelling argument for this decision."
This discussion has been archived. No new comments can be posted.

ReactOS Being Rewritten, Gets Wine Infusion

Comments Filter:
  • Misleading summary (Score:5, Interesting)

    by Fnkmaster ( 89084 ) on Monday January 18, 2010 @04:25PM (#30812032)

    If you read the actual post, what this guy is doing makes a lot of sense. He's not re-writing ReactOS from scratch, he's just taking the parts of ReactOS that have worked out reasonably well (the kernel, bootloader, etc.) and tossing the stuff that hasn't worked out so well (the Win32 API subsystem). It just so happens that another project, WINE, did a really impressive job at getting that Win32 API layer implemented, and rather than maintaining two completely independent versions of it, piggybacking off the WINE work should make ReactOS usable relatively soon, and able to run a large number of existing Win32 applications.

    Whether you think ReactOS is a sensible project or not, clearly some people think a complete, Open Source, Windows-compatible OS has some real value, and kudos to them for figuring out how to make that happen, or at least getting very close.

  • Re:No interest (Score:4, Interesting)

    by Imagix ( 695350 ) on Monday January 18, 2010 @04:28PM (#30812088)
    Perhaps because one does not wish to engage in copyright infringement?
  • by tepples ( 727027 ) <{tepples} {at} {}> on Monday January 18, 2010 @04:40PM (#30812252) Homepage Journal

    I'll probably get modded down for this, but if you want to run Win32 binaries, run Windows.

    What version of Windows? The one that comes preinstalled on most PCs nowadays, or the one that Microsoft still sells? The last time I read the front page of, the project's mission was to clone Windows XP and Windows Server 2003 and specifically their device driver environment. (Windows Vista and Windows 7 have a different driver model.) Then you get to the issue where a retail copy of Windows for use in Parallels Desktop is no cheaper than a Wii-size Acer Aspire Revo PC with preinstalled Windows for use in KVM Switch.

  • by starbugs ( 1670420 ) on Monday January 18, 2010 @05:25PM (#30812778)

    Clearly some people think a complete, Open Source, Windows-compatible OS has some real value.

    I use ReactOS to test some MinGW [] - based programs I write for windows.
    I find the EULA for Windows unacceptable [].
    But I still want my software to run on it.

  • by yanqui ( 1711888 ) on Monday January 18, 2010 @06:14PM (#30813366)
    Many things in Unix were designed correctly to begin with, Windows was not. Linux was never intended to be a binary replacement for any Unix based OS, but rather it was itself a Unix based OS. Trying to achieve binary compatibility with Windows (chasing a moving target) is not only unlikely to succeed, but if it does you still have Windows. It's like trying to create an open source Yugo. Maybe it can be done... maybe it can't... but even if you succeed, you've only reimplimented a bad idea. Even if you win, you still fail.
  • Re:Rewritten? (Score:4, Interesting)

    by Seth Kriticos ( 1227934 ) on Monday January 18, 2010 @06:41PM (#30813720)

    Congratulation, you managed to write a multi level wrong post, but let me elaborate a bit on your claims..

    Let's start with '..Linux fanbois..': obviously you did not realize, but most folks here are not really 'fanbois'. They just like to work with Linux and are very agitated that they are force to use Windows at one or the other place. That leads to statements that might sound a bit exaggerated, but the environment is forcing many to do this, it's a natural defence mechanism, not fanboism, which has more characteristics of a cult.

    '..Linus .. grip .. saves Linux": Linux is a great guy and he moved a lot of things in the OS world, but if he would be miraculously gone, Linux would not loose much of it's traction. It would restructure, but it would not go away, or even slow down for that matter - maybe even gain traction - no one knows for sure. A lot of folks have major interest in that project already (Among them the companies that build every high end computer cluster on this planet. Also some that build the most complex electronics on this planet or do the most known web technologies on the planet.. and many more including a lot of hardware vendors).

    '..too many sub-specialized distributions.': Linux is about freedom. Freedom to do whatever the developers want, and they want many different things. There are good mainstream distros, good live and forensic distros, good learning and do-it-yourself distros, music and movie editing distros and the heck knows what else. But most of them are very useful to *someone*, and that's why they are developed, and done the way they are. Why should a music enthusiast work on a forensic distro? That's not what freedom is about.

    '.. focused ..all 3 areas.. more BS ..': I assure you, there are much more 'areas', as described in the paragraph above, but leaving that aside, why on earth would it be good to completely unify the whole platform and make it a crufty beast that can do a lot of things bad and nothing really good?? Why would it be good if Linux/OSS would merge into a monoculture?? It would increase attack surface in both, political and technical sense, rob a lot of freedom, , and make a lot of people very sad pandas. Competition and diversity is good. Open interfaces are the things that matter. To be able to put together the puzzle of components the way you'd like them is power. I personally don't really want to 'Imagine' your proposal. It's a good description of a nightmare.

    '..MS would ditch their kernel and slap their OS on top of .. Linux..': Now, which planet are you from again? I mean, most of us are no lawyers, but there is a little difference between BSD license and GNU license. Neither of the mentioned companies would touch GNU licensed software even with a nine meter (long) stick, because they can't claim the result for themselves, and only themselves. It's written that they have to give back to what they have taken from, which fundamentally collides with their philosophy. Anyway, Microsoft is not in the business of making compatible, good software. They are in the business of screwing over everyone by locking them into their platform (preferably without noticing). Most of that is done by marketing and market subverting.

    '..would have a better chance to finally shut Apple up..': You really think MSFT is concerned much about Apple? Well, sorry to disappoint you, but they are not. They can categorize Apple and fight with them on similar principles. Sure, Apple is inconvenient some times, but they are not aiming to shut them down. And Apple is probably useful in anti-trust suits '..but we are not the only ones here'. They can't get a grip on Linux though, and they are scared like shit about that. Linux is not something they can stop. It's not going away. It's already much superior for a very large set of tasks.. The only thing they managed is to keep it at some distance from technically low potential folks. They are loosing ground though, which is why they are getting so desperate.

    Anyway, you get the most naive Slashdot post of the day award! Gratz!

    (And my sincere condolences for being you.)

  • Re:Ummm... (Score:3, Interesting)

    by Tetsujin ( 103070 ) on Monday January 18, 2010 @07:25PM (#30814188) Homepage Journal

    Because some people actaully want Windows without the Microsoft licensing. Wine running on *nix or Mac will always be a different experience. Filesystems are laied out differently, permissions work differently, desktops integration works differently, the UI of the system around the windows apps is different.

    Any of that could be handled by a motivated distribution maintainer. That is to say it would be quite possible (and not prohibitively difficult) to build a Linux distro around Wine that would act very much like Windows. Don't like Unix permissions? Well, modern Linux has ACLs much like the ones on Windows. Don't like the Linux UIs in which Wine would ordinarily run? Don't use 'em. Don't like the filesystem layout? Don't use it. There is nothing about Linux or Unix that requires you to use that traditional hierarchy. Not even "init" has to be in its traditional location, you can specify, in your bootloader, what executable should be run on boot-up.

    Where you'd start to see a real difference between an OS designed as a Windows clone and an ordinary OS repurposed to just run Wine all the time, I think, would be the infrastructure. A real Windows clone would be able (most likely) to run Windows hardware drivers, for instance, and its display and audio systems would be modeled on those of Windows. This could have real advantages, especially if what you're running primarily is Windows software.

  • Re:Ummm... (Score:3, Interesting)

    by MrNemesis ( 587188 ) on Monday January 18, 2010 @10:16PM (#30815394) Homepage Journal

    Yes they exist and they work in a similar fashion to UNIX mounts... but they're not universally supported, unlike every UNIX filesystem I've ever used. Most people using mount points won't run into the flaws, but there are a whole bunch of utilities that have had a spotted history with them; for instance in NT 5.x, the recycle bin is completely unaware of mount points, so host soft-delete files on a mounted NTFS volume and they become hard deleted. Similarly, before we switched to a SAN we used DAS on a bunch of windows 2000 file servers, and cacls would completely refuse to work on mount points. Microsoft's solution? Assign the volume a temporary drive letter. We also had problems (now fixed) with enterprise vault not obeying policy when running off mount points.

    So whilst the capability is technically there, it's been far from universally supported in the past, with the upshot that conservative IT policies mean that volume mount points won't be used again in the next decade, and alot of the people we do business with won't support anything involving something that doesn't fit into the blinkered "one partition, one alphabetic character" worldview. At least with UNIX you *know* that everything mounted at /some/random/path/wot_was_generated_from_a_script will behave exactly the same as /home, because there's only one way to mount filesystems and it's been that way since forever, and didn't have >26 support tacked on as an afterthought when it became a "serious" OS.

    (As an aside, what happens in *nix when you have more than 26 logical discs in a single server? /dev/sdx, sdy, sdz, sd...?)

  • Re:Ummm... (Score:3, Interesting)

    by deniable ( 76198 ) on Monday January 18, 2010 @10:40PM (#30815524)

    Anything telnet can do, SSH/OpenSSH/PuTTY can do better.

    Telnet gets used for things other than remote terminal sessions. Given that it used to be on every Windows box from NT 3.51 on, it was often used as a poor man's netcat. How do you do that with ssh, and how do you do it with a clean install of Windows?

  • Re:Ummm... (Score:3, Interesting)

    by complete loony ( 663508 ) <> on Monday January 18, 2010 @10:42PM (#30815540)
    ReactOS used to "draw heavily from wine". However at the time ReactOS started wine wasn't as well structured or functionally complete as it is today. This lead to ReactOS needing to heavily modify or rewrite huge sections of wine's codebase. This project is a restart of that code with a much cleaner separation now that both projects have matured somewhat.
  • Re:Ummm... (Score:5, Interesting)

    by cbhacking ( 979169 ) <been_out_cruisin ...> on Monday January 18, 2010 @10:48PM (#30815574) Homepage Journal

    Why has not one of the highly-rated comments addressed the most important point thus far? One of the critical features of ReactOS is not that it runs Win32 programs (which most operating systems can do to a reasonable degree via wine) but that it runs NT drivers. This is a huge deal: you get full hardware compatibility with anything that has a driver for Windows, which means pretty nearly anything at all. Consider, for example, ndiswrapper (Linux kernel module that provides an NT5 Network Driver Interface for the Linux kernel); with ndiswrapper you can use most network devices in Linux even if there's no native driver, because you can just download a driver intended for XP and it works fine.

    Now, take that same idea, and extend it to every driver, 100% compatiblity. It's not Linux underneath, of course - the driver stack has to be engineered for exact NT compatibility and who knows where they'll get their scheduler or memory manager from - but it's a completely open-source operating system that can run any Win32 program or any NT driver. In fact, if they implement the alternate subsystems (Win32 is a subsystem on top of NT, but there are others) you could get (for example) a Linux-compatible API on top of NT and run the best of both worlds (there actually already is a POSIX subsystem for NT, which I use to run bash, ssh, subversion, and more from within Win7).

  • Re:Rewritten? (Score:3, Interesting)

    by petermgreen ( 876956 ) <> on Monday January 18, 2010 @11:13PM (#30815694) Homepage

    but you certainly can't run any kind of OS on a PIC.
    Depends which pic and on your deinfition of OS ;).

    There's two kinds of embedded platforms: those with an OS, and those without.
    IMO it's more of a continum. going from low end to high end

    * chips (e.g. the really small pics) with so little resources that you are almost certain to be programming them in assembler and you are going to be counting bytes of that precious data memory.
    * chips (e.g. the larger 8-bit pics) that are big enough to handle a reasonble set of libraries for C or similar, a mainloop that calls a number of peices of state machine based code repeatedly (can be considered a crude form of cooperative multitasking) and some interrupts for time criticial stuff. There are sometimes very primitive "operating systems" used on such chips (look up tinyos sometime).
    * chips (e.g. the 16/32-bit pics and many arm based microcontrollers) that have the cabability to reasonably handle a preemptive multitasked environment if desired but don't have the memory needed for even a stripped down unix-like system.
    * systems (while it varies this is about the point where we switch from single chips to a setup with a seperate processor, ram, flash etc) that have the memory for a stripped down unix-like system but lack a mmu (not fun to debug a system with a complex os and no memory protection.
    * systems with a mmu and the ram/storage to run a very stripped down unix-like system.
    * systems that can run a fully featured operating system with software and libraries comparable to those used on the desktop.

  • Re:Ummm... (Score:3, Interesting)

    by SanityInAnarchy ( 655584 ) <> on Tuesday January 19, 2010 @01:56AM (#30816414) Journal

    Is putty more secure than Windows telnet while doing this?

Whenever people agree with me, I always think I must be wrong. - Oscar Wilde