Electrical computers and digital processing systems: memory – Address formation – Address mapping
Reexamination Certificate
2000-03-28
2002-04-23
Kim, Hong (Department: 2185)
Electrical computers and digital processing systems: memory
Address formation
Address mapping
C711S206000
Reexamination Certificate
active
06378059
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a virtual storage unit, virtual storage method and storage medium and more particularly to the virtual storage unit, virtual storage method and storage medium which are capable of preventing occurrence of faults and improving a program execution speed by introducing a variable length page.
2. Description of the Related Art
A virtual storage system is conventionally used in such a manner that a storage unit controlled by an operating system is protected from improper reference thereto by a user program and/or that, by replacing data of the storage unit with data of a secondary storage unit, it appears that a memory capacity of the storage unit being usable by the user program would increase in a virtual manner.
The size of a page of the conventional virtual storage system is fixed in units of 4K (kilo) bytes or 8K bytes and, only in the fixed area within the operating system, predetermined numbers of variable pages can be referenced by occupying a TLB (Translation Look-aside Buffer) entry.
The fixed area is used for an inputting and outputting device, a communication buffer and a management area of a high use frequency.
However, the conventional virtual storage method has the following problems.
A first problem is that, as the user program becomes larger, a probability of occurrence of faults becomes higher. The reason is that, in general, when the user program having an area being larger than a storage area represented by a formula, [(number of TLB entries)×(size of page)], is executed, replacement of the TLB entries occurs, causing degraded performance of the operating system.
A second problem is that, if a variable-length page in the fixed area can be referenced at all times, some of the TLB entries are always used in a fixed manner, thus causing decreased numbers of the TLB that can be assigned freely, resulting in the same degraded performance of the operating system as in the case of the first problem.
A third problem is that, if the size of the page is increased uniformly, at a time of a fault of the storage unit, all large pages must be replaced with other storage factors, causing longer time required for the replacement of copies of contents of the storage unit or a like and additional replacement of even normal portions and thus causing decreased efficiency in use.
SUMMARY OF THE INVENTION
In view of the above, it is an object of the present invention to provide a virtual storage unit, virtual storage method and storage medium which are capable of preventing occurrence of faults at a time of execution of a user program and of improving a program execution speed, thus executing the user program efficiently.
According to a first aspect of the present invention, there is provided a virtual storage unit for dynamically changing a size of a virtual page displaced on virtual space including;
a first storing means for storing a physical address on a head page of a variable length physical page corresponding to the virtual page and size information showing a size of the variable length physical page;
a retrieving means for retrieving the variable length physical page containing a physical address corresponding to a predetermined virtual address from the virtual address;
a calculating means for calculating a virtual address on a head page of a virtual page corresponding to the variable length physical page from a physical address on a head page of the variable length physical page retrieved by the retrieving means and size information showing a size of the variable length physical page;
a second storing means for storing a virtual address on a head page of the virtual page corresponding to the variable length physical page calculated by the calculating means; and
whereby the size of each of the variable length physical pages is set to the size of an exponential multiple of a specified basic page size of two.
In the foregoing, the preferable mode is one wherein the retrieving means, based on a value obtained by dividing the virtual address by the basic page size, retrieves the variable length physical page corresponding to the virtual address from the first storing means and obtains the physical address on the head page of the variable length physical page and size information showing the size of the variable length physical page.
Also, the preferable mode is one wherein the calculating means, when the virtual address is contained in the virtual page, by dropping a remainder obtained by dividing the virtual address by the size of the variable length physical page, calculates the virtual address on the head page of the virtual page.
Also, the preferable mode is one that wherein comprises dividing means for dividing the variable length physical page corresponding to the predetermined virtual address.
Also, the preferable mode is one that wherein comprises binding means for binding the variable length physical page corresponding to the predetermined virtual address.
Furthermore, the preferable mode is one that wherein comprises a page binding means for binding the variable length physical page corresponding to the predetermined virtual address and a history recording means for recording the history of operations of binding by the page binding means, whereby the page binding means binds the variable length physical page based on the history recorded in the history recording means.
According to a second aspect of the present invention, there is provided a method of virtual storage for dynamically changing the size of the virtual page displaced on virtual space including;
a first storing step of storing the physical address on a head page of a variable length physical page corresponding to the virtual page and size information showing the size of a variable length physical page;
a retrieving step of retrieving the variable length physical page containing a physical address corresponding to a predetermined virtual address from the virtual address;
a calculating step of calculating a virtual address on a head page of the virtual page corresponding to the variable length physical page from the physical address on the head page of the variable length physical page retrieved by the retrieving step and size information showing the size of the variable length physical page;
a second storing step of storing the virtual address on the head page of the virtual page corresponding to the variable length physical page calculated by the calculating step; and
whereby the size of each of the variable length physical pages is set to the size of an exponential multiple of a specified basic page size of two.
According to a third aspect of the present invention, there is provided a storage medium storing the program being able to execute the method for virtual storage stated in the preceding.
REFERENCES:
patent: 5058003 (1991-10-01), White
patent: 5375214 (1994-12-01), Mirza et al.
patent: 5475827 (1995-12-01), Lee et al.
patent: 5560013 (1996-09-01), Scalzi et al.
patent: 5699539 (1997-12-01), Garber et al.
patent: 5752275 (1998-05-01), Hammond
patent: 5784699 (1998-07-01), McMahon et al.
patent: 5802341 (1998-09-01), Kline et al.
patent: 6012132 (2000-01-01), Yamada et al.
patent: 6038639 (2000-03-01), O'Brien et al.
patent: 6073226 (2000-06-01), Cutshall et al.
patent: 6088780 (2000-07-01), Yamada et al.
LandOfFree
Virtual storage for dynamically changing a size of a virtual... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Virtual storage for dynamically changing a size of a virtual..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Virtual storage for dynamically changing a size of a virtual... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2903095