Information Technology Reference
In-Depth Information
We discuss in what follows emulation of the underlying hardware or soft-
ware. One advantage of hardware emulation is that once a hardware platform is
emulated successfully all operating systems and applications that ran on the orig-
inal platform can be run without modification on the new platform. However, the
level of emulation is relevant (for example whether it goes down to the level of
duplicating the timing of CPU instruction execution). Moreover, this does not take
into account dependencies on input/output devices.
Emulation has been used successfully when a very popular operating system is
to be run on a hardware system for which it was not designed, such as running a
version of Windows TM on a SUN TM machine. However, even in this case, when
strong market forces encourage this approach, not all applications will necessarily
run correctly or perform adequately under the emulated environment. For example,
it may not be possible to fully simulate all of the old hardware dependencies and
timings, because of the constraints of the new hardware environment. Further, when
the application presents information to a human interface, determining that some
new device is still presenting the information correctly is problematical and suggests
the need, as noted previously, to have made a separate recording of the information
presentation to use for validation.
Once emulation has been adopted, the resulting system is particularly vulnera-
ble to previously unknown software errors that may seriously jeopardize continued
information access. Given these constraints, the technical and economic hurdles to
hardware emulation appear substantial except where the emulation is of a rendering
process, such as displaying an image of a document page or playing a sound within
a single system.
There have been investigations of alternative emulation approaches, such as the
development of a virtual machine architecture or emulation at the operating sys-
tem level. These approaches solve some of the issues of hardware emulation, but
introduce new concerns. In addition, the current emulation research efforts involve a
centralized architecture with control over all peripherals. The level of complexity of
the interfaces and interactions with a ubiquitous distributed computing environment
(i.e., WWW and JAVA or more general client-server architectures) with hetero-
geneous clients may introduce requirements that go beyond the scope of current
emulation efforts.
In the following sections we provide a more detailed discussion of the current
state of the art.
7.9.1 Overview of Emulation
An emulator in this context refers to software or hardware that runs binary soft-
ware (including operating systems) on a system for which it was not compiled. For
example, the SIMH [ 80 ] emulator runs old VAX operating systems and software on
newer PC
×
86 hardware. The system on which the emulator runs is usually referred
Search WWH ::




Custom Search