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

Method for restarting execution interrupted due to page fault in a data processing system

Assignee: Hitachi Ltd
•
Filing: 1986-10-14
•
Granted: 1989-06-20
•
Expires: 2006-10-14
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present application invention relates to a method for restarting execution of an instruction interrupted due to a page fault. When a page fault occurs during an execution of an instruction, the pertinent page is loaded from an external storage into the main memory and then the access which has caused the page fault is executed again. After N steps of the microprogram that has executed the page fault access, the page fault exception processing is initiated and at the save/restore operation of the content of the microprogram counter, the content of the microprogram is decremented by N, thereby restarting the execution of the instruction beginning from the step of the microprogram which has achieved the page fault access.

Inventors

  • 👤 Atsuhiko Nishikawa
  • 👤 Yoshihiro Miyazaki
  • 👤 Masayuki Tanji
  • 👤 Soichi Takaya
  • 👤 Shinichiro Yamaguchi

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 14:54
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3861; G06F9/22; G06F9/26; G06F9/262; G06F9/268

Claims Analysis

Total Claims: 6
Claim 1
Independent Claim 278 words
A method for restarting execution of an instruction interrupted due to a page fault in a data processing system having a main memory, means for storing microprograms of microinstructions, a microprogram counter for holding a microprogram address, a program counter for holding a program address, and an external memory, said method comprising the steps of: storing microinstructions, including a microinstruction for main memory access and a microinstruction for waiting for a reply to a main memory access for a fixed number N of operating steps after execution of said microinstruction for a main memory access; executing said microinstruction for main memory access without saving a current microprogram address; executing said microinstruction for waiting for a reply to a main memory access without incrementing said microprogram counter until a reply to the memory access is received; branching from said microinstruction for waiting for a reply to a main memory access to an exception processing microprogram when a reply to a main memory access is received and a page fault is indicated; executing said exception processing microprogram by saving a microprogram address which is obtained by substracting N from the address of said microinstruction for waiting for a reply to a main memory access and for setting a new program address in said program counter for executing a procedure for recovery of a page fault; and executing said procedure for recovery of a page fault by loading a page for which said page fault has occurred into said main memory from said external memory and resetting the program counter and restoring the microprogram address which is saved by said exception processing microprogram; thereby effecting the restart of the instruction execution.
Claim 2
Independent Claim 278 words
A method for restarting execution of an instruction interrupted due to a page fault in a data processing system having a main memory, means for storing microprograms of microinstructions, a microprogram counter for holding a microprogram address, a program counter for holding a program address, and an external memory, said method comprising the steps of: storing microinstructions, including a microinstruction for main memory access and a microinstruction for waiting for a reply to a main memory access for a fixed number N of operating steps after execution of said microinstruction for a main memory access; executing said microinstruction for main memory access without saving a current microprogram address; executing said microinstruction for waiting for a reply to a main memory access without incrementing said microprogram counter until a reply to the memory access is received; branching from said microinstruction for waiting for a reply to a main memory access to an exception processing microprogram when a reply to a main memory access is received and a page fault is indicated; executing said exception processing microprogram by saving a microprogram address which is obtained by substracting N from the address of said microinstruction for waiting for a reply to a main memory access and for setting a new program address in said program counter for executing a procedure for recovery of a page fault; and executing said procedure for recovery of a page fault by loading a page for which said page fault has occurred into said main memory from said external memory and resetting the program counter and restoring the microprogram address which is saved by said exception processing microprogram; thereby effecting the restart of the instruction execution.
Claim 3
Dependent Claim 48 words
A method according to claim 1, wherein the microinstruction for waiting for a reply is executed at a next step of a microprogram following execution of the microinstruction for main memory access, and said exception processing microprogram includes a step of decrementing the saved microprogram address by one.
Claim 4
Independent Claim 277 words
A method for restarting execution of an instruction interrupted due to a page fault in a data processing system having a main memory, means for storing microprograms of microinstructions, a microprogram counter for holding a microprogram address, a program counter for holding a program address, and an external memory, said method comprising the steps of: storing microinstructions, including a microinstruction for main memory access and a microinstruction for waiting for a reply to a main memory access for a fixed number N of operating steps after execution of said microinstruction for a main memory access; executing said microinstruction for main memory access without saving a current microprogram address; executing said microinstruction for waiting for a reply to a main memory access without incrementing said microprogram counter until a reply to the memory access is received; branching from said microinstruction for waiting for a reply to a main memory access to an exception processing microprogram when a reply to a main memory access is received and a page fault is indicated; executing said exception processing microprogram by saving a microprogram address of said microinstruction for waiting for a reply to a main memory access and for setting a new program address in said program counter for executing a procedure for recovery of a page fault; and executing said procedure for recovery of a page fault by loading a page for which said page fault has occurred into said main memory from said external memory and resetting the program counter and restoring the address which is obtained by subtracting N from the address which is saved by said exception processing microprogram; thereby effecting the restart of the instruction execution.
Claim 5
Independent Claim 277 words
A method for restarting execution of an instruction interrupted due to a page fault in a data processing system having a main memory, means for storing microprograms of microinstructions, a microprogram counter for holding a microprogram address, a program counter for holding a program address, and an external memory, said method comprising the steps of: storing microinstructions, including a microinstruction for main memory access and a microinstruction for waiting for a reply to a main memory access for a fixed number N of operating steps after execution of said microinstruction for a main memory access; executing said microinstruction for main memory access without saving a current microprogram address; executing said microinstruction for waiting for a reply to a main memory access without incrementing said microprogram counter until a reply to the memory access is received; branching from said microinstruction for waiting for a reply to a main memory access to an exception processing microprogram when a reply to a main memory access is received and a page fault is indicated; executing said exception processing microprogram by saving a microprogram address of said microinstruction for waiting for a reply to a main memory access and for setting a new program address in said program counter for executing a procedure for recovery of a page fault; and executing said procedure for recovery of a page fault by loading a page for which said page fault has occurred into said main memory from said external memory and resetting the program counter and restoring the address which is obtained by subtracting N from the address which is saved by said exception processing microprogram; thereby effecting the restart of the instruction execution.
Claim 6
Dependent Claim 59 words
A method according to claim 3, wherein the microinstruction for waiting for a reply is executed at a next step of a microprogram following execution of the microinstruction for main memory access, and said procedure for recovery of a page fault includes a step of decrementing by one the microprogram address saved during execution of said exception processing microprogram.

References Cited (Backward Citations)

US3555517A Cited
US3736566A Cited
US4045661A Cited
US4110822A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1992-06-19 1992-12-19 1993-06-20 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1996-06-19 1996-12-19 1997-06-20 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2000-06-19 2000-12-19 2001-06-20 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag