Hardware semaphore intended for a multi-processor system
AssigneeNokia Corporation
InventorsPasi Kolinummi, Juhani Vehvilainen
Life of this patent
Estimating the term…
Loading patent…
AssigneeNokia Corporation
InventorsPasi Kolinummi, Juhani Vehvilainen
Estimating the term…
The invention relates to a method in a hardware semaphore lock (L1-LN) intended for a multi-processor system, which semaphore lock (L1-LN) protects a shared resource (R1-RN) in connection with said system in such a way that only a process which has reserved the semaphore lock (L1-LN) and has thus become a holder of said lock, has access to use the resource protected by said lock. According to the invention, the semaphore lock (L1-LN) is reserved by a single read operation of a memory location representing the semaphore lock by the process software. The read operation returns to the process the number of vacant holder positions, i.e. keyholes vacant at the time of the reservation of said lock. The most significant advantage of the invention is that the implementation of the semaphore lock does not require the support of the system for atomic read/write operations. In an advantageous embodiment of the invention, the semaphore lock (L1-LN) uses an interrupt signal (INT) to inform the system about the release of a resource (R1-RN) protected by it. The invention also relates to a hardware-based semaphore lock (L1-LN) implementing the method, as well as a semaphore module (SB) comprising several semaphore locks.
A method in a hardware semaphore lock intended for a multiprocessor system, the semaphore lock protecting a shared resource in connection with said system in such a way that only a process which has reserved the semaphore lock and has thus become a holder of said lock has access to use the resource protected by said lock, wherein the hardware semaphore lock is reserved by software by means of a single read operation by the process at a memory location representing the semaphore lock, which read operation simultaneously returns to the process the number of holder positions, i.e. the number of keyholes, vacant at the time of reservation of said lock.
A hardware semaphore lock intended for a multi-processor system, which semaphore lock is arranged to protect a shared resource in connection with said system in such a way that only a process which has reserved the semaphore lock and has thus become a holder of said lock has access to use the resource protected by said lock, wherein the reservation of the hardware semaphore lock is arranged to be executed by software by means of a single read operation by the process in a memory location representing the semaphore lock, which read operation simultaneously returns to the process the number of holder positions, i.e. the number of keyholes, vacant at the time of reservation of said lock.
Dependencies are inferred from the claim text.