Ada real-time services and virtualization (original) (raw)
Related papers
MaRTE OS: An Ada Kernel for Real-Time Embedded Applications
Lecture Notes in Computer Science, 2001
MaRTE OS (Minimal Real-Time Operating System for Embedded Applications) is a real-time kernel for embedded applications that follows the Minimal Real-Time POSIX.13 subset, providing both the C and Ada language POSIX interfaces. It allows cross-development of Ada and C real-time applications. Mixed Ada-C applications can also be developed, with a globally consistent scheduling of Ada tasks and C threads. Details on the architecture and implementation of the kernel are described, together with some performance metrics.
The Chance for Ada to Support Distribution and Real-Time in Embedded Systems
Lecture Notes in Computer Science, 2004
This paper presents a modification of GLADE-the current GNAT implementation of the Ada 95 Distributed Systems Annex (DSA)-to support the development of distributed applications with hard real-time requirements. This modified implementation, that we call RT-GLADE (Real-Time GLADE), is specially suitable for embedded applications composed of a small number of heterogeneous processors and communication networks, because it ensures predictable timing behaviour. A real-time model of the implementation allows the application developer to determine and optimize the overall timing behaviour by applying the corresponding schedulability analysis and priority assignment techniques. This realtime version of GLADE continues to conform to the DSA, so the entire real-time application can be built within the Ada 95 context. To implement RT-GLADE, we provide a priority-based communication network over standard Ethernet that is used to ensure predictable transmission times.
Implementing the new Ada 2005 real-time features on a bare board kernel
Proceedings of the 13th international workshop on Real-time Ada - IRTAW '07, 2007
A real-time kernel providing timing services is a key component of any real-time system. The current revision of the Ada standard provides a range of real-time mechanisms that can be used to ensure the required temporal behaviour of real-time tasks. However, kernel timing services must be implemented carefully in order to avoid overheads and inaccuracies. This paper describes the implementation of the Ada timing services in an evolved version of the Open Ravenscar Kernel. The interrelation among the different timing mechanisms is also analysed and evaluated.
Extending Ada's real-time systems annex with the POSIX scheduling services
ACM SIGAda Ada Letters, 2001
In this paper we propose extending the scheduling model of the Ada 95 Real-Time Systems Annex with the services specified in the Real-Time POSIX standard. These services include a round robin within priorities scheduling policy, a sporadic server scheduling policy, and execution time clocks and timers. With these services the Ada Real-Time Annex will enable addressing a larger number of application requirements.
A Linux kernel module implementation of restricted Ada tasking
ACM SIGAda Ada Letters, 1999
An Ada tasking kernel is implemented as a layer be. neath the Linux operating system on a PC-compatible machine. This implementation is derived from Yodaiken's Real-Time Linu~ kernel, with new scheduling and synchronization primitives introduced specifically to support the GNAT Ada runtime system. Primitive operations for real-time Ada tasks are directly implemented on top of the underlying hardware in the form of a loadable Linuz kernel module. This design not only reduces execution overhead and improves control over ezecution timing for tasks, but also opens the door for a simple restricted-tasking runtime system that could be certified for safety-critical applications.
Implementing Ada. Real Time. Clock and absolute delays in real-time kernels
Reliable SoftwareTechnologies���Ada-Europe 2001, 2001
A real-time kernel providing multitasking and timing services is a fundamental component of any real-time system. Timing services, which are crucial to the correct execution of this kind of applications, are usually provided by a real-time clock and timer manager, which is part of the kernel and implements the required functionality on top of the one or more hardware timers. Kernel timing services must be implemented carefully in order to avoid race problems and inconsistencies which may be caused by the fact that many common hardware timer ...
The Ada task system and real-time applications: an implementation schema
Computer Languages, 1985
The Ada task system is critically evaluated from the point of view of real-time applications. Based on such an evaluation an abstract machine, supplying both an operational semantics and an implementation schema for it, is derived. Such a schema, depending on parameters, may supply a standard implementation following the Ada Reference Manual specifications, or may allow the user to implement ad hoc policies required by the time constraints of the specific application.
2 : Embedded Real-Time Operating Systems 3 . 2 : General Principles
2001
finished. It is possible to avoid the problem by adding break points to the event handling code where the handling of urgent events can take place. On the other hand, the problem is not critical, if a powerful processor is available. The real-time properties of most embedded systems are based on the use of real-time operating systems. Application of such operating systems requires high expertise and much time. The resulting software is often heavy and hard to maintain. In this paper we present a class of application specific operating systems called ReaGOS. ReaGOS is based on a new architecture and an operating principle, where the operating system calls application programs but not vice versa. The new architecture saves both data and code memory and it is fast enough for embedded systems. The operating system is generated automatically from a high level graphical specification. Another method uses interrupt mechanisms to handle I/O driver events [5]. This method has some disadvanta...
Ada-CCM: Component-Based Technology for Distributed Real-Time Systems
2008
This paper proposes a technology for the development of distributed real-time component-based applications, which takes advantage of the features that Ada offers for the development of applications with predictable temporal behaviour, and which can be executed in embedded platforms with limited resources. The technology uses the Deployment and Configuration of Compo nent-based Distributed Applications Specification of the OMG for describing the components, the execution platforms and the applications. The framework defined in the Lightweight CCM standard of the OMG is taken as the basis of the internal architecture of the components and the applications. It has been extended with a number of features to make the temporal behaviour of the appli cations predictable. Among these extensions, the usage of CORBA has been replaced by special distributed components, called connectors, which implement the interaction between components by means of predictable and customizable communication services. Besides, special mechanisms have been introduced in the environment to make the threading characteristics of the components config urable. The technology fixes the responsibilities and the knowledge required by each actor involved in the component-based development process, and for each of them it defines the input and output artifacts that they have to manage.