Will Linux For Windows Change The World?
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.)
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
Implicit Evaluation with PHP
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.
but how would it make linux more popular when they dont have to get rid of windows to run linux easily?
Seems Like what apple has done with Mac OS 9 and Mac OS X
So, the next time your manager is afraid of having a Linux server on the production network, use CoLinux instead?
"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?
DJ kRYPT's Free MP3s!
Mandrake had an option to install to run within Windows *years* back. Then there's all the emulators and virtual servers, besides the likes of Knoppix.
Running from within Windows is only of use to developers - Joe AverageUser doesn't care. What's the point to run Linux from within Windows? Wow, pay money for WinOS to be able to run a free OS that you have installed without WinOS in the first place.
I think it's just another false roadblock they've constructed. People have easily been able to use Linux for years, in one way or the other, and it's still not taking off on the desktop. The OSS community have (once again, for the millionth time) solved a problem that doesn't really exist. Kudos.
No, it won't change anything. Interesting and geeky, but nothing that will have an 0.00001% impact on market share.
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.
How about... Using Wine to emulate Windows to emulate Linux...
Probably wouldn't work. I doubt Wine (not)emulates that part of Windows.
But you should be able to do it the other way around: Run Windows apps in Wine in Linux in CoLinux in Windows.
Wouldn't be totally silly either: You could more ealisy compare the apps behavior under Wine and under Windows. (Though if it was sluggish or flakey on the Wine/Linux/CoLinux/Windows stack you'd have to confirm with Wine on native Linux to be sure it wasn't an artifact of running Linux under Windows.)
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
Sorry, but this sort of thing IS NOT going to draw more people to Linux, if that's what you're thinking. This "try it befor you buy" shit is nonsence (the same reason I have nothing good to say about these bootable Foux-Linux distros). Pick one per box. Have two boxes if you must. But the reality is that Linux is not Windows, Windows is not Linux, the two do not meet except by Wine and Samba. If you need both, you need two boxes.
"Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
Linux isn't going to conquer windows. But what it needs to compete (from an application developer standpoint) is:
1. Integration of video drivers into the kernel. Yes this makes it unstable, but Linux currently is plagued by the problem that Windows NT 3.51 had using fastLPC and HAL to control the video cards. Integrating into the kernel will give the necessary speed.
2. A thread model that allows thread ownership to be changed dynamically. Most important is the thread model. IPC is just too dammed slow compared to reading a common memory heap for a process. Without a thread model it is very difficult to make a responsive GUI application that does anything complex (unless of course you use IPC and spawn several processes).
3. A GUI messaging system that makes much faster calls on the operating system. GUI applications will not be able to compete with the speed of windows apps unless something is done to integrate this GUI messaging system with the OS. While this sounds like it is forcing a default Window manager, this isn't so. It just requires a programming standard to the messaging system to be written.
With the tiny micro ATX computers available today, you could have two or three machines and a keyboard/video/monitor switch in the space of a standard desktop case. Then you really /can/ run all the OSes you need to, without them comingling. Now that I'm used to having 4 PCs with different OSes handy (FreeBSD, Linux, Solaris x86, Windows), I couldn't imagine running only one computer. What happens when one of them goes down, anyway? It's nice to have backups.
Do you know what approach Corel Linux took? I remember one of it's big selling points was that you could run it from Windows just like any other program; and to delete it you just had to delete it's folder. It was slow, but it worked.
Sorry, you missed out on what I think would be your #0 ...
... and you know what, as long as they support it I don't even care that I don't have the source to the ATI driver).
0.) Driver support from the vendor side
Even if we had directX compatibility we would still be missing video drivers, storage drivers, etc. All of those items, to be a sustainable resource, have to come from the horses mouth (as in I can get my Radeon working with the Open driver, but to get 3D acceleration I need the binary driver from ATI
It is more productive to voice thoughtful opinions (reply) than to judge (moderate) others.
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.
Sometimes I wish I was a plumber, then I'd know how to deal with other people's shit.
Isn't this just UserModeLinux ported to Windows?
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.
With the Virtual Desktop Manager, four. 3rd party managers would probably give you more.
- Oisin
PGP KeyId: 0x08D63965
Perhaps if DirectX actually was inferior, and if it wasn't the primary or only API for 90% of the games out there, you'd have a point.
DirectX is great for PC Games - but for real scientific/commercial work it *SUCKS*.
Whenn Boeing dows the next 7E7 fly-though in DirectX, give me a call.
Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.
It's not "fraught with complications" -- the repartitioning is the most technically involved step. It's just a pain in the butt to be rebooting your system and to have a set of apps that can't be running at the same time as another set of your apps.
May we never see th
Excellent explanation.
Of coure the primary benefit isn't just being able to run Linux binaries, but rather being able to run an entire Linux distribution! For example, you could boot Knoppix without exiting Windows! That's pretty freakin cool.
-73, de n1ywb
www.n1ywb.com
It won't change the world.
Running linux under windows is not the same thing as running linux. Period.
It may be better than running VMWare or the like.. but it's not "2 systems on one computer."
It's still windows, with all that implies.
Unless there is some miraculous (and I do mean miraculous) kernel level integration..... there is no performance benefit or anything like that...
So.. is it neat? yeah.. kinda. Is it revolutionary? Hardly.
XEN is far cooler....
I just read through all the comments here and even for /., there's way too much BS.
/.
This is cool for a number of reasons:
1) It can access rootless X via Cygwin's xserver.
2) It can run linux from your dual boot partition! (No, I haven't done this myself but it's in the FAQ.)
3) Some of us want to run both XP and Linux simultaneously from our laptops. (No, I'm not going to carry two laptops around with me.) I need XP for Matlab and its windows-only toolkits and also for the ultra-cool Medved QuoteTracker, and I want Linux for just about everything else.
4) Cygwin is great but not everything compiles or runs correctly within it. (E.g., even Perl has bugs within Cygwin.) Also, contrary to popular belief, not everything is prebuilt for Cygwin and dl'ing binaries saves me enough time to read
5) I think all the people shouting "one box/one OS!" are in dire need of a paradigm shift. Thinking like that is the reason MS rules the OS world, and we should be celebrating anything that chips away at that misconception.
6) Finally, having linux and Windows apps side-by-side will go a long way towards getting linux coders to improve their terrible looking GUIs. Contrary to some of what I've read here, IMHO, improving the look of linux is the single most important requirement for gaining mass appeal. And like it or not, XP apps today look a lot better than Linux ones.
Probably one of the worst ways to be introduced to a new system is through emulation. Its going to make the emulated system look bad due to the very nature of emulation- visual/performance/etc.
This project is pretty damn close to being a complete waste of time for everyone involved. Unlike something like Virtual PC that actually serves a purpose. I'm convinced that Mac OSX along with Virtual PC is the easiest and only way for the majority of the users in the world today to ditch a dedicated Windows XP box. Of course, why try so hard to ditch something like XP that works pretty well to begin with. There is a time and place in this world when it is appropriate to spend large amounts of time trying to make "a point" of some sort. But this ain't one of them.
In fact, it appears the Cygwin (POSIX inside Win32) people and the Wine (Win32 inside POSIX) people are using each other's programs as a round trip test case. And yes, you can probably run Wine inside CoLinux if it implements all the POSIX APIs that Wine requires. However, because this CoLinux is kernel level, it probably can't be run inside a free Windows ABI emulator until the ReactOS (NT kernel clone) people get their codebase to at least 0.5.
Since you don't know what I'm using my system for, if I were you I would think again before calling me an idiot.
For the work that I do, I need that horsepower to have multiple VMs running simultaneously, running different OS's, all doing some serious compilations.
For that, you need the kind of machine I described. Now that can't be done using a standard laptop at all. But for going on the road, colinux would be nice to use on a smaller, lower power, standard laptop. Because why would I want to shell out a several hundred bucks for vmware just for that? Idiot...
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.
.: 2+2 = PI SQRT(1+N)
Nope. Windows NT, despite the idiots around here to seem to think otherwise, is actually a far more advanced operating system than Linux. It is based upon a microkernel, and as such writing new "personalities" to implement, say, Linux, is trivially easy. Linux, on the other hand, is based on a 40 year old operating system concept that would not easily adapt to such an approach.
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.
DirectX is great for PC Games - but for real scientific/commercial work it *SUCKS*.
Is there a reason why it sucks for such work? I've only done experimental game-related graphics work with both APIs, and although each has its own unique style, I don't really see any major problems of either that would prevent work of any type from being done using it.
I think the real reason why DirectX isn't used for scientific work is because it only works on Windows, and it hasn't been around for as long as OpenGL.
Don't knock the Tab Window Manager.
It's great for running X on older hardware. Many, many useful and powerful X apps don't need to be bogged down with all the 'desktop' junk added to modern Window Managers. I run TWM on my 486 laptop and on my Mac SE/30, both on NetBSD.
TWM is the 'reference' Window Manager included by default in the base X11 distribution. And it's quite well documented, being the reference Window Manager implementation, as it's well covered in the O'Reilly X Window System user manual set.
Do NOT compare TWM to Windows 1.0. TWM gives you all the same X11 'goodness' of any other Window manager, just in a no-frills, no-bloat package. It actually has most of what anybody needs on a basic system.
I know, I know. It's not very 'pretty' and it's all configured in flat textfiles. And it doesn't give us an excuse to buy new systems.
resigned
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
... which (surprise!) lets you run several OSes concurrently on Windows.
Well, first they'd have to stop selling this:
VirtualPC
Coming soon - pyrogyra
That is the root of the problem. You have to download the libraries and get them working which requires you to enter commands in a terminal. Do you think the average user wants to do this? I would go further and say that it makes gnome/kde seem not ready for prime time to the majority of windows users.
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.
And I might add that it seems to work too!
/.'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...).
I happened to be playing with coLinux for the first time this afternoon (beating the
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.
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.
As I said in my earlier post, I agree with you that getting two OS's to cooperate in Ring 0 is a major achievement.
As for the DRM people having a heart attack, they might not, since supposedly some of this "trusted computing" stuff depends on a BIOS chip certifying the OS before it runs - which presumably means it could prevent another OS from running in Ring 0. This is just speculation on my part, but it seems reasonable.
However, as I mentioned in my earlier post, this capability does seem to have significant positive security and system integrity applications - as long as Microsoft doesn't deliberate try to break it.
Even so, it will be interesting to see if the concept can be applied to OTHER OS's - such as the Mac, perhaps?
Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
I did not RTFA, but wouldn't this make a good alternative SW firewall for windows? Setup all windows networking through coLinux and getting rid of Norto^H^H^H^H^H [random crummy firewall app] Or am I missing something?
DirectX is great for PC Games - but for real scientific/commercial work it *SUCKS*. Not exactly. I know that at least in the simulation area DirectX pretty common in the commertial software under Windows. If app intended for windows only DirectX have some advantages (mostly managing texture memory). Thogh difference not so big. Don't forget that both OpenGL and DirectX not much more then the interface to the hardware 3D.
Heh. I'll take this on, I agree with it mostly, but there's a few things I wanted to bitch about, but not at you directly.
First, we need to decide if we want *every single* desktop, or if we'll just be happy with "enough". You know, "enough that we can run Linux without being oppressed by Windows zealots" and so forth. "Enough" that we can reasonably expect a document sent to us in email will be readable in our environment, and so forth. That's what I want, and when we have that I don't give a rat's ass how much of the market Windows has.
Cygwin seems to go mostly unscathed, but a lot of people bash WineX. Regular ol' wine catches some complaining, as does Crossover Office.
Near as I can tell, WineX and Crossover Office get bashed regularly as an extension of the Wine License Schism. I think wine catches flak just because of existing bad blood between various factions and is completely self-defeating. Wine is great, runs a lot of stuff, but doesn't run a lot of stuff well, at least in my experience. I think wine's best purpose is to allow applications to be recompiled for LInux that were written for windows. That's what I think, anyway. ;)
Anything dealing with Microsoft servers (Exchange interoperability, for example) occasionally gets the same.
This stuff irritates me because there's a reason Exchange does many of the things it does. Bashing interoperability with Exchange ignores the basic fact that Exchange got those features and a fair bit of subsequent adoption because *NIX didn't have them. Or we did, but our implementation was kludgy and unwieldy. Interoperability with Exchange is now required if we want to get those servers back.
Ports of Linux software to Windows sometimes catch flak.
There's two sides to this that I can see right away. There's one side that says "If all of our great stuff runs in Windows, nobody will ever *need* to switch", and there's the side that says "If all of our great stuff runs in Windows it'll be very *easy* to switch". I can see both sides of this argument, although I'm generally in the second group. Cross-platform compatibility is a goal we really need, and in the absence of standards that work in a lot of areas (granted, we are also in the presence of standards that work in a lot of areas), then the only way we can get some of our own standard agendas and interoperability to work cross-platform is to port Linux stuff to Windows. If you ask me, and you haven't, I'd say it's immoral and unethical to write an end-user application that doesn't run on multiple platforms. Since when does the developer get to pick and choose what platform the end-user uses? Plenty of cross-platform development libraries and kits available, no excuses left.
In the case of WineX ports, they worry that game companies may feel that advising users to use WineX is "good enough".
This argument falls on its face in general. One of the top reasons I hear from family and friends for not switching to Linux is because of games. !? Right. Fucking games. Well, if all their favorite games (such as Everquest, for example) run fine in WineX, they can switch if they really want to. When enough people switch, the game developers will continue to do what they do best: make games that require lowest-level access to the hardware for best performance. And they'll look at their audience and they'll say....
Your line, George.
OH yeah. "Hey you, get your damn hands..."
Er, anyway. Then we'll get native LInux games that really fucking rock, because the audience will be there.
Like what I said? You might like my music
Well, it's not the fonts that are bat. It's the way they are rendered on screen. Fuzzy.
What's the point of running Linux under Windows? I can only see one purpose: it makes cross-development of applications a bit easier - and then it's not much better than cygwin. So you gain the ability to run Linux applications natively on Windows. So what? All of the good ones work on Windows anyway... OO.o, Mozilla, Apache, MySQL (I think). The only reason anyone runs those on Linux is because its faster (often) and more stable (almost always) than Windows. The article is a bit misleading in that it makes you thing you have Windows and Linux running in parallel... it's actually Windows running a Linux kernel. So you still can't get it to be any more stable nor faster than Windows. The other way around would be great: Have Linux run Windows applications natively. Wine is doing a good job, but they still have a long way to go.
If it weren't for fog, the world would run at a really crappy framerate.
Tell that to all the hardware I have, which doesn't say "designed for Windows XP". None of it works with windows, no matter if it's designed for Solaris or HP/UX.
You know, if you play modern games on Linux and Windows, the Linux versions always look and perform much better. Take, for example, Win and Lin versions of America's Army and UT2k4.
A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
I would contend that fonts under Linux are a problem. Take Mozilla. You can have all your "fonts" in a row under KDE or Gnome but Mozilla is still likely to render and scale them improperly. Going into prefs and trying to set them to scale usually means having to compromise. This is a fault, perhaps, more with Mozilla than Linux but it's a problem. Installing font-type "x" or "y" is just not the answer. A good look and feel out of the box is needed. I would agree that SuSE and most new distro's do this well, but go install some apps (again, Mozilla) and watch it all go to pot.
I don't know. Each time this kind of conversation starts, there is a lot of talk about standardisation and 'the one true interface'. I am replying to this thread because I have read two very well thought out replies and thought 'this I can talk about'.
Your points about shortcut keys and the like are interesting. I will admit that most windows apps I use share the same shortcuts, but then most of the Linux apps I use do too. I am typing this in Mozilla (I know -- the cross-platform nature of the app makes this more windows-like), and it obeys all the rules you mentioned. Likewise Openoffice, Koffice, gnumeric, etc.
On the other hand I type almost all my documents in Emacs, and the bindings I had to relearn there are used consistently in my Matlab editor and on the Bash command line.
In my experience, most users will see buttons as buttons regardless of the exact widget set you are using. Take winamp as a good example, or any recent game. Their interfaces look as similar to the standard windows interface as many of the linux apps I run. Because of the power of the GUI and the basic widgets everyone knows, they can learn to recognise that something that looks like a button probably is.
Most linux window managers mimic the Windows setup of close button top right, but it irritates me no end, as I keep closing stuff when I want to max/min it. So I have moved my close button to lop left.
The point I am trying to make is that for most of the applications people use regularly, the interfaces have been standardised enough already. The apps with confusing config files and the like are probably that way because of a user base that is familiar with the way things work and would probably be confused more by a change to a user friendly GUI than anything else. So how much more standard do the applications have to be?
Languages aren't inherently fast -- implementations are efficient
Dude, where are these cut and pase issues you speak of? Select middle click or use cut/paste in the app of your choice. What's missing?
Languages aren't inherently fast -- implementations are efficient