Hardlock: Real-time multicore locking

Tórur Biskopstø Strøm*, Jens Sparsø, Martin Schoeberl

*Corresponding author for this work

Research output: Contribution to journalJournal articleResearchpeer-review

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 languageEnglish
JournalJournal of Systems Architecture
Volume97
Pages (from-to)467-476
ISSN1383-7621
DOIs
Publication statusPublished - 1 Aug 2019

Keywords

  • Hardware
  • Locking
  • Multicore
  • Real-time

Cite this