Overview
- Bridges the gap between books that focus on specific concurrent programming languages and books that focus on distributed algorithms
- Programs are written in a “real-life” programming notation along the lines of Java and Python Exercises
- Examples are included in each chapter with on-line access to the solutions
- Includes supplementary material: sn.pub/extras
Access this book
Tax calculation will be finalised at checkout
Other ways to access
Table of contents (21 chapters)
Keywords
About this book
Distributed Programming: Theory and Practice presents a practical and rigorous method to develop distributed programs that correctly implement their specifications. The method also covers how to write specifications and how to use them. Numerous examples such as bounded buffers, distributed locks, message-passing services, and distributed termination detection illustrate the method. Larger examples include data transfer protocols, distributed shared memory, and TCP network sockets.
Distributed Programming: Theory and Practice bridges the gap between books that focus on specific concurrent programming languages and books that focus on distributed algorithms. Programs are written in a "real-life" programming notation, along the lines of Java and Python with explicit instantiation of threads and programs. Students and programmers will see these as programs and not "merely" algorithms in pseudo-code. The programs implement interesting algorithms and solve problems that are large enough to serve as projects in programming classes and software engineering classes. Exercises and examples are included at the end of each chapter with on-line access to the solutions.
Distributed Programming: Theory and Practice is designed as an advanced-level text book for students in computer science and electrical engineering. Programmers, software engineers and researchers working in this field will also find this book useful.
Reviews
From the reviews:
“This book is about how to write software for distributed systems while ensuring correctness. … This book intends to come out with a practical methodology for writing correct parallel programs. … The text covers most of the classic parallel programming topics like lock, message passing, bounded buffers, etc. It is addressed to researchers and students in parallel computing and can also be used by software professionals as a hands on writing correct parallel software.” (Corneliu Bârsan, zbMATH, Vol. 1276, 2014)
“As a textbook, it presents a thorough introduction to distributed programming in a language-agnostic framework based on assertional reasoning and supported by temporal logic. … As a reference book, Distributed Programming provides a set of fundamental concepts and their applications in a compact, straightforward format. The formalism introduced in the book is easy to grasp and provides a good template for language independence … . Summing Up: Recommended. Upper-division undergraduates, graduate students, researchers/faculty, and professionals.” (L. Benedicenti, Choice, Vol. 51 (1), September, 2013)Authors and Affiliations
Bibliographic Information
Book Title: Distributed Programming
Book Subtitle: Theory and Practice
Authors: A. Udaya Shankar
DOI: https://doi.org/10.1007/978-1-4614-4881-5
Publisher: Springer New York, NY
eBook Packages: Computer Science, Computer Science (R0)
Copyright Information: Springer Science+Business Media New York 2013
Hardcover ISBN: 978-1-4614-4880-8Published: 15 September 2012
Softcover ISBN: 978-1-4899-9593-3Published: 15 October 2014
eBook ISBN: 978-1-4614-4881-5Published: 15 September 2012
Edition Number: 1
Number of Pages: XVIII, 386
Topics: Computer Communication Networks, Programming Techniques, Software Engineering, Models and Principles, Logics and Meanings of Programs