Description

Book Synopsis

This book is devoted to the most difficult part of concurrent programming, namely synchronization concepts, techniques and principles when the cooperating entities are asynchronous, communicate through a shared memory, and may experience failures. Synchronization is no longer a set of tricks but, due to research results in recent decades, it relies today on sane scientific foundations as explained in this book.

In this book the author explains synchronization and the implementation of concurrent objects, presenting in a uniform and comprehensive way the major theoretical and practical results of the past 30 years. Among the key features of the book are a new look at lock-based synchronization (mutual exclusion, semaphores, monitors, path expressions); an introduction to the atomicity consistency criterion and its properties and a specific chapter on transactional memory; an introduction to mutex-freedom and associated progress conditions such as obstruction-freedom and wait-freedom; a presentation of Lamport's hierarchy of safe, regular and atomic registers and associated wait-free constructions; a description of numerous wait-free constructions of concurrent objects (queues, stacks, weak counters, snapshot objects, renaming objects, etc.); a presentation of the computability power of concurrent objects including the notions of universal construction, consensus number and the associated Herlihy's hierarchy; and a survey of failure detector-based constructions of consensus objects.

The book is suitable for advanced undergraduate students and graduate students in computer science or computer engineering, graduate students in mathematics interested in the foundations of process synchronization, and practitioners and engineers who need to produce correct concurrent software. The reader should have a basic knowledge of algorithms and operating systems.



Trade Review

From the reviews:

“Concurrent programming is the study of the methods which will ensure correct interactions. … Raynal (Univ. of Rennes, France) presents these classical techniques at the beginning of his book, and then moves on to cover such topics as transactional memory and current areas of research like consensus in the face of crash failures. The coverage is very up-to-date, including references through 2010. … This would be an ideal text for a beginning graduate course. Summing Up: Highly recommended. Graduate students, researchers/faculty, and professionals/practitioners.” (P. Cull, Choice, Vol. 50 (11), August, 2013)

“A very comprehensive treatment of both fundamentals and recent results in concurrent programming is presented in this book. … The book is well structured, with many examples to help the reader. Each chapter starts with a short presentation of the content and a list of keywords, and concludes with a summary of the main points and results. … I can recommend this book … .” (Sergei Gorlatch, Computing Reviews, June, 2013)



Table of Contents
Part I - Lock-Based Synchronization.- Chap. 1 - The Mutual Exclusion Problem.- Chap. 2 - Solving Mutual Exclusion.- Chap. 3 - Lock-Based Concurrent Objects.- Part II - On the Foundations Side: The Atomicity Concept.- Chap. 4 - Atomicity: Formal Definition and Properties.- Part III - Mutex-Free Synchronization.- Chap. 5 - Mutex-Free Concurrent Objects.- Chap. 6 - Hybrid Concurrent Objects.- Chap. 7 - Wait-Free Objects from Read/Write Registers Only.- Chap. 8 - Snapshot Objects from Read/Write Registers Only.- Chap. 9 - Renaming Objects from Read/Write Registers Only.- Part IV - The Transactional Memory Approach.- Chap. 10 - Transactional Memory.- Part V - On the Foundations Side: From Safe Bits to Atomic Registers.- Chap. 11 - Safe, Regular and Atomic Read/Write Registers.- Chap. 12 - From Safe Bits to Atomic Bits: A Lower Bound and an Optimal Construction.- Chap. 13 - Bounded Constructions of Atomic b-Valued Registers.- Part VI - On the Foundations Side: The Computability Power of Concurrent Objects (Consensus).- Chap. 14 - Universality of Consensus.- Chap. 15 - The Case of Unreliable Base Objects.- Chap. 16 - Consensus Numbers and the Consensus Hierarchy.- Chap. 17 - The Alphas and Omega of Consensus: Failure Detector-Based Consensus.- Afterword.- Bibliography.- Index.

Concurrent Programming: Algorithms, Principles, and Foundations

    Product form

    £54.99

    Includes FREE delivery

    Order before 4pm tomorrow for delivery by Sat 27 Jun 2026.

    A Paperback by Michel Raynal

    15 in stock

      Trusted by thousands of customers. See 2,385+ Customer Reviews

      View other formats and editions of Concurrent Programming: Algorithms, Principles, and Foundations by Michel Raynal

      Publisher: Springer-Verlag Berlin and Heidelberg GmbH & Co. KG
      Publication Date: 29/01/2015
      ISBN13: 9783642446153, 978-3642446153
      ISBN10: 3642446159

      Description

      Book Synopsis

      This book is devoted to the most difficult part of concurrent programming, namely synchronization concepts, techniques and principles when the cooperating entities are asynchronous, communicate through a shared memory, and may experience failures. Synchronization is no longer a set of tricks but, due to research results in recent decades, it relies today on sane scientific foundations as explained in this book.

      In this book the author explains synchronization and the implementation of concurrent objects, presenting in a uniform and comprehensive way the major theoretical and practical results of the past 30 years. Among the key features of the book are a new look at lock-based synchronization (mutual exclusion, semaphores, monitors, path expressions); an introduction to the atomicity consistency criterion and its properties and a specific chapter on transactional memory; an introduction to mutex-freedom and associated progress conditions such as obstruction-freedom and wait-freedom; a presentation of Lamport's hierarchy of safe, regular and atomic registers and associated wait-free constructions; a description of numerous wait-free constructions of concurrent objects (queues, stacks, weak counters, snapshot objects, renaming objects, etc.); a presentation of the computability power of concurrent objects including the notions of universal construction, consensus number and the associated Herlihy's hierarchy; and a survey of failure detector-based constructions of consensus objects.

      The book is suitable for advanced undergraduate students and graduate students in computer science or computer engineering, graduate students in mathematics interested in the foundations of process synchronization, and practitioners and engineers who need to produce correct concurrent software. The reader should have a basic knowledge of algorithms and operating systems.



      Trade Review

      From the reviews:

      “Concurrent programming is the study of the methods which will ensure correct interactions. … Raynal (Univ. of Rennes, France) presents these classical techniques at the beginning of his book, and then moves on to cover such topics as transactional memory and current areas of research like consensus in the face of crash failures. The coverage is very up-to-date, including references through 2010. … This would be an ideal text for a beginning graduate course. Summing Up: Highly recommended. Graduate students, researchers/faculty, and professionals/practitioners.” (P. Cull, Choice, Vol. 50 (11), August, 2013)

      “A very comprehensive treatment of both fundamentals and recent results in concurrent programming is presented in this book. … The book is well structured, with many examples to help the reader. Each chapter starts with a short presentation of the content and a list of keywords, and concludes with a summary of the main points and results. … I can recommend this book … .” (Sergei Gorlatch, Computing Reviews, June, 2013)



      Table of Contents
      Part I - Lock-Based Synchronization.- Chap. 1 - The Mutual Exclusion Problem.- Chap. 2 - Solving Mutual Exclusion.- Chap. 3 - Lock-Based Concurrent Objects.- Part II - On the Foundations Side: The Atomicity Concept.- Chap. 4 - Atomicity: Formal Definition and Properties.- Part III - Mutex-Free Synchronization.- Chap. 5 - Mutex-Free Concurrent Objects.- Chap. 6 - Hybrid Concurrent Objects.- Chap. 7 - Wait-Free Objects from Read/Write Registers Only.- Chap. 8 - Snapshot Objects from Read/Write Registers Only.- Chap. 9 - Renaming Objects from Read/Write Registers Only.- Part IV - The Transactional Memory Approach.- Chap. 10 - Transactional Memory.- Part V - On the Foundations Side: From Safe Bits to Atomic Registers.- Chap. 11 - Safe, Regular and Atomic Read/Write Registers.- Chap. 12 - From Safe Bits to Atomic Bits: A Lower Bound and an Optimal Construction.- Chap. 13 - Bounded Constructions of Atomic b-Valued Registers.- Part VI - On the Foundations Side: The Computability Power of Concurrent Objects (Consensus).- Chap. 14 - Universality of Consensus.- Chap. 15 - The Case of Unreliable Base Objects.- Chap. 16 - Consensus Numbers and the Consensus Hierarchy.- Chap. 17 - The Alphas and Omega of Consensus: Failure Detector-Based Consensus.- Afterword.- Bibliography.- Index.

      Recently viewed products

      © 2026 Book Curl

        • American Express
        • Apple Pay
        • Diners Club
        • Discover
        • Google Pay
        • Maestro
        • Mastercard
        • PayPal
        • Shop Pay
        • Union Pay
        • Visa

        Login

        Forgot your password?

        Don't have an account yet?
        Create account