User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User...
Transcript of User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User...
![Page 1: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/1.jpg)
User Mode Linux, VMWare andWine
Virtual Machines Under Linux
Brad Marshall
Plugged In Software
SAGE-AU – p. 1/43
![Page 2: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/2.jpg)
Contents
What is UML
What use is UML
What hardware can UML support
Installing UML
Networking
Copy on Write
Host file access
Serial Lines and Consoles
Management Console
SKAS and TT Mode
Running X
Compiling a UML kernel
UML HoneypotSAGE-AU – p. 2/43
![Page 3: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/3.jpg)
What is UML?
Port of linux kernel to linux system calls, rather thanhardware
Gives a virtual OS - no machine emulation layer
Disk storage is done via files on host system
Can control what hardware the virtual machine canaccess
Won’t damage real computers hardware or software
Runs own scheduler and VM
UML kernel and processes run as processes on hostkernel
Can run as any user
SAGE-AU – p. 3/43
![Page 4: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/4.jpg)
UML Architecture
Hardware
Linux Kernel
Process 1
Process 2
UML
...
SAGE-AU – p. 4/43
![Page 5: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/5.jpg)
What use is UML?
Safe way of running Linux distributions
Kernel development and debugging
Process debugging
Learning
Secure sandbox / jail
Honeypots
Test environment
Disaster recovery practice
ISP’s virtual hosting
.... whatever!
SAGE-AU – p. 5/43
![Page 6: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/6.jpg)
What hardware can UML support?
Block devices
Consoles and serial lines
Network devices
SCSI devices
USB devices
Sound cards
PCI hardware (in progress)
SAGE-AU – p. 6/43
![Page 7: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/7.jpg)
Installing UML
Host machine needs 2.2.15 or 2.3.22 (or later)
Patch available for older kernels
Minimum needed:UML kernelRoot filesystem to boot
Optional host kernel patch for skas (Separate KernelAddress Space)
SAGE-AU – p. 7/43
![Page 8: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/8.jpg)
UML Utilities
uml_moo - merge COW file with its backing file
uml_mconsole - attach to UML management console
uml_switch - switch daemon
uml_net - setuid helper for network setup
tunctl - create and control persistent TUN/TAPinterfaces
SAGE-AU – p. 8/43
![Page 9: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/9.jpg)
Networking
Transports can provide network to:Local hostOther machines on local netRest of the internet
Done using one of the available transports:Exchange packets with host
ethertapTUN/TAPslipslirppcap
Virtual networkMulticastswitch daemon
Uses uml_net setuid helper for configuration SAGE-AU – p. 9/43
![Page 10: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/10.jpg)
Choosing a transport
ethertapif you want access to the host networking and it isrunning 2.2
TUN/TAPif you want access to the host networking and it isrunning 2.4. Can use a preconfigured device, whichdoesn’t require uml_net
Multicastif you want a purely virtual network and you don’twant to set up anything but the UML
a switch daemonif you want a purely virtual network and you don’tmind running the daemon in order to get somewhatbetter performance
SAGE-AU – p. 10/43
![Page 11: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/11.jpg)
Choosing a transport cont
slipthere is no particular reason to run the slip backendunless ethertap and TUN/TAP are just not availablefor some reason
slirpif you don’t have root access on the host to setupnetworking, or if you don’t want to allocate an IP toyour UML
pcapnot much use for actual network connectivity, butgreat for monitoring traffic on the host
SAGE-AU – p. 11/43
![Page 12: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/12.jpg)
UML Networking Kernel Boot Args
General formateth<n>=<transport>,<transport args>
Multicasteth<n>=mcast
TAP/TUNeth<n>=tuntap„,<IP address>
Ethertapeth<n>=ethertap,<device>,<ethernet address>,<tapIP address>
SAGE-AU – p. 12/43
![Page 13: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/13.jpg)
UML Networking Kernel Boot Args
Switch daemoneth<n>=daemon,<ethernet address>,<sockettype>,<control socket>,<data socket>
Slipeth<n>=slip,<slip IP>
Slirpeth<n>=slirp,<ethernet address>,<slirp path>
Pcapeth<n>=pcap,<host interface>,<filterexpression>,<option1>,<option2>
SAGE-AU – p. 13/43
![Page 14: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/14.jpg)
Sharing filesystems between UMLs
Uses copy-on-write layering in the ubd block device
Layers a private read-write device over a sharedread-only device
Useful when using lots of virtual machines - saves lotsof disk space
Writes are done to private device, reads from either
Do not boot directly from read-only backing files - willinvalidate any COW files that use it
SAGE-AU – p. 14/43
![Page 15: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/15.jpg)
Creating COW files
To create COW file, boot withubd0=root_fs_cow,root_fs_debian_22
After creation, only need:ubd0=root_fs_cow
Name of backing file is stored in COW file header
To merge a COW file and backing file:uml_moo <COW file> <new backing file>
SAGE-AU – p. 15/43
![Page 16: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/16.jpg)
Host File Access
hostfs allows mounting of files from host filesystem
Check hostfs is available on virtual machine by lookingat /proc/filesystem
Mount it by:mount none /mnt/host -t hostfs
If you want to mount a subdirectory:mount none /mnt/host -t hostfs -o /path
SAGE-AU – p. 16/43
![Page 17: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/17.jpg)
Serial Lines and Consoles
Can attach serial lines and consoles to a variety of hostI/O channels
ptysttysfile descriptorsports
Done via a command line option, of format<device>=<channel>
Consoles use device con, serial lines use ssl
Use device number to talk about specific device, withoutspecifies all
SAGE-AU – p. 17/43
![Page 18: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/18.jpg)
Serial Lines and Consoles Channels
Pseudo terminals - <device>=pts
Terminals - <device>=tty:<tty device>
Xterms - <device>=xterm
Port - <device>=port:<port no>
File descriptors - <device>=<fd>
Nothing - <device>=null
None - <device>=none
Specify different input and output channels by putting acomma between them
SAGE-AU – p. 18/43
![Page 19: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/19.jpg)
Management Console
Low level interface to kernel, like SysRq
Allows you to:get the kernel versionadd and remove deviceshalt or reboot the machinesend SysRq commandspause and resume the UMLmake online backups without shutting down the UMLreceive notifications of events of interest from withinUML
Needs uml_console (part of uml utilities) andCONFIG_MCONSOLE
SAGE-AU – p. 19/43
![Page 20: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/20.jpg)
Management Console Usage
When booting UML, there will be a line like:
mconsole (version 2) initialized on/home/brad/.uml/4UUEHn/mconsole
Can specify unique machine id passing umid=debian
Attach by calling uml_console with mconsole socket orumid
$ uml_console debian
SAGE-AU – p. 20/43
![Page 21: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/21.jpg)
Mconsole Commands
versionPrints UML version
halt and rebootShuts down machine instantly
configAdds a new device or queries config of existing one
removeRemoves device from system
SAGE-AU – p. 21/43
![Page 22: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/22.jpg)
Mconsole Commands cont
sysrqTakes one letter argument, calls kernel’s SysRqdriver
helpGives help
cadCalls Control-Alt-Delete on UML instance
stop and goPauses until go is run
SAGE-AU – p. 22/43
![Page 23: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/23.jpg)
Tracing Thread Mode
Each UML process is also a process on host
Tracing thread that does system call tracing on UMLprocesses
Tracing thread nullified system calls, caused process toenter UML kernel (mapped to upper part of addressspace)
Problems:UML kernel is present in address space of itsprocesses, and by default is writeableUML’s jail fixes this by making it read-only, but at aperformance costKernel can still be read and found out that it is a UMLUML uses signals to send control to UML kernelduring system call or interrupt
SAGE-AU – p. 23/43
![Page 24: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/24.jpg)
Seperate Kernel Address Space Mode
UML kernel runs in diff host address space fromprocesses
Address space is identical to what it would be on thehost
Requires kernel patch on host
On virtual machine, make sure you haveCONFIG_MODE_SKAS
Will fall back to TT mode if host doesn’t have support
On bootup, will see:
Checking for the skas3 patch in the host...foundChecking for /proc/mm...found
SAGE-AU – p. 24/43
![Page 25: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/25.jpg)
Running X
Run X clients on host X serverSetup network as normalSet the display to the host’s X server then run clientsas normal
$ export DISPLAY=host-ip:0
Run a local virtual X serverSetup networking as normalRun XnestSet the display to Xnest, then run clients as normal
$ export DISPLAY=:0
SAGE-AU – p. 25/43
![Page 26: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/26.jpg)
Compiling a UML kernel
$ tar xvfj linux-2.4.20.tar.bz2$ cd /path/to/kernel$ zcat uml-patch.gz | patch -p1$ make config ARCH=um$ make linux ARCH=um$ make modules ARCH=um$ sudo mount /path/to/root_fs \
/path/to/mnt -o loop$ make modules_install \
INSTALL_MOD_PATH=/path/to/mnt/ \ARCH=um
SAGE-AU – p. 26/43
![Page 27: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/27.jpg)
Building a UML filesystem
mkrootfs - command line utility for building multiplefilesystems
UML Builder - Step by step UML filesystem builder
gBootRoot - GUI app for creating UML filesystems andboot disks
rootstrap - Debian filesystem creation util
SAGE-AU – p. 27/43
![Page 28: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/28.jpg)
UML Honeypot
Allows the use of one host for the honeypot
Traffic logged from that host via iptables
Intruder can get root on UML without endangering host
Kernel option, honeypot, to rearrange address space toallow stack smash exploits to work
Kernel option, jail, protects kernel memory fromprocesses
Useful UML features for honeypotstty logging - logs all tty traffic out to hosthppfs - HoneyPot ProcFS - allows /proc to bemodifiedskas mode - process address space is identical tohost
SAGE-AU – p. 28/43
![Page 29: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/29.jpg)
UML Future
SMPEmulate more processes than host has
ClusteringRun UML across multiple hosts (and multiple OSes)
SecurityHoneypotJailed servicesSandbox
hostfs extensionsAccess to local and remote filesystems (rsync, ssh)Mount databases as filesystem
SAGE-AU – p. 29/43
![Page 30: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/30.jpg)
UML Future cont
Ports to other OSesWindowsNon-i386 linux
Embed UML into applicationsMount application as filesystem, modify it via fsSee connections as processes
Providing colocationAlready happening - some ISPs providing servicesusing UML
SAGE-AU – p. 30/43
![Page 31: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/31.jpg)
UML Conclusion
Implementing UML has shown up bugs in Linux kernel
Running applications in UML makes debugging easier
Good for securely hosting services
Can give Linux the ability to move into areas it wasn’t
Ability to run virtual machines can give good testenvironments
Still in early stages of development
SAGE-AU – p. 31/43
![Page 32: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/32.jpg)
VMWare
Provides a virtual machine to install an OS on
3 main productsWorkstation
Run multiple OSes on the desktopGSX Server
For providing virtual servers on enterprisehardwareProvides support for clustering of virtual machines
ESX ServerHas own operating systemGuarenteed service levels for virtual machinesProvides remote management functionality
SAGE-AU – p. 32/43
![Page 33: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/33.jpg)
VMWare Booting
SAGE-AU – p. 33/43
![Page 34: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/34.jpg)
VMWare BIOS
SAGE-AU – p. 34/43
![Page 35: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/35.jpg)
VMWare Login
SAGE-AU – p. 35/43
![Page 36: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/36.jpg)
VMWare Tools
Useful utilities available in vmware tools
Includes:SVGA driverGuest OS serviceTools control panel
SAGE-AU – p. 36/43
![Page 37: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/37.jpg)
VMWare Toolbox
SAGE-AU – p. 37/43
![Page 38: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/38.jpg)
VMWare Toolbox
SAGE-AU – p. 38/43
![Page 39: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/39.jpg)
VMWare Toolbox
SAGE-AU – p. 39/43
![Page 40: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/40.jpg)
Wine
Implementation of Windows win32 and win16 API onlinux
Supports Win32 (Win9x/NT and XP), Win3.x and DOS
Doesn’t require MS Windows to run
Can use native system DLLs if available
Graphics - DirectX and OpenGL
Supports networking, sound, serial ports, etc
SAGE-AU – p. 40/43
![Page 41: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/41.jpg)
Wine Versions
ReWindForked version of Wine from when it changed fromX11 license to LGPL
Transgaming WineXDesigned for gamesIncludes Direct3D and copy protection support
Codeweavers Wine previewNice setup program for easy install
Codeweavers CrossOver pluginUsed to run Win32 browser plugins in Linux, egQuickTime
Codeweavers OfficeGood support for MS Office
Both Transgaming and Codeweaver contribute code back toWine.
SAGE-AU – p. 41/43
![Page 42: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/42.jpg)
URLs
User Mode Linuxhttp://user-mode-linux.sourceforge.net/http://www.usermodelinux.org/
VMWarehttp://www.vmware.com/
Winehttp://www.winehq.com/
SAGE-AU – p. 42/43
![Page 43: User Mode Linux, VMWare and Wine - HUMBUGquark.humbug.org.au/publications/linux/uml.pdf · User Mode Linux, VMWare and Wine Virtual Machines Under Linux Brad Marshall bmarshal@pisoftware.com](https://reader034.fdocuments.us/reader034/viewer/2022042613/5f93485134cf9b19a91dca61/html5/thumbnails/43.jpg)
Questions?
Questions?
SAGE-AU – p. 43/43