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

Call instruction, return instruction and trap procedure for ring crossing architecture

Assignee: Bull HN Information Systems Inc
•
Filing: 1986-12-19
•
Granted: 1989-09-12
•
Expires: 2006-12-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In combination with a multiprocessing and multiprogramming computer system having a ring protection mechanism for protecting computer programs from unauthorized access, a new architecture for the execution of the call instruction, the return instruction, and the trap procedure is implemented partly in firmware and partly in hardware. The architecture includes a new stack mechanism for storing hardware managed control information in a control frame and software controlled data in a data frame.

Inventors

  • 👤 Victor M. Morganti
  • 👤 Patrick E. Prange

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 21:04
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/468; G06F12/00; G06F12/14; G06F12/1458; G06F12/1491

Claims Analysis

Total Claims: 6
Claim 1
Independent Claim 331 words
In a data processing system having a ring architecture comprised of a plurality of protection rings, each of said protection rings determining a level of privilege for execution of procedures (including programs) related to each of said protection rings, each procedure having a ring number associated therewith identifying a level of protection, wherein procedures can execute at a level of privilege of said procedure ring number or a lower privilege level, each procedure having attributes associated therewith defining execution restrictions thereof, a method for causing a first procedure executing at a first level of privilege to utilize a second procedure which is executed at a higher level of privilege, said method comprising steps of: comparing attributes of said first and said second procedure to determine when a predetermined relationship exists between said first and said second procedure attributes by means of a test procedure executed by said data processing system under hardware control without intervention of a software procedure; providing a stack means associated with each level of privilege for storing information related to procedures being executed at an equivalent level of privilege, wherein a stack means associated with a highest level of privilege is implemented by dedicated memory locations in a main memory unit of said data processing unit; when said predetermined relationship exits between said first and said second procedure attributes, entering control information in a second stack means associated with said second procedure under data processing system hardware control; when, required by said second procedure, entering data information in said second stack means under data processing system software control; entering address information identifying a location of control information in a first stack means associated with said first procedure; executing said second procedure, said second procedure using control information from said second stack means; and, after completion of said second procedure, returning to execution of said first procedure by means of a procedure activated in response to said second procedure completion and executed under data processing system hardware control.
Claim 2
Dependent Claim 331 words
In a data processing system having a ring architecture comprised of a plurality of protection rings, each of said protection rings determining a level of privilege for execution of procedures (including programs) related to each of said protection rings, each procedure having a ring number associated therewith identifying a level of protection, wherein procedures can execute at a level of privilege of said procedure ring number or a lower privilege level, each procedure having attributes associated therewith defining execution restrictions thereof, a method for causing a first procedure executing at a first level of privilege to utilize a second procedure which is executed at a higher level of privilege, said method comprising steps of: comparing attributes of said first and said second procedure to determine when a predetermined relationship exists between said first and said second procedure attributes by means of a test procedure executed by said data processing system under hardware control without intervention of a software procedure; providing a stack means associated with each level of privilege for storing information related to procedures being executed at an equivalent level of privilege, wherein a stack means associated with a highest level of privilege is implemented by dedicated memory locations in a main memory unit of said data processing unit; when said predetermined relationship exits between said first and said second procedure attributes, entering control information in a second stack means associated with said second procedure under data processing system hardware control; when, required by said second procedure, entering data information in said second stack means under data processing system software control; entering address information identifying a location of control information in a first stack means associated with said first procedure; executing said second procedure, said second procedure using control information from said second stack means; and, after completion of said second procedure, returning to execution of said first procedure by means of a procedure activated in response to said second procedure completion and executed under data processing system hardware control.
Claim 3
Dependent Claim 42 words
The method for changing currently executing procedures in a data processing system of claim 1 further comprising a step of responding to a condition in said first procedure requesting said second procedure, said responding step causing said comparing step to be executed.
Claim 4
Dependent Claim 38 words
The method for changing currently executing procedures in a data processing system of claim 2 wherein said responding to a condition step further includes the step of responding to a trap condition and responding to a call instruction.
Claim 5
Dependent Claim 43 words
The method of changing currently executing procedures in a data processing system of claim 1 further comprising a step of including in a first field in said second stack means containing a location of said second procedure information in said second stack means.
Claim 6
Dependent Claim 50 words
The method of changing currently executing procedures in a data processing system of claim 1 further comprising a step of causing said second procedure operating at said second level of privilege to utilize a third procedure which is executed at higher level of privilege than said second level of privilege.

References Cited (Backward Citations)

US4177510A Cited
US4297743A Cited
US3916385A Cited
US4104718A Cited
US4524416A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag