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.)
All the ease of use of Unix running on the stability of Windows.
Cool! Amazing Toys.
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
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.
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?
Using Wine to emulate Windows to emulate Linux...
This comment was thought up very late at night and does not necessarily reflect my views at a more reasonable hour.
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.
Why? and How?
Hardware is so cheap, I would just get two boxes.
Landrew, guide me!
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.
-- the only good thing the French ever did was two chicks at one time
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 Haaretz.com that is carrying details of this story, Microsoft has so far made no comment on Aloni's development.
With Cygwin, you aren't running a full blown Linux environment. Here is the Cygwin FAQ. I can't read the article (Slashdotted), but judging from the snippet here, it seems like coLinux will run an actual Linux image, which would be a big difference.
The biggest benefit I see is that people could start running (and liking?) Linux applications without having to make "the big switch." Once they realize that they like Linux better and [hopefully] can do everything they need to under Linux, then the next computer they buy may run Linux alone. It's certainly more elegant and appealing to current Windows users than just telling them they're unsophisticated dolts for not using Linux.
Sigs are dangerous coy things
- Dunno, seems like the original article missed the actual link.
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.........
...so users don't have a choice when they buy Dell, Compaq/HP or other brand names.
:0>
Thats how you change the world.
Worked well for Microsoft.
"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!
You're comparing twm (an ancient window manager used by basically nobody these days) vs. WinXP (the latest and "greatest" from Microsoft)? Give me a break... A comparable Windows GUI for twm is Win1.0...
Even with the KDE shell (via Knoppix), the XP UI is much more polished and 'consumer friendly' than the KDE shell.
I respectfully disagree. The WinXP UI is much more "fisher price": big primary colors, and almost insulting to look at. Win95/98 was much better. But KDE is prettier than both.
I know god exists. I read it on the internet, so it must be true.
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.
CoLinux is apparently somewhat similar to Plex86, but additionally requires admin access whereas Plex86 wasn't supposed to. Anyone know more?
There are three approaches to this problem (aside from virtual machines, like VMWare, or emulation).
The Cygwin approach is to provide basically a windows library that implements the Linux API. You can then recompile Linux programs using that library to run on Windows.
The CoLinux approach is to basically run the Linux kernel as a process on Windows, and then you can run Linux binaries under Windows. Think of it as conceptually like User Mode Linux, but running on Windows instead of Linux.
The third approach is what my employer is doing, in a product that we have in beta right now, which I won't name since I'm not sure if we have announced this yet. It's kind of in between Cygwin and CoLinux--it provides an implementation of the Linux API on Windows, so you can run Linux binaries, but it has no Linux code in it. Basically the same way WINE lets you run Win32 binaries on Linux.
From what I remember:
1) It runs as a device driver under Windows, which provides it with hardware access.
2) It doesn't yet run X correctly; any screenshots showing an X interface were done by running a separate X server under Windows and having CoLinux talk to that.
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... ;-)
-m
>Cygwin was a nice placeholder until Linux arrived for Windows. Now it is irrelevent. I wouldn't be surprised to see reports of its death shortly.
Not so fast, hombré.
CoLinux doesn't even have X yet.
You actually NEED Cygwin/X to be able to display any graphics, unless you want to run text-only... Which is reliable and all, but visually underwhelming for what Linux can actually do.
I don't know the meaning of the word 'don't' - J
4.) ???
5.) Users
cleartype fonts? You mean sub-pixel hinting? That's been available for a long time.
Yes, OpenGL/SDL isn't good enough, Linux needs to implement an inferior, proprietary API.
My blog. Good stuff (when I remember to update it). Read it.
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.
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.
How about a list of things wrong with your post instead?
1.) Linux has plenty of great fonts, it just depends what distro you pick and if you install more than just the base packages.
2.) DirectX is a MICROSOFT ONLY format. It will never, ever, be in any linux distro except in emulation form. And for second, why should it be? OpenGL is fine and great, and with 2.0 coming out you can stuff DirectX where the sun don't shine.
3.) Great, so linux gets to turn into Windows by taking away the free choice of picking your own gui? I don't think so! MORON.
Maybe this project doesnt "Fill the gap" but there's enough decent distro's out there to make using windows a pain in the a$$
~~ Please keep your arms, legs, and outright stupidity inside the ride at all times. Thank You ~~
"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.
"Derp de derp."
1.) cleartype fonts
Couldn't care less. I've never been bothered by my fonts.
2.) automatic directX compatibility for games
This would be a good one. I could go 100% Linux at home.
3.) one solid universal gui
This I don't get. One of the strengths of Linux is options. I don't use a computer the same way as the guy next to me, why should we be stuck with the same interface? I'm incredibly productive in AutoCAD at work, partly because I have customized the interface to exactly the way I use it (to the point where nobody can use my machine).
I know training and support require standardization, but the more you use something, the more you want to make it work the way you like. Standardization breaks this, and makes people less happy and less productive.
And you forgot the most important thing:
4.) Applications!
If I could run AutoCAD on Linux, I would use it at work (for something other than a server). My mother would consider running Linux at her business, if the main application she uses supported it. People read the requirements for the software they buy, and it says "Windows XP", so they run Windows.
A big part of what keeps many users from switching is fear of being in a totally new environment that don't understand. This provides a midpoint between the two worlds: get a taste of Linux, and if you start to panic just hit the good old "Windows" key on the keyboard and you're back to familiar territory. (Or CTRL-ESC, but chances are if you're running Windows you have a keyboard with a "Windows" key...)
.conf file that you have to edit by hand.
Of course, the second biggest part of the hurdle is customizing the system without having to learn all the nuts and bolts of operating system function. This is *almost* solved, but compared to the rather intuitive and standardized interface that Windows has nothing in the OSS community has been able to match it.
For example, tweaking options for a program should be done via an "options" menu of some kind there is a logical, visual organization to the settings with checkboxes and drop down lists, not a 30+ page
God help you if it's case sensitive or syntactically anal, too; you may never get it right unless you've done it several times before. Your average home user doesn't have the patience to deal with that kind of thing, and until this hurdle is taken down they'll stick with Windows for sure.
=Smidge=
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?
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.
Mark.
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...
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.
Pretty much
- every
distribution can make this happen for you automatically... (yes, speaking from experience). The most recent of which I installed was Mandrake, works like a charm, nice easy colorful menu and all =-P (This is on an old Thinkpad 600E, with only one hard drive, so I'd assume you would have no problems at all).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.
I recall there being a lot of discussion when ms introed Cleartype about Steve Wozniak having developed a virtually identical font smoothing algorithm for the Apple II. Has this been rebutted? Do a google search for wozniak and cleartype. Here's one article.
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.
You can't say that this won't take the world by storm. Just imagine -- a system with all the stability of Windows and the user-friendliness of Linux! What's not to like?
May we never see th
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.
Part 1 | Part 2
Yes but then it would only run Linux alone. The beauty of this system is that it provides both a social as well as technical solution to the Open Source problem.
The technical solution is that it will allow native Linux applications to run in Windows without the massive overhead of emulation.
The social solution is when some Pointy Head Boss who is taken in by MS FUD about the evils of linux and wants you to write an app in that runs in Windows for a task that you know Linux can preform better.
So what do you do? With coLinux, you can still write the app to run in Linux, then run it on the windows machine with coLinux. So it makes the PHB happy by giving the impression that it's running on Windows, but Linux is actualy doing the work and at the same time you gave Linux a foothold on Windows' terrortory.
So down the road, when MS decides it's time to "Upgrade" you can propose that instead of spending millions on new MS licences, you can show that all the applications that were written to run the business runs perfectly and exactly the same under Linux, and it's time tested since all this while Linux was doing the work, thereby justifying ditching MS altogather.
Why this is good is that it provides a bridge between Windows and Linux. You can demostrate without leaving the Windows enviorment, the power of Linux and at the point where you eventualy make the transition, re-education needs will be minimal as employees will already be familier with using native linux apps.
Finally, a technological fix for a social problem.
Sometimes I wish I was a plumber, then I'd know how to deal with other people's shit.
The only thing I'd use this for is to run WINE to get my favourite Winshit apps running under .... wait a minute!
Engineering is the art of compromise.
QEMU can't run windows very well yet, but it runs Linux, ReactOS and handful of others already.
DirectX is great for PC Games - but for real scientific/commercial work it *SUCKS*.
Much more money in PC games though I'm afraid. And as always, money talks.
All? Have you downloaded and installed the Bitstream Vera families into your X11 font server?
NT's POSIX support is POSIX.1 support. The Unix world is interested in POSIX.2.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
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)
What are you talking about?
1. Of course you shouldn't be running the xserver in it. The documentation clearly states this, and explains that the way to get a gui is to either:
a) Run an X server under Windows and use XDMCP to connect... or
b) Use VNC to connect to it.
PS: There is a bug in the libpam-runtime, so have fun doing any sort of apt-get upgrade action.
First of all... if this were true, it would be a bug in one of the harddisk images, not in coLinux... coLinux is just the kernel and the mechanism for running it in windows... It is not a Linux "distribution".
Second, it works for me. I used the provided debian disk image and dist-upgraded to testing with no trouble whatsoever.
I also had very little trouble using VNC to get Fluxbox running either in full screen or in a window(TM).
Even at version 0.60 it is very impressive. I suppose it will be even more impressive when it is included on a Knoppix cd with a simple installation method for those who are too lazy to RTFM.
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.
cleartype fonts
"ClearType" is a Microsoft branding term. The generalized term, subpixel rendering, is definitely supported under XFree86 and x.org. LCDs with multiple layout order of the RGB elements are even supported.
2.) automatic directX compatibility for games
WINE does this, but honestly, while there are a lot of game developers out there that know DirectX, there's nothing particularly magical about DirectX, and it'd be pretty hard to "just" do DirectX without supporting the other chunks of the Windows API (though I guess you could do a "DirectX-like" API). OpenGL is a truly open standard that's widely supported (and preferred by videocard developers), and SDL and its child libraries provide a more modular system than DirectX does.
one solid universal gui
I see why you want it, but it's not going to happen. Too many KDE people like KDE (which is, while not unbreakably, still strongly tied to Qt) and too many people have legal issues with Qt or prefer GNOME for technical reasons.
Honestly, I don't think it's all that necessary, either. Windows users have been using non-Windows widget sets for a long time in major apps -- Lotus Notes or Mozilla or any of the standard Win32 variants, which operate differently over the Win95-WinXP lifetime. People adapt pretty well. Both Qt and GTK are pretty snappy. Both interoperate pretty well today. Two widget sets is hardly a reason for a platform to fall apart.
May we never see th
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.
Fonts are fonts. I use Windows fonts in Linux. They look great. Big deal.
What do you mean by "the window manager have them?" My fonts look fine. In fact, try any recent distribution like SuSE, Fedora Core, Mandrake, etc., and I think you'll get the same impression.
Without DirectX, few games ever make it to Linux. Thats because DirectX is much more than just a 3-D gaming API. It has other features that make games easier to develop for.
OpenGL+SDL does as well.
Without a standard window manager and a standard API to program for (thanks GNOME vs KDE war), there is hardly any incentive for an application developer to go to linux. Sorry, its just too complicated to make it run correctly (across window managers).
Umm, are you implying that an app compiled against Gnome libraries will suddenly break if you try to run it in KDE? Actually, you can just choose the one you like best and develop for it. Copy and pasting will take care of themselves, and with good themes, they can look nearly identical.
What do you mean running properly "across window managers?" Window managers almost certainly could never prevent a program from working properly, unless they draw a border and buttons when they're not supposed to, for example.
So basically, you can't decide if you would want to program for Gnome or KDE, and you don't like the fonts that distros ship by default (even though haven't been an embarrasing smidgen on the Linux desktop for years), so you don't really think it's worth your time to develop for Linux.
I think it's more than fine to just say "hey, I'm doing fine developing for Windows, I don't have any problems with it, so I don't need to switch." So often zealots convince people on Slashdot that you ought to be ashamed of yourself if you run Windows, and while I disagree with your post and reasons for not choosing Linux as a development platform, I think it's totally fine to not choose Linux for no reason other than you're content with what you have :)
Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
No, really? DirectX was designed explicitly for games. That means that early in its life, it sacrificed accuracy for speed (compared to OpenGL, which took the opposite approach and didn't really gain speed on consumer hardware until 3D accelerators took off). Even now, DirectX is driven by games and multimedia, not CAD and scientific/engineering requirements. There's absolutely nothing wrong with that, and in fact it's better for games that it's focused on games and multimedia rather than engineering applications, because the requirements for games are different.
If you're writing scientific software, use OpenGL. If you're writing a (Windows- or XBox-targetted) game, use DirectX.
Oh, yeah, it's also possible to use DirectX and OpenGL together. Like SDL, DirectX is an entire framework, not just a 3D rendering interface. Id and theCarmack use DirectX for input and sound while rendering their 3D visuals in OpenGL.
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.
If I could run AutoCAD on Linux, I would use it at work (for something other than a server).
There is an AutoCAD clone for Linux. Here's a quote from my Linux user group list. (I haven't used it, so YMMV)...
Date: Tue, 16 Mar 2004 09:41:07 +0100
From: "BricsCad BackOffice" email-deleted
Subject: BricsCAD goes Linux
BricsCad, the market leader in low cost DWG CAD software, today announced the beta release of BricsCad for Linux. The product is based on the IntelliCAD kernel.
BricCad for Linux is an "almost clone" of AutoCAD(r). BricsCad uses the exact same DWG drawing format as AutoCAD(r). Drawings made by BricsCad can be read by AutoCAD(r) and the other way round.
BricsCad for Linux addresses the untapped group of individual and corporate professional CAD users in the LINUX community allowing them to use their operating system of choice without being locked out from the professional Engineering world and the DWG standard.
The full press release can be found on their website(s):
English version
French version
German version
Interested beta-testers are invited to contact BricsCad at linux@bricscad.com
2.) DirectX is a MICROSOFT ONLY format. It will never, ever, be in any linux distro except in emulation form. And for second, why should it be? OpenGL is fine and great, and with 2.0 coming out you can stuff DirectX where the sun don't shine.
At its very core, DirectX is just a set of APIs. Yes, it's a Microsoft API, but the exposed interfaces are well documented, and ignoring any possible legal issues, it is entirely possible to write a DirectX implementation on another platform. Okay, some of you may disagree on whether or not DirectX is well documented, but it's documented well enough for emulation purposes.
There are wrappers available that translate Direct3D calls into OpenGL calls (similar to Glide wrappers from the 3dfx days), and I don't see any technical problems with removing the OpenGL layer and having the new Direct3D implementation call the graphics card directly. However, and correct me if I'm wrong, I think Linux 3D graphics drivers are currently all proprietary, so nVidia and ATI would have to provide the Direct3D layer.
Still, even with an emulation layer, why SHOULDN'T DirectX run on Linux? Ignore legal issues and Microsoft's desires. Believe it or not, there are some developers who've only used DirectX and not OpenGL+SDL. It's worth having DirectX on Linux even if only a tiny fraction of those developers decide to port to Linux. That fraction may grow, and after familiarizing themselves with Linux they may switch to other APIs that are better supported on Linux, such as OpenGL and SDL.
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.
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.
Distributions.
Distributions put these things together for end-users to enjoy, and any recently updated distro worth it's beans has either Gnome 2.4 or the Bitstream Vera fonts. In my not-so-humble opinion, they are far superiour to the fonts in Windows. Unfortunately, however, they look pretty horrid in Windows, if you ask me.
Don't you think you're being pretty unreasonable saying Linux w/KDE or Gnome is unsuitable for anything like this (fonts) when it's already been addressed? You can lead a horse to water but you can't make it drink, download a better distro plz.
"We invented personal computing." - Bill Gates
How do you know he doesn't use a GUI? Is that how you deal people deal with criticism - mod everybody who has no problems down as commandline geeks?
Ever since XFT2/fontconfig and the Bitstream Vera fonts have been released, I've been enjoying high-quality, subpixel antialiased fonts on my Linux desktop computer. I suggest you to upgrade to a modern distribution and use the Vera fonts.
Alternatives are not going away. What's wrong with making both GNOME and KDE so userfriendly that the user can find it's way no matter which desktop he's using?
Some people prefer simplicity while other people prefer power and bells & whistles. What's wrong with being able to choose what desktop you want based on your *preference*?
In case you don't want to choose - fine, use whatever default desktop is chosen by your distribution. You don't have to choose if you really don't want to.
As for standardizes interfaces: even Windows doesn't have standardized interfaces. Installers all look a little different from each other - fullscreen blue InstallShield, MSI, Win2k-style InstallShield, fullscreen Inno Setup, Win2k-style Inno Setup, WinSFX, WISE Installer, etc. etc.
An installation system that handles dependancies with no user interfaction is being worked on - see my sig. We're close to 1.0.
One of the strengths of Linux is options
Well, funny that you think this is a strength. This is IMO the main weakness of all Unix based systems. Too many options means you can be familiar 100% with your system, and yet you won't be able to operate (well) another Linux, because things are so different. Hence the difficulty to debug your mom's Linux on the phone because your freaking brother installed it and he's on vacation right now, so you have no clue how to drive your mom through the command line stuff. With Windows, if she has a Win98 and you too, you're on the same page. It basically boils down to:
If you want a huge userbase, and a lot of knowledge of your system spread around, present a homogen system. Heterogen system will look (from Joes SixPack's point of view) as different systems, and he will be - rightfully - scared. Joe Sixpack wants a system that works. Not a tetrazillion of options and choices. Joe is scared by choices by nature.
Write boring code, not shiny code!
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 OpenOffice.org 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.
Tech Public Policy stuff
Right, Boeing is dirt poor compared to a software comapny that makes FPS games...
At least someone else seems to think so too in this rant.
Joel's rant is incorrect. His whole premise is flawed, because he's arguing from incorrect definitions.
He states anti-aliased text is bad... when what he really dislikes is scalable text.
His complaints all come from the idea that onscreen text can be scaled to an arbitrary non-integer pixel height. If nobody used scalable fonts, his problems would vanish. But given that people do wish to view 12 pt text at 115% WYSIWG magnification, antialiasing is the best option.
He shows two sample paragraphs that he labels as non-anti-aliased and anti-aliased. But if those paragraphs were redone with text scaled 21% larger, then the non-anti-aliased version would be immeasurably uglier.
Is there a reason why it sucks for such work?
Well, the OpenGL guys have long said that DirectX was only concerned with getting things to "look right," rather than having pure mathematical accuracy. In other words, some of the rendering calculations were done in such a fashion as to make them inappropriate for, say, physics modelling, but fine (and faster) for video games.
That said, I'm not sure that argument holds much water anymore with the later versions of DirectX. It's hard to say, since I don't use it. But anyway, from the games standpoint (which I'll agree is lots more important to Linux's mainstream success) it doesn't make hardly any difference now, which was your main point anyway. Both are plenty fast with modern hardware, and do all the stuff games need.
Which of course means that the point that started all this (that Linux needed DirectX compatibility to succeed) is totally bogus. But then, that's no surprise, so were his other two points.
Given a choice between free speech and free beer, most people will take the beer.
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.
Well, shit, here this whole time I thought nvidia.o was loaded into my running kernel each time I booted. (Oh, and before you start going on about the GLX module, it's in the right spot too...suggesting it should be a kernel module would be obtuse at best.
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).
Without a thread model? Pthreads? Oh, and about thread ownership changing dynamically, I'm too frightened by the security consequences of something like this to even think about it.
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.
You know, Linux could use that. Perhaps even through a scheduler that can dynamically reassign priority to a server process when a client is waiting on it....hmmm....Oh wow...that's funny...that's in the 2.6 kernel.
I'm not saying X is perfect...but it's pretty damn good, with speed in the same neighborhood as Windows. And looking at the change in performance over time of the two systems (Windows slowing down, X speeding up), it's not X that should be worried.
Given a choice between free speech and free beer, most people will take the beer.
Maybe now I can final run all of my Linux games on Windows.
Quiet fool! Linux is ready for the desktop! Even my grandmother could use 'ldd' to tell which version of the freetype library her X server is compiled against in order to install a font. Now if you excuse me, I'll be over in the corner waiting for Linux to take over the world. *hands over ears* LA LA LA LA....
Ita erat quando hic adveni.