You are on page 1of 49

Partitioning and Emulation

Michael Pensini, Jasdeep Hayer & Mrinal Vora

Overview

How to Partition & format of Disks 3 Partitions Made Fat32 file sys used Installation of Win98 & Linux Mandrake 8.0 Installation of software on third partition Implementation of emulator software in Linux Implementation of VMware

Why partition?

You may have 2 operating systems and want to load them individually. File Structure

Convenience in managing files

Why Not?

Space Wastage

Bigger partitions not only waste more space for the same files, they waste a greater portion of the space Disk compression utilities like DoubleSpace are more efficient for space saving rather than partitioning

Selection of Partition Sizes


We were allocated a 9.5GB Hard Disk Partition with size in mind. Obviously Small files for small partitions, Large files for large partitions 2 x 3.5GB Partitions + 2.5GB Partition.

FDISK

Program used with Microsoft to Partition Disks


Use of FDISK 3 partitions 2 Fat32,

Last partition Done under Linux Mandrake 8.0 Installation (EXT2) Primary, Extended and Logical DOS partitions Specifying space

FDISK

Always Backup
. Uncertain about your backup hardware and software?

Partitioning

File Systems

FAT32

File allocation Table Very simple system Resides at top of volume FAT32 increases the number of bits used to address clusters & reduces the size of each cluster. Can support larger disks (up to 2 terabytes) and better storage efficiency (less slack space).

Fat32 Efficiency
Disk Size Cluster Size Efficiency

> 260meg

4K

96.6%

> 8gig

8K

92.9%

> 60gig

16K

85.8%

> 2tril

32K

73.8%

File Systems

Linux has a very fast file system called the Extended File System Version 2 (EXT2)

More complex system

Goals Of EXT2
The data structure should be recoverable Must allow for an efficient implementation Disk layout should minimize seek times by clustering data on disk The disk layout should conserve disk space

Emulators
Like running a computer without an operating system. An emulator is something that duplicates the environment that an application runs in Mimics one OS within another OS

WINE (WindowsEmulator)
Wine is an implementation of the Windows 3.x and Win32 APIs on top of X and Unix Think of Wine as a Windows compatibility layer

How did WINE start?


Started in 1993. Its purpose was for running Windows 3.1 programs on Linux. Bob Amstadt was the original coordinator, but turned it over fairly early on to Alexandre Julliard Over the years, ports for other Unixes have been added

WINE Features
Binary

Compatibility
for loading DOS, Windows 3.x and Win32

Support

binaries Support for Win16 and Win32 function calls 16 and 32 bit x86 code Large interrupt library for programs using realmode INTxx calls Advanced thunking capabilities Optional use of external vendor DLLs Reverse-engineering design assures ``bug-for-bug'' compatibility

WINE Features Contd


Graphics
X11-based

graphics display Remote display to any X terminal Supports full GDI and many new features of GDI32 Partial DirectX support for games Supports native Win16 printer drivers Internal PostScript driver printing interface Metafile driver Desktop-in-a-box or mixable windows

WINE Features Contd

Other Features
Good support for sound, alternative input devices Modems, serial devices are supported Winsock TCP/IP networking ASPI Scanner support

WINE Features Contd


Wine

API

Designed

for source compatibility with Win32 code Sample programs Automatically generated API documentation 32-bit resource compiler Partial Unicode and support Internationalisation -- Wine supports 16 languages Built-in debugger and configurable trace messages

WINE is Windows free


Wine does not require Microsoft Windows Consisting of 100% Microsoft-free code Wine comes with complete sources Wine consists of over 650K lines of C code

Requirements for WINE


Wine is designed to run on any x86 Computer. A minimum of 32 MB real memory is recommended Wine itself as an unstripped version needs 70 MB disk space. A minimum of 140 MB free space on hard disk. To compile Wine, the minimum you will need is 250 MB.

What does WINE consist of?


It consists of a program loader, which loads and executes a Windows binary, and a library that implements Windows API calls using their UNIX or X11 equivalents. The library may also be used for porting Win32 code into native UNIX executables

Strictly not an emulator


WINE

stands for Wine Is Not an Emulator It implements native code to the function calls present in the Windows DLL's Wine provides low-level binary compatibility, but currently only for OSs running on Intelcompatible chips Wine works on most popular Intel Unixes, including Linux, FreeBSD, and Solaris.

Emulators vs. WINE

Emulators vs. WINE

Why use WINE?


