Ada multitasking was originally intended to be efficiently implementable on a bare machine, for use in embedded real-time systems. Ada 95 took several steps further toward this goal, by adding a number of new lightweight real-time tasking constructs and allowing restricted runtime systems. However, where implementations of Ada 95 been done over a commercial operating system, the performance and capabilities of the operating system have been limiting factors. Real-Time Linux shows an attractive way past this problem, that permits a no-compromises implementation of restricted hard-real-time Ada tasking while maintaining the advantages of a full-fledged operating system and language support for background computations. Moreover, this solution is freely available in open-source form, and so can be adapted as needed by users.