Advertisement
SpawnHappyJake

Quick and Dirty Intro to WINE

May 25th, 2011
384
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.23 KB | None | 0 0
  1. WINE is like a small, parasitic operating system dependent on its host - except that it's a good thing. Like a parasite, WINE lacks certain abilities to exist as a free-living organism - just like mistletoe can't photosynthesize enough on its own, so it must leech sugar-rich sap from a host. WINE can't be it's own operating system because it doesn't deal with hardware. It depends on its host to deal with hardware for it - at least that's my understanding.
  2.  
  3. When you boot, you tell your processor to run a special program, a kernel, a.k.a supervisory program. The processor is directly running this program. You don't have a program running the kernel - the processor is directly. And this is the ONLY program the processor is directly running. Then all your other programs are ran on the kernel instead of on the processor (stuff has to get passed on to the processor by the kernel, of course).
  4.  
  5. Kernels can provide ready-made code to programs. Programs become dependent on that. Different kernels have different ways for programs to get this ready-made code. Different kernels deal with RAM and stuff differently.
  6.  
  7. So programs have to be compiled for different kernels (it's like compiling for different processors - but you're running on the kernel, not directly on the processor. Stuff still gets passed to the processor, so both kernel and processor have to be accounted for in the compilation process).
  8.  
  9. A kernel is the heart of an operating system. Windows has its own kernel. Linux has it own, and so does Mac. Windows's kernel and ReactOS's kernel are both NT kernels, and Mac's kernel and Linux's kernel are both UNIX-based, but no two of those kernels are identical.
  10.  
  11. Windows programs run on a Windows kernel.
  12.  
  13. WINE is like a kernel that is ran by another kernel. If in Linux, you have the Linux kernel run the WINE "half-kernel" (only the upper half because it doesn't deal with hardware. Also, there are other reasons why Wine isn't truly a kernel, though Windows programs run in it pretty much as though it were a kernel). The WINE "half-kernel" then runs the Windows program. The WINE "half-kernel" program (a process being ran by the host operating system) handles the memory and stuff of the Windows programs it is running.
  14.  
  15. WINE establishes an intimate relationship with the host operating system to the point where a process (program) the WINE "half-kernel" is running actually shows up in the host operating system process list. So if you are running Portal in WINE in Linux, and have Linux FireFox up as well, and bring up Linux's equivalent of Task Manager - gnome-system-monitor, you will see the firefox process, the wine process, and the portal.exe process. Whereas if you were running Portal in Windows in VirtualBox in Linux, the Linux process list would include VirtualBox, but not portal.exe. Likewise, if you were playing Wii Tennis in a Wii emulator, you would see the Wii emulator program show up in Linux's process list, but not the tennis game. This goes to show that Wine Is Not an Emulator - which actually is what it stands for.
  16.  
  17. You can go into WINE configuration and change what version of Windows you want it to mimic. You can also do dll overrides in there, which is where you tell WINE to use an actual Windows dll, instead of WINE's replacement for that dll. Of course, you need the Windows dll to do that. In that configuration window, you can also say whether or not you want to "emulate a desktop". What does that mean? It means that Wine makes a Window that all your programs you run in WINE show up in. I prefer to not emulate a desktop, so that each program I run in WINE is slipstreamed with the host operating system visually.
  18.  
  19. In your user's folder (that's /home/[user name] in Ubuntu, and /Users/[user name] in Mac), WINE places a ".wine" folder. It is hidden. You can press Ctrl + h to unhide all hidden files in Nautilus, a file browser often used by Linux, but you have to hit ctrl + h again every time you want to see hidden files.
  20.  
  21. In Mac, the file browser is Finder. To get Finder to show files and folders marked as hidden, go to terminal and enter these two lines:
  22.  
  23. defaults write com.apple.finder AppleShowAllFiles TRUE
  24.  
  25. killall Finder
  26.  
  27. WINE puts a shortcut to the .wine folder called "Browse WINE C: Drive" in your programs menu (at least in Linux) along with the shortcut that opens the WINE configuration tabbed window (the thing where you can set which Windows version you want WINE to mimic, etc.). If you use that shortcut, you don't have to unhide the .wine folder, it takes you right to it.
  28.  
  29. WINE makes the programs it runs see the .wine folder as the C: drive. Mac and Linux don't have drive letters, but Windows programs expect there to be drive letters. In the WINE configuration, under drives, you can see what paths have been set to look like what drive letters to programs ran in WINE. In that tab, you can modify these setting and even add more drive letters.
  30. Remember that in Mac and Linux, all physical drives are mounted in one hierarchy (here's a video explaining that concept http://www.youtube.com/watch?v=vLgmw1yBN6A), and you just refer to the path where a drive has been mounted to to refer to that drive. If you want to assign a drive letter to a physical disk, you tell it to assign a drive letter to the path that disk is mounted to.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement