1 / 26

Shared variables initialized without holding a lock

Data Races Eraser: A Dynamic Data Race Detector for Multithreaded Programs STEFAN SAVAGE, MICHAEL BURROWS, GREG NELSON, PATRICK SOBALVARRO, THOMAS ANDERSON ACM Transactions on Computer Systems, Vol. 15, No. 4, November 1997. Shared variables initialized without holding a lock

louie
Download Presentation

Shared variables initialized without holding a lock

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Data RacesEraser: A Dynamic Data Race Detector for Multithreaded Programs STEFAN SAVAGE, MICHAEL BURROWS, GREG NELSON, PATRICK SOBALVARRO, THOMAS ANDERSONACM Transactions on Computer Systems, Vol. 15, No. 4, November 1997

  2. Shared variables initialized without holding a lock • -- initializing thread allocates data and knows that • no other thread holds a reference to it. • -- Solution: Delay the refinement of candidate set • until variable’s initialization is complete.

  3. Reading Shared Data • After initialization, the data is read only • Simultaneous reads to a variable are not races; thus, no need to protect with a lock. • Report races only after initialized variable has become “write-shared” by more than one thread.

  4. Checking in shared-modified state

More Related