Managing unvirtualized data pages in real storage

Electrical computers and digital processing systems: memory – Storage accessing and control – Hierarchical memories

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C711S156000, C711S165000, C711S203000

Reexamination Certificate

active

06574706

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates generally to virtual memory storage systems for mini and mainframe computing systems, and particularly, to a novel system for managing storage of unvirtualized data pages in real storage.
2. Discussion of the Prior Art
Virtual memory management schemes enable a computer system to present a large address space, larger than the amount of real storage on the system. A virtual memory management scheme consists of a mapping of an address space which provide a means of translating a virtual address of a page into a real address of a frame. A frame is the basic unit by which real storage is managed in a computer system. For example, in z/Architecture a frame consists of 4096 bytes.
Since real storage is a limited resource, when the operating system determines that it has become scarce it may try to write the data on some real frames to auxiliary storage, also called a direct access storage device (DASD) which is cheaper and more plentiful, but much slower to access. This operation is known as paging and involves initiating output device I/O to auxiliary storage. The operating system makes paging decisions at a global level and a local level. At the global level, the operating system determines which address spaces will suffer a potential performance penalty of having their data paged out to auxiliary storage. At the local level, the operating system determines which frames within an address space are good candidates to be paged to auxiliary storage. In general, frames which are least recently used are better candidates to be paged to auxiliary storage since they have a lower likelihood of being referenced in the near future. Computer systems, including z/Architecture, provide facilities to approximate least recently used (LRU) order. Part of the facility is the Referenced bit which is associated with each frame of storage in z/Architecture. The Referenced bit is turned on by the hardware whenever a frame of storage is referenced or changed. A separate bit called the Changed bit is turned on by the hardware whenever a frame is changed. z/Architecture also provides an instruction called Reset Reference Bit Extended (herein referred to a RRBE) which sets the Referenced bit to zero and sets a condition code which provides an indication of whether the frame was changed and/or referenced. The OS/390 operating system maintains a data structure, known as the Page Frame Table Entry (or PFTE) which includes data corresponding to a single frame. The aggregate of PFTEs is referred to as the PFT or Page Frame Table. PFTEs corresponding to frames used for a particular address space are placed on a queue. Periodically, this queue of PFTEs is traversed and the RRBE instruction is used to determine whether the frame is referenced; PFTEs corresponding to frames that have been referenced are moved to the back of the queue. This traversal of the PFTE queue is known as Unreferenced Interval Count Update (or UIC Update).
The act of writing real frames in use by an address space to auxiliary storage to replenish the number of available frames is referred to as stealing. When an address space is selected for stealing, steal candidates are selected by traversing the PFTE queue from the front to the back, in least recently used (LRU) order.
To support paging input/output (I/O) to/from auxiliary storage, virtual storage memory systems implement a facility known as Virtual Input/Output (VIO), which enables system-managed, temporary datasets to reside on virtual devices in external page storage. VIO is designed to reduce the need for the processor to transfer data between DASD and a real storage device and be processed using paging I/O. In operation, VIO's implement a scheme that partitions a dataset in 4K-byte pages, for example. By implementing VIO, system performance is improved as much of the overhead and time required to allocate a device and to move data physically between main storage and an I/O device is eliminated. As known, VIO is supported by services provided by: 1) an Auxiliary Storage Manager (ASM) which dynamically allocates page-size physical blocks to the VIO dataset, treats each VIO dataset as a logical group (LG) of 4096-byte pages and assigns each dataset page within a logical group an identifier known as a Logical Page Identifier (LPID); and, 2) a Real Storage Manager (RSM) which manipulates page table entries (PTE), external page table entries (XPTE), and page frame table entries (PFTE), and in response to requests made to connect (input) or disconnect (output) VIO dataset pages to or from a VIO buffer which is used by VIO to simulate I/O, by moving data between the VIO buffer and the user's buffer. The LPID is an 8 byte long word comprised of a first 4 byte word LGID (Logical Group ID) assigned by ASM to a Vio Dataset and, a second 4 byte word RPN (Relative Page Number) which is assigned by a Virtual block processor (VBP) to each page of the VIO Dataset.
As known, the following RSM requests are supported: ASSIGN which is an operation for generally assigning a Vio Dataset Page to virtual storage (hereinafter, a “Vio Window Page”) includes the following variations: an ASSIGN NULL which is a process requested by the VIO facility when a virtual page is required and which assigns the Vio Window Page first reference data (e.g., a page of zeroes); and, ASSIGN NORMAL which is an operation for connecting a VIO dataset page to the VIO buffer, i.e., a Vio Window page
20
gets its data from the Vio dataset page
25
, as shown in
FIG. 1
; MOVE-OUT-NULL (Disconnect) a process for disconnecting the pages in the VIO buffer from virtual storage, i.e., the Vio Window Page is made first reference and the association between the Vio Window Page and the Vio Dataset Page no longer exists; MOVE-OUT (Non-Disconnect) a process for copying the data from the Vio Window Page to the Vio Dataset Page and putting the Vio Dataset Page on Auxiliary storage. The association between the Vio Window Page and the Vio Dataset Page remains intact; MOVE-OUT (Disconnect) is a process for causing a page-out to occur unless the page was stolen, i.e., data is copied from the Vio Window Page to the Vio Dataset Page. The Vio Window Page is made first reference and the association between the Vio Window Page and the Vio Dataset Page no longer exists.
Certain data such as dataset data that reside in external paging storage is known as “unvirtualized” and in virtual storage memory systems such as the IBM OS/390, requires I/O operations to access this data.
It would be highly desirable to provide a virtual memory storage system with the ability to keep such unvirtualized data, i.e., VIO datasets, in real storage in order to help reduce the I/O needed to reference this data.
SUMMARY OF THE INVENTION
It is thus an object of the present invention to provide a virtual memory storage system with the ability to keep unvirtualized data in real storage in order to help reduce the I/O needed in order to reference this data.
When data needs to be written out to a dataset residing in external paging space, no output I/O needs to be performed if the dataset data is kept in real storage. All that is necessary is a copy operation for copying the data from the real frame for the window page to a real frame that represents the dataset page. Additionally, when there is need to retrieve the dataset data into a virtual window, if the dataset page resides in real then there is no need for input I/O. Copying the data from the frame containing the dataset page to the frame that backs the virtual window is all that is needed.
According to the principles of the invention, there is provided in a computing system implementing a virtual memory system having real memory storage frames for storing virtual pages of data and an auxiliary storage system comprising auxiliary storage slots for storing copies of corresponding virtual pages, wherein I/O mechanisms are employed for effectuating transfer of data between the auxiliary and real storage, a system and method for managing stor

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Managing unvirtualized data pages in real storage does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Managing unvirtualized data pages in real storage, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Managing unvirtualized data pages in real storage will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3106786

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.