Methods for updating reference count and shared objects in a concurrent system
US-11263214-B2 · Mar 1, 2022 · US
US11954529B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11954529-B2 |
| Application number | US-202016937891-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 24, 2020 |
| Priority date | Apr 13, 2020 |
| Publication date | Apr 9, 2024 |
| Grant date | Apr 9, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques for tracking a lock involve creating an event comprising object information, and extracting the object information in the event through a thread in a thread pool. Such techniques further involve recording lock information comprising the object information according to a determination that the thread executes a lock operation. Such a lock tracking technique for a threading model can record lock information of an object when a thread performs locking and unlocking, and realize tracking of a lock operation and generating a lock analysis report.
Opening claim text (preview).
The invention claimed is: 1. A method for tracking a lock which restricts access to a computerized resource of a computerized apparatus having limited storage resources, comprising: placing an event into an event queue of the computerized apparatus, the event comprising object information; extracting the object information in the event through a thread in a thread pool; recording lock information comprising the object information according to a determination that the thread executes a lock operation which operates a lock on the computerized resource of the computerized apparatus; monitoring a utilization rate of a storage pool of the computerized apparatus; determining whether the utilization rate is greater than a predetermined threshold; and switching, according to a determination that the utilization rate is greater than the predetermined threshold, a tracking system to a bypass mode in which the lock information is recorded but not analyzed; wherein recording the lock information comprises: distributing a standby repository from a usable pool in the storage pool to a kernel, the standby repository comprising a plurality of storage units for recording lock information; recording the lock information in the standby repository to form a used repository; and transferring the used repository from the kernel to a used pool in the storage pool. 2. The method of claim 1 , wherein the object information comprises an object address, and wherein recording the lock information comprising the object information further comprises: generating an object lock information packet for a life cycle of an object, the packet comprising creation information and locking and unlocking information of the object, as well as destruction information of the object. 3. The method of claim 1 , further comprising: receiving a forced flush command for analysis; and transferring in-use repositories and used repositories of a plurality of kernels to the used pool. 4. The method of claim 1 , further comprising: obtaining a plurality of used repositories recording the lock information; analyzing the lock information in the plurality of used repositories; and recycling the plurality of used repositories to the usable pool in the storage pool. 5. The method of claim 4 , wherein analyzing the lock information in the plurality of used repositories comprises: classifying, based on a hash of an object address, the lock information in the plurality of used repositories into a plurality of storage buckets; compressing each of the plurality of storage buckets; and further classifying the plurality of compressed storage buckets, so that each storage bucket comprises an object address packet. 6. The method of claim 5 , wherein analyzing the lock information in the plurality of used repositories further comprises: checking the integrity of each object address packet; and generating an analysis report of each object address packet, the analysis report indicating whether there is a lock abnormality. 7. The method of claim 1 , wherein extracting the object information in the event through the thread comprises: reading the object information from the event and loading the object information in the thread. 8. An electronic device, comprising: a processing unit; and a memory coupled to the processing unit and storing instructions, wherein when executed by the processing unit, the instructions perform the following actions: placing an event into an event queue of the electronic device, the event comprising object information; extracting the object information in the event through a thread in a thread pool; recording lock information comprising the object information according to a determination that the thread executes a lock operation which operates a lock on a computerized resource of the electronic device; monitoring a utilization rate of a storage pool of the electronic device; determining whether the utilization rate is greater than a predetermined threshold; and switching, according to a determination that the utilization rate is greater than the predetermined threshold, a tracking system to a bypass mode in which the lock information is recorded but not analyzed; wherein recording the lock information comprises: distributing a standby repository from a usable pool in the storage pool to a kernel, the standby repository comprising a plurality of storage units for recording lock information; recording the lock information in the standby repository to form a used repository; and transferring the used repository from the kernel to a used pool in the storage pool. 9. The device of claim 8 , wherein the object information comprises an object address, and wherein recording the lock information comprising the object information further comprises: generating an object lock information packet for a life cycle of an object, the packet comprising creation information and locking and unlocking information of the object, as well as destruction information of the object. 10. The device of claim 8 , wherein the actions further comprise: receiving a forced flush command for analysis; and transferring in-use repositories and used repositories of a plurality of kernels to the used pool. 11. The device of claim 8 , wherein the actions further comprise: obtaining a plurality of used repositories recording the lock information; analyzing the lock information in the plurality of used repositories; and recycling the plurality of used repositories to the usable pool in the storage pool. 12. The device of claim 11 , wherein analyzing the lock information in the plurality of used repositories comprises: classifying, based on a hash of an object address, the lock information in the plurality of used repositories into a plurality of storage buckets; compressing each of the plurality of storage buckets; and further classifying the plurality of compressed storage buckets, so that each storage bucket comprises an object address packet. 13. The device of claim 12 , wherein analyzing the lock information in the plurality of used repositories further comprises: checking the integrity of each object address packet; and generating an analysis report of each object address packet, the analysis report indicating whether there is a lock abnormality. 14. A computer program product having a non-transitory computer readable medium which stores a set of instructions to track a lock which restricts access to a computerized resource of a computerized apparatus having limited storage resources; the set of instructions, when carried out by computerized circuitry, causing the computerized circuitry to perform a method of: placing an event into an event queue of the computerized apparatus, the event comprising object information; extracting the object information in the event through a thread in a thread pool; recording lock information comprising the object information according to a determination that the thread executes a lock operation which operates a lock on the computerized resource of the computerized apparatus; monitoring a utilization rate of a storage pool of the computerized apparatus; determining whether the utilization rate is greater than a predetermined threshold; and switching, according to a determination that the utilization rate is greater than the predetermined threshold, a tracking system to a bypass mode in which the lock information is recorded but not analyzed; wherein recording the lock information comprises: distributing a standby repository from a usable pool in the storage pool to a kernel, the sta
the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title
Prefetch instructions; cache control instructions · CPC title
Thread control instructions · CPC title
Mutual exclusion algorithms · CPC title
Pool · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.