ACM Home Page
Please provide us with feedback. Feedback
Efficient distributed deadlock avoidance with liveness guarantees
Full text PdfPdf (241 KB)
Source International Conference On Embedded Software archive
Proceedings of the 6th ACM & IEEE International conference on Embedded software table of contents
Seoul, Korea
SESSION: Design and Implementation of embedded software table of contents
Pages: 12 - 20  
Year of Publication: 2006
ISBN:1-59593-542-8
Authors
César Sánchez  Stanford University, Stanford, CA
Henny B. Sipma  Stanford University, Stanford, CA
Zohar Manna  Stanford University, Stanford, CA
Christopher D. Gill  Computer Science and Eng. Dept. Washington University St. Louis, MO 63130
Sponsors
SIGDA: ACM Special Interest Group on Design Automation
ACM: Association for Computing Machinery
SIGBED: ACM Special Interest Group on Embedded Systems
SIGMICRO: ACM Special Interest Group on Microarchitectural Research and Processing
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 11,   Downloads (12 Months): 86,   Citation Count: 1
Additional Information:

abstract   references   cited by   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/1176887.1176891
What is a DOI?

ABSTRACT

We present a deadlock avoidance algorithm for distributed systems that guarantees liveness. Deadlock avoidance in distributed systems is a hard problem and general solutions are considered impractical due to the high communication overhead. In previous work, however, we showed that practical solutions exist when all possible sequences of resource requests are known a priori in the form of call graphs; in this case protocols can be constructed that perform safe resource allocation based on local data only, that is, no communication between components is required. While avoiding deadlock, those protocols, however, did not avoid starvation: they guaranteed that some process could always make progress, but did not guarantee that every individual process would always eventually terminate.In this paper we present a resource allocation mechanism that avoids deadlock and guarantees absence of starvation, without undue loss of concurrency. The only assumption we make is that the local scheduler is fair. We prove the correctness of the algorithm and show how it can be implemented efficiently.


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
Andrew D. Birrell. An introduction to programming with threads. Research Report 35, Digital Equipment Corporation Systems Research Center, 1989.
 
2
3
 
4
5
 
6
James W.Havender. Avoiding deadlock in multi-tasking systems. IBM Systems Journal 2:74--84, 1968.
 
7
César Sánchez, Henny B. Sipam, and Zohar Manna. On efficient deadlock avoidance for distributive recursive processes. Submitted for publication.
 
8
César Sánchez, Henny B. Sipma, Zohar Manna, Venkita Subramonian, and Christopher Gill. On efficient distributed deadlock avoidance for distributed real-time and embedded systems. In Proc. of the 20th IEEEInt'l Parallel and Distributed Processing Symposium (IPDP'06)IEEE Computer Society Press,2006.
 
9
César Sánchez, Henny B. Sipma, Venkita Subramonian, Christopher Gill, and Zohar Manna. Thread allocation protocols for distributed real-time and embedded systems. In Farn Wang, editor, 25th IFIP WG 2.6 International Conference on Formal Techniques for Networked and Distributed Systems (FORTE'05) volume 3731 of LNCS pages 159--173. Springer-Verlag, October 2005.
10
 
11
 
12
 
13
 
14
Mukesh Singhal and Niranjan G. Shivaratri. Advanced Concepts in Operating Systems: Distributed, Database, and Multiprocessor Operating Systems McGraw-Hill, Inc., 1994.
 
15
 
16


Collaborative Colleagues:
César Sánchez: colleagues
Henny B. Sipma: colleagues
Zohar Manna: colleagues
Christopher D. Gill: colleagues