Claims Analysis
Total Claims: 24
Claim 1
Independent Claim
228 words
A data processing system for managing a shared resource comprising: a first processor for producing, or supplying, a plurality of available sections of said shared resource; a first mailbox coupled to said first processor for receiving incoming message signals and event signals designated for servicing by said first processor; a first mailbox message subsystem coupled to said first mailbox for qualifying selected incoming message signals for priority servicing by said first processor; a second processor for consuming, or allocating, said plurality of said available sections of said shared resource; and a shared memory coupled between said first processor and said second processor, said shared memory including a resource queue having a queue start, a queue end, and a plurality of resource data elements, said resource data elements indicating which sections of said shared resource are currently designated as said available sections, wherein said first processor informs said second processor that an additional available section of said shared resource has been produced by using said resource queue, said second processor communicates to said first processor that a selected section of said shared resource has been consumed by sending an incoming message signal to said first mailbox messaging subsystem, and said first processor initializes said resource queue by storing a resource pointer in each said resource data element, said resource pointer pointing to said available section of said shared resource.
Claim 2
Dependent Claim
228 words
A data processing system for managing a shared resource comprising: a first processor for producing, or supplying, a plurality of available sections of said shared resource; a first mailbox coupled to said first processor for receiving incoming message signals and event signals designated for servicing by said first processor; a first mailbox message subsystem coupled to said first mailbox for qualifying selected incoming message signals for priority servicing by said first processor; a second processor for consuming, or allocating, said plurality of said available sections of said shared resource; and a shared memory coupled between said first processor and said second processor, said shared memory including a resource queue having a queue start, a queue end, and a plurality of resource data elements, said resource data elements indicating which sections of said shared resource are currently designated as said available sections, wherein said first processor informs said second processor that an additional available section of said shared resource has been produced by using said resource queue, said second processor communicates to said first processor that a selected section of said shared resource has been consumed by sending an incoming message signal to said first mailbox messaging subsystem, and said first processor initializes said resource queue by storing a resource pointer in each said resource data element, said resource pointer pointing to said available section of said shared resource.
Claim 3
Dependent Claim
65 words
The data processing system in claim 1 wherein said resource queue further comprises: a head pointer for selecting a head data element, said head data element indicating which said available section of shared resource will be next consumed; and a tail pointer for selecting a tail data element, said tail data element indicating which said available section of said shared resource was most recently produced.
Claim 4
Dependent Claim
35 words
The data processing system in claim 2 wherein said resource queue is a circular queue, such that said head pointer and said tail pointer wrap to said queue start when incrementing beyond said queue end.
Claim 5
Dependent Claim
59 words
The data processing system in claim 2 wherein said second processor consumes said available section of said shared resource by: fetching said resource pointer from said head data element; incrementing said head pointer; and sending a "resource consumed" message signal as said incoming message signal to said first mailbox message subsystem to be subsequently serviced by said first processor.
Claim 6
Dependent Claim
54 words
The data processing system in claim 4 wherein said first processor produces said additional available section of said shared resource by: receiving said "resource consumed" message signal in said first mailbox; storing said resource pointer to said additional available section of said shared resource in said tail data element; and incrementing said tail pointer.
Claim 7
Dependent Claim
101 words
The data processing system in claim 1 wherein said first mailbox message subsystem further comprises: a pending buffer having a plurality of pending data elements for receiving said incoming message signals, each pending data element corresponding to a unique incoming message signal, said pending data elements indicating which of said incoming message signals are pending service by said first processor; and an allow buffer coupled to said first processor, said allow buffer having a plurality of allow data elements responsive to said first processor, said allow data elements indicating which allowable message signals are eligible for service by said first processor.
Claim 8
Dependent Claim
87 words
The data processing system in claim 6 wherein said first mailbox message subsystem further comprises: a comparator coupled to said pending buffer and said allow buffer for comparing said allowable message signals with said incoming message signals to qualify said incoming message signals for priority servicing by said first processor; and an encoder coupled between said comparator and said first mailbox for encoding and transmitting a message to said first mailbox, said message denoting that said qualified incoming message signal can be serviced by said first processor.
Claim 9
Independent Claim
218 words
A method for managing a shared resource between a first processor and a second processor in a data processing system comprising steps of: (a) said first processor initializing a resource queue within a shared memory, said shared memory coupled to said first processor and said second processor, said resource queue having a plurality of resource data elements, each resource data element including a resource pointer pointing to a currently available section of said shared resource; (b) said second processor selecting a next available section of said shared resource from said plurality of resource data elements within said resource queue; (c) said second processor allocating said next available section of said shared resource within said data processing system by removing said next available section from said selected resource data element within said resource queue; (d) said second processor sending a resource consumed message signal to a mailbox message subsystem, said mailbox message subsystem coupled to said first processor, said mailbox message subsystem further qualifying said resource consumed message signal among other incoming message signals for priority servicing by said first processor; and (e) said first processor supplying an additional available section of said shared resource, in response to said resource consumed message signal, by adding said additional available section to an available resource data element within said resource queue.
Claim 10
Independent Claim
218 words
A method for managing a shared resource between a first processor and a second processor in a data processing system comprising steps of: (a) said first processor initializing a resource queue within a shared memory, said shared memory coupled to said first processor and said second processor, said resource queue having a plurality of resource data elements, each resource data element including a resource pointer pointing to a currently available section of said shared resource; (b) said second processor selecting a next available section of said shared resource from said plurality of resource data elements within said resource queue; (c) said second processor allocating said next available section of said shared resource within said data processing system by removing said next available section from said selected resource data element within said resource queue; (d) said second processor sending a resource consumed message signal to a mailbox message subsystem, said mailbox message subsystem coupled to said first processor, said mailbox message subsystem further qualifying said resource consumed message signal among other incoming message signals for priority servicing by said first processor; and (e) said first processor supplying an additional available section of said shared resource, in response to said resource consumed message signal, by adding said additional available section to an available resource data element within said resource queue.
Claim 11
Dependent Claim
39 words
The method in claim 8 wherein said step (a) further comprises: said first processor further initializing said resource queue as a circular queue having a queue start and a queue end, said queue end wrapping to said queue start.
Claim 12
Dependent Claim
49 words
The method in claim 8 wherein said step (b) further comprises: said second processor maintaining a head pointer for selecting a head data element, said head data element containing said resource pointer identifying which said available section of shared resource will be next allocated within said data processing system.
Claim 13
Dependent Claim
45 words
The method in claim 8 wherein said step (e) further comprises: said first processor maintaining a tail pointer for selecting a tail data element, said tail data element containing said resource pointer identifying which said available section of said shared resource was most recently supplied.
Claim 14
Dependent Claim
47 words
The method in claim 11 wherein said step (c) further comprises: said second processor fetching said resource pointer from said head data element; and said second processor incrementing said head pointer, such that said head pointer wraps to said queue start when incrementing beyond said queue end.
Claim 15
Dependent Claim
71 words
The method in claim 12 wherein said step (e) further comprises: said first processor servicing said resource consumed message signal received in said mailbox message subsystem; said first processor storing said resource pointer to said additional available section of said shared resource in said tail data element; and said first processor incrementing said tail pointer, such that said tail pointer wraps to said queue start when incrementing beyond said queue end.
Claim 16
Dependent Claim
86 words
The method in claim 8 wherein step (d) further comprises: said mailbox messaging subsystem setting a pending data element to indicate said resource consumed message signal is pending service by said first processor; said mailbox messaging subsystem setting an allow data element to indicate said resource consumed message signal is eligible for service by said first processor; and said mailbox messaging subsystem comparing said pending data element and said allow data element to qualify said resource consumed message signal for priority servicing by said first processor.
Claim 17
Dependent Claim
248 words
An article of manufacture for use in a data processing system, said data processing system including a first processor and a second processor for managing a shared resource, said article of manufacture comprising a computer-readable storage medium tangibly embodying a program of executable computer instructions which may cause said first processor and said second processor to perform steps comprising: (a) said first processor initializing a resource queue within a shared memory, said shared memory coupled to said first processor and said second processor, said resource queue having a plurality of resource data elements, each resource data element including a resource pointer pointing to a currently available section of said shared resource; (b) said second processor selecting a next available section of said shared resource from said plurality of resource data elements within said resource queue; (c) said second processor allocating said next available section of said shared resource within said data processing system by removing said next available section from said selected resource data element within said resource queue; (d) said second processor sending a resource consumed message signal to a mailbox message subsystem, said mailbox message subsystem coupled to said first processor, said mailbox message subsystem further qualifying said resource message signals for priority servicing by said first processor; and (e) said first processor supplying an additional available section of said shared resource, in response to said resource consumed message signal, by adding said additional available section to an available resource data element within said resource queue.
Claim 18
Dependent Claim
248 words
An article of manufacture for use in a data processing system, said data processing system including a first processor and a second processor for managing a shared resource, said article of manufacture comprising a computer-readable storage medium tangibly embodying a program of executable computer instructions which may cause said first processor and said second processor to perform steps comprising: (a) said first processor initializing a resource queue within a shared memory, said shared memory coupled to said first processor and said second processor, said resource queue having a plurality of resource data elements, each resource data element including a resource pointer pointing to a currently available section of said shared resource; (b) said second processor selecting a next available section of said shared resource from said plurality of resource data elements within said resource queue; (c) said second processor allocating said next available section of said shared resource within said data processing system by removing said next available section from said selected resource data element within said resource queue; (d) said second processor sending a resource consumed message signal to a mailbox message subsystem, said mailbox message subsystem coupled to said first processor, said mailbox message subsystem further qualifying said resource message signals for priority servicing by said first processor; and (e) said first processor supplying an additional available section of said shared resource, in response to said resource consumed message signal, by adding said additional available section to an available resource data element within said resource queue.
Claim 19
Dependent Claim
50 words
The article of manufacture in claim 15 wherein said program of executable computer instructions may further cause said first processor to perform said step (a) by: initializing said resource queue as a circular queue having a queue start and a queue end, said queue end wrapping to said queue start.
Claim 20
Dependent Claim
61 words
The article of manufacture in claim 15 wherein said program of executable computer instructions may further cause said second processor to perform said step (b) by: maintaining a head pointer for selecting a head data element, said head data element containing said resource pointer identifying which said available section of shared resource will be next allocated within said data processing system.
Claim 21
Dependent Claim
57 words
The article of manufacture in claim 15 wherein said program of executable computer instructions may further cause said first processor to perform said step (e) by: maintaining a tail pointer for selecting a tail data element, said tail data element containing said resource pointer identifying which said available section of said shared resource was most recently supplied.
Claim 22
Dependent Claim
56 words
The article of manufacture in claim 18 wherein said program of executable computer instructions may further cause said second processor to perform said step (c) by: fetching said resource pointer from said head data element; and incrementing said head pointer, such that said head pointer wraps to said queue start when incrementing beyond said queue end.
Claim 23
Dependent Claim
77 words
The article of manufacture in claim 19 wherein said program of executable computer instructions may further cause said first processor to perform said step (e) by: servicing said resource consumed message signal received in said mailbox message subsystem; storing said resource pointer to said additional available section of said shared resource in said tail data element; and incrementing said tail pointer, such that said tail pointer wraps to said queue start when incrementing beyond said queue end.
Claim 24
Dependent Claim
91 words
The article of manufacture in claim 15 wherein said program of executable computer instructions may further cause said mailbox messaging subsystem to perform said step (d) by: setting a pending data element to indicate said resource consumed message signal is pending service by said first processor; setting an allow data element to indicate said resource consumed message signal is eligible for service by said first processor; and comparing said pending data element and said allow data element to qualify said resource consumed message signal for priority servicing by said first processor.