← Back to Patent Explorer
US5123098A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for executing programs within expanded memory of a computer system using MS or PC DOS

Assignee: HP Inc
•
Filing: 1989-02-28
•
Granted: 1992-06-16
•
Expires: 2009-02-28
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method of executing a program module in an expanded memory of a computer system using PC or MS DOS. The program module is divided into a resident section and a transient section. After loading the module into main memory, the program module relocates the transient section to expanded memory. The module is called, either directly or via an interrupt, through an entry point in the resident section, while the majority of the program module function is performed by the code in the transient section. The module is also divided into a third, data, section which can be shared by the resident and transient sections, and which can be loaded either into expanded or main memory.

Inventors

  • 👤 Michael W. Gunning
  • 👤 James R. Conrad

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-25 15:13
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/06; G06F12/0615; G06F12/0623; G06F9/00; G06F9/06; G06F9/44; G06F9/445; G06F9/44557

Claims Analysis

Total Claims: 5
Claim 1
Independent Claim 288 words
A method of loading and executing a device driver program module, said device driver program module containing resident and transient sections, in a computer, said computer having a processing element for performing all steps of said method, a main memory, and optionally having an expanded memory containing switchable pages, said expanded memory also having a page frame for holding one or more of said switchable pages, said method comprising the steps of: (B) loading said device driver program module into said main memory; (C) if said expanded memory is not present proceeding with step (G); (D) moving said transient section to one or more pages of said expanded memory; (E) modifying addresses in said resident section that address locations in said transient section to address corresponding transient section locations in said expanded memory page frame area; (F) modifying addresses in said transient section that address locations in said resident section; and (G) accepting one or more calls from a second program module to said program module wherein processing each said one or more calls comprises the steps of (G1) receiving said call in said resident section, (G2) if said expanded memory is not present, proceeding with step (G5); (G3) saving all page frame information relating to a first set of pages currently contained in said page frame of said expanded memory, (G4) switching in one or more pages of said transient section into said page frame, (G5) calling said transient section of said device driver program module to process said call, (G6) if said expanded memory is not present, proceeding with step (G8), (G7) restoring said page frame information relating to said first set of pages of said expanded memory, and (G8) returning to said second program module.
Claim 2
Independent Claim 288 words
A method of loading and executing a device driver program module, said device driver program module containing resident and transient sections, in a computer, said computer having a processing element for performing all steps of said method, a main memory, and optionally having an expanded memory containing switchable pages, said expanded memory also having a page frame for holding one or more of said switchable pages, said method comprising the steps of: (B) loading said device driver program module into said main memory; (C) if said expanded memory is not present proceeding with step (G); (D) moving said transient section to one or more pages of said expanded memory; (E) modifying addresses in said resident section that address locations in said transient section to address corresponding transient section locations in said expanded memory page frame area; (F) modifying addresses in said transient section that address locations in said resident section; and (G) accepting one or more calls from a second program module to said program module wherein processing each said one or more calls comprises the steps of (G1) receiving said call in said resident section, (G2) if said expanded memory is not present, proceeding with step (G5); (G3) saving all page frame information relating to a first set of pages currently contained in said page frame of said expanded memory, (G4) switching in one or more pages of said transient section into said page frame, (G5) calling said transient section of said device driver program module to process said call, (G6) if said expanded memory is not present, proceeding with step (G8), (G7) restoring said page frame information relating to said first set of pages of said expanded memory, and (G8) returning to said second program module.
Claim 3
Dependent Claim 40 words
The method of claim 1 wherein said program module further contains an initialization section, and step (F) further comprises the steps of: (F1) executing said initialization section of said program module; and (F2) releasing memory occupied by said initialization section.
Claim 4
Dependent Claim 21 words
The method of claim 1 wherein steps (G2), (G3), (G4), (G6) and (G7) are performed by a separately loaded program module.
Claim 5
Dependent Claim 74 words
The method of claim 1 wherein said program module further contains a data section, and wherein step (C) further comprises the step of moving said data section to one or more pages of said expanded memory, and wherein step (F) further comprises the step of modifying addresses in said resident section and said transient section that address locations in said data section to address corresponding data section locations in said expanded memory page frame.

References Cited (Backward Citations)

US3970999A Cited
US4403283A Cited
US4731738A Cited
US4744025A Cited
US4761736A Cited
US4831522A Cited
US4891752A Cited
US4943910A Cited
US4926322A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1995-06-16 1995-12-16 1996-06-16 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1999-06-16 1999-12-16 2000-06-16 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2003-06-16 2003-12-16 2004-06-16 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag