Search

Filter

  • Advanced Filters:

  • to
  • Specific Data Sources:

    All Edit

    Select All  |  Select None

Reset filters

BOOK REVIEW Patrick Rogers Camber C o r p o r a t / o n Houston, Texas progersQacm.org Concurrency In Ada, by Alan Burns and Andy Wellings, University of York, UK Cambridge University Press, 1995 ISBN 0-521-41471-7 Written by acknowledged experts in both real-time and concurrent programming, Concurrency In Ada is a comprehensive, well-ordered, highly readable examination of the Ada (95) tasking facilities. Every essential subject related to tasking is thoroughly examined, including the pertinent annexes, to a depth not feasible in texts covering the entire language. More than just a detailed tasking examination, however, the book offers many examples of usage and analysis of feature interaction that only these two authors could provide. Combined with the thoroughness of explanation, this analysis provides e resource that every serious Ada user should have. The book lays the foundation for an appreciation of the Ada facilities with an introduction to concurrent programming, in which the difficulties of synchronization and communication inherent in mu]tiprocessing systems are illustrated. The Ada process (i.e. task) model is then examined in detail, followed by the data-oriented synchronization facility of protected types. Note that some familiarity with the sequential portion of Ada95 is assumed, although a brief overview of the language is provided in the first chapter. Previous papers by these and other authors have pointed out a relative lack of expressive power of parts of the Ada83 tasking interaction model. Termed avoidance synchronization, this relative lack has been addressed by the new requeue facility, and the authors provide both the rationale and detailed explanation necessary for proper usage. As an example of the value of the book, a chapter is dedicated to using protected types to build a number of abstractions defined by the ARTEWG CIFO (Ada Run Time Environment Working Group's Catalog of Interface Features & Options). Complete source code is provided to create semaphores, signals, buffers, events, and blackboards, among others, illustrating the power of the new facilities. The new, somewhat controversial asynchronous task interaction mechanism is then reviewed, including both illustrations of use and subtleties to watch out for. This chapter is a prime example of the analysis of language facility interactions provided by the book. Task abort and exceptions are also considered in the context of asynchronous interactions. Another prime analysis example is that of the interaction of the concurrent programming and object-oriented programming facilities. No other Ada textbook has provided this degree of illumination of the possibilities and limitations encountered when combining the two capabilities. Finally, all three pertinent annexes are examined. The new interrupt handling model is covered in the Systems Programming A n n e x review, as well as task identifiers and per-task data. In combination with the facilities provided by the Real-Time Systems Annex, these new features are put to use in the creation of user-defined schedulers. Of course, the predefined schedulability analysis support is covered, as is the capability for both synchronous and asynchronous task control. Following an overview of the distribution model provided by the Distributed Systems Annex, a number of distributed programming paradigms are presented using the model provided. The book closes with a review of the language changes brought to Ada83 and discusses how and why they were or were not complete. Flaws are not discounted and those areas affected by the constraints placed upon the language revision team are not ignored. In summary, the breadth and depth of examination, coupled with the unique analysis of feature interaction make this an essential textbook for those contemplating use of Ada tasking. Put another way, this reviewer has approximately thirty textbooks on the Ada language. I wouldn't do without this one. A d a Letters, N o v / D e c 1997 Page 108 Volume XVII, N u m b e r 6

Page 1 of 1

Page 1 of 1

Toggle back to continuous viewing mode

/lp/association-for-computing-machinery/book-review-concurrency-in-ada-by-alan-burns-and-andy-wellings-o14yckdN0e
Welcome to DeepDyve! Rent Premier Research Articles and Save Up to 90%

Learn more

Free Article

Bookmark

BOOK REVIEW: Concurrency In Ada, by Alan Burns and Andy Wellings

Rogers, Patrick
ACM SIGAda Ada Letters , Volume XVII (6)
Association for Computing MachineryNov 1, 1997

More Info

More Like This Article

View All dataSource[]=actageo&dataSource[]=aspet&dataSource[]=aaos&dataSource[]=aacc&dataSource[]=aacr&dataSource[]=aea&dataSource[]=aip&dataSource[]=ajnr&dataSource[]=ams&dataSource[]=aps_physical&dataSource[]=appi_book&dataSource[]=appi_journal&dataSource[]=apha&dataSource[]=asip&dataSource[]=asm&dataSource[]=asn&dataSource[]=aspb&dataSource[]=avs&dataSource[]=annual_reviews&dataSource[]=arxiv&dataSource[]=acm&dataSource[]=berghahn&dataSource[]=cabi&dataSource[]=clinical_trials&dataSource[]=dailymed&dataSource[]=degruyter&dataSource[]=du_press&dataSource[]=esa&dataSource[]=eu_press&dataSource[]=elsevier&dataSource[]=emerald&dataSource[]=ejtr&dataSource[]=emea&dataSource[]=epo&dataSource[]=faseb&dataSource[]=gsa&dataSource[]=health_affairs&dataSource[]=hindawi&dataSource[]=imanager&dataSource[]=imedpub&dataSource[]=informa_healthcare&dataSource[]=informs&dataSource[]=iop&dataSource[]=iucr&dataSource[]=iospress&dataSource[]=jbjs&dataSource[]=leftcoast&dataSource[]=lu_press&dataSource[]=mesharpe&dataSource[]=mary_ann_liebert&dataSource[]=medline&dataSource[]=mit_press&dataSource[]=nature&dataSource[]=oxford&dataSource[]=pier_professional&dataSource[]=pnas&dataSource[]=portlandpress&dataSource[]=psyc_articles&dataSource[]=psyc_books&dataSource[]=psyc_critiques&dataSource[]=plos_journal&dataSource[]=pubmed_central&dataSource[]=rsna&dataSource[]=rockefeller&dataSource[]=rcn&dataSource[]=ria&dataSource[]=rsc&dataSource[]=sage&dataSource[]=spie&dataSource[]=springer_journal&dataSource[]=springer&dataSource[]=taylor_francis&dataSource[]=aps&dataSource[]=the_scientist&dataSource[]=uc_press&dataSource[]=uspto_abstract&dataSource[]=wiley&dataSource[]=pct

Browse: Subject Areas | Journals | Publishers

Sign Up for a DeepDyve Account

Bookmark an Article

To bookmark an article, please log in first, or sign up for a DeepDyve account if you don't already have one.

OK

Subscribe to Journal Email Alerts

To subscribe to email alerts, please log in first, or sign up for a DeepDyve account if you don't already have one.

OK

Thank you for renting with DeepDyve

Your PayPal account has been charged $2.99. You now have access to the full text of this article. A rental receipt has also been sent to your email address.

Your credit card has been charged $2.99. You now have access to the full text of this article. A rental receipt has also been sent to your email address.

OK

New! You can now keep track of new articles from ACM SIGAda Ada Letters on your personalized homepage! Learn more

PDF Download — Not Available

Thanks for your interest in purchasing the PDF. Your request has been noted and we will work with our publisher partner to discuss enabling this feature.

In the meantime, you can get the PDF by visiting the publisher site.

Thank you for purchasing with DeepDyve

Your PayPal account has been charged $.

Your credit card has been charged $.

You can now download this article. A purchase receipt has also been sent to your email address.

Download This Article or I'm done with my download

Print Page — Not Available

Thanks for your interest in printing individual pages. Your request has been noted and we will work with our publisher partner to discuss enabling this feature.

In the meantime, you can get the PDF by visiting the publisher site.

Thank you for printing with DeepDyve

Your PayPal account has been charged $0.

Your credit card has been charged $0.

You can now print this article. A purchase receipt has also been sent to your email address.

Print the Selected Pages or I'm done with my printing

Please refresh to generate a new download link

Your article download link has expired. Please refresh this page to obtain a new download link and try again.

Follow a Journal

To get new article updates from a journal on your personalized homepage, please log in first, or sign up for a DeepDyve account if you don't already have one.

OK