US4962533A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Data protection for computer systems
Assignee: Texas Instruments Inc
•
Filing: 1989-02-17
•
Granted: 1990-10-09
•
Expires: 2009-02-17
Abstract
Abstract A computer system uses security labels for evey word in memory. Each access to a memory location requires that the security level of the memory location be compared to that of a process which is making the access. If the security level of the process does not dominate that of the memory location, access is denied. Each time a memory location is modified, it is assigned a security level consistent with the levels of all of the data which was used to modify the memory location.
Inventors
- 👤 Steven D. Krueger
- 👤 Martha A. Branstad
- 👤 Stephen T. Walker
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-26 05:38
CPC Classifications
G; G06; G06F; G06F21/00; G06F21/60; G06F21/62; G06F21/70; G06F21/78; G06F21/79
Claims Analysis
Total Claims: 6
Claim 1
Independent Claim
132 words
A computer system, comprising: an instruction unit; a data memory; a data unit coupled to said instruction unit, wherein said instruction unit reads instructions from said data memory, and causes said data unit to perform arithmetical and logical functions on data taken from said data memory; a security memory in parallel with said data memory, wherein said security memory contains a security label for each location in said data memory; and a security unit, wherein said security unit, for each instruction performed in said data unit, compares the security level for all data used by the instruction with a clearance level for a user, and which assigns to every modified memory location a security level which dominates the levels of all data used to determine the modified value of such memory location.
Claim 2
Dependent Claim
132 words
A computer system, comprising: an instruction unit; a data memory; a data unit coupled to said instruction unit, wherein said instruction unit reads instructions from said data memory, and causes said data unit to perform arithmetical and logical functions on data taken from said data memory; a security memory in parallel with said data memory, wherein said security memory contains a security label for each location in said data memory; and a security unit, wherein said security unit, for each instruction performed in said data unit, compares the security level for all data used by the instruction with a clearance level for a user, and which assigns to every modified memory location a security level which dominates the levels of all data used to determine the modified value of such memory location.
Claim 3
Independent Claim
193 words
A method for providing security for a computer system, comprising the steps of: (a) for each machine language instruction to be executed, determining the type of the instruction; (b) if the instruction is, as determined in step (a), a data operation, then if the security level of a user dominates the level of each data word used by the instruction, allowing the instruction to be performed and giving any result a security level which dominates all of the data words used by the instruction and a control domain level, else preventing execution of the instruction; (c) if the instruciton is a conditional, then if the security level of the user dominates the level of all antecedents for the condition, setting the control domain level to a level which dominates all of such antecedents and allowing the instruction to be performed, else preventing execution of the instruction; (d) if the instruction is a procedure call, storing the current control domain level on a stack; and (e) if the instruction is a return from a procedure, setting the control domain level to the value that was stored on the stack when such procedure was called.
Claim 4
Independent Claim
193 words
A method for providing security for a computer system, comprising the steps of: (a) for each machine language instruction to be executed, determining the type of the instruction; (b) if the instruction is, as determined in step (a), a data operation, then if the security level of a user dominates the level of each data word used by the instruction, allowing the instruction to be performed and giving any result a security level which dominates all of the data words used by the instruction and a control domain level, else preventing execution of the instruction; (c) if the instruciton is a conditional, then if the security level of the user dominates the level of all antecedents for the condition, setting the control domain level to a level which dominates all of such antecedents and allowing the instruction to be performed, else preventing execution of the instruction; (d) if the instruction is a procedure call, storing the current control domain level on a stack; and (e) if the instruction is a return from a procedure, setting the control domain level to the value that was stored on the stack when such procedure was called.
Claim 5
Dependent Claim
18 words
The method of claim 2, said conditional instruction could be generated by the compiler from a conditional statement.
Claim 6
Dependent Claim
15 words
The method of claim 3, said conditional statement could be transformed into a procedural call.
References Cited (Backward Citations)
US4802218A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1993-10-08 | 1994-04-09 | 1994-10-09 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1997-10-08 | 1998-04-09 | 1998-10-09 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2001-10-08 | 2002-04-09 | 2002-10-09 | $7700.00 | Window Closed / Lapsed |