Patent US5032981A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5032981A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for increasing effective addressable data processing system memory space

Assignee: Nvidia Corp
•
Filing: 1989-04-10
•
Granted: 1991-07-16
•
Expires: 2009-04-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An addressing technique for transparently managing assignment of memory storage locations in a memory having a total capacity of T bytes for a computer operating system, the operating system having a number M of bytes of storage allocated thereto in the system memory map for storage of the operating system, involves assigning a number N of bytes of memory storage locations for storage of a core portion of the operating system, the number N being less than M, assigning a number S of blocks of additional memory storage locations in the memory, each of the S blocks of memory storage having a capacity of R bytes, where N+R=M; storing the portions of the operating system in addition to the core portion in the S number of blocks of the memory storage locations; retrieving one of the blocks S of the operating system from the memory storage; and retrieving the N number of bytes of the core portion of the operating system from memory storage, and utilizing the retrieved one of the blocks S with the retrieved number N of bytes of the core portion to produce the number M of bytes of the operating system.

Inventors

  • 👤 Vlad Bril
  • 👤 Paul W. T. Heller
  • 👤 Keith H. Uhlin

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 07:46
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/06; G06F12/0615; G06F12/0623; G06F9/00; G06F9/06; G06F9/44; G06F9/448; G06F9/4482; G06F9/4484; G06F9/4486

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 341 words
A method for transparently managing assignment of memory storage locations in a memory having a total capacity of T bytes for a computer operating system, said operating system having a number M of bytes of storage allocated thereto in the system memory map for storage of said operating system, comprising the steps of: allocating a number N of bytes of said memory storage locations for storage of a core portion of said operating system, said number N being less than M; allocating a number S of blocks of additional memory storage locations in said memory, each of said S blocks of memory storage having a capacity of R bytes, where N+R=M; storing the portions of said operating system in addition to said core portion in said S number of blocks of said memory storage locations; generating an initial memory address signal containing a plurality of bits identifying an address location in said memory storage; examining said memory address signal to determine whether said addressed memory storage location is within said N bytes of said memory storage locations in which said core portion of said operating system is stored; addressing said memory storage location identified by said memory address signals if said addressed memory location is within said N bytes; combining the memory address of one of said S blocks of memory storage locations with said initial memory address signal if said initial memory address location is not totally within said N bytes; addressing the memory storage location identified by said combined initial memory address signal and the address location defined by said one of said S blocks of memory storage locations; retrieving said addressed one of said S blocks of said operating system from said memory storage; retrieving all or a portion of said number of bytes of said core portion of said operating system from said memory storage, and utilizing said retrieved one of said blocks S with said retrieved number of said N bytes of said core portion to produce said number M of bytes of said operating system.
Claim 2
Independent Claim 341 words
A method for transparently managing assignment of memory storage locations in a memory having a total capacity of T bytes for a computer operating system, said operating system having a number M of bytes of storage allocated thereto in the system memory map for storage of said operating system, comprising the steps of: allocating a number N of bytes of said memory storage locations for storage of a core portion of said operating system, said number N being less than M; allocating a number S of blocks of additional memory storage locations in said memory, each of said S blocks of memory storage having a capacity of R bytes, where N+R=M; storing the portions of said operating system in addition to said core portion in said S number of blocks of said memory storage locations; generating an initial memory address signal containing a plurality of bits identifying an address location in said memory storage; examining said memory address signal to determine whether said addressed memory storage location is within said N bytes of said memory storage locations in which said core portion of said operating system is stored; addressing said memory storage location identified by said memory address signals if said addressed memory location is within said N bytes; combining the memory address of one of said S blocks of memory storage locations with said initial memory address signal if said initial memory address location is not totally within said N bytes; addressing the memory storage location identified by said combined initial memory address signal and the address location defined by said one of said S blocks of memory storage locations; retrieving said addressed one of said S blocks of said operating system from said memory storage; retrieving all or a portion of said number of bytes of said core portion of said operating system from said memory storage, and utilizing said retrieved one of said blocks S with said retrieved number of said N bytes of said core portion to produce said number M of bytes of said operating system.
Claim 3
Dependent Claim 40 words
A method in accordance with claim 1 including the step of selecting said one of said S blocks of memory storage locations on the basis of where within said T bytes of said memory said initial memory address is located.
Claim 4
Dependent Claim 20 words
A method in accordance with claim 1 in which said number N is a whole multiple of said number R.
Claim 5
Dependent Claim 19 words
A method in accordance with claim 1 in which the sum of N plus S times R equals T.
Claim 6
Dependent Claim 149 words
A method in accordance with claim 2 including the steps of: generating said initial memory address utilizing a plurality P of address signal lines; utilizing the signals on said plurality P of address signal lines to address said memory storage of said addressed memory location if said addressed memory location is within said N bytes; generating a plurality of page bits to select one of said S blocks of additional memory storage locations; combining a selected one of said page bits with a number P-K of the signals on said address signal lines to generate an address defining a memory address location which is larger than the address of said N bytes, where K is a whole integer; and addressing said address location which is larger than the address of said N bytes utilizing said address defined by said selected page bit and the signals on said P-K lines.
Claim 7
Dependent Claim 12 words
A method in accordance with claim 5 in which P equals 16.
Claim 8
Dependent Claim 20 words
A method in accordance with claim 6 in which K equals 1 and said number of page bits is 3.
Claim 9
Dependent Claim 63 words
A method in accordance with claim 5 for managing and controlling which of said S segments are mapped into said computer's address space so as to be addressed by the computer at the upper R bytes of said M bytes allocated to said operating system, including the step of altering said page bits by a memory manager routine located in said core portion.
Claim 10
Dependent Claim 42 words
A method in accordance with claim 8 for calling said memory manager routine in which information required by said memory manager to transfer control to a target routine is provided to said memory manager routine in-line with instructions executed by the computer.
Claim 11
Independent Claim 360 words
A system for transparently managing assignment of memory storage locations in a memory having a total capacity of T bytes for a computer operating system, said operating system having a number M of bytes of storage allocated thereto in the system memory map for storage of said operating system, said system comprising: means for assigning a number N of bytes of said memory storage locations for storage of a core portion of said operating system, said number N being less than M; means for assigning a number S of blocks of additional memory storage locations in said memory, each of said S blocks of memory storage having a capacity of R bytes, where N+R=M; means for storing the portions of said operating system in addition to said core portion in said S number of blocks of said memory storage locations; means for generating an initial memory address signal containing a plurality of bits identifying an address location in said memory storage; means for examining said memory address signal to determine whether said addressed memory storage location is within said N bytes of said memory storage locations in which said core portion of said operating system is stored; means for addressing said memory storage location identified by said memory address signals if said addressed memory location is within said N bytes; means for adding the memory address of one of said S blocks of memory storage locations to said initial memory address signal if said initial memory address location is not totally within said N bytes; means for addressing the memory storage location identified by said combined initial memory address signal and the address location defined by said one of said S blocks of memory storage locations; means for retrieving said addressed block S of said operating system from said memory storage; means for retrieving all or a portion of said N number of bytes of said core portion of said operating system from said memory storage, and means for utilizing said retrieved one of said blocks S with said retrieved number of said N bytes of said core portion to produce said number M of bytes of said operating system.
Claim 12
Independent Claim 360 words
A system for transparently managing assignment of memory storage locations in a memory having a total capacity of T bytes for a computer operating system, said operating system having a number M of bytes of storage allocated thereto in the system memory map for storage of said operating system, said system comprising: means for assigning a number N of bytes of said memory storage locations for storage of a core portion of said operating system, said number N being less than M; means for assigning a number S of blocks of additional memory storage locations in said memory, each of said S blocks of memory storage having a capacity of R bytes, where N+R=M; means for storing the portions of said operating system in addition to said core portion in said S number of blocks of said memory storage locations; means for generating an initial memory address signal containing a plurality of bits identifying an address location in said memory storage; means for examining said memory address signal to determine whether said addressed memory storage location is within said N bytes of said memory storage locations in which said core portion of said operating system is stored; means for addressing said memory storage location identified by said memory address signals if said addressed memory location is within said N bytes; means for adding the memory address of one of said S blocks of memory storage locations to said initial memory address signal if said initial memory address location is not totally within said N bytes; means for addressing the memory storage location identified by said combined initial memory address signal and the address location defined by said one of said S blocks of memory storage locations; means for retrieving said addressed block S of said operating system from said memory storage; means for retrieving all or a portion of said N number of bytes of said core portion of said operating system from said memory storage, and means for utilizing said retrieved one of said blocks S with said retrieved number of said N bytes of said core portion to produce said number M of bytes of said operating system.
Claim 13
Dependent Claim 39 words
A system in accordance with claim 10 including means for selecting said one of said S blocks of memory storage locations on the basis of where within said T bytes of said memory said initial memory address is located.
Claim 14
Dependent Claim 20 words
A system in accordance with claim 10 in which said number N is an even multiple of said number R.
Claim 15
Dependent Claim 19 words
A system in accordance with claim 10 in which the sum of N plus S times R equals T.

References Cited (Backward Citations)

US4571676A Cited
US4493034A Cited
US4530052A Cited
US4590556A Cited
US4654787A Cited
US4663707A Cited
US4779191A Cited
US4835734A Cited
US4837738A Cited
US4970642A Cited
DE3832912A1 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1994-07-15 1995-01-14 1995-07-16 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1998-07-15 1999-01-14 1999-07-16 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2002-07-15 2003-01-14 2003-07-16 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag