Patent · US Active

Adaptive lock for a computing system having multiple runtime environments and multiple processing units

US9424103B2 · kind B2 · utility

1Cited by
6References
20Claims
0Family size

Assignee

Inventors

Key dates

Filing dateSep 30, 2014
Grant dateAug 23, 2016
Priority date
Expiry dateJan 1, 2035

Classification

  • Technology area (CPC G)Physics
  • CPC primaryG06F2209/522
  • WIPO fieldComputer technology
  • WIPO sectorElectrical engineering

Abstract

A method for operating a lock in a computing system having plural processing units and running under multiple runtime environments is provided. When a requester thread attempts to acquire the lock while the lock is held by a holder thread, determine whether the holder thread is suspendable or non-suspendable. If the holder thread is non-suspendable, put the requester thread in a spin state regardless of whether the requester thread is suspendable or non-suspendable; otherwise determines whether the requester thread is suspendable or non-suspendable unless the requester thread quits acquiring the lock. If the requester thread is non-suspendable, arrange the requester thread to attempt acquiring the lock again; otherwise add the requester thread to a wait queue as an additional suspended thread. Suspended threads stored in the wait queue are allowable to be resumed later for lock acquisition. The method is applicable for the computing system with a multicore processor.

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