Fr. 76.00

Concurrent and Real-time Programming - Principles and Applications

English · Paperback / Softback

Will be released 17.04.2025

Description

Read more

This textbook provides a comprehensive exploration of the principles of concurrent programming, focusing on both theoretical foundations and practical implementation techniques. Its content ranges from basic concepts such as thread creation and process management to more advanced topics such as inter-process communication, synchronization mechanisms, and memory management. It includes discussions on monitors, MPI, RMI, rendezvous, and rate monotonic analysis, providing both foundational knowledge and practical solutions.
The book is divided into four chapters, each building on fundamental aspects of concurrent and parallel programming. Chapter 1 introduces concurrent programming by explaining key concepts such as processes as independent execution units that perform tasks concurrently, concurrency models using techniques like mutual exclusion and synchronization primitives, and process creation through methods like fork/join and POSIX threads. Next, chapter 2 explores key process synchronization mechanisms in concurrent programming, focusing on both mutual exclusion problems and the use of monitors as a high-level solution for managing shared resources. Chapter 3 then focuses on message passing systems as a fundamental approach for communication and synchronization in distributed systems, where processes cannot share memory, and provides models like CSP and technologies like RMI to facilitate structured, reliable communication between processes. Eventually, chapter 4 dives into the scheduling mechanisms of real-time systems, focusing on how tasks are prioritized and scheduled to meet strict timing constraints with algorithms to address priority inversion while considering sporadic and aperiodic tasks.
This book is designed to be used as a textbook for undergraduate and graduate courses in concurrent programming, operating systems, and distributed systems. Its well-structured layout, comprehensive case studies, numerous exercises, and illustrating real-world examples make it an ideal teaching resource.

List of contents

1. Introduction to Concurrent Programming.- 2. Algorithms and Process Synchronization Mechanisms Based on Shared Memory.- 3. Message-Based Systems.- 4. Real-Time Systems.

About the author

Professor Manuel I. Capel leads the Concurrent Systems Research Group in the Computer Languages and Systems Department at the University of Granada, Spain. His research work includes the study of formal methods (temporal logics and process algebras) applied to the systematic development of real-time embedded systems. Results in this field include a formal specification method for real-time systems through UML-RT model transformation, an on-the-fly model checking algorithm for future interval logic formulas and, more recently, a compositional formal verification method for the critical analysis of systems (MEDISTAM-RT). He published more than 80 papers in journals, books, and conferences; serves as a member of the Editorial Board of the  “Journal of Network and Computer Applications” and as Chief Editor of "Annals of Multicore and GPU Programming". He is also a member of the ICSE 2025 research track committee.

Summary

This textbook provides a comprehensive exploration of the principles of concurrent programming, focusing on both theoretical foundations and practical implementation techniques. Its content ranges from basic concepts such as thread creation and process management to more advanced topics such as inter-process communication, synchronization mechanisms, and memory management. It includes discussions on monitors, MPI, RMI, rendezvous, and rate monotonic analysis, providing both foundational knowledge and practical solutions.
The book is divided into four chapters, each building on fundamental aspects of concurrent and parallel programming. Chapter 1 introduces concurrent programming by explaining key concepts such as processes as independent execution units that perform tasks concurrently, concurrency models using techniques like mutual exclusion and synchronization primitives, and process creation through methods like fork/join and POSIX threads. Next, chapter 2 explores key process synchronization mechanisms in concurrent programming, focusing on both mutual exclusion problems and the use of monitors as a high-level solution for managing shared resources. Chapter 3 thenfocuses on message passing systems as a fundamental approach for communication and synchronization in distributed systems, where processes cannot share memory, and provides models like CSP and technologies like RMI to facilitate structured, reliable communication between processes. Eventually, chapter 4 dives into the scheduling mechanisms of real-time systems, focusing on how tasks are prioritized and scheduled to meet strict timing constraints with algorithms to address priority inversion while considering sporadic and aperiodic tasks.
This book is designed to be used as a textbook for undergraduate and graduate courses in concurrent programming, operating systems, and distributed systems. Its well-structured layout, comprehensive case studies, numerous exercises, and illustrating real-world examples make it an ideal teaching resource.

Product details

Authors Manuel I Capel, Manuel I. Capel
Publisher Springer, Berlin
 
Original title Programación Concurrente y en Tiempo Real
Languages English
Product format Paperback / Softback
Release 17.04.2025, delayed
 
EAN 9783031852329
ISBN 978-3-0-3185232-9
No. of pages 307
Illustrations XIII, 307 p. 98 illus.
Subjects Natural sciences, medicine, IT, technology > IT, data processing > IT

Concurrent Programming, Programming Techniques, Distributed systems, Synchronization, real-time systems, parallel programming, message passing

Customer reviews

No reviews have been written for this item yet. Write the first review and be helpful to other users when they decide on a purchase.

Write a review

Thumbs up or thumbs down? Write your own review.

For messages to CeDe.ch please use the contact form.

The input fields marked * are obligatory

By submitting this form you agree to our data privacy statement.