Most application software is still developed to run on Windows It helps a smooth transition for people switching from Windows to Linux. Wine can use almost any filesystem that Linux can mount Makes extensive gaming possible in linux

WINE Status
As of mid 2000, Wine consists of over 650K lines of C code written by more than 300 developers from dozens of countries around the world Wine is in active use by an estimated 90K people Wine implements more than 90% of the calls in popular Windows specifications

Still Under Development


WINE

has been released but is still incomplete. Because Wine is being developed by volunteers, it is difficult to predict when it will be ready for general release. But due to the much increased interest by companies in porting apps via Wine, Wine development is constantly getting more and more active. Expected to run more than 85% of all windows apps in 2 years time.

Our WINE experience!


We had problems configuring WINE Only managed to make WINE run simple windows applications WINE run Notepad, Windows CD Player, Calculator and other such small programs Gave configuration errors when trying to run bigger Windows programs

VMware Family Overview

4 Main products:

Workstation Express ESX Server GSX Server

ESX Server
Server for web serving, database, exchange, streaming media Installs without host OS, uses own kernel Supports up to 8 processors Supports 4 20 simultaneous virtual machines

GSX Server
Server for Intranet use, Exchange, Application Servers Installs on top of Linux/Windows 2000/NT Supports up to 4 processors Supports 2 8 virtual machines

VMware Express Features


Run Windows 95/98 in Linux Eliminate dual booting and partitioning Use printers, scanners, modems and devices Networking, dial-up access capability Support for multiple processors Full sound capability

Example Screenshot

How VMware Express Works

MultipleWorlds Technology
Software layer between Intel architecture & OS Manages resources Completely independent PC

File sharing
SAMBA on Linux host Each PC has own network address

Completely Independent PC
Virtual computer does not affect the host Although using same devices, accesses without going through host If application of OS error in guest and crash occurs, host continues without error

SAMBA
Using

SAMBA, able to share files between OS Files transferred between applications and guest/host through SAMBA protocol providing total compatibility Able to use applications such as Windows Explorer to drag/drop to Linux desktop Microsoft Word can seamlessly save to Linux partition

Networking
As independent PC, provides full networking support with own network address, as on a real machine Supports Dial-Up Networking and LANs providing access to systems running TCP/IP, Microsoft Networking, Novell NetWare, Samba and NFS

Installation Process
Install VMware Express on PC running Linux Install Windows 95/95 onto VMwares Virtual PC Run both OS simultaneously

VMware Workstation Features


Run multiple OS simultaneously on 1 machine Eliminate dual booting/partitioning Run applications from different OS Full networking, dial-up access and file sharing support Window and full-screen operation of OS Suspend and resume virtual machines

VMware Workstation Screenshot

VMware Screenshot

How VMware Workstation Works

MultipleWorlds Technology
After VMware Installation, configure other OS Virtual Disks

Undoable Disks

Configuring Guest OS
Assign memory, disks, ports and networking for guest Power on virtual machine from within host Insert boot disk for desired OS to be installed on guest Continue installing OS through normal procedure

Virtual Disks
Disk partitions of virtual machines Stored as file on file system of host operating system As entire partition is 1 file, manipulation such as copy, move and backup is possible Also enables virtual disks to be shared from a file server

Undoable Disks
Decide

whether to save or discard changes made to disk during session Appear as though written to disk, however stored in temporary file until saved When shutting down, 3 options available:
Keep

changes permanently Ignore changes Keep changes in temporary file

Possible Drawbacks

Requires powerful hardware


Fast processor at least 500 MHz for 2 virtual machines Large amount of RAM at least 192 MB for 2 virtual machines Large amount of HDD space Different HDD for guest OS

No 3D graphics support

Conclusion
Good solution for Intel based system requiring multiple OS to be run simultaneously VMware express cheaper solution, more limited but still useful for running Windows 9x in Linux VMware workstation extensive capabilities for multiple applications including software/network testing across multiple platforms

Refrences

http://www.geocities.com/CapeCanaveral/Lab/1791/hdpartn.htm www.teleport.com/~brainy/fat32.htm support.microsoft.com/support/kb/articles/Q154/9/97.Asp www.easytweak.com/fat32/fat32.htm www.newlogic.co.uk/kbase/fdisk/page1.htm www.winehq.com http://www.vmware.com http://chris.erway.org/vmware/ http://www.thedukeofurl.org/reviews/misc/vmware202/inde x.shtml

You might also like