Claims Analysis
Total Claims: 3
Claim 1
Independent Claim
658 words
In a digital computer system including processor means for performing operations on operands, memory means for storing operands and instructions for directing said operations, said memory means being organized into objects for containing operands and instructions, bus means for conducting operands and instructions between said memory means and said processor means, and I/O means for conducting operands between said digital computer system and devices external to said digital computer system, said processor means comprising: ALU means connected to said bus means for performing said operations, addressing means connected to said bus means for providing addresses for controlling the transfer of operands and instructions between said memory means and said processor means, each of said addresses comprising an object field for identifying an object, an offset field for specifying a first number of information bits of offset relative to the start of said object, and a length field for specifying an second number of information bits of said object following said first number of information bits to be transferred between said memory means and said processor means, and microcode control means for storing sequences of microinstructions for controlling said processor means and responsive to said instructions for providing said sequences of microinstructions to said processor means, said ALU means including general register file means connected to said bus means for storing selected operands and addreses, said general register file means comprising a plurality of vertically ordered registers vertically divided into three parallel-operating and addresed parts, a first part of said general register file means comprising first register file means for storing object fields of said addresses, a second part of said general register file means comprising second register file means for storing offset fields of said addresses and said operands, and a third part of said general register file means comprising third register file means for storing length field of said addresses, and address ALU means connected to said general register file means and to said bus means and responsive to first sequences of microinstructions for performing operations on said addresses, said objects containing operands as data objects and instructions as procedure objects, and said processor means including protection means for preventing a user. currently using said digital computer system to execute a program comprising at least one procedure object, from obtaining unauthorized access to objects of another user, said protection means including subject number memory means responsive to the operation of said processor means for storing a currently active subject number of a plurality of subject numbers, each subject number corresponding to and identifying one of a plurality of subjects, each subject comprising the combination of (1) a user of said digital computer system, (2) a process of said digital computer system for executing a procedure of said user, and (3) the type of operation to be performed by said digital computer system in response to an instruction of a procedure of said user, and said currently active subject number identifies (1) the user currently utilizing said digital computer system, (2) the process currently executing a procedure of said user's program, and (3) the type of operation to be performed by said digital computer system in response to a current instruction of a procedure of said user's program, protection memory means for storing at least one access control list, each access control list corresponding to an object and comprising at least one access control entry, each access control entry corresponding to a subject having access rights to said object and containing the access rights of said subject to said object, and access right confirmation means responsive to a currently active subject number and to the operations of said processor means for indexing said protection means in response to a current instruction of a procedure of said user's program when said said current instruction requests access to an object and for comparing the access rights of the currently active subject to the access control list associated with said object.
Claim 2
Dependent Claim
658 words
In a digital computer system including processor means for performing operations on operands, memory means for storing operands and instructions for directing said operations, said memory means being organized into objects for containing operands and instructions, bus means for conducting operands and instructions between said memory means and said processor means, and I/O means for conducting operands between said digital computer system and devices external to said digital computer system, said processor means comprising: ALU means connected to said bus means for performing said operations, addressing means connected to said bus means for providing addresses for controlling the transfer of operands and instructions between said memory means and said processor means, each of said addresses comprising an object field for identifying an object, an offset field for specifying a first number of information bits of offset relative to the start of said object, and a length field for specifying an second number of information bits of said object following said first number of information bits to be transferred between said memory means and said processor means, and microcode control means for storing sequences of microinstructions for controlling said processor means and responsive to said instructions for providing said sequences of microinstructions to said processor means, said ALU means including general register file means connected to said bus means for storing selected operands and addreses, said general register file means comprising a plurality of vertically ordered registers vertically divided into three parallel-operating and addresed parts, a first part of said general register file means comprising first register file means for storing object fields of said addresses, a second part of said general register file means comprising second register file means for storing offset fields of said addresses and said operands, and a third part of said general register file means comprising third register file means for storing length field of said addresses, and address ALU means connected to said general register file means and to said bus means and responsive to first sequences of microinstructions for performing operations on said addresses, said objects containing operands as data objects and instructions as procedure objects, and said processor means including protection means for preventing a user. currently using said digital computer system to execute a program comprising at least one procedure object, from obtaining unauthorized access to objects of another user, said protection means including subject number memory means responsive to the operation of said processor means for storing a currently active subject number of a plurality of subject numbers, each subject number corresponding to and identifying one of a plurality of subjects, each subject comprising the combination of (1) a user of said digital computer system, (2) a process of said digital computer system for executing a procedure of said user, and (3) the type of operation to be performed by said digital computer system in response to an instruction of a procedure of said user, and said currently active subject number identifies (1) the user currently utilizing said digital computer system, (2) the process currently executing a procedure of said user's program, and (3) the type of operation to be performed by said digital computer system in response to a current instruction of a procedure of said user's program, protection memory means for storing at least one access control list, each access control list corresponding to an object and comprising at least one access control entry, each access control entry corresponding to a subject having access rights to said object and containing the access rights of said subject to said object, and access right confirmation means responsive to a currently active subject number and to the operations of said processor means for indexing said protection means in response to a current instruction of a procedure of said user's program when said said current instruction requests access to an object and for comparing the access rights of the currently active subject to the access control list associated with said object.
Claim 3
Dependent Claim
61 words
The digital computer system of claim 1, wherein said processor means further comprises protection cache means connected to said bus means and responsive to the operation of said processor means and to a currently active subject number for storing access rights read from said protection memory means and for comparing access rights of said currently active subject to a selected object.