Download Concurrent and real-time programming in Ada 2005 by Burns A., Wellings A. PDF

By Burns A., Wellings A.

Ada is the single ISO-standard, object-oriented, concurrent, real-time programming language. it's meant to be used in huge, long-lived purposes the place reliability and potency are crucial, really real-time and embedded structures. during this publication, Alan Burns and Andy Wellings provide a radical, self-contained account of the way the Ada tasking version can be utilized to build quite a lot of concurrent and real-time platforms. this can be the single ebook that specializes in an in-depth dialogue of the Ada tasking version. Following on from the authors' prior identify Concurrency in Ada, this booklet brings the dialogue brand new to incorporate the hot Ada 2005 language and the new advances in real-time programming suggestions. it is going to be of price to software program execs and complex scholars of programming alike: certainly each Ada programmer will locate it crucial examining and a prime reference paintings that might sit down along the language reference handbook.

Show description

Read or Download Concurrent and real-time programming in Ada 2005 PDF

Best programming books

Game Programming Gems, Volume 2

Online game Programming gem stones 2, the second one quantity during this winning sequence, includes a thoroughly new set of over 70 articles on assorted subject matters that may be utilized in your personal video game tasks. Written by way of video game programming specialists, each one contribution offers a hands-on strategy to programming difficulties, or an inventive technique for lowering programming time and redundancy.

Functional Programming, Glasgow 1990: Proceedings of the 1990 Glasgow Workshop on Functional Programming 13–15 August 1990, Ullapool, Scotland

This quantity includes the papers awarded on the third Glasgow Workshop on practical Programming which was once held in Ullapool, Scotland, 13-15 August 1990. contributors of the useful programming teams on the universities of Glasgow and Stirling attended the workshop, including a small variety of invited members from different universities and undefined.

Programming Languages and Systems: 17th European Symposium on Programming, ESOP 2008, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2008, Budapest, Hungary, March 29-April 6, 2008. Proceedings

This e-book constitutes the refereed lawsuits of the seventeenth ecu Symposium on Programming, ESOP 2008, held in Budapest, Hungary, in March/April 2008, as a part of ETAPS 2008, the eu Joint meetings on conception and perform of software program. The 25 revised complete papers offered including the summary of 1 invited speak and instrument displays have been conscientiously reviewed and chosen from 104 submissions and deal with primary matters within the specification, research, and implementation of programming languages and sytems.

Additional resources for Concurrent and real-time programming in Ada 2005

Example text

3 Using a concurrent programming language In a concurrent programming language, concurrent activities can be identified explicitly in the code: with Data_Types; use Data_Types; with IO; use IO; with Control_Procedures; use Control_Procedures; procedure Controller is task Temp_Controller; task Pressure_Controller; task body Temp_Controller is TR : Temp_Reading; HS : Heater_Setting; begin loop Read(TR); Temp_Convert(TR,HS); Write(HS); Write(TR); end loop; end Temp_Controller; task body Pressure_Controller is PR : Pressure_Reading; PS : Pressure_Setting; begin loop Read(PR); Pressure_Convert(PR,PS); Write(PS); Write(PR); end loop; end Pressure_Controller; begin null; -- Temp_Controller and Pressure_Controller -- have started their executions end Controller; The logic of the application is now reflected in the code; the inherent parallelism of the domain is represented by concurrently executing tasks in the program.

Both these models are appropriate in Ada programs. In the following sections, however, we start by considering the problems of communicating indirectly by the use of only passive entities. 1 Data communication The partitioning of a system into tasks invariably leads to the requirement that these tasks exchange data in order for the system to function correctly. For example, a device driver (a process with sole control over an external device) needs to receive requests from other processes and return data if appropriate.

The complete actions on the resource must therefore have been performed before any other process could execute any, possibly corrupting, action. Definition: Condition synchronisation is the synchronisation that ensures that a process only accesses a resource when the resource is in a particular state. Condition synchronisation is necessary when a process wishes to perform an operation that can only sensibly, or safely, be performed if another task has itself taken some action or is in some defined state.

Download PDF sample

Rated 4.89 of 5 – based on 10 votes