Page 40 - DCAP507_SYSTEM_SOFTWARE
P. 40
System Software
Notes
Example: The VM operating system for IBM systems is the best example of the virtual-
machine concept, because IBM pioneered the work in this area.
By using CPU scheduling and virtual-memory techniques, an operating system can create the illusion
of multiple processes, each executing on its own processor with its own (virtual) memory. Of course,
normally, the process has additional features, such as system calls and a file system, which are not
provided by the bare hardware. The virtual-machine approach, on the other hand, does not provide
any additional function, but rather provides an interface that is identical to the underlying bare
hardware. Each process is provided with a (virtual) copy of the underlying computer.
The resources of the physical computer are shared to create the virtual machines. CPU scheduling
can be used to share the CPU and to create the appearance that users have their own processor.
Spooling and a file system can provide virtual card readers and virtual line printers. A normal
user timesharing terminal provides the function of the virtual machine operator's console.
A major difficulty with the virtual-machine approach involves disk systems. Suppose that the
physical machine has three disk drives but wants to support seven virtual machines. Clearly, it
cannot allocate a disk drive to each virtual machine. Remember that the virtual-machine software
itself will need substantial disk space to provide virtual memory and spooling. The solution is
to provide virtual disks, which are identical in all respects except size; these are termed minidisks
in IBM's VM operating system. The system implements each minidisk by allocating as many
tracks as the minidisk needs on the physical disks.
!
Caution The sum of the sizes of all minidisks must be less than the actual amount of
physical disk space available.
Users thus are given their own virtual machine. They can then run any of the operating systems
or software packages that are available on the underlying machine. For the IBM VM system, a
user normally runs CMS, a single-user interactive operating system. The virtual-machine software
is concerned with multiprogramming multiple virtual machines onto a physical machine, but
does not need to consider any user-support software. This arrangement may provide a useful
partitioning of the problem of designing a multiuser interactive system into two smaller pieces.
Figure 2.10: Diagram of Virtual Machine
34 LOVELY PROFESSIONAL UNIVERSITY