Channel address control system for a virtual machine system
First Claim
1. A channel address control system for reducing the overhead for supporting the virtual storage function of a virtual machine system having a main storage area for storing data transfer instructions, channels for executing respective plural control programs, and a central processing unit for providing region identification information and for executing a monitor program for monitoring said plural control programs, said plural control programs being operated on the virtual machine system under the control of said monitor program, each of said channels providing a main storage address, continuous regions of the main storage area being exclusively assigned for access by corresponding ones of the plural control programs, respectively, each assigned continuous region being described by a heading address and a trailing address, comprising:
- at least one register for storing, as identifying information, the heading addresses and trailing addresses of the continuous regions of the main storage area assigned to respective ones of the control programs;
transmission means, operatively connected to the central processing unit and to the channels, for transmitting the region identification information to identify one of the continuous regions to one of the channels;
first means, operatively connected to said transmission means and located in said one of the channels, for storing said region identification information;
second means, operatively connected to said at least one register, the channels, and to said main storage area, for adding the heading address of the continuous region identified by the region identification information stored in said first means to the main storage address provided by said one of the channels, so that a system absolute address is obtained; and
third means, operatively connected to said second means, said at least one register and to said central processing unit, for comparing said system absolute address with the trailing address of the continuous region identified by the region identification information, said third means transmitting an address exception signal to said central processing unit if the result of the comparison indicates that said system absolute address corresponds to a portion of the main storage area outside the continuous region identified by the region identification information, said main storage area being accessed in dependence upon said system absolute address, said transmission means comprising;
fourth means, operatively connected to the main storage area, for decoding one of the data transfer instructions for one of the channels;
fifth means, operatively connected to said fourth means, for storing the region identification information for said one of the channels; and
sixth means, operatively connected to said fifth means, for transmitting the region identification information to said one of the channels when the data transfer instruction is decoded, whereby the overhead for memory mapping is reduced.
0 Assignments
0 Petitions
Accused Products
Abstract
A virtual machine system having a virtual storage function, wherein registers are provided for holding the heading and trailing addresses of the continuous area in the main storage area assigned respectively for each of the plural operating systems. When the main storage area is accessed by a channel or sub-channel, one of the registers is selected, and the heading address of the register selected is added to the main storage address sent from the channel or sub-channel. The added main storage address is compared with the trailing address in the selected register and if the former is smaller than the latter, the overhead for supporting the virtual storage area is reduced by accessing the main storage area in accordance with the added main storage address mentioned above.
82 Citations
14 Claims
-
1. A channel address control system for reducing the overhead for supporting the virtual storage function of a virtual machine system having a main storage area for storing data transfer instructions, channels for executing respective plural control programs, and a central processing unit for providing region identification information and for executing a monitor program for monitoring said plural control programs, said plural control programs being operated on the virtual machine system under the control of said monitor program, each of said channels providing a main storage address, continuous regions of the main storage area being exclusively assigned for access by corresponding ones of the plural control programs, respectively, each assigned continuous region being described by a heading address and a trailing address, comprising:
-
at least one register for storing, as identifying information, the heading addresses and trailing addresses of the continuous regions of the main storage area assigned to respective ones of the control programs; transmission means, operatively connected to the central processing unit and to the channels, for transmitting the region identification information to identify one of the continuous regions to one of the channels; first means, operatively connected to said transmission means and located in said one of the channels, for storing said region identification information; second means, operatively connected to said at least one register, the channels, and to said main storage area, for adding the heading address of the continuous region identified by the region identification information stored in said first means to the main storage address provided by said one of the channels, so that a system absolute address is obtained; and third means, operatively connected to said second means, said at least one register and to said central processing unit, for comparing said system absolute address with the trailing address of the continuous region identified by the region identification information, said third means transmitting an address exception signal to said central processing unit if the result of the comparison indicates that said system absolute address corresponds to a portion of the main storage area outside the continuous region identified by the region identification information, said main storage area being accessed in dependence upon said system absolute address, said transmission means comprising; fourth means, operatively connected to the main storage area, for decoding one of the data transfer instructions for one of the channels; fifth means, operatively connected to said fourth means, for storing the region identification information for said one of the channels; and sixth means, operatively connected to said fifth means, for transmitting the region identification information to said one of the channels when the data transfer instruction is decoded, whereby the overhead for memory mapping is reduced. - View Dependent Claims (2, 3)
-
-
4. A channel address control system for reducing the overhead for supporting the virtual storage function of a virtual machine system having a main storage area, a central processing unit for providing a currently effective storage number and for executing a monitor program for monitoring plural control programs, and an input/output unit, said main storage area storing address translation table data and instruction signal data, said plural control programs being operated on the virtual machine system under the control of the monitor program, said channel address control system comprising:
-
a storage control unit, operatively connected to said main storage area, for controlling the accessing of the main storage area; a plurality of channels, operatively connected to said input/output unit, for respectively executing said plural control programs, each of said channels providing channel data including a first region identifier and channel address data; and a channel control unit, operatively connected to said storage control unit and to said plurality of channels, for controlling the flow of data to and from said plurality of channels; said storage control unit comprising; a first register, operatively connected to said main storage area, for storing said address translation table data read out from said main storage area; a second register, operatively connected to said plurality of channels, for storing said channel address data; a first region register, operatively connected to said plurality of channels, for storing said first region identifier sent from one of said plurality of channels; a third register, operatively connected to said first region register, for storing address modification information, representing continuous regions of the main storage area exclusively assigned to respective ones of said plural control programs, a portion of said address modification information being selected in dependence upon the first region identifier; a fourth register, operatively connected to said central processing unit, for storing the currently effective storage number representing one of said plural control programs; a fifth register, operatively connected to said central processing unit, for storing logical address data and address in page data; a high speed buffer circuit, operatively connected to said first register, for performing address translation and for providing an identification output representing one of the control programs, a physical address output, and a logical address output, said high speed buffer circuit being indexed by said logical address data; a sixth register, operatively connected to said high speed buffer circuit, for reading and writing data to or from said high speed buffer circuit; a first comparator circuit, operatively connected to said fifth register and said high speed buffer circuit, for comparing said logical address data with said logical address output and for providing a first coincidence output; a second comparator circuit, operatively connected to said fourth register and said high speed buffer circuit, for comparing said currently effective storage number with said identification output and for providing a second coincidence output; a seventh register for storing a segment table heading address; a dynamic address translation adder circuit, having inputs and outputs, said inputs operatively connected to each of said seventh register, said fifth register, said third register, said second register and said first register, for adding address data and for providing a sum output; an eight register, operatively connected to the outputs of said dynamic address translation adder circuit, for storing said sum output; a third comparator circuit, operatively connected to said third register and said eighth register, for comparing said stored sum output to said selected address modification information and for providing an address exception signal to the central processing unit if the comparison result indicates that the stored sum output indicates an address in the main storage area outside the continuous region identified by the first region identifier; a first selection gate, operatively connected to said first and second comparator circuits, said high speed buffer circuit, and said fifth register, for accessing the main storage area on the basis of the physical address output of said high speed buffer circuit and the address in page data stored by said fifth register in dependence upon the state of said first and second coincidence outputs; and prefixing means, operatively connected to an input of said dynamic address translation adder circuit and to said eighth register, for performing prefix processing on the content of said eighth register and for providing a prefix processing output to the input of said dynamic address translation adder circuit, whereby the overhead for memory mapping is reduced. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A channel address control system for reducing the overhead for supporting the virtual storage function of a virtual machine system having a main storage area for storing data transfer instructions, and a central processing unit for providing a currently effective storage number and for executing a monitor program for monitoring plural control programs, said plural control programs being operated on the virtual machine system under the control of the monitor program, said channel address control system comprising:
-
a storage control unit, operatively connected to said main storage area, for controlling the accessing of the main storage area; a plurality of channels, for respectively executing said plural control programs, each of said channels providing a first region identifier and channel address data; a channel control unit, operatively connected to said storage control unit and to said plurality of channels, for controlling the flow of data to and from said plurality of channels; and an instruction unit; said storage control unit comprising; a first register, operatively connected to said plurality of channels, for storing said channel address data; a second register, operatively connected to said plurality of channels, for storing the first region identifier sent from one of said plurality of channels; a third register, operatively connected to said second register, for storing address modification information representing continuous regions of the main storage area exclusively assigned to respective ones of said plural control programs, a portion of said address modification information being selected in dependence upon the first region identifier; a dynamic address translation adder circuit, operatively connected to said first register and said third register, for adding said channel address data to the selected address modification information to generate a system absolute address for accessing said main storage area; a comparator circuit, operatively connected to said dynamic address translation adder circuit and said third register, for comparing said sum output to said selected address modification information and for transmitting an address exception signal to the central processing unit if the comparison result indicates that the system absolute address is an address in the main storage area outside the continuous region identified by said first region identifier; said instruction unit comprising; first means, operatively connected to the main storage area, for decoding one of the data transfer instructions for one of said plurality of channels; second means, operatively connected to said first means, for storing region identification information for said one of said plurality of channels, the region identification information indicating the one of the continuous regions of the main storage area exclusively assigned to the corresponding said one of said plural control programs; said channel control unit comprising third means, operatively connected to said second means, for transmitting the region identification information to said one of said plurality of channels when the data transfer instruction is decoded, the region identification information corresponding to the first region identifier for said one of the plurality of channels, whereby the overhead for memory mapping is reduced.
-
Specification