Patent · US Expired

Scalable interruptible queue locks for shared-memory multiprocessor

US6473819B1 · kind B1 · utility

24Cited by
7References
26Claims
0Family size

Assignee

Inventors

Key dates

Filing dateDec 17, 1999
Grant dateOct 29, 2002
Priority date
Expiry dateDec 17, 2019

Classification

  • Technology area (CPC G)Physics
  • CPC primaryG06F9/52
  • WIPO fieldComputer technology
  • WIPO sectorElectrical engineering

Abstract

A method for a computation agent to acquire a queue lock in a multiprocessor system that prevents deadlock between the computation agent and external interrupts. The method provides for the computation agent to join a queue to acquire a lock. Next, upon receiving ownership of the lock, the computation agent raises its priority level to a higher second priority level. In response to a receipt of an external interrupt having a higher priority level occurring before the computation agent has raised its priority level to the second higher priority level, the computation agent relinquishes ownership of the lock. Subsequent to raising its priority level to the second higher priority level, the computation agent determines if it still has ownership of the lock. If the computation agent determines that it has not acquired possession of the lock after raising its priority level, the computation agent rejoins the queue to reacquire the lock. In one embodiment of the present invention, the computation agent's priority level is restored to its original, i.e., first priority level, when it rejoins the queue to reacquire the lock.

Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.