发明名称 Administering a lock for resources in a distributed computing environment
摘要 In a distributed computing environment that includes compute nodes, where the compute nodes execute a plurality of tasks, a lock for resources may be administered. Administering the lock may be carried out by requesting, in an atomic operation by a requesting task, the lock, including: determining, by the requesting task, whether the lock is available; if the lock is available, obtaining the lock; and if the lock is unavailable, joining, by the requesting task, a queue of tasks waiting for availability of the lock.
申请公布号 US9459931(B2) 申请公布日期 2016.10.04
申请号 US201414148176 申请日期 2014.01.06
申请人 International Business Machines Corporation 发明人 Archer Charles J.;Jea Tsai-Yang
分类号 G06F9/46;G06F9/52 主分类号 G06F9/46
代理机构 Kennedy Lenart Spraggins LLP 代理人 Kennedy Brandon C.;Cabrasawan Feb;Kennedy Lenart Spraggins LLP
主权项 1. An apparatus for administering a plurality of locks for resources in a distributed computing environment comprising a plurality of compute nodes organized as a tree network, the compute nodes executing a plurality of tasks, the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of: selecting, for each of the plurality of locks in dependence upon a set of selection criteria, a different one of the plurality of computer notes to host one of the plurality of locks; requesting, in a single atomic operation by a requesting task, a lock of the plurality of locks, including: determining whether the lock is available including determining whether a particular memory location includes a value indicating that the lock is available; responsive to determining that the particular memory location includes the value indicating that the lock is available, obtaining the lock including swapping within the particular memory location, the value indicating the lock is available with an identifier of a location in the tree network associated with the requesting task; and responsive to determining that the particular memory location does not include the value indicating that the lock is available, joining a queue of tasks waiting for availability of the lock.
地址 Armonk NY US