Patent US5765198A successfully refreshed from Google Patents.
US5765198A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Transparent relocation of real memory addresses in the main memory of a data processor
Assignee: Morgan Stanley and Co LLC
•
Filing: 1996-02-01
•
Granted: 1998-06-09
•
Expires: 2016-02-01
Abstract
Abstract An operating system (OS) of a data processor physically relocates segments of memory containing real addresses used by the operating system itself, which addresses must remain unaltered within the system. The system identifies a memory bank containing a source segment having such real addresses, quiesces the OS, and copies the source segment to a target memory module. A register identifying the real addresses stored in the target module is renamed to the addresses of source segment, and the OS resumes executing normal tasks. The data processing system may have multiple system modules each having processors, memory, and/or other components.
Inventors
- 👤 Andrew Jackson McCrocklin
- 👤 Douglas Brent Meyer
- 👤 Eric Cedric Pilmore
- 👤 Sandra Cecilia Lee
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-09 03:12
CPC Classifications
G; G11; G11C; G11C29/00; G11C29/70; G11C29/88; G06; G06F; G06F12/00; G06F12/02; G06F12/06; G06F12/0646; G06F12/0653
Claims Analysis
Total Claims: 22
Claim 1
Independent Claim
187 words
A method for transparently relocating a source kernel segment of memory from a source memory location in a data-processing system to a target memory location within said system, so that after said relocating, the target location responds to the original real addresses of said source segment, and so that said system may continue to use the original contents of said source segment at all times during the execution of said method by said same system, said method comprising: identifying said source segment by means of its real addresses; determining a target location for receiving the contents of said source segment; quiescing the operating system of said system; loading a remap routine within said system in such a way that its execution is guaranteed not to refer to any memory located within said source segment; executing said remap routine so as to copy the contents of said source segment from said source location to said target location; renaming said target location so as to respond to said original real addresses; inhibiting said source segment so as to not respond to said original real addresses; resuming said operating system.
Claim 2
Independent Claim
187 words
A method for transparently relocating a source kernel segment of memory from a source memory location in a data-processing system to a target memory location within said system, so that after said relocating, the target location responds to the original real addresses of said source segment, and so that said system may continue to use the original contents of said source segment at all times during the execution of said method by said same system, said method comprising: identifying said source segment by means of its real addresses; determining a target location for receiving the contents of said source segment; quiescing the operating system of said system; loading a remap routine within said system in such a way that its execution is guaranteed not to refer to any memory located within said source segment; executing said remap routine so as to copy the contents of said source segment from said source location to said target location; renaming said target location so as to respond to said original real addresses; inhibiting said source segment so as to not respond to said original real addresses; resuming said operating system.
Claim 3
Dependent Claim
44 words
The method of claim 1, for additionally relocating at least one source segment which is not a kernel segment, comprising the further steps of: identifying a certain segment as a non-kernel source segment; flushing the contents of said non-kernel source segment to secondary storage.
Claim 4
Dependent Claim
32 words
The method of claim 1, wherein the step of quiescing said operating system is performed substantially entirely by a designated one of multiple processors for executing tasks concurrently within said data-processing system.
Claim 5
Dependent Claim
26 words
The method of claim 3, wherein the step of quiescing said operating system includes preventing certain of said processors from referencing memory in said source segment.
Claim 6
Dependent Claim
20 words
The method of claim 3, including suspending substantially all tasks executing in said multiple processors, except for said designated processor.
Claim 7
Dependent Claim
27 words
The method of claim 5, including dispatching an idle task to said multiple processors other than said designated processor, said idle task contain no external memory references.
Claim 8
Dependent Claim
16 words
The method of claim 5, wherein resuming said operating system includes restarting said substantially all tasks.
Claim 9
Dependent Claim
40 words
The method of claim 1, wherein said system includes multiple processors, the method including designating one of said processors in said system to execute said remap routine, and loading said remap routine entirely into a cache of said one processor.
Claim 10
Dependent Claim
20 words
The method of claim 8, wherein said remap routine contains no jumps longer than a line length of said cache.
Claim 11
Dependent Claim
32 words
The method of claim 1, wherein renaming said target location includes loading a register associated with said target location with a least one value specifying the real addresses of said source segment.
Claim 12
Dependent Claim
36 words
The method of claim 10, wherein said at least one value comprises a first value indicating one of said real addresses of said source segment, and a second value indicating a size of said source segment.
Claim 13
Dependent Claim
30 words
The method of claim 10, comprising the further step of resetting a register associated with said source location to a value different from any real address of said source segment.
Claim 14
Dependent Claim
197 words
A data-processing system, comprising: a plurality of processors for executing multiple concurrent tasks; a plurality of individual banks of memory, each having a range of real addresses; a plurality of rewritable segment registers associated with respective ones of said memory banks, for holding segment data indicating the particular real addresses assigned to its memory bank; control means for loading different values into said segment registers; an operating system for controlling the execution of tasks in said processors, said operating system containing direct coded references to said real addresses in at least one segment of said memory; segment-relocation means located entirely within said system and employing at least one of said same plurality of processors for transparently moving a source segment of a source one of said banks of memory to a target one of said banks entirely within said data-processing system, said relocation means quiescing said operating system before commencing said moving, so that after said moving the target bank responds to the original real addresses of said source segment, said relocation means employing the contents of said source segment for the entire period of time during which it moves said source segment to said target bank.
Claim 15
Dependent Claim
197 words
A data-processing system, comprising: a plurality of processors for executing multiple concurrent tasks; a plurality of individual banks of memory, each having a range of real addresses; a plurality of rewritable segment registers associated with respective ones of said memory banks, for holding segment data indicating the particular real addresses assigned to its memory bank; control means for loading different values into said segment registers; an operating system for controlling the execution of tasks in said processors, said operating system containing direct coded references to said real addresses in at least one segment of said memory; segment-relocation means located entirely within said system and employing at least one of said same plurality of processors for transparently moving a source segment of a source one of said banks of memory to a target one of said banks entirely within said data-processing system, said relocation means quiescing said operating system before commencing said moving, so that after said moving the target bank responds to the original real addresses of said source segment, said relocation means employing the contents of said source segment for the entire period of time during which it moves said source segment to said target bank.
Claim 16
Dependent Claim
82 words
The system of claim 13, wherein said data-processing system comprises: a plurality of system modules each capable of holding a subset of said processors and a subset of said memory banks; an address router coupled to said system modules for carrying addresses among said modules, such that said memory banks in ail said modules have a single address space; a data router coupled to said system modules for carrying data among said modules in response to addresses specified by said address router.
Claim 17
Dependent Claim
33 words
The system of claim 14, wherein said segment registers reside on said system modules and are coupled to said address router and to said data router for loading segment data into said registers.
Claim 18
Dependent Claim
20 words
The system of claim 13, wherein said segment registers respond to unique respective addresses for rewriting said segment data thereinto.
Claim 19
Dependent Claim
31 words
The system of claim 16, wherein said memory banks reside in a first address space, and wherein said segment registers in a second address space separate from said first address space.
Claim 20
Dependent Claim
18 words
The system of claim 16, wherein said segment data comprises a segment base address and a segment size.
Claim 21
Dependent Claim
22 words
The system of claim 13, wherein each of said processors includes a cache for holding data and instructions for said each processor.
Claim 22
Dependent Claim
26 words
The system of claim 19, wherein said relocation means includes a remap portion operating exclusively from the cache belonging to a designated one of said processors.
References Cited (Backward Citations)
US4493034A
Cited
US4970640A
Cited
US5101346A
Cited
US5193202A
Cited
US5459854A
Cited
US5594903A
Cited
US5428758A
Cited
US5584042A
Cited
US5504801A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-06-08 | 2001-12-08 | 2002-06-09 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-06-08 | 2005-12-08 | 2006-06-09 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-06-08 | 2009-12-08 | 2010-06-09 | $7700.00 | Window Closed / Lapsed |