Win4Lin 5.0 Reviewed
uninet writes "About a month ago, NeTraverse contacted OfB Labs with an early release copy of Win4Lin 5.0, the follow-up to the already impressive Win4Lin 4.0 released in May 2002. Win4Lin, for those not familiar with it, offers near-native (or better) speed "virtualization" of a Windows box so that one can run Windows 9x (95/98/Me) inside GNU/Linux."
It looks like one of the most important new features is Winsock 2 support.
Check out Transgaming. They support a variety of DirectX games, including some 3d games iirc. They do this through extending wine to support DirectX. What I don't know is if they feed changes back into the mainline Wine. I do know that CodeWeavers do, but they don't support DirectX...
On the other hand, the age old question is that if Windows emulation works SO well on Linux, then will there ever be a commercial market for native Linux apps? I'd rather see native ports of these various apps/games, and I hope emulation is simply a stopgap...
get some 3D going, which is why I _really_ want Windows at this point. What's stopping them from doing this?
Direct access to the hardware via highly optimized video drivers and specific graphics libraries are very hard to virtualize with a level of performance that matches the "native" Windows running directly on the hardware.
First we have the simple fact that by running via the Win4Lnx you have an additional layer that does messages parsing and translation (from various Windows API including DirectX graphics API) to a native Xfree86/Linux function call, which has to then go through a network aware display system, and gets painted on your display using a video card driver not written in-house by the card manufactor, but a 3rd-party free software developer, who likely had less than full, to possibly no vendor documentation about the card and how to make full and optimized use of its capabilities.
So I doubt you will ever see a solution that provides full performance supporting the at the time current gaming graphics capabilities supported via a virtualizer (creates an additional virtual machine using special CPU instructions rather than emulator that emulates everything in software) because they are always playing catch up, and they add unavoidable additional layers of translation that negatively impact on execution speed compared to native running OS.
It kills VMWare speed-wise. Boots up in about 15s on my old P-3 800MHz box.
Seems like having actual memory management code and a file system was sufficient to speed up a P133 from 'unacceptably slow" to "pretty quick".
--dave
davecb@spamcop.net
Well, when I used Win4Lin (up to 3.0) it was fairly fast and efficient. The one concern was that it modified the kernel and that it was necessary to run this through a modified kernel in order to have access to your Win4Lin sessioms.
;)
It performs well. I used it to have access to GUI tools on my Linux box then so that I could administer a DB on the Linux box through Samba (same PC w/GUI interface then on Windows). Windows acted like a different host on the machine and it worked flawlessly for me but, as always, YMMV.
It's a lot faster than VMWare, but only supports 98 and ME, whereas VMWare supports all of that and 2000, XP Professional.
For those who want that sort of thing, it can also fool your users into thinking they are running Windows through their terminal server sort of applications. No games - No 3D - No DistractiveX though. If you want that, you should dual-boot or better yet - buy Linux games and stop buying Win based stuff.
Of course, games are what Windows was made for anyway - it doesn't really have the security needed to be taken as a serious business platform by anyone who really has to support their stuff. They would much rather have something stable and reliable that doesn't fall over quite so easily.
Just an honest opinion and my two centavos.
All Ad hominem replies happily ignored as the sender shall be deemed to lack the faculties to comprehend the equation.
oh, you mean cygwin. or maybe knoppix
FreeBSD for the impatient.
No.. supporting the "ring 0" windows versions is a much larger emulation task. WinNT/2k, and XP do not tolerate not having full control of the processor. VMWare can do this, becuase it emulates the hardware. Win4lin "shares" the hardware between Linux and windows (windows never has full control of the proc).
Rumor has it that netraverse is working hard on a Win2k version of Win4lin. Hopefully they will be able to produce a solution that is not as bloated as VMWare.
Pros:
VERY fast. About 95% of the speed of a real Windows installation. In some cases faster, such as startup/shutdown, both of which are near-instant.
VERY easy to install. Run the graphical installer, it downloads the neccesary kernel patch (needed to make Windows think its running on top of DOS instead of Linux), installs everything. Reboot, and you're done.
VERY compatible. I've yet to find a program that runs on a normal WinME box that won't run on Win4Lin WinME.
Good networking support. You can have your Win4Lin install connect to your LAN (via a virtual NIC).
Cons:
Programs seemed to crash more often in Win4Lin than in actual Windows. This may be fixed in 5.0.
Windows doesn't get to use a lot of your hardware. Mouse, keyboard, CD-ROM, sound (thru your linux drivers), printers (thru your linux drivers) and serial ports are accessible. Almost anything else (scanners, other USB toys, etc) are not. May be improved in 5.0.
Clipboard isn't consistent between Linux and Windows. May be fixed in 5.0.
No 3D, and only limited DirectDraw. Not much can be done about this.
Yeah, so it's not perfect, but it definitely beat the hell out of VMware or any other similar programs.
I mean, if you want to use Windows applications, just install the Windows that came free with your computer. For the cost of Win4Lin or Wine, you can get a whole nother hard drive to dedicate to Windows, and it will be fully compatible.
Yes, but that means you have to dual boot... I stopped doing that a decade ago. It was a PITA, and you lose state -- if I'm working on something in one window, and need to work on something else, I shouldn't need to reboot. I often leave 3-4 windows up with development stuff (code, running programs, log files, etc) while going off to do other stuff. If I have to reboot in order to do "other stuff" then I have to quit out of any files I'm editing, close all my windows, and reboot... odds are I won't remember precisely where I was in the coding cycle when I come back to it unless those windows are still present.
It would be even worse if the documentation for the project (largely in Word docs, some in a wiki) meant I had to reboot everytime I wanted to view the latest copy.
Dual booting is a kludge IMO.
On a related note, how come there are no Linux emulators for Windows? Is it because Windows has better alternatives to any Linux program, or is there some sort of GPL patent issue?
Nice troll.
It's because the Linux/Unix/POSIX APIs are clearly documented and well known (which is not true for the Windows libraries). In fact, Windows uses most of the very same system calls. Many Linux programs are portable and can be compiled not only on other Unix systems, but also on Windows. Cygwin is a port of the basic Unix libraries and a boatload of Unix utilities, along with an X/Windows Server, to Windows... there are also cross-compilable graphics toolkits like Qt that help in porting graphical apps.
The better bit is particularly funny... the best Oracle client I've used is TOra, which was originally developed for Linux and cross-compiled to Windows. The best MP3 tagger I've found is EasyTag, only available on Unix systems. Most of the better programming tools are Unix oriented, with backports to Windows (if ported at all).
You've got that all wrong! SCO licenses the technology from NetTraverse, not vice versa. It doesn't use any SCO code and you do them a disservice for claiming otherwise.
Sorry for shouting, but this is getting crazy! People are slamming NeTraverse for using SCO technology and are even calling to boycott NeTraverse. That is simply untrue. Below is a quote from Jim Curtin, the CEO of NeTraverse: "Win4Lin is not built on technology licensed from SCO. SCO licenses technology from NeTraverse as an OEM and packages the technology on their UNIX platforms under our name "Merge". We do not license anything from SCO (nor do we need to)." People should check their facts before posting accusations and calls to boycott. They (the posters) have done NeTraverse and the Slashdot community a grave diservice. Instead of boycotting Win4Lin, maybe the posters should go out and by a copy to make amends for the mis-information they've spread and the harm they've done. Dcnjoe60 NOTE: I have no affiliation, whatsoever with NeTraverse, Win4Lin, Jim Curtin or SCO. I just think the record should be set straight on this one issue.
Folks,
;-)
Win4Lin is not built on technology licensed from SCO. SCO licenses technology from NeTraverse as an OEM and packages the technology on their UNIX platforms under our name "Merge". We do not license anything from SCO (nor do we need to). From time to time we have used wording on our web site and in our literature that is accurate but perhaps on a quick read might be misconstrued. The comment "Win4Lin Terminal Server 2.0 is derived from proven technologies developed for Unix® based operating systems over the last 15 years, most notably those of SCO® (Caldera®), under the product name of Merge(tm)" is meant to convey that our technology has been in use on SCO variants of UNIX for some time - not that it is based on SCO technology. SCO Merge (or Sun Merge, or whatever Merge) is our product.
Rather than try and clarify the language on our web site, we will be taking it off
I hope this clears up the misinformation.
Jim Curtin
CEO NeTraverse
I have Win4Lin and will no longer use it.
The Kernel modifications necessary to run it are too much to keep up with. Everytime you upgrade you have to either wait on them to build a kernel or patch the kernel yourself. And they do not come out with new patches quickly. And they only seem to support the kernel that ships with your linux distribution.
It's a shame that they seem either not able to or refuse to incorporate their patch in the kernel. If they did then this would be a very cool package. As is, it works fine, just locks you into the shipping kernel or a home patched kernel to use it everytime you upgrade.