Verifying synchronization coverage in logic code

US9600347B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9600347-B2
Application numberUS-62665409-A
CountryUS
Kind codeB2
Filing dateNov 26, 2009
Priority dateNov 26, 2009
Publication dateMar 21, 2017
Grant dateMar 21, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computer implemented system and method for measuring synchronization coverage for one or more concurrently executed threads is provided. The method comprises updating an identifier of a first thread to comprise an operation identifier associated with a first operation, in response to determining that the first thread has performed the first operation; associating the identifier of the first thread with one or more resources accessed by the first thread; and generating a synchronization coverage model by generating a relational data structure of said one or more resources, wherein a resource is associated with at least the identifier of the first thread and an identifier of a second thread identifier, such that the second thread waits for the first thread before accessing said resource.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer program product, comprising a computer-readable storage medium having logic code stored thereon, wherein the logic code, when executed on a computer, causes the computer to: execute a logic code under test on at least two runs; for each of the at least two runs, update an identifier of a first thread to comprise an operation identifier associated with a first operation, in response to determining that the first thread has performed the first operation, wherein the first thread is for the logic code under test; for each of the at least two runs, associate the identifier of the first thread with one or more resources accessed by the first thread during a first execution path; for each of the at least two runs, update an identifier of a second thread to comprise an operation identifier associated with a second operation, in response to determining that the second thread has performed the second operation, wherein the second thread is for the logic code under test; for each of the at least two runs, associate the identifier of the second thread with one or more resources accessed by the second thread during a second execution path, wherein the second execution path is different from the first execution path: and generate a synchronization coverage model by generating a relational data structure of said one or more resources; and, wherein: for at least the second of the at least two test runs, at least one of the first thread and the second thread accesses different resources than on a previous run; a common resource is associated with at least the identifier of the first thread and an identifier of the second thread indicating that the common resource was accessed by both the first thread and the second thread during the first execution path and the second execution path; a synchronization event in execution of the first thread and the second thread holding a lock on the common resource is recorded, when an analysis of the synchronization coverage model indicates that the second thread waited for the first thread before accessing said resource, but that the first thread did not wait for the second thread before accessing the common resource; and the computer-readable storage medium is not a transitory, propagating signal per se. 2. The computer program product of claim 1 , wherein: the identifier of the first thread comprises N units; each unit comprises an identifier associated with an operation performed by the first thread; and each time the identifier of the first thread is updated, the length of the identifier of the first thread is incremented by one unit. 3. The computer program product of claim 2 , wherein: if the current number of units exceeds X, the oldest unit is removed, wherein X>N. 4. The computer program product of claim 3 , wherein: N is a number utilized to adjust level of detail with which history of operations performed by the first thread is compiled.

Assignees

Inventors

Classifications

  • for test execution, e.g. scheduling of test suites · CPC title

  • G06F9/52Primary

    Program synchronisation; Mutual exclusion, e.g. by means of semaphores · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9600347B2 cover?
A computer implemented system and method for measuring synchronization coverage for one or more concurrently executed threads is provided. The method comprises updating an identifier of a first thread to comprise an operation identifier associated with a first operation, in response to determining that the first thread has performed the first operation; associating the identifier of the first t…
Who is the assignee on this patent?
Tzoref Rachel, Farchi Eitan Daniel, Trainin Ehud, and 2 more
What technology area does this patent fall under?
Primary CPC classification G06F11/3688. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 21 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).