Abstract
Multiple threads executing on a multicore processor often communicate via shared objects, allocated in main memory, and protected by locks. A lock itself is often implemented with the compare-and-swap operation. However, this operation is retried when the operation fails and the number of retries is unbounded. For hard real-time systems we need to be able to provide worst-case execution time bounds for all operations. The paper presents a time-predictable solution for locking on a multicore processor. Hardlock is an on-chip locking unit that supports concurrent locking without the need to get off-chip. Acquisition of a lock takes 2 clock cycles and release of a lock 1 clock cycle.
Original language | English |
---|---|
Journal | Journal of Systems Architecture |
Volume | 97 |
Pages (from-to) | 467-476 |
ISSN | 1383-7621 |
DOIs | |
Publication status | Published - 1 Aug 2019 |
Keywords
- Hardware
- Locking
- Multicore
- Real-time