Claims Analysis
Total Claims: 23
Claim 1
Independent Claim
327 words
A data processing system including storage for storing information utilized by a plurality of programs where each program is identified by unique program identity data, where said programs identify locations in said storage using logical addresses and where each program is associated with a unique table in said storage for translating logical addresses to real addresses, including means for translating logical addresses to real addresses, including means for addressing said storage with said real addresses to fetch and store information in connection with the execution of instructions derived from said plurality of programs and including storage control means, said storage control means comprising, program identifier store means including a plurality of name locations storing program identifier names for identifying programs having information stored in said storage control, including means for maintaining at least one of said name locations empty and available for use by one of said programs not having information stored in said storage control, and including means for addressing said program identifier store means to output a program identifier name in response to an input address formed by said program identity data for one of said programs in control of said system, logical translation store means including means for storing program identifier names, logical addresses and real addresses of information in said storage control and including means for addressing said logical translation store means to output a real address in response to an input address formed by said program identifier name output from said program identifier store and by a logical address from said one of said programs in control of said system, buffer data store means including means for storing information fetched from or to be stored in said storage at locations specified by real addresses stored in said logical translation store means and including means for addressing said buffer data store means to output information in response to an input address formed by said real address output from said logical translation store means.
Claim 2
Dependent Claim
327 words
A data processing system including storage for storing information utilized by a plurality of programs where each program is identified by unique program identity data, where said programs identify locations in said storage using logical addresses and where each program is associated with a unique table in said storage for translating logical addresses to real addresses, including means for translating logical addresses to real addresses, including means for addressing said storage with said real addresses to fetch and store information in connection with the execution of instructions derived from said plurality of programs and including storage control means, said storage control means comprising, program identifier store means including a plurality of name locations storing program identifier names for identifying programs having information stored in said storage control, including means for maintaining at least one of said name locations empty and available for use by one of said programs not having information stored in said storage control, and including means for addressing said program identifier store means to output a program identifier name in response to an input address formed by said program identity data for one of said programs in control of said system, logical translation store means including means for storing program identifier names, logical addresses and real addresses of information in said storage control and including means for addressing said logical translation store means to output a real address in response to an input address formed by said program identifier name output from said program identifier store and by a logical address from said one of said programs in control of said system, buffer data store means including means for storing information fetched from or to be stored in said storage at locations specified by real addresses stored in said logical translation store means and including means for addressing said buffer data store means to output information in response to an input address formed by said real address output from said logical translation store means.
Claim 3
Dependent Claim
118 words
The system of claim 1 wherein said program identifier store means further includes, a redundantly addressed memory stack addressed by said program identity data, said stack having a plurality of locations each for storing a segment base field for uniquely identifying a program, a name field for storing a name assigned to the program identified in the segment base field, and a priority field for establishing a replacement priority for the program identified in the segment base field, data out means for storing information read out from said memory stack, data in means for loading information into said memory stack, memory stack control means for controlling said memory stack said data in means and said data out means.
Claim 4
Dependent Claim
51 words
The system of claim 2 wherein said addressing means for addressing said program identifier store means includes a hash table for mapping a first field of address bits formed by said program identity data into a second field of address bits where said second field is smaller than said first field.
Claim 5
Dependent Claim
57 words
The system of claim 1 wherein said program identifier store means, said logical translation store means and said buffer data store means each includes an index portion and an associated data portion where the index portion and the data portion in each of said store means are addressed by the same one of said input addresses, respectively.
Claim 6
Dependent Claim
153 words
The system of claim 4 wherein each of said index portions and each of said data portions includes a primary section and an alternate section and wherein said addressing means for each of said store means includes primary and alternate comparator means for receiving the contents of an addressed location in said primary and alternate sections of the index portion for comparison with a respective one of said input addresses and means for selecting the primary or alternate section of the data portion as a function of a comparison in the primary or alternate comparator means, respectively, said system including means for connecting the selected output from the data portion of the program identifier store means to the comparator means for the logical translation store means and means for connecting the selected output from the data portion of the logical translation store means to the comparator means for the buffer data store means.
Claim 7
Dependent Claim
30 words
The system of claim 2 wherein said memory stack further includes means for storing a validity field in each of said locations for identifying valid entries within said memory stack.
Claim 8
Dependent Claim
71 words
The system of claim 2 wherein said memory stack includes a first number of said locations and wherein said name field for each of said locations includes a number of bits which uniquely specifies a second number of said names where said second number is less than said first number whereby the number of valid entries in said memory stack is less than the number of locations in said memory stack.
Claim 9
Dependent Claim
24 words
The system of claim 7 wherein for each of said locations the size of the priority field equals the size of the name field.
Claim 10
Dependent Claim
53 words
The system of claim 6 wherein said data out means includes for each of said fields a free-running register for storing the output of said memory stack each time said memory stack is addressed and includes a controlled register for storing selected outputs from said memory stack under control of said control means.
Claim 11
Dependent Claim
161 words
The system of claim 1 wherein said program identity data is formed as segment base information associated with system programs and said program identifier store means further includes, a redundantly addressed memory stack addressed by said segment base information, said memory stack having a plurality of locations each including a segment base field for uniquely identifying a program, including a name field for storing a name assigned to the program identified in the segment base field, including a priority field for establishing a replacement priority for the program identified in the segment base field, and including a validity field for identifying if said name field in valid, data out means for storing information accessed from addressed locations in said memory stack, data in means for loading information into addressed locations in said memory stack, memory stack control means for controlling said memory stack, said data in means and said data out means for accessing validity, segment base, name and priority information.
Claim 12
Dependent Claim
63 words
The system of claim 10 wherein said memory stack control means further includes means for assigning names, up to a maximum number of names, for entry into said name fields and further includes means for invalidating a previously used name, when said maximum number of names are assigned, so as to make said previously used name available for association with a new program.
Claim 13
Dependent Claim
45 words
The system of claim 11 wherein said data out means includes means for storing said previously used name whereby said previously used name is available for addressing said logical translation store means and for purging said previously used name from said logical translation store means.
Claim 14
Dependent Claim
63 words
The system of claim 10 wherein said memory stack control means further includes means for setting valid a number, less than said maximum number of said valId fields whereby at least one of said valid fields is not set valid so that the associated name field is available for receiving a name associated with a new segment base and an associated new program.
Claim 15
Dependent Claim
267 words
A data processing system including storage for storing information utilized by a plurality of programs where each program is identified by unique program identity data, addressed by real addresses, including a processing unit for addressing said storage for fetching and storing information in connection with the execution of instructions where the instructions are received from a plurality of system programs, where said programs identify locations in said storage using logical addresses and where each program is associated with a unique table in storage for translating logical addresses to real addresses, including means for translating logical addresses to real addresses, and including storage control, said storage control comprising, logical translation store means for storing a program identifier name and associated logical addresses and for storing corresponding translated real addresses, buffer data store means for storing information accessed from said real addresses, program identifier store means having a plurality of name locations each for storing a name identifying a different program which has information in said logical translation store means, said program identifier store means including means for maintaining at least one of said locations empty and available for use by a new program not having information in said logical translation store, means for addressing said logical translation store means, to obtain one of said real addresses, with a logical address provided by a particular system program and with a name from said program identifier store associated with said particular system program, and means for addressing said buffer data store means with said one of said real addresses to access information associated with said one of said real addresses.
Claim 16
Dependent Claim
267 words
A data processing system including storage for storing information utilized by a plurality of programs where each program is identified by unique program identity data, addressed by real addresses, including a processing unit for addressing said storage for fetching and storing information in connection with the execution of instructions where the instructions are received from a plurality of system programs, where said programs identify locations in said storage using logical addresses and where each program is associated with a unique table in storage for translating logical addresses to real addresses, including means for translating logical addresses to real addresses, and including storage control, said storage control comprising, logical translation store means for storing a program identifier name and associated logical addresses and for storing corresponding translated real addresses, buffer data store means for storing information accessed from said real addresses, program identifier store means having a plurality of name locations each for storing a name identifying a different program which has information in said logical translation store means, said program identifier store means including means for maintaining at least one of said locations empty and available for use by a new program not having information in said logical translation store, means for addressing said logical translation store means, to obtain one of said real addresses, with a logical address provided by a particular system program and with a name from said program identifier store associated with said particular system program, and means for addressing said buffer data store means with said one of said real addresses to access information associated with said one of said real addresses.
Claim 17
Dependent Claim
125 words
The system of claim 14 wherein said program identifier store means further includes, a redundantly addressed memory stack having a plurality of locations each for storing a segment base field for uniquely identifying a program, a name field for storing a name assigned to the program identified in the segment base field, and a priority field for establishing a replacement priority for the program identified in the segment base field, addressing means for addressing the locations in said memory stack with said program identity data, data out means for storing information read out from said memory stack, data in means for loading information into said memory stack, memory stack control means for controlling said addressing means, said data in means and said data out means.
Claim 18
Dependent Claim
63 words
The apparatus of claim 15 wherein said memory stack control means further includes means for assigning names, up to a maximum number of names, for entry into said name fields and further includes means for invalidating a previously used name, when said maximum number of names are assigned, so as to make said previously used name available for association with a new program.
Claim 19
Dependent Claim
83 words
The apparatus of claim 16 wherein said data out means includes means for storing said previously used name whereby said previously used name is available to said means for addressing said logical translation store means, and wherein said means for addressing said logical translation store means includes means for sequentially addressing all logical translation store locations, includes means for detecting said previously used name in any addressed location, and includes means for purging said previously used name when detected in any addressed location.
Claim 20
Dependent Claim
496 words
A data processing system having system storage addressed by real addresses, having a processing unit for addressing said system storage to fetch and store information in connection with the execution of instructions and to carry oUt dynamic address translations when the instructions are received from a plurality of system programs, when each program identifies locations in system storage using logical addresses which are not unique to a program, and when each program is associated with a unique table in the storage for dynamically translating non-unique logical addresses to unique real addresses, and having a storage control, said storage control comprising, logical translation store means having an index portion with a plurality of locations for storing program identifier names and for storing associated logical addresses and having a data portion having a plurality of locations for storing corresponding real addresses translated from logical addresses by said processing unit, buffer data store means having an index portion for storing real addresses and having a data portion for storing information accessed from said system storage at said real addresses, program identifier store means including a redundantly addressed memory stack having a plurality of addressable locations each including a segment base field for uniquely identifying a program, including a name field for storing a name assigned to the program identified in the segment base field, including a priority field for establishing a replacement priority for the program identified in the segment base field, and including a validity field for identifying if the name field entry is valid, said program identifier store means including data out means for storing information accessed from addressed locations in said memory stack, said program identifier store means including memory stack control means for controlling said addressing means, said data in means and said data out means for accessing validity, segment base, name and priority information, said memory stack control means including means for assigning names, up to a maximum number of names, for entry into said name fields and including means for invalidating a previously used name, when said maximum number of names are assigned, and for storing said previously used name in said data out means, means for addressing said program identifier store means with segment base information associated with a particular program currently in control of said data processing system to obtain a name identifying said particular program, means for addressing said logical translation store means to obtain one of said real addresses using a logical address from said particular program and using a name from said program identifier store means which identifies said particular program, said means for addressing said logical translation store means also including means for sequentially addressing all logical translation store locations when not addressed by a logical address for detecting and purging said previously used name from said logical translation store means, means for addressing said buffer data store means with said one of said real addresses to access information associated with said one of said real addresses.
Claim 21
Dependent Claim
496 words
A data processing system having system storage addressed by real addresses, having a processing unit for addressing said system storage to fetch and store information in connection with the execution of instructions and to carry oUt dynamic address translations when the instructions are received from a plurality of system programs, when each program identifies locations in system storage using logical addresses which are not unique to a program, and when each program is associated with a unique table in the storage for dynamically translating non-unique logical addresses to unique real addresses, and having a storage control, said storage control comprising, logical translation store means having an index portion with a plurality of locations for storing program identifier names and for storing associated logical addresses and having a data portion having a plurality of locations for storing corresponding real addresses translated from logical addresses by said processing unit, buffer data store means having an index portion for storing real addresses and having a data portion for storing information accessed from said system storage at said real addresses, program identifier store means including a redundantly addressed memory stack having a plurality of addressable locations each including a segment base field for uniquely identifying a program, including a name field for storing a name assigned to the program identified in the segment base field, including a priority field for establishing a replacement priority for the program identified in the segment base field, and including a validity field for identifying if the name field entry is valid, said program identifier store means including data out means for storing information accessed from addressed locations in said memory stack, said program identifier store means including memory stack control means for controlling said addressing means, said data in means and said data out means for accessing validity, segment base, name and priority information, said memory stack control means including means for assigning names, up to a maximum number of names, for entry into said name fields and including means for invalidating a previously used name, when said maximum number of names are assigned, and for storing said previously used name in said data out means, means for addressing said program identifier store means with segment base information associated with a particular program currently in control of said data processing system to obtain a name identifying said particular program, means for addressing said logical translation store means to obtain one of said real addresses using a logical address from said particular program and using a name from said program identifier store means which identifies said particular program, said means for addressing said logical translation store means also including means for sequentially addressing all logical translation store locations when not addressed by a logical address for detecting and purging said previously used name from said logical translation store means, means for addressing said buffer data store means with said one of said real addresses to access information associated with said one of said real addresses.
Claim 22
Dependent Claim
359 words
A data processing system having storage addressed by real addresses, having a processing unit for addressing storage for fetching and storing information in connection with the execution of instructions and for translating logical addresses to real addresses where the instructions are received from a plurality of system programs, where the programs identify locations in storage using logical addresses and where each program is associated with a unique table in storage utilized by said processing unit for translating logical addresses to real addresses, and having a storage control, said storage control comprising, logical translation store means having an index portion divided into primary and alternate sections for storing program identifier names and associated logical addresses and having a data portion divided into primary and alternate sections for storing corresponding translated real addresses, buffer data store means having an index portIon divided into primary and alternate sections for storing real addresses and having a data portion divided into primary and alternate sections for storing information accessed from said real addresses, program identifier store means having a plurality of name locations each for storing a name identifying a different program which has information in said logical translation store means, said program identifier store means including means for maintaining at least one of said locations empty and available for use by a new program not having information in said logical translation store means, means for simultaneously addressing said primary and alternate sections of said index portion and said data portion of said logical translation store means with a logical address provided by a particular system program and with a name from said program identifier store associated with said particular system program for obtaining one of said real addresses from said primary or alternate section, respectively, of said data portion of said logical translation store means, means for simultaneously addressing said primary and alternate sections of said index portion and said data portion of said buffer data store means with said one of said real addresses to access information associated with said one of said real addresses from said primary or alternate section, respectively, of said data portion of said buffer data store means.
Claim 23
Dependent Claim
359 words
A data processing system having storage addressed by real addresses, having a processing unit for addressing storage for fetching and storing information in connection with the execution of instructions and for translating logical addresses to real addresses where the instructions are received from a plurality of system programs, where the programs identify locations in storage using logical addresses and where each program is associated with a unique table in storage utilized by said processing unit for translating logical addresses to real addresses, and having a storage control, said storage control comprising, logical translation store means having an index portion divided into primary and alternate sections for storing program identifier names and associated logical addresses and having a data portion divided into primary and alternate sections for storing corresponding translated real addresses, buffer data store means having an index portIon divided into primary and alternate sections for storing real addresses and having a data portion divided into primary and alternate sections for storing information accessed from said real addresses, program identifier store means having a plurality of name locations each for storing a name identifying a different program which has information in said logical translation store means, said program identifier store means including means for maintaining at least one of said locations empty and available for use by a new program not having information in said logical translation store means, means for simultaneously addressing said primary and alternate sections of said index portion and said data portion of said logical translation store means with a logical address provided by a particular system program and with a name from said program identifier store associated with said particular system program for obtaining one of said real addresses from said primary or alternate section, respectively, of said data portion of said logical translation store means, means for simultaneously addressing said primary and alternate sections of said index portion and said data portion of said buffer data store means with said one of said real addresses to access information associated with said one of said real addresses from said primary or alternate section, respectively, of said data portion of said buffer data store means.