Claims Analysis
Total Claims: 7
Claim 1
Independent Claim
369 words
In a multiprocessor environment wherein a plurality of processors are attached through a bussing system to a shared intelligent memory, said plurality of processors being interconnected via queuing operations performed through said shared intelligent memory, a distributed scheduling mechanism provided for coordinating and arbitrating processes, each process including a set of programmed elementary tasks to be performed by server or target processors upon request from a source processor handling source processes with a set of target processors working on the same queue defining a process group, said processes communicating through said queue(s) by using messages, said scheduling mechanism including: a) defining within said shared memory for each said queues a set of memory locations connected to operate as a FIFO data message queue dedicated to all server processors of a process group; b) said shared intelligent memory memorizing for each process group, a signalling processor list SPL containing references of the server processors which need to dequeue data messages from said queue and attaching said list to the FIFO data message queue; c) enabling a given source process to enqueue a data message into said FIFO data message queue; d) monitoring, with said intelligent memory, the status of said FIFO data message queue and, if said queue was empty prior to enqueuing the data message, generating a signal E-NE signalling the transition of the queue content from empty to non-empty upon said enqueuing of a new data message; e) providing a scheduler mechanism within each server processor of the process group; f) providing a scheduler state table in each of the scheduler mechanism for listing at least one logical record address (LRA) of a FIFO data message queue and a state of the FIFO data message queue; g) said shared intelligent memory, transmitting said E-NE signal to all said server processors of said signalling processor list; h) upon receipt of said E-NE signal by the server processors, scheduling a given server processor through its dedicated scheduler mechanism to access the FIFO data message queue and dequeue from said data message queue a data message to be used by said server processor; and i) updating the FIFO data message queue state within the scheduler state table dedicated to each scheduler.
Claim 2
Dependent Claim
369 words
In a multiprocessor environment wherein a plurality of processors are attached through a bussing system to a shared intelligent memory, said plurality of processors being interconnected via queuing operations performed through said shared intelligent memory, a distributed scheduling mechanism provided for coordinating and arbitrating processes, each process including a set of programmed elementary tasks to be performed by server or target processors upon request from a source processor handling source processes with a set of target processors working on the same queue defining a process group, said processes communicating through said queue(s) by using messages, said scheduling mechanism including: a) defining within said shared memory for each said queues a set of memory locations connected to operate as a FIFO data message queue dedicated to all server processors of a process group; b) said shared intelligent memory memorizing for each process group, a signalling processor list SPL containing references of the server processors which need to dequeue data messages from said queue and attaching said list to the FIFO data message queue; c) enabling a given source process to enqueue a data message into said FIFO data message queue; d) monitoring, with said intelligent memory, the status of said FIFO data message queue and, if said queue was empty prior to enqueuing the data message, generating a signal E-NE signalling the transition of the queue content from empty to non-empty upon said enqueuing of a new data message; e) providing a scheduler mechanism within each server processor of the process group; f) providing a scheduler state table in each of the scheduler mechanism for listing at least one logical record address (LRA) of a FIFO data message queue and a state of the FIFO data message queue; g) said shared intelligent memory, transmitting said E-NE signal to all said server processors of said signalling processor list; h) upon receipt of said E-NE signal by the server processors, scheduling a given server processor through its dedicated scheduler mechanism to access the FIFO data message queue and dequeue from said data message queue a data message to be used by said server processor; and i) updating the FIFO data message queue state within the scheduler state table dedicated to each scheduler.
Claim 3
Dependent Claim
104 words
A distributed scheduling mechanism according to claim 1, wherein said steps of defining a FIFO data message queue and attaching the SPL list to the considered queue includes the steps of: a) generating a logical record address (LRA) identifying said queue within said shared memory, said queue being controlled by a predefined multi-field queue control block (QCB) including a SPL field loaded with said SPL; b) memorizing said logical record address (LRA) in a scheduler state table of each scheduler dedicated to a server process; and, c) initializing the state of said queue to a predefined value selected to identify an "empty" queue status.
Claim 4
Dependent Claim
68 words
A distributed scheduling mechanism according to claim 2, wherein the updating of said SPL includes: a) generating within each scheduler pertaining to the considered process group, a multi-field ATTACH command signal including a processor map field (PMAP); b) performing, in said shared intelligent memory, a logic OR function between the SPL field of the QCB and the PMAP field contents; and, c) updating said SPL field content accordingly.
Claim 5
Dependent Claim
76 words
A distributed scheduling mechanism according to claim 1 wherein said step of memorizing a signalling processor list (SPL) includes the steps of: a) defining within said SPL field of the QCB, one bit location for each server processor among the plurality of server processors pertaining to the same process group; and, b) upon attachment of a given server processor to the FIFO data message queue, setting the corresponding SPL field bit location to an ON state.
Claim 6
Dependent Claim
164 words
In a multi-processor system having a shared intelligent memory for performing queuing operations which couple source processors, running source processes, to server processors, running server processes, with said queuing operations including a FIFO data message queue to which source processors queue data messages and server processors dequeue data messages, a device for performing decentralized scheduling of tasks comprising: a scheduler state table means provided in said server processor for storing at least one logical record address (LRA) of a data message queue in the shared intelligent memory and a state (empty, E, or not empty, NE) of said data message queue; and a scheduling means operatively coupled to the scheduler state table; said scheduling means updating the scheduler state table dequeuing said data messages which are forwarded to a server processor for processing when a state change occurs in the data message queue and an E-NE signal generated by the shared memory indicating said data message queue contains messages to be dequeued is received.
Claim 7
Dependent Claim
164 words
In a multi-processor system having a shared intelligent memory for performing queuing operations which couple source processors, running source processes, to server processors, running server processes, with said queuing operations including a FIFO data message queue to which source processors queue data messages and server processors dequeue data messages, a device for performing decentralized scheduling of tasks comprising: a scheduler state table means provided in said server processor for storing at least one logical record address (LRA) of a data message queue in the shared intelligent memory and a state (empty, E, or not empty, NE) of said data message queue; and a scheduling means operatively coupled to the scheduler state table; said scheduling means updating the scheduler state table dequeuing said data messages which are forwarded to a server processor for processing when a state change occurs in the data message queue and an E-NE signal generated by the shared memory indicating said data message queue contains messages to be dequeued is received.