24-11-2012, 11:17 AM
Seminar Report On Wine
Wine.docx (Size: 1.02 MB / Downloads: 97)
INTRODUCTION
WINDOWS AND LINUX
Different software programs are designed for different operating systems, and most won’t work on systems that they weren’t designed for. Windows programs, for example, won’t run in Linux because they contain instructions that the system can’t understand until they’re translated by the Windows environment. Linux programs, likewise, won’t run under the Windows operating system because Windows is unable tointerpret all of their instructions.This situation presents a fundamental problem for anyone who wants to runsoftware for both Windows and Linux. A common solution to this problem is to install both operating systems on the same computer, known as "dual booting." When a Windows program is needed, the user boots the machine into Windows to run it; when a Linux program is then needed, the user then reboots the machine into Linux. This option presentsgreat difficulty: not only must the user endure the frustration of frequent rebooting, but programs for both platforms can’t be run simultaneously. Having Windows on a systemalso creates an added burden: the software is expensive, requires a separate disk partition,and is unable to read most file system formats, making the sharing of data betweenoperating systems difficult.1.2 WHAT IS WINE?Wine makes it possible to run Windows programs alongside any Unix-likeoperating system, particularly Linux. At its heart, Wine is an implementation of theWindows Application Programming Interface (API) library, acting as a bridge between theWindows program and Linux. Think of Wine as a compatibility layer, when a Windows program
WHAT IS WINE?
Wine makes it possible to run Windows programs alongside any Unix-likeoperating system, particularly Linux. At its heart, Wine is an implementation of theWindows Application Programming Interface (API) library, acting as a bridge between theWindows program and Linux. Think of Wine as a compatibility layer, when a Windows program
tries to perform a function that Linux doesn’t normally understand, Wine will translatethat program’s instruction into one supported by the system. For example, if a programasks the system to create a Windows pushbutton or text-edit field, Wine will convert thatinstruction into its Linux equivalent in the form of a command to the windowmanager using the standard X11 protocol.Wine is often used as a recursive acronym, standing for "Wine Is Not an Emulator". Sometimes it is also known to be used for "Windows Emulator"(An
emulator duplicates (provides an emulation of) the functions of one system using a different system, so that the second system behaves like (and appears to be) the first system.). In a way, both meanings are correct, only seen from different perspectives. The first meaning says that Wine is not a virtual machine, it does not emulate a CPU, and youare not supposed to install Windows nor any Windows device drivers on top of it; rather, Wine is an implementation of the Windows API, and can be used as a library to port Windows applications to UNIX. The second meaning, obviously, is that to Windows binaries (.exe files), Wine does look like Windows, and emulates its behaviour and quirks rather closely.
WINE VERSIONS
Wine is an open source project, and there are accordingly many different versionsof Wine for you to choose from. The standard version of Wine comes in intermittentreleases (roughly twice a month), and can be downloaded over the internet in both prepackaged binary form and ready to compile source code form. Alternatively, we caninstall a development version of Wine by using the latest available source code from theGit repository.
WINE BENEFITS
Wine makes it possible to take advantage of all the UNIX strong points (stability,flexibility, remote administration) while still using the Windows applications youdepend on.
UNIX has always made it possible to write powerful scripts. Wine makes it possibleto call Windows applications from scripts that can also leverage the UNIXenvironment to its full extent.
Wine makes it possible to access Windows applications remotely, even if they are afew thousand miles away.
WINE SIZE
Wine is not small at all.
WINE 1.0 have over 1.8 million lines of C code (with blank linesand comments), ~300,000 of which are tests, and ~87000 are related to Direct3D (a subsetof DirectX) implementation [original research]. That's because what a UNIX programassumes to find in a system is much less that what a Windows application assumes to find(which are thousands of Windows APIs [10]).
WINE BENEFITS
Wine makes it possible to take advantage of all the UNIX strong points (stability,flexibility, remote administration) while still using the Windows applications youdepend on.
UNIX has always made it possible to write powerful scripts. Wine makes it possibleto call Windows applications from scripts that can also leverage the UNIXenvironment to its full extent.
Wine makes it possible to access Windows applications remotely, even if they are afew thousand miles away.
Wine makes it economical to use thin clients: simply install Wine on a Linux server,and voila, you can access these Windows applications from any X terminal.
Wine can also be used to make existing Windows applications available on the Web by using VNC and its Java client.
Wine is Open Source Software, so you can extend it to suit your needs or have oneof many companies do it for you.1.6 WINE SIZEWine is not small at all. WINE 1.0 have over 1.8 million lines of C code (with blank linesand comments), ~300,000 of which are tests, and ~87000 are related to Direct3D (a subsetof DirectX) implementation [original research]. That's because what a UNIX programassumes to find in a system is much less that what a Windows application assumes to find(which are thousands of Windows APIs [10]).
WINE INSTALLATION METHODS
INSTALLATION FROM A PACKAGEBy far the easiest method for installing Wine is to use a prepackaged version of Wine. These packages contain ready-to-run Wine binary files specifically compiled for your distribution, and they are tested regularly by the packagers for both functionality andcompleteness.Packages are the recommended method for installing Wine. It is available at theWineHQ downloads page (http://www.winehqsite/download), and these are alwaysthe latest packages available. Being popular, Wine packages can also be found elsewherein official distribution repositories. These can, however, sometimes be out of date,depending on the distribution. Packages are easily upgradable as well, and manydistributions can upgrade Wine seamlessly with a few clicks. Building our own installable binary package from a source package is also possible.
INSTALLATION FROM A SOURCE ARCHIVE
Sometimes the Wine packages don’t fit our needs exactly. Perhaps they’re notavailable for our architecture or distribution, or perhaps we want to build wine using our own compiler optimizations or with some options disabled or perhaps we need to modifya specific part of the source code before compilation. Being an open source project, we arefree to do all of these things with Wine’s source code, which is provided with every Winerelease. This method of installation can be done by downloading a Wine source archiveand compiling from the command line.