Methods and apparatus for locking at least a portion of a shared memory resource
First Claim
1. A method for locking a shared memory, comprising:
- attempting to lock at least a portion of the shared memory by a first processor;
verifying whether a second processor has locked the at least the portion of the shared memory;
responsive to determining that the at least the portion of the shared memory is successfully locked based on the verifying whether the second processor has locked the at least the portion of the shared memory, executing a critical section, the critical section comprising one or more computer instructions accessible only to the first processor; and
otherwise, responsive to determining, based on the verifying whether the second processor has locked the at least the portion of the shared memory, that the at least the portion of the shared memory is not successfully locked, attempting to lock the at least the portion of the shared memory at a later time.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and apparatus for locking at least a portion of a shared memory resource. In one embodiment, an electronic device configured to lock at least a portion of a shared memory is disclosed. The electronic device includes a host processor, at least one peripheral processor and a physical bus interface configured to couple the host processor to the peripheral processor. The electronic device further includes a software framework that is configured to: attempt to lock a portion of the shared memory; verify that the peripheral processor has not locked the shared memory; when the portion of the shared memory is successfully locked via the verification that the peripheral processor has not locked the portion of the shared memory, execute a critical section of the shared memory; and otherwise attempt to lock the at least the portion of the shared memory at a later time.
-
Citations
20 Claims
-
1. A method for locking a shared memory, comprising:
-
attempting to lock at least a portion of the shared memory by a first processor; verifying whether a second processor has locked the at least the portion of the shared memory; responsive to determining that the at least the portion of the shared memory is successfully locked based on the verifying whether the second processor has locked the at least the portion of the shared memory, executing a critical section, the critical section comprising one or more computer instructions accessible only to the first processor; and otherwise, responsive to determining, based on the verifying whether the second processor has locked the at least the portion of the shared memory, that the at least the portion of the shared memory is not successfully locked, attempting to lock the at least the portion of the shared memory at a later time. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. An electronic device configured to lock at least a portion of a shared memory, comprising:
-
a host processor; a peripheral processor; a physical bus interface configured to couple the host processor to the peripheral processor; and a software framework configured to be executed by the host processor and the peripheral processor, the software framework comprising logic configured to; attempt to lock the at least the portion of the shared memory; verify whether the peripheral processor has locked the at least the portion of the shared memory; in response to a determination that the at least the portion of the shared memory is successfully locked via the verification that the peripheral processor has locked the at least the portion of the shared memory, execute a critical section of the shared memory, the critical section comprising one or more computer instructions accessible only to the host processor; and otherwise, in response to a determination via the verification that the at least the portion of the shared memory is not locked, attempt to lock the at least the portion of the shared memory at a later time. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A first processor apparatus configured to:
-
attempt to lock at least a portion of a shared memory; verify whether a second processor apparatus has locked the at least the portion of the shared memory; execute a critical section responsive to a determination that the at least the portion of the shared memory is successfully locked based on the verification of whether the second processor apparatus has locked the at least the portion of the shared memory, the critical section comprising one or more computer instructions accessible only to the first processor apparatus; and otherwise, responsive to a determination that the at least the portion of the shared memory is locked, the determination being based on the verification of whether the second processor apparatus has locked the at least the portion of the shared memory, attempt to lock the at least the portion of the shared memory at a later time. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification