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

System for dynamically allocating main memory to facilitate swapping of terminate and stay resident communication program to increase available memory space

Assignee: McAfee LLC
•
Filing: 1989-08-23
•
Granted: 1992-11-24
•
Expires: 2009-08-23
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for the allocation of RAM memory space in a microcomputer environment allows for one or more terminate and stay resident (TSR) or other programs to be stored on a remote memory device in a way that preserves their accessability. The method includes the installation of a supervisory program which traps calls for a displaced program and transfers a portion of another program, such as an application-type program, in RAM to remote memory while retrieving the called displaced program from remote memory into the RAM space previously occupied by the transferred portion. The swap function is performed in a manner which preserves the integrity of the swapped program, and which allows operation of the application program to be halted such that it may be restarted without loss upon return from remote memory. In another aspect of the invention a communication TSR is simulated to allow data transfers to the TSR to be processed even if the TSR is in remote memory.

Inventors

  • 👤 Michael L. Spilo

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 08:36
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/44; G06F9/445

Claims Analysis

Total Claims: 5
Claim 1
Independent Claim 334 words
A method for allocating RAM space for a communications program in a network environment, comprising the steps of: loading a communications program into RAM; determining the RAM space utilized by said communications program and the interrupt vector table associated therewith; transferring said communications program to storage with said associated interrupt vector table; reallocating the RAM space previously utilized by said communications program to a second program and running said second program; monitoring the computer operation system while said second program is running until a call is initiated for said communications program, and trapping said call; suspending processing of said second program in a manner allowing subsequent restart; passing the portion of said second program in the RAM space used by said communications program to storage with its associated interrupt vector table in a manner allowing subsequent restart of said second program upon return of the portion of the program of said second program to RAM; returning said communication program and interrupt vector table to at least the RAM space made available by said passing of said portion of said program; monitoring said communications program for the initiation of a data transfer request thereby; intercepting said request and interrogating said communications program to determine parameters associated with the data request and the handling thereby of said communications program; duplicating said parameters in an assigned section of memory separate from that under the control of said communications program, allocating a data space of equal size to that indicated by said parameters and copying the controls of the data space of said communications program, if any; modifying said duplicated parameters to permit received data to be passed to said new data space and transmitted data to be passed from said new data space; passing the modified data request parameters on to the network operating system and commencing communications; monitoring the data communication to await a completion signal from the network operating system; and returning said completion signal and said received data, if any, to said communications program.
Claim 2
Independent Claim 334 words
A method for allocating RAM space for a communications program in a network environment, comprising the steps of: loading a communications program into RAM; determining the RAM space utilized by said communications program and the interrupt vector table associated therewith; transferring said communications program to storage with said associated interrupt vector table; reallocating the RAM space previously utilized by said communications program to a second program and running said second program; monitoring the computer operation system while said second program is running until a call is initiated for said communications program, and trapping said call; suspending processing of said second program in a manner allowing subsequent restart; passing the portion of said second program in the RAM space used by said communications program to storage with its associated interrupt vector table in a manner allowing subsequent restart of said second program upon return of the portion of the program of said second program to RAM; returning said communication program and interrupt vector table to at least the RAM space made available by said passing of said portion of said program; monitoring said communications program for the initiation of a data transfer request thereby; intercepting said request and interrogating said communications program to determine parameters associated with the data request and the handling thereby of said communications program; duplicating said parameters in an assigned section of memory separate from that under the control of said communications program, allocating a data space of equal size to that indicated by said parameters and copying the controls of the data space of said communications program, if any; modifying said duplicated parameters to permit received data to be passed to said new data space and transmitted data to be passed from said new data space; passing the modified data request parameters on to the network operating system and commencing communications; monitoring the data communication to await a completion signal from the network operating system; and returning said completion signal and said received data, if any, to said communications program.
Claim 3
Dependent Claim 66 words
The method of claim 1 further including the steps of: transferring said communications program back to storage; and returning the portion of said second program in storage to RAM and reinstituting operation thereof; said transferring and returning steps being performed during said data communication monitoring step, said communication program being returned to RAM prior to passing said completion signal and said received data, if any, thereto.
Claim 4
Independent Claim 182 words
A method for controlling communication between a user program having an associated data space and a network operating system upon the initiation of a communications request by said user program, comprising the steps of: intercepting the request; said request by the user program to determine parameters associated with the request and the handling thereof by said user program; duplicating said parameters in an assigned section of memory separate from that under the control of said user program, allocating a data space of equal size to that indicated by said parameters and copying the contents of the user program data space, modifying said duplicated parameters to permit received data to be passed to said new data space and transmitted data to be passed from said new data space; passing the modified data request parameters on to the network operating system and commencing communication by the network operating system; monitoring the data communication to await a completion signal from the network operating system; and copying said received data, if any, to the user program and notifying said user program of the completion of communications.
Claim 5
Independent Claim 182 words
A method for controlling communication between a user program having an associated data space and a network operating system upon the initiation of a communications request by said user program, comprising the steps of: intercepting the request; said request by the user program to determine parameters associated with the request and the handling thereof by said user program; duplicating said parameters in an assigned section of memory separate from that under the control of said user program, allocating a data space of equal size to that indicated by said parameters and copying the contents of the user program data space, modifying said duplicated parameters to permit received data to be passed to said new data space and transmitted data to be passed from said new data space; passing the modified data request parameters on to the network operating system and commencing communication by the network operating system; monitoring the data communication to await a completion signal from the network operating system; and copying said received data, if any, to the user program and notifying said user program of the completion of communications.

References Cited (Backward Citations)

US3618045A Cited
US4716543A Cited
US4622013A Cited
US4897780A Cited
US4868738A Cited
EP0311187A1 Cited
US4912628A Cited
US4949248A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag