Abstract
This paper describes the main design goals and implementation choices of JTK, a library which provides simple tasking support, loosely based on POSIX threads. It has been designed to provide the lowlevel tasking support for GNAT, it is completely written in Ada, and it is usable on top of a traditional operating system (providing user-level threads) as well as layered over a bare machine. Its main design motivation is the desire to experiment with a low-level tasking implementation that fits well with GNAT tasking requirements.
Currently, JTK provides a priority driven threading model, with preemptive scheduling, facilities for signal handling, and primitives to provide mutual exclusion and synchronized waiting. The long-term target of JTK is to provide all the facilities that GNAT needs to satisfy full Annex D semantics.
★
This work was supported in part by the CICYT, Project TIC96-0614.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
T.P. Baker and E.W. Giering, GNU Low-Level Interface Definition, Technical Report, Florida State University, June 1993. Available by anonymous ftp from ftp.cs.fsu.edu.
T.P. Baker, Frank Mueller and E.W. Giering, Implementing Ada9X features using POSIX threads: design issues, Conference Proceedings, TriAda’93, Seattle, Washington, September 1993.
T.P. Baker, Frank Mueller and E.W. Giering, Ada9X Asynchronous Transfer Of Control: Applications And Implementation, Conference Proceedings, TriAda’93, Seattle, Washington, September 1993.
T.P. Baker and G.A. Riccardi, Ada Tasking: from Semantics to Efficient Implementation. Available by anonymous ftp from ftp.cs.fsu.edu.
T.P. Baker, Frank Mueller and Viresh Rustagi, Experience with a Prototype of the POSIX Minimal Realtime System Profile, Proceedings of the 11th IEEE Workshop on Real-Time Operating Systems and Software, May 1994.
T.P. Baker, Dong-Ik Oh, Seung-Jin Moon, Low-Level Ada Tasking Support for GNAT-Performance and Portability Improvements, Wadas’96 Proceedings, 1996.
A. Burns, T. Baker, T. Vardanega, Session Summary: Tasking Profiles, In Proceedings for the 8th International Real-Time AdaWorkshop, Ada Letters XVII, 1997.
Alan Burns and Andy Wellings, Real-Time Systems and their Programming Languages (2nd Edn), Addison-Wesley, 1996.
E.W. Giering and T.P. Baker, Using POSIX Threads to Implement Ada tasking: Description of work in Progress, TRI-Ada’ 92 Proceedings (Nov 1992) pages 518–529.
E.W. Giering and T.P. Baker, POSIX/Ada Realtime Bindings: Description of Work in Progress, In Proceedings of the Ninth Annual Washington Ada Symposium,ACM, July 1992.
Frank Mueller, A Library Implementation of POSIX Threads under UNIX, 1993 Winter USENIX.
Dong-Ik Oh and T.P. Baker, Gnu Ada’95 Tasking Implementation: Real-Time Features and Optimization, In Proceedings of the 1997 Workshop of Languages, Compilers and Tools for Real-Time Systems (LCT-RTS), Las Vegas, Nevada, 1997.
Dong-Ik Oh and T.P. Baker, Optimization of Ada’95 Tasking Constructs, TriAda’97, St. Louis, Missouri, 1997.
Dong-Ik Oh, T.P. Baker and Seung-Jin Moon, The GNARL Implementation of POSIX/Ada Signal Services, In Ada-Europe’ 96 Proceedings, pages 2
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ruiz, J.F., González-Barahona, J.M. (1999). Implementing a New Low-Level Tasking Support for the GNAT Runtime System?. In: González Harbour, M., de la Puente, J.A. (eds) Reliable Software Technologies — Ada-Europe’ 99. Ada-Europe 1999. Lecture Notes in Computer Science, vol 1622. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48753-0_26
Download citation
DOI: https://doi.org/10.1007/3-540-48753-0_26
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66093-4
Online ISBN: 978-3-540-48753-1
eBook Packages: Springer Book Archive