Programming in Ada (2nd ed.)
Toward real-time performance benchmarks for Ada
Communications of the ACM
Real-time Euclid: a language for reliable real-time systems
IEEE Transactions on Software Engineering - Special issue on reliability and safety in real-time process control
Timing Issues in the Distributed Execution of Ada Programs
IEEE Transactions on Computers
A tutorial introduction to Occam programming
A tutorial introduction to Occam programming
The architecture of concurrent programs
The architecture of concurrent programs
Programming in Modula-2
Guaranteed Response Times in a Hard-Real-Time Environment
IEEE Transactions on Software Engineering
C3P Proceedings of the third conference on Hypercube concurrent computers and applications: Architecture, software, computer systems, and general issues - Volume 1
Self-timing programs and the quantum scheduler
Communications of the ACM
ACM SIGAda Ada Letters
Real-time software engineering in Ada: observations and recommendations
TRI-Ada '89 Proceedings of the conference on Tri-Ada '89: Ada technology in context: application, development, and deployment
Experiences with “delay until” for Avionics computers
ACM SIGAda Ada Letters
Hi-index | 0.02 |
The scheduling of timed tasks is generally based, at the hardware level, upon the use of time intervals. For example, most microprocessor families provide their only hardware support for timing control in the form of a programmable interval timer chip accessible as an I/O device over the system bus. In this paper we will argue that a more natural and elegant solution bases timing on a local (to a particular CPU) absolute timer. Furthermore, we will show that the desired timing functions can be provided by simple extensions to existing CPU architectures. The widespread use of the ``time interval'' view has also influenced, in a negative way, the design of many programming languages. An important example is Ada, a language designed with real-time multitasking explicitly in mind. We will describe the difficulty with the current timing methods used in Ada, and present a method for overcoming the timing weakness by using the proposed timing mechanisms, while still remaining within the definition of the Ada language.