or
Bookmark and Share
Avoiding locks by transactionally executing critical sections
   
Document Number
US Patent 7398355
Issued Date
July 8, 2008
Link
Inventors
Tremblay; Marc (Menlo Park, CA)
Map
Abstract
One embodiment of the present invention provides a system that avoids locks by transactionally executing critical sections. During operation, the system receives a program which includes one or more critical sections which are protected by locks. Next, the system modifies the program so that the critical sections which are protected by locks are executed transactionally without acquiring locks associated with the critical sections. More specifically, the program is modified so that: (1) during transactional execution of a critical section, the program first determines if a lock associated with the critical section is held by another process and if so aborts the transactional execution; (2) if the transactional execution of the critical section completes without encountering an interfering data access from another process, the program commits changes made during the transactional execution and optionally resumes normal non-transactional execution of the program past the critical section; and (3) if an interfering data access from another process is encountered during transactional execution of the critical section, the program discards changes made during the transactional execution, and attempts to re-execute the critical section zero or more times.
Tags:
Description:
Amusing 0%
Clever 0%
Complex 0%
Efficient 0%
Historic 0%
Important 0%
Innovative 0%
Interesting 0%
Practical 0%
Simple 0%
Number of Claims:
20
Comments:
no comments yet
Owner
Sun Microsystems, Inc. (Santa Clara, CA)
Published
July 8, 2008
Application Number
11/195,093
Filed
August 1, 2005
US Classification
711/118   711/150 711/151 711/152 711/163 711/E12.026 711/E12.057 712/208 712/E9.032 712/E9.033 712/E9.048 712/E9.049 712/E9.061
Int'l Classification
G06F   12/00   (20060101)   G06F   13/00   (20060101)   G06F   13/28   (20060101)   G06F   15/00   (20060101)   G06F   9/30   (20060101)   G06F   9/40   (20060101)  
Examiner
Assistant Examiner
Attorney/Law Firm
Parent Case
RELATED APPLICATION This application is a continuation-in-part of and hereby claims priority under 35 U.S.C. .sctn.120 to a pending U.S. patent application, entitled, "Selectively Unmarking Load-Marked Cache Lines During Transactional Program Execution," by inventors Marc Tremblay, Quinn A. Jacobson, Shailender Chaudhry, Mark S. Moir and Maurice P. Herlihy, Ser. No. 10/764,412, filed 23 Jan. 2004 now U.S. Pat. No. 7,089,374, and hereby claims priority through application Ser. No. 10/764,412 under 35 U.S.C. .sctn.119 to U.S. Provisional Application No. 60/447,128, filed on 13 Feb. 2003, entitled "Transactional Memory," by inventors Shailender Chaudhry, Marc Tremblay, and Quinn A. Jacobson.
USPTO Field of Search
711/118  
Related Patents
Claims
Description
About| FAQs| Terms & Disclaimer| Link to Us| Contact Us