VM/370 The VK/370 Control program manages the resources of a single computer in
such a manner that multiple computing systems appear to exist. Each "virtual" computing system, or virtual machine, is the functional
equivalent of an IBM System/370. A virtual machine is configured by recording appropriate information
in the VM/370 directory. The virtual machine configuration includes
counterparts of the components of a real IBM Systea/370: A virtual operator's console e Virtual storage A virtual processor Virtual I/O devices CP makes these components appear real to whichever operating system is controlling the work flow of the virtual machine.
The virtual machines operate
techniques. CP overlaps the idle
execution in another.
concurrently
time of one
via multiprogramming virtual machine with
Each virtual machine is managed at two levels. The work to be done
by the virtual machine is scheduled and controlled by some System/360 or System/370 operating system. The concurrent execution of multiple virtual machines is managed by the Control program. VM/370 performs some functions differently when running in attached
processor mode. For a description of the additional processing perforaed
when in attached processor aode, see "The Attached Processor
Environment" in this section.
Introduction to the VM/370 Control Program
A virtual machine is created for a user when he logs on VK/370, on the
basis of information stored in his VM/370 directory entry. The entry
for each user identification includes a list of the virtual input/output
devices associated with the particular virtual machine. Additional information VM/370 directory entry.
class, accounting data,
dispatching priority, and
as extended control mode. about the virtual machine is kept in the
Included are the V8/370 com.and normal and maximum virtual storage s1zes, optional virtual aachine characteristics such
The Control Program supervises the execution of virtual machines by
(1) peraitting only problem state execution except in its own routines,
and (2) receiving control after all real coaputing system interrupts. CP intercepts each privileged instruction and simulates it if the
current program status word of the issuing virtual aachine indicates a
virtual supervisor state; if the virtual aachine is executing in
virtual problem state, the atteapt to execute the privileged instruction
is reflected to the virtual machine as a prograa interrupt. 111 virtual
aachine interrupts (including those caused by attempting privileged
instructions) are first handled by CP, and are reflected to the virtual
aachine if an analogous interrupt would ha've occurred on a real aachine. CP Introduction 1-3
VIRTUAL BACBINE TIBE BANAGEftENT The real processor simulates multiple virtual processors. Virtual aachines that are executing in a conversational manner are given access
to the real processor more frequently than those that are not; these
conversational machines are assigned the saaller of two possible tiae slices. CP deteraines execution characteristics of a virtual machine at
the of each tiae slice on the basis of the recent frequency of its
console requests or terainal interrupts. The virtual machine is queued
for subsequent processor utilization according to whether it is a
conversational or nonconversational user of system resources. A virtual aachine can gain control of the processor only if it is not
waiting for soae activity or resource. The virtual aachine itself aay enter a virtual wait state after an input/output operation has begun.
The virtual machine cannot gain control of the real processor if it is
waiting for a page of storage, if it is waiting for an input/output
operation to be translated and started, or if it is waiting for a CP com.and to finish execution. A virtual aachine can be assigned a priority of execution. priority
is a parameter affecting the execution of a particular virtual aachine as co.pared with other virtual aachines that have the saae general
execution characteristics. Priority is a paraaeter in the virtual
aachine's VB/370 directory entry. The system operator can reset the
value with the privilege class A SET comaand. VIRTUAL BACBINE STORAGE BANAGEBENT The noraal and aaxiaua storage sizes of a virtual aachine are defined as
part of the virtual aachine configuration in the VB/370 directory. You aay redefine virtual storage size to any value that is a multiple of 4K
and not greater than the maxiaua defined value. VB/370 iapleaents this
storage as virtual storage. The storage aay appear as paged or unpaged
to the virtual aachine, depending upon whether or not the extended
control aode option was specified for that virtual aachine. This option
is required if operating systems that control virtual storage, such as OS/VS1 or YB/370, are run in the virtual aachine.
Storage in the virtual aachine is logically divided into 4096-byte areas called pages. A coaplete set of segment and page tables is used
to describe the storage of each virtual aachine. These tables are
updated by CP and reflect the allocation of virtual storage pages to
blocks of real storage. These page and segaent tables allow virtual
storage addressing in a system/370 aachine. Storage in the real aachine is logically and physically divided into 4096-byte areas called page fraaes. Only referenced virtual storage pages are kept in real storage, thus optimizing real storage utilization. Further, a page can be brought into any available page fraae; the necessary relocation is done during program execution by a coabination of VB/370 and dynaaic address
translation on the Systea/370. The active pages froa all logged on
virtual aachines and from the pageable routines of CP compete for
available page frames. When the number of page fraaes available for
allocation falls below a threshold value, CP determines which virtual
storage pages currently allocated to real storage are relatively inactive and initiates suitable page-out operations for them. Inactive pages
inactive page has
are kept on a direct access storage device.
been changed at some tiae during virtual
1-4 IB! V8/370 System Logic and Problem Determination--Voluae 1
If an aachine
Previous Page Next Page