Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
Windows Operating Systems Software Linux

Will Linux For Windows Change The World? 770

An anonymous reader writes "A month ago, a trial version of a little-known Linux application called 'CoLinux' was released that is the first working free and open source method for optimally running Linux on Microsoft Windows natively. It's the work of a 21-year-old Israeli computer science student and some Japanese open source programmers; in Israel, analysts are already saying it could help transform the software world." (CoLinux is short for Cooperative Linux; we mentioned this project in January as well.)
This discussion has been archived. No new comments can be posted.

Will Linux For Windows Change The World?

Comments Filter:
  • Gah (Score:5, Funny)

    by inKubus ( 199753 ) on Monday April 12, 2004 @10:19PM (#8843818) Homepage Journal
    All the ease of use of Unix running on the stability of Windows.
  • Hmmmmmm (Score:5, Funny)

    by dont_think_twice ( 731805 ) on Monday April 12, 2004 @10:19PM (#8843821) Homepage
    So would this be: In Soviet Israel, Windows Runs Linux?
  • Whats the difference between this and Cygwin? Or (though I haven't tried it, MS SFU). Cygwin seems to run extremely fast and reliably already. Of course, Cygwin doesn't run executables other than standard Windows EXEs, but what isn't available for Cygwin (or natively on Windows) already? This seems like a project to run Linux for the sake of Linux
    • by wmspringer ( 569211 ) on Monday April 12, 2004 @10:23PM (#8843851) Homepage Journal
      You say that like it's a bad thing...
    • by tmbg37 ( 694325 ) * on Monday April 12, 2004 @10:26PM (#8843884) Homepage
      The difference would be that you can run already availble Linux binaries under Windows rather than trying to get programs to work and compile for Windows under Cygwin.
      • It actually works! (Score:4, Interesting)

        by WoTG ( 610710 ) on Tuesday April 13, 2004 @01:17AM (#8844893) Homepage Journal
        And I might add that it seems to work too!

        I happened to be playing with coLinux for the first time this afternoon (beating the /.'ing for once...). There are two distributions "images" available from coLinux, and it sounds like the changes to get any distribution working within coLinux are quite minimal (I think it's mostly setting up the virtualized hardware drivers...).

        It works easier than I expected. And it really does use regular binares. For instance, I've just installed X and KDE from the regular Debian package repositories.

        I tend to think of this as a specialized, i.e. Linux Only, alternative to a VMWARE for Windows license. Free, and moderately easy to install - I'm sure that in time, it'll be a lot easier to setup.
    • by interiot ( 50685 ) on Monday April 12, 2004 @10:47PM (#8844044) Homepage
      You could presumably boot multiple kernels at once, like User Mode Linux. One could get running debian and apt-get installing away, another Mandrake, another Red Hat, one the latest 2.6 kernel, debian with a super-old-but-ostensibly-stable 2.4 kernel. You could do QoS queuing and complex firewalling within one box, or have an entire DMZ within various boxes running on the same phsyical machine.

    • Cygwin seems to run extremely fast and reliably already.

      Yes, Cygwin is nice. But I've found it considerably slower than a native Linux box.

      I occasionally have to mangle several gigs of text-based log files. I can toss together a nice script in my Cygwin environment. But when I want to run the real job... I better scp it over to one of the dev Linux boxes and run it there. Otherwise it will take weeks longer to run.

      Maybe it's something in my config. I haven't spent much time looking in to it.

  • Good idea (Score:5, Interesting)

    by Joe U ( 443617 ) * on Monday April 12, 2004 @10:20PM (#8843826) Homepage Journal
    It's about time someone thought of doing this.

    The NT(2000/XP) kernel has had the ability to run other native applications for a while.

    It sounds like they are going the same way that Win16/WOW, OS/2 and Posix apps currently get run in Windows. There's no reason not to add Linux to this list.
    • Linux on the JVM (Score:4, Interesting)

      by Nailer ( 69468 ) on Monday April 12, 2004 @11:26PM (#8844284)
      User Mode Linux hacker and all-round-cool-dude Dan Shearer has previously mentioned he's interested in porting Linux to the JVM. This would enable you to run native Linux apps on anything than can run a JVM, and also allow you to have multiple OSs on those machines.

      Its pretty hard tho - the JVM is nowhere near a complete hardware platform, but it would be possible.
      • Re:Linux on the JVM (Score:5, Interesting)

        by karlm ( 158591 ) on Tuesday April 13, 2004 @04:09AM (#8845564) Homepage
        It would be interesting to take OpenJIT and modify it to generate (and compile) ASTs on demand from x86 ELF binaries and .so files rather than class files.

        It would likely be very very slow, but in conjunction with a UMLinux port to the JVM it would allow you to run many Linux x86 binaries on anything with a JVM as long as you packaged enough of the Linux x86 .so libraries with it.

        For a while Sun toyed with the idea of a JavaOS where everything but the kernel ran in a JVM. Unfortunately, few people consider even modern JVMs acceptably fast. The JVM forces the Java object model and calling mechanics on the code, so writing code for a JavaOS would be great as long as Java is the best tool for the job.

        Additionally, stack-based virtual machines are pretty much ideal for interpreters (see Xavier LeRoy's design paper for Zinc, the O'caml VM) but other VM models are much better suited to just-in-time compilation (see Ken Thompson's Dis VM design paper). Java is a great language, but the JVM was litterally designed to be runnable on 8-bit microcontrollers in toasters and fridges 2 decades ago. Now, 32-bit microcontrollers and RAM are so cheap that Sun should really consider keeping 100% source compatibility but scrapping direct binary campatibilty with it's 8-bit microcontroller optimized stack VM. They could always use something like OpenJIT to implement reverse compatibility inside the Java 3 JVM. (The whole "Java 2 Virtaul Machine v.1.4.2" thing is anoying and confusing for many people. Letting Marketing call it "Java 2" but letting Engineering call it the "1.2.1 JVM" was dumb.)

        Diverging back on topic...

        The idea of a VM-oriented OS is nice, but it seems that in order to compete with native applications, higher performance and more flexible VM designs are needed.

        Vmware, Bochs, and CoLinux can all be thought of as more or less high performance flexible virtual machines, each with a different level of virtualization and performance. A complete re-design in Java 3 would make a JavaOS (such as UMLinux and libraries for the JVM) much more attractive. It looks like Microsoft is working towards a .NET VM (CLR) based OS. This is a logical step in a long historical trend towards more hardware abstraction at the application layer. I'm sad that MS decided to leverage so much of its JVM experience in creating the CLR as a stack-based machine that enforces a particular object model at the lowest level (rather than being enforced at the class loader level), but at least it's a step in the right direction.

  • Seems Like (Score:3, Interesting)

    by TheKidWho ( 705796 ) on Monday April 12, 2004 @10:21PM (#8843835)
    Seems Like what apple has done with Mac OS 9 and Mac OS X
  • by mao che minh ( 611166 ) on Monday April 12, 2004 @10:22PM (#8843847) Journal
    I could put it to use in places where upper management might still be afraid of Linux, so I can run Linux apps. Another use would be to run more powerful versions of software. One example is a web filtering product called SurfControl []. The Windows versions, hindered by the poor IP stack I'm sure, doesn't have the flexibility and power of the Linux version (Here is a comparison chart []).

    So, the next time your manager is afraid of having a Linux server on the production network, use CoLinux instead?

  • by tmbg37 ( 694325 ) * on Monday April 12, 2004 @10:24PM (#8843861) Homepage
    Using Wine to emulate Windows to emulate Linux...
  • So... (Score:4, Funny)

    by bprime ( 734645 ) <> on Monday April 12, 2004 @10:24PM (#8843862)
    This kind of makes the "But does it run Linux?" joke a bit deprecated, wouldn't you say? Oh well, there's still Soviet Russia, Hot Grits, and Overlords.
  • by MisanthropicProgram ( 763655 ) on Monday April 12, 2004 @10:24PM (#8843864)
    analysts are already saying it could help transform the software world.

    Why? and How?

    Hardware is so cheap, I would just get two boxes.

    Landrew, guide me!

    • Hardware is so cheap, I would just get two boxes.

      Hardware is not cheap if we are talking about good hardware. It also needs care and feeding (such as UPS power, cooling, new fans once a year, cleaning, rack space, RAM, RAID etc.) You can save a lot in any business environment this way. Even in home conditions you will save a lot on energy if you have only one box 24/7 and not two.

    • by interiot ( 50685 ) on Monday April 12, 2004 @10:39PM (#8843984) Homepage
      Imagine a world where you can walk up to any machine, slide a CD in, and be working in your favorite environment in about 30 seconds, with lots of complex network and multimedia apps going. Pull the CD out [], reboot, and the computer's owners won't necessarily even know you were ever there.

      Now imagine a world where you can do the same thing, but it takes 15 seconds to boot, and you don't have to exit the person's applications, log them out, shut down their internet daemons, etc. Walk up to virtually any computer, and you have the full comfort of your standard environment.

    • by bomblaster ( 580308 ) on Monday April 12, 2004 @11:25PM (#8844279)
      Here is how i think this could have a great impact.

      Very importantly, Linux running on Windows can be used to train Windows users on migrating to Linux. No messy dual-booting setups required. Just copy Linux and "click to start".

      Secondly, this opens up Linux for sampling to many more interested users who are wondering what the hype is all about. I am not talking about the typical Slashdot geek here. Instead normal people with techie inclinations who want to try out things.

      Thirdly, it is an easier way for running pilot trials of Linux deployments in a corporate environment. As no extra servers are required, no extra money needs to be sent. Although administration effort will obviously increase, it won't be to the extent of twice the administration effort of the original Windows server on which Linux is running.
      One huge barrier to Linux adoption is that management does not want to do a trial deployment at most times due to the cost involved. This will certainly mitigate that.
  • by jacobhoupt ( 728382 ) on Monday April 12, 2004 @10:24PM (#8843865)
    the lamb will lay down with the lion and there shall be peace. And the earth will shake with unrest, and stars will fall from the sky. ick.
  • but why? (Score:3, Insightful)

    by ( 562495 ) on Monday April 12, 2004 @10:24PM (#8843867) Homepage
    why would i wanna do that? i am unable to comprehend of a case scenario, where I would wanna do that. If I need to use Linux Compiler while sitting on a Windows box, I would rather use vmWare. Also vmWare has made great progress in their GSX and ESX, to make all this very easy.
    • Re:but why? (Score:5, Insightful)

      by NanoGator ( 522640 ) on Monday April 12, 2004 @10:50PM (#8844074) Homepage Journal
      "If I need to use Linux Compiler while sitting on a Windows box, I would rather use vmWare. Also vmWare has made great progress in their GSX and ESX, to make all this very easy."

      VMWare is like $300. CoLinux is free.

    • by DreadSpoon ( 653424 ) on Monday April 12, 2004 @11:22PM (#8844265) Journal
      A lot of newbie users who have some desire/need to do UNIX software development (for example, a good deal of MUD "coders") could benefit from this a lot. Most suffer through the hell of trying to get Cygwin to compile and run their apps. Getting an easy-to-install Linux system that Just Works would be bliss for these people.

      And no, a second box is not a solution. "Hardware is so cheap" doesn't cut out the fact that many aspiring coders may not even have $50 (hell, I started at 9, think I had that kind of chash?), may not have the desk space, may not want the extra power drain, may not want to get a second monitor (or a KVM), etc. Just running Linux in a "window" on Windows is very cheap ($0, assuming they already own the Windows machine), provides no physical space/power hassles, and would be rather easy to use.

      Again, for some people, switching to Linux, a second box, or dual booting just *isn't a choice*. For those people, CoLinux is a boon. For the rest of us, it's just a sick toy. ;-)
  • Article Text... (Score:5, Informative)

    by relyter ( 696205 ) on Monday April 12, 2004 @10:25PM (#8843869)
    It's already becoming a bit slow... Looks like the Israel Defence Force may have done it again. Already famous for spawning an entire generation of software geniuses now active in the world of wireless technologies, the IDF has now apparently incubated the technical talent capable of creating a project that could change the world: the ability to run Linux on Windows 2000/XP. 21 year-old Dan Aloni, a graduate of an IDF computer unit, has developed a Linux application - called Cooperative Linux ("CoLinux" for short) - that is a port of the Linux kernel that allows it to run cooperatively alongside another operating system on a single machine. For instance, it allows one to freely run Linux on Windows without using a commercial PC virtualization software such as VMware, in a way which is much more optimal than using any general purpose PC virtualization software. A member of the international open source community, Aloni developed CoLinux along with several Japanese programmers, collaborating over the Net. According to the Web site, they've written special core drivers for the host OS which modify the way the host OS receives notifications from the hardware - thus allowing both OSes to coexist peacefully - and run at a decent speed as well. In Israel, acclaim for a system potentially capable of allowing organizations to run Linux and Windows in parallel on the same computer or server has been immediate. Organizations would make great savings if they didn't any longer have to have separate machines for each OS, says Shahar Shemesh, a member of the Israeli open source forum. And Pini Cohen, a senior informations systems analyst at computer research company Meta Group Israel has called the development "an important stage in breaking Microsoft's monopoly." "As the trend is for Linux to take a more important role in organizations," Shemesh continues, "Aloni's development is extremely interesting. The question is how Microsoft will react and whether it will allow support for Windows systems if they have Linux systems installed on them." According to that is carrying details of this story, Microsoft has so far made no comment on Aloni's development.
  • by peripatetic_bum ( 211859 ) on Monday April 12, 2004 @10:28PM (#8843900) Homepage Journal
    "As the trend is for Linux to take a more important role in organizations," Shemesh continues, "Aloni's development is extremely interesting. The question is how Microsoft will react and whether it will allow support for Windows systems if they have Linux systems installed on them."

    This statement is really interesting as it suggests that linux will not takeover (if it will) one computer at a time (which it seems to be doing at the server level) but one app process at a time. Ie, that is to say, suppose one app has a certain level of importance, so people write to run in linux on windows, then slowly window apps get replaces such that windows merely servers base os, and then who knows, the people running the app decided to then get rid of the windows os, without having to do the whole thing all at once.

    Of course as one previous poster said, the linux app is going to only be as stable as the windows os and who would no be surprised if there developed certain instablilties for this project.

    I would like to hear your thoughts
  • by nsushkin ( 222407 ) on Monday April 12, 2004 @10:28PM (#8843902)
    Colinux Project [] Screenshots []

    - Dunno, seems like the original article missed the actual link.

  • by $exyNerdie ( 683214 ) on Monday April 12, 2004 @10:30PM (#8843907) Homepage Journal

    1)Run Windows XP.
    2)Install CoLinux
    3)Install Wine in CoLinux
    4)Run windows applications in Wine

    Well, if you have nothing else to do on a weekend.........

  • Bundle it... (Score:3, Insightful)

    by qualico ( 731143 ) <worldcouchsurfer&gmail,com> on Monday April 12, 2004 @10:31PM (#8843912) Journal users don't have a choice when they buy Dell, Compaq/HP or other brand names.

    Thats how you change the world.
    Worked well for Microsoft. :0>
  • Support? (Score:5, Interesting)

    by kryptkpr ( 180196 ) on Monday April 12, 2004 @10:31PM (#8843914) Homepage
    "As the trend is for Linux to take a more important role in organizations," Shemesh continues, "Aloni's development is extremely interesting. The question is how Microsoft will react and whether it will allow support for Windows systems if they have Linux systems installed on them."

    Hmm.. there's an interesting question. Can Microsoft really refuse to support your windows installation if you're running Linux (as an application, even?) Or is this guy just trolling?
    • Can Microsoft really refuse to support your windows installation if you're running Linux (as an application, even?)

      How much do they "support" installations of Windows anyway? Could it truly get any less supported?

  • But why? (Score:3, Insightful)

    by Animats ( 122034 ) on Monday April 12, 2004 @10:33PM (#8843927) Homepage
    Why would one want to do this, except as a demo?
    Either OS can now crash the machine, so the MTBF gets worse. You get to pay both Microsoft and Red Hat. And few people run Linux because they like the desktop applications.

    This sounds like one of those "I'm l33t" toys.

    The ability to run Windows apps on Linux is far more useful.

    • by erice ( 13380 ) on Tuesday April 13, 2004 @01:03AM (#8844844) Homepage
      I have a film scanner. The nearest equivilent which *might* have linux drivers is over $1000 more. So, you can see why I don't just buy a different scanner.

      So, why not just boot into windows, do my scanning and get out?

      Because scanning a roll of film can take hours of off and on work. I don't want to to be stuck with Windows that whole time.

      Wine (when it works at all) is of no help. It runs only apps, not drivers. Even VMware, when the host OS is Linux, is of no help.
  • Severe limitation (Score:5, Informative)

    by nsushkin ( 222407 ) on Monday April 12, 2004 @10:33PM (#8843935)
    There are still some problems [] to work out.
    1. No virtual graphics adapter, so no X-Windows
    2. Memory limited to about 128 or 256 MB
  • plex86? (Score:5, Informative)

    by interiot ( 50685 ) on Monday April 12, 2004 @10:35PM (#8843951) Homepage
    So what happened to Plex86? As of about this time last year, they were saying they're alive and kicking, this time only trying to achieve linux-on-windows [].

    CoLinux [] is apparently somewhat similar to Plex86, but additionally requires admin access whereas Plex86 wasn't supposed to. Anyone know more?

  • in reverse (Score:5, Insightful)

    by TheLittleJetson ( 669035 ) on Monday April 12, 2004 @10:40PM (#8843990)
    it would seem more productive to do this in reverse... that is to say, windows running under linux... not simply a compatability layer [wine] or an emulated system [vmware] -- it would be cool to see the NT kernel running as a process under linux (just as linux ran under mach in MkLinux, or OS9 runs under OS X)... it would probably be a lot faster to reboot that way... ;-)

    • Re:in reverse (Score:5, Interesting)

      by Viceice ( 462967 ) on Monday April 12, 2004 @11:09PM (#8844193)
      Therein lies the problem. To make the situation reversed, where the NT kernel was made to run on top of Linux, one would need access to the source code for the NT Kernel.

      What they (i think) did with coLinux was hack Linux to run within the parameters of a loaded NT enviorment. It's like a low level multitasking dance where NT leads and Linux follows.

    • Re:in reverse (Score:3, Informative)

      by randyest ( 589159 )
      Er, I read the article, sorry to spoil your fun.

      There's nothing to reverse!

      This isn't Linux running on Windows or Windows running on LInux! It's fundamentally different, as in time-slicing the CPU:

      port of the Linux kernel that allows it to run cooperatively alongside another operating system on a single machine. For instance, it allows one to freely run Linux on Windows without using a commercial PC virtualization software such as VMware, in a way which is much more optimal than using any gene
  • Advantage (Score:3, Insightful)

    by AsparagusChallenge ( 611475 ) on Monday April 12, 2004 @10:46PM (#8844033)
    In short: get companies to develop for Linux. Give them as incentive all the LGPL libraries already available and not ported or better maintained.

    Then convince them that the 95% market share of Windows is not a problem, since the app will run in Windows anyway.
  • Answer: No (Score:5, Insightful)

    by Silroquen ( 609767 ) on Monday April 12, 2004 @10:57PM (#8844115)

    How often do we, here at /., ask if a new software development is going to change the world? Constantly. And how often does it? Never.

    This is no exception. It's just a sort of more native version of Cygwin. Sure, it could be kind of nifty, but it's not some major breakthrough which will leave the world shocked.

    Could people please stop being so melodramatic with their subject lines?

  • by mwooldri ( 696068 ) on Monday April 12, 2004 @11:00PM (#8844136)
    definitely a good thing, because it might then encourage more people to take up Linux and have a look at it. It would give those people who are so 'married' to Windows a chance to look at what all the fuss is about, and to really evaluate Linux and see if it would be right for them. They wouldn't have to partition, re-format, re-jig their hard drive... and if things got too tough open up the appropriate Windows application to get their job done instead.

    I also see it as a good thing in some corporate environments. Say you have a call center, and all the operatives have been trained to use some program for their task (let's say they're in a credit card environment) and their software is Unix based. Well, porting to Linux could be straightforward. Also for these operators they don't need to access the computer for anything much besides this application... and maybe the web and email to keep in contact with people. So these guys would have Linux desktops. Now there would also be some other administrative people who don't take calls, and who have other tasks. Like payroll, or some other fancy tasks. Maybe these programs were written for Windows, and there is no Linux port planned. Rather than trying to make these programs work through Wine or Crossover Office or something like that the obvious solution is to make Linux run on top of Windows. Then people have the best of both worlds for those kind of operations.

    I also see advantages of running CoLinux in a dual boot environmemnt. That is, if you are short on disk space. I presume that CoLinux would run on the same filesystem as Windows. In a traditional dual boot system you might have a 20 gb disk, and split it up two ways - 10gb for Windows, and 10Gb for Linux. Let's suppose you are a Windows fan, and you easily eat up that 10Gb for Windows use, and hardly use Linux, except to 'play around with'. You then have 8Gb of disk space that Windows can't access natively (yes there are third party apps now that get around this) and as such you are short on space. So if Windows and Linux are sharing the same 20Gb partition, then Windows can use more than that smaller partition on those occasions it is deemed necessary (like downloading by broadband that 5Gb linux distribution on X # of CD's).

    I don't see it as a "real major" security problem, because I perceive its main target is the desktop, and not for running security-critical applications which could get hacked to shreds. Also that these Windows boxes would be firewalled anyway for Internet access - behind native Linux firewalls on native Linux machines.

  • by GKChesterton ( 462113 ) on Monday April 12, 2004 @11:01PM (#8844139) Homepage
    There are a lot of laptops out there that aren't powerful enough to run linux on vmware on windows or windows on vmware on linux.

    I wouldn't do it without a 3.0 Mhz system with 2 Gb of RAM, and at least a 40 Gb disk. I happen to have such a laptop, and I bought it especially for this purpose and paid lots of bucks for it. But my old 1.7 Ghz, 30 Gb, 256 Mb RAM Vaio R505 should be able to handle this...
  • by SphericalCrusher ( 739397 ) on Monday April 12, 2004 @11:18PM (#8844239) Journal
    I think that by doing this, it would only motivate people away from Windows and onto the Linux platform. Besides, with Linux LiveCDs, we can run Linux on Windows boxes without having to rid outselves of Windows itself.

    And on a different note, people will get to see the most stable program that Windows has to offer. Even though it may crash a few times, giving Linux a bad name... but it's Windows fault.
  • EULA (Score:3, Insightful)

    by Rick Zeman ( 15628 ) on Monday April 12, 2004 @11:26PM (#8844281)
    Whaddya bet that MS changes their EULA to make running another OS concurrently a violation of said EULA? I can see that happening judging by their history.
    • Re:EULA (Score:5, Interesting)

      by prockcore ( 543967 ) on Tuesday April 13, 2004 @02:24AM (#8845168)
      Whaddya bet that MS changes their EULA to make running another OS concurrently a violation of said EULA? I can see that happening judging by their history.

      That'd be dumb, since then they'd prevent xbox developers from doing work. It would prevent pocketpc developers from doing work.

      If they made an exception for MS OSes, it'd be a very obvious anti-trust move.
  • by ghost1911 ( 146095 ) on Tuesday April 13, 2004 @12:05AM (#8844549) Homepage
    I've seen a number of scattered reasons (above) for running coLinux but here is the scenario I have for using coLinux.

    The need to run a linux Distribution from within a Windows box not the need to run Linux applications on a Windows box:

    First I want to point out that cygwin will get you a secure shell, gcc, and a number of other biaries, as ported from Linux. But it will not natively behave the same way that Linux does. The primary difference I'm referring to is hardware support and native binary support. It is for this reason that Cygwin will never be as useful to the Linux world as other distributions are. (Contributions back to Linux from Cygwin are not practical.... [Mozilla aside, there are no other good examples of OSS projects where there is a large number of developers porting their software from a Cygwin environ back to Linux]). There are several interesting cases of Linux software being compiled for windows (Xine, Gaim, X, etc) but these programs are not sufficient to be considered a "linux distribution within windows" instead should be considered, Linux apps for windows.

    Consider now, my personal usage example, I have had a Linux dist sitting idle on my drive because I sold my second box (power is expensive!), and I needed to develop in MFC (Direct X 9.0) for a course that I was taking (leave linux on one part, install XP on the other). Right now there are several applications and other things that I'm missing from when I had primarily booted Linux, but I can't move away from Windows and still continue my studies (and btw, dual-booting is not an option I'm eager to go back to [takes forever, and I always want that one windows or linux app when I'm in the wrong boot]). So, after this project matures, I will hopefully be able to mount my existing Linux partition, boot my kernel, and access my applications and settings as I left them before, without disturbing my continued study with MFC and Direct X.

    A few final points:

    1.) XP is not as unstable as everyone here seems to contend, I have had weeks of uptime on my computer at work, as has the other developer who works with me.

    2.) Cygwin does not allow developers to comfortably develop Linux apps on windows, and is limited inherently by Windows (terminal width constrained to less than 72 characters, X Windows loads slowly, etc).

    3.)There are a number of practical uses for virtual machines but the speed of these systems, their somewhat limited application (hardware) support, and the price of the software ($$$ you would pay a heck of a lot more for VMWare than for Windows XP, buddy) tends to leave something to be desired from that corner of the market.

    In conclusion, yeah, coLinux may not change the world, and it may not even turn a few heads, but it certainly could be useful for a number of people such as myself who are looking to get a little bit more Linux out of their Windows boxes.
  • by spiritraveller ( 641174 ) on Tuesday April 13, 2004 @12:18AM (#8844622)
    I have searched far and wide for a way to run that program on a Windows machine.

    No Windows version.

    Can't compile in Cygwin.

    Enter coLinux... finally a way to run GnuCash on my Windows laptop.

    I am sure there are other programs like this.

    It is even possible to run Linux programs in rootless windows [] so that they appear to be native Windows applications.

  • by Effugas ( 2378 ) on Tuesday April 13, 2004 @02:48AM (#8845286) Homepage
    Threw this on MetaFilter [] a few hours ago; hope this helps clarify what's going on here. Thanks to the good Jason Spence for explaining most of this to me over fine tequila at Defcon a few years back :-)

    OK, terrible terrible story. Nobody's going to contest that. My immediate reaction: "Yay, another whiz kid story. Kid probably rediscovered prefetching web pages."

    Yeah. Then the CoLinux guy came up.

    People, CoLinux is absurdly brilliant stuff, the kind of hardcore engineers get drunk about and laugh that "some psycho pulled off WHAT?!" regarding. I can say this from personal experience :-)

    To put it simply, most approaches that involve multiple operating systems sharing a processor require a significant degree of subordination. In the Cygwin model, the "Linux/Unix" way of requesting services from the operating system (open this file, give me that network connection) is translated to the Windows way through a library of functions. The mapping is pretty good, but like any translation, it's not perfect. Some actions, like starting new programs, are very very fast under Linux/Unix and are extraordinarily slow under Windows. Cygwin deals with this as best it can, but there's only so much it can do.

    VMWare offers a different approach. Instead of translating Unix to Windows, VMWare creates a "virtual PC", complete with its own processor, motherboard, sound card, network card, and everything else. The child operating system -- Linux, for example -- gets a complete environment to manipulate, and VMWare handles the translation between what the child PC is asking to do and what the parent PC is actually capable of. This interface is much more isolated than what Cygwin offers -- memory, for instance, is not shared between the two environs -- but as such, the child operating system is freed of many of the particular quirks of the parent OS. The child Linux really is Linux, and can do everything Linux can do, because Linux is an environment for controlling a PC.

    The only catch is that it's a virtualized PC, and VMWare needs to do alot of work to keep the two contexts separate -- and to emulate all the hardware resources that are normally "just there", but now need to be simulated. There's a 20-30% speed cut out of this. Also, switching contexts between parent PC and child PC is not a trivial thing to do, meaning it can only be done a certain number of times per second. This causes issues for some real time operations. Specifically, audio in VMWare is a problem.

    CoLinux is something else entirely. x86 CPU's have the concept of Rings -- these are roughly analogous to privelege levels, in which certain classes of commands may be issued to certain components of the architecture. Lowest level code operates in what's referred to as "Ring 0" -- at this level of permissions, one can directly control the raw components of the PC, for better or worse. This is a gross oversimplification, but there's basically two things that live at Ring 0: A kernel, and device drivers (which are not entirely separate from the kernel). Kernels are basically a core set of commands that user software can execute to get things done -- create processes, read files, open network connections, and so on. Here's a list of Linux syscalls, at least from 2.2. Not on this list -- stuff like, "Send this block of memory to this device on the PCI bus, and tell the sound card to start emitting sound from that memory address on its internal buffer." That's what device drivers are for -- they get some kind of interface that userspace can talk to, and they do things with what they're given. Those things can be pretty much anything the underlying hardware can do -- stuff way deeper than "write this file" and "trace this process", and into the nuts and bolts of what the PC is -- a collection of wires and memory addresses. Normally, that's what a device driver does: It implements the requisite hardware calls to let some piece of equipment work.
  • by alizard ( 107678 ) <alizard.ecis@com> on Tuesday April 13, 2004 @03:25AM (#8845418) Homepage
    The main advantages of Linux are stability, security, and low cost OS and applications.

    Which of these do you get if you run Linux over Windows?

    None of the above, of course.

    If one simply needs a Open Source Office, that's what is for and there is a Windows version.

    If there were a killer app for the general population that only ran on Linux and can't be ported, this might make sense. Name one.

    This may be touted as a technical miracle, and it might be. But change the world? Looks more to me like a solution in search of a problem.

  • by DeVilla ( 4563 ) on Tuesday April 13, 2004 @11:58AM (#8848996)
    Maybe now I can final run all of my Linux games on Windows.

"Hey Ivan, check your six." -- Sidewinder missile jacket patch, showing a Sidewinder driving up the tail of a Russian Su-27