Electrical computers and digital processing systems: memory – Storage accessing and control – Shared memory area
Reexamination Certificate
1998-11-10
2002-09-17
Yoo, Do Hyun (Department: 2187)
Electrical computers and digital processing systems: memory
Storage accessing and control
Shared memory area
C711S001000, C711S006000, C711S117000, C711S147000, C711S151000, C710S036000, C710S038000, C710S200000, C710S200000, C409S104000
Reexamination Certificate
active
06453392
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates generally to the field of computer environments having virtual machines and storage systems.
2. Description of the Related Art
Virtual Machines. A virtual machine operating system running on a single host processor has the ability to create a plurality of virtual machines, each of which is an illusion of a real machine from a user's standpoint. Each vita machine is a simulation of a real computer system environment, where 'several different operating systems can be running in virtual machines concurrently. Each operating system running in a virtual machine may be referred to as a guest operating system or as a “guest”.
One of the most widely used virtual operating systems is Virtual Machine Facility/Enterprise Systems Architecture (VM/ESA) provided by International Business Machines, Inc. VM manages an IBM System 390 computer and creates the illusion that each of several users operating from terminals with a complete System 390 computer. Several different guest operating systems are available for VM, including conversational systems (e.g., a Conversational Monitor System or CMS), multiple-access systems (e.g., VM/ESA), and batch or single users interactive systems (e.g., DOS/VSE).
A control program (CP) of VM running in the host processor manages the “real” resources (such as storage, processor, and input/output (I/O) resources) so that many independent and fully functional virtual machines appear to be doing their own processing using their own storage, processor, and I/O resources.
VM provides three types of virtual machines which are defined by their storage configurations: (1) a Virtual Real machine (V=R machine); (2) a Virtual=Fixed machine (V=F machine); and (3) a Virtual=Virtual machine (V=V machine). A V=R machine has a fixed, contiguous area of host real storage starting at “page” zero. CP does not page this storage, so guest real storage maps to host real storage. A V=F machine also has a fixed, contiguous area of host real storage, but the area does not start at real page zero. CP does not page this storage, and thus guest real storage maps to host real storage. Because V=R and V=F machines receive preference in terms of storage and performance, these virtual machines are called “preferred” virtual machines. A V=V machine has guest real storage that does not permanently map to host real storage. Rather CP pages the guest real storage of a V=V machine into and out of host real storage. Many V=R and V=F machines can be defined, but VM typically ensures some limitations—e.g. that you do not have more than one V=R machine and five V=F machines (or zero V=R machines and six V=F machines) logged on at the same time.
A host processor may operate in either supervisor state or in problem state. CP runs on the real machine in supervisor state, where it has access to all privileged instructions. When CP dispatches a particular virtual machine, that virtual machine runs on the real machine but in problem state. The virtual machine may be in either virtual supervisor state or virtual problem state. For each virtual machine, CP keeps a control block containing virtual registers and a virtual state word. The virtual state word indicates the current state of the virtual machine and the virtual instruction counter.
When CP dispatches a virtual machine, the virtual machine executes real instructions on the real machine. Many interrupts occur because a virtual machine attempts to execute a privileged instruction normally acceptable only by VM. Since virtual machines are constrained to run in the real machine's problem state, an interrupt results each time a virtual machine attempts a privileged instruction. Thus, program interruptions are the key to the interfacing between an executing virtual machine and CP.
When a virtual machine generates a program exception interrupt, CP gains control and determines the cause of the interrupt. If the virtual machine is executing in the virtual problem state, then CP passes the real program interruption directly to the virtual machine, which then processes the interrupt through its conventional interrupt-handling procedures. If, however, the virtual machine is operating in virtual supervisor state, then CP simulates the execution of the privileged instruction. To perform simulation, CP must determine what the virtual machine is attempting to accomplish. If I/O is being attempted, then CP performs any necessary mapping between virtual and real devices. If disk I/O is involved, then CP maps virtual track addresses to real track addresses. CP then schedules the real I/O operation corresponding to the a virtual I/O request, and returns control to the virtual machine's operating system, which then continues operation as if it itself had initiated the I/O. This CP interruption causes a loss of I/O performance for virtual machines.
A Virtual Machine Assist feature, which has both hardware and software components, is a performance improvement option available to VM installations. Virtual storage operating systems, such as Multiple Virtual Storage (MVS) systems, execute in problem state while under control of VM/ESA. Such operating systems use a large number of privileged instructions that generate interrupts requiring CP's attention and servicing. With the Virtual Machine Assist feature, however, the associated hardware intercepts and services many of these interrupts, resulting in significant performance benefits. With I/O Assist, also referred to as I/O Passthru or Start Interpretive Execution (SIE) Assist, significant I/O performance benefits are available.
In contrast with a basic mode associated with virtual partitioning, a host processor may alternatively operate in a logically partitioned (LPAR) mode. The LPAR mode provides partitioning of the processor across multiple physical or logical partitions. Each LPAR contains some portion of the processor and storage resources, some number of channel paths, and, if available, some portion of expanded storage. Since LPAR environments do not require CP translation or use, there are no I/O performance issues similar to those of VM. However, the flexibility of VM is lost with the use of LPARs.
Storage Systems. Many computer environments employ direct access storage device (DASD) subsystems for fast, efficient, and economical storage of data in a device which records and retrieves data in response to a reference of the data's location. The principle device which supports direct access storage is a disk.
Like other input/output (I/O) and storage devices, DASDs are often connected to a host processor through one or more channel paths. A channel retrieves channel commands from a channel subsystem in main storage of the host processor. A channel command word (CCW) sent from the host processor specifies the particular I/O command to be executed, the storage area associated with the operation, the action to be taken whenever transfer to or from the area is completed, and other options. One type of channel architecture is the Enterprise Systems Connection (ESCON) architecture, which is built around fiber optic transmission technology.
A channel forwards each command to a storage controller which governs operations of the DASDs. The storage controller provides a path for data transfer (as well as for command and status information transfer) between the host processors and the DASDs. It also converts the data from a form acceptable to the host processor to a form acceptable to the DASDs. The storage controller may be referred to as a control unit, a storage subsystem, a head of string, an integrated file adapter, an integrated storage control, a storage director, etc.
More particularly, a storage controller interprets and executes channel commands forwarded from. the host processor. For example, SEEK commands position a DASD access mechanism. SEARCH commands cause comparisons between data f
Altera Law Group LLC
International Business Machines - Corporation
Namazi Mehdi
Yoo Do Hyun
LandOfFree
Method of and apparatus for sharing dedicated devices... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method of and apparatus for sharing dedicated devices..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method of and apparatus for sharing dedicated devices... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2837140