ACM Home Page
Please provide us with feedback. Feedback
ISOLATOR: dynamically ensuring isolation in comcurrent programs
Full text PdfPdf (2.02 MB)
Source
Architectural Support for Programming Languages and Operating Systems archive
Proceeding of the 14th international conference on Architectural support for programming languages and operating systems table of contents
Washington, DC, USA
SESSION: Reliable systems II table of contents
Pages 181-192  
Year of Publication: 2009
ISBN:978-1-60558-406-5
Also published in ...
Authors
Sriram Rajamani  Microsoft Research, Bangalore, India
G. Ramalingam  Microsoft Research, Bangalore, India
Venkatesh Prasad Ranganath  Microsoft Research, Bangalore, India
Kapil Vaswani  Microsoft Research, Bangalore, India
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
SIGOPS: ACM Special Interest Group on Operating Systems
ACM: Association for Computing Machinery
SIGARCH: ACM Special Interest Group on Computer Architecture
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 30,   Downloads (12 Months): 216,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1508244.1508266
What is a DOI?

ABSTRACT

In this paper, we focus on concurrent programs that use locks to achieve isolation of data accessed by critical sections of code. We present ISOLATOR, an algorithm that guarantees isolation for well-behaved threads of a program that obey a locking discipline even in the presence of ill-behaved threads that disobey the locking discipline. ISOLATOR uses code instrumentation, data replication, and virtual memory protection to detect isolation violations and delays ill-behaved threads to ensure isolation. Our instrumentation scheme requires access only to the code of well-behaved threads. We have evaluated ISOLATOR on several benchmark programs and found that ISOLATOR can ensure isolation with reasonable runtime overheads. In addition, we present three general desiderata - safety, isolation, and permissiveness - for any scheme that attempts to ensure isolation, and formally prove that ISOLATOR satisfies all of these desiderata.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Linux memory protection. http://linux.about.com/library/cmd/blcmdl2 mprotect.htm, March 2008.
 
2
Memory protection Windows. http://msdn2.microsoft.com/enus/library/aa366785(VS.85).aspx, March 2008.
3
4
5
 
6
C. Flanagan and S. N. Freund. Automatic Synchronization Correction. In Electronic Proc. of SCOOL, 2005.
7
8
9
10
11
12
13
14
15
16
17
 
18
S Rajamani, G. Ramalingam, V. P. Ranganath and K. Vaswani. Isolator: Dynamically Ensuring Isolation in Concurrent Programs. Technical Report MSR-TR-2008-91, Microsoft Research, 2008.
19

Collaborative Colleagues:
Sriram Rajamani: colleagues
G. Ramalingam: colleagues
Venkatesh Prasad Ranganath: colleagues
Kapil Vaswani: colleagues