Control of multiple computer processes using a mutual exclusion primitive ordering mechanism
First Claim
Patent Images
1. Program controlled apparatus comprising:
- a plurality of processors, each configured to execute at least one process, and a monitor unit connected to the processors for monitoring equivalent operation of the processors;
at least one resource accessible to the processes of the processors;
at least one mutex for controlling access to the resource; and
the monitor unit comprising a mutex ordering mechanism controlling an ordering of acquisition of the mutex by the processes of the respective processors to provide deterministic execution of the multiple processes.
2 Assignments
0 Petitions
Accused Products
Abstract
A program controlled apparatus includes one or more units for executing a multiple process. A mutex ordering mechanism controls the ordering of mutex ownership to provide deterministic execution of the processes. A mutex processor monitors mutex registers for determining mutex ownership. The mutex registers can be configured as sets of mutex request registers and mutex release registers. The apparatus may include a single processor configured to execute multiple processes concurrently, or multiple processing units, each configured to execute one or more processes. A monitor unit which can monitor equivalent operation of the processing sets can also include the mutex ordering mechanism.
90 Citations
20 Claims
-
1. Program controlled apparatus comprising:
-
a plurality of processors, each configured to execute at least one process, and a monitor unit connected to the processors for monitoring equivalent operation of the processors;
at least one resource accessible to the processes of the processors;
at least one mutex for controlling access to the resource; and
the monitor unit comprising a mutex ordering mechanism controlling an ordering of acquisition of the mutex by the processes of the respective processors to provide deterministic execution of the multiple processes. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A program controlled apparatus including plural processing means, each processing means being configured to execute at least one process, and monitor means connected to the processing means for monitoring equivalent operation of the processing means, resource means accessible to the processes and at least one mutex means for controlling access to the resource means, the monitor means comprising mutex ordering means for controlling an ordering of acquisition of the mutex means by the processes of the processing means to provide deterministic execution of the multiple processes.
-
9. Computing apparatus, comprising:
-
a plurality of processing sets, each including multiple processors, wherein at least a first processing set is operable asynchronously of a second processing set, and a monitor unit connected to the processors for monitoring equivalent operation of the processing sets;
at least one resource for each processing set shared by processors of the processing set; and
at least one mutex for controlling access to said at least one resource;
the monitor unit comprising a mutex ordering mechanism configured to ensure equivalent ordering of acquisition of the mutex by the processors of the processing sets for maintaining deterministic operation of the processing sets. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A method of providing deterministic execution of programmed processes in a processing system, the processing system comprising a plurality of processors, each processor being operable to execute at least one process, system resources, mutexes which may be selectively owned for controlling access to the system resources, and a monitor unit connected to the processors for monitoring equivalent operation of the processors, the method comprising:
-
executing the processes in the processors; and
the monitor unit controlling an ordering of mutex acquisition by the processes. - View Dependent Claims (17, 18, 19)
initially executing a process and recording mutex ownership during execution; and
subsequently repeating execution of the process with control of mutex acquisition to correspond to the initial execution of the process.
-
-
18. The method of claim 16, further comprising monitoring mutex registers for determining mutex ownership.
-
19. The method of claim 18, wherein the monitoring step comprises separately monitoring mutex request registers and mutex release registers.
-
20. A method of providing deterministic operation of an asynchronous multiprocessor computer system which includes a plurality of processors, at least one system resource, a mutex mechanism including at least one mutex which may be selectively owned for controlling access by the processors to the system resource and a monitor unit connected to the processors for monitoring equivalent operation of the processors, the method comprising:
-
the monitor unit ordering mutex acquisition for access to system resources; and
operating the processors in accordance with the mutex acquisition ordering.
-
Specification