Jump to ratings and reviews
Rate this book

Concurrent and Real-Time Programming in Ada

Rate this book
Ada is the only ISO-standard, object-oriented, concurrent, real-time programming language. It is intended for use in large, long-lived applications where reliability and efficiency are essential, particularly real-time and embedded systems. In this book, Alan Burns and Andy Wellings give a thorough, self-contained account of how the Ada tasking model can be used to construct a wide range of concurrent and real-time systems. This is the only book that focuses on an in-depth discussion of the Ada tasking model. Following on from the authors' earlier title Concurrency in Ada, this book brings the discussion up to date to include the new Ada 2005 language and the recent advances in real-time programming techniques. It will be of value to software professionals and advanced students of programming indeed every Ada programmer will find it essential reading and a primary reference work that will sit alongside the language reference manual.

476 pages, Hardcover

First published May 7, 2007

1 person is currently reading
11 people want to read

About the author

Alan Burns

14 books
Alan Burns, B.Sc., D.Phil, was Lecturer in Computer Science in the Postgraduate School of Computing at the University of Bradford, West Yorkshire

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
2 (33%)
4 stars
3 (50%)
3 stars
0 (0%)
2 stars
0 (0%)
1 star
1 (16%)
Displaying 1 of 1 review
Profile Image for Paul.
3 reviews
February 9, 2013
I don't work in hard real time, safety critical, or embedded systems (although I did work on a simulator with a soft real time component). What this book did for me is to context switch to a different world where design decisions are very different from web applications in Java. In that sense it allowed me to look at the language features necessary to build better concurrent systems. (Better in the sense of amenable to analysis, predictable, and more deterministic.) Too often, as developers we see the world through the prism of our current work. It's nice to think about different types of problems and how those solutions may impact our current work to make it better.

The first half of the book covers language features in Ada for concurrency. Unlike C and C++, until recently, where concurrency is a library add on, concurrency is built into the bones of Ada. The authors cover those basic language features to give the reader a solid grounding of tasking, protected, objects, communications, guards and how other standard language features interact with the concurrency model. The second half of the book covers more advanced features such as compiler settings, enabling/disabling language features, or optional libraries that govern how the language features operate at a lower level (i.e. control scheduling of tasks). They cover how these features allow Ada to create programs that are amenable to analysis or provably correct.

What I did not like about the book an why it rates a 4 stars instead of 5 was the way some language features were introduced. In some cases the authors focused too much on the 'rules' around a language feature and could have provided a better motivating example. If you can slog through those few spots, the book is a good 'programmer's read'. By which I mean a lot of good, clear code examples to back up the narrative text.

To read this book you should have at least a basic knowledge of Ada
Displaying 1 of 1 review

Can't find what you're looking for?

Get help and learn more about the design.