i have been reading about concurrency and related issues for quite a while now. after reading a few favorable reviews about this book here and elsewhere, i decided to give it a shot. i have read about 50 pages; what i am going to say will not change as i read more (safety property, if you will). the part where deadlock and starvation freedom is presented and the example algorithms used for clarification is very dubious and makes me doubt the rigor with which this book was written. granted, deadlock seems to enjoy several slightly different semantics. this should not, however, mean that anything resembling deadlock freedom can be classified under deadlock freedom as its definition. there is one algorithm which clearly is not deadlock-free (under no contention, a thread should be always allowed to enter its critical section) and yet is tagged deadlock-free: its progress depends on the other thread's progress where this other thread might be lost somewhere in its remainder code, showing no interest in the critical section. now, this example is at the beginning of the book and is about a very simple concept. if the author gets this wrong, what does one think about the rest of the book? will the reader be always on the lookout for possible subtle mistakes? it is my understanding that a reader should be able to trust the writer of the text to fully enjoy the text. this lack of trust made me suspend reading the book. i am trying to get the fundamental notions right before i go any further in this book. at the end, what does this mean? buy and read this book only if you already have some other reference books on concurrency and want to see yet another approach to a still highly unstable research topic. Principles of Concurrent and Distributed Programming provides an introduction to concurrent programming focusing on general principles and not on specific systems. Software today is inherently concurrent or distributed – from event-based GUI designs to operating and real-time systems to Internet applications. This edition is an introduction to concurrency and examines the growing importance of concurrency constructs embedded in programming languages and of formal methods such as model checking. The full text downloaded to your computer With eBooks you can: search for key concepts, words and phrases make highlights and notes as you study share your notes with friends eBooks are downloaded to your computer and accessible either offline through the Bookshelf (available as a free download), available online and also via the iPad and Android apps. Upon purchase, you'll gain instant access to this eBook. Time limit The eBooks products do not have an expiry date. You will continue to access your digital ebook products whilst you have your Bookshelf installed. From a winner of the ACM/SIGCSE Award, this introduction to concurrency takes into account the importance of concurrency constructs in programming languages and of formal methods such as model checking. It focuses on algorithmic principles, and the use of the Spin model checker for modeling concurrent systems and verifying program correctness. The latest edition of a classic text on concurrency and distributed programming from a winner of the ACM/SIGCSE Award for Outstanding Contribution to Computer Science Education. M. Ben-ari. Includes Bibliographical References And Index.