search menu icon-carat-right cmu-wordmark

Implementing Sporadic Servers in ADA

Technical Report
This 1990 paper presents the data structures and algorithms for implementing sporadic servers in real-time systems programmed in ADA.
Publisher

Software Engineering Institute

CMU/SEI Report Number
CMU/SEI-90-TR-006

Abstract

The purpose of this paper is to present the data structures and algorithms for implementing sporadic servers in real-time systems programmed in ADA. The sporadic server algorithm is an extension of the rate monotonic scheduling algorithm. Sporadic servers are tasks created to provide limited and usually high-priority service for other tasks, especially aperiodic tasks. Sporadic servers can be used to guarantee deadlines for hard-deadline aperiodic tasks and provide substantial improvements in average response times for soft-deadline aperiodic tasks over polling techniques. Sporadic servers also provide a mechanism for implementing the Period Transformation technique that can guarantee that a critical set of periodic tasks will always meet their deadlines during a transient overload. Sporadic servers can also aid fault detection and containment in a real-time system by limiting the maximum execution time consumed by a task and detecting attempts to exceed a specified limit. This paper discusses two types of implementations for the sporadic server algorithm: (1) a partial implementation using an ADA task that requires no modifications to the ADA runtime system and (2) a full implementation within the ADA runtime system. The overhead due to the runtime sporadic server implementation and options for reducing this overhead are discussed. The interaction of sporadic servers and the priority ceiling protocol is also defined.

Cite This Technical Report

Sprunt, B., & Sha, L. (1990, May 1). Implementing Sporadic Servers in ADA. (Technical Report CMU/SEI-90-TR-006). Retrieved April 19, 2024, from https://insights.sei.cmu.edu/library/implementing-sporadic-servers-in-ada/.

@techreport{sprunt_1990,
author={Sprunt, Brinkley and Sha, Lui},
title={Implementing Sporadic Servers in ADA},
month={May},
year={1990},
number={CMU/SEI-90-TR-006},
howpublished={Carnegie Mellon University, Software Engineering Institute's Digital Library},
url={https://insights.sei.cmu.edu/library/implementing-sporadic-servers-in-ada/},
note={Accessed: 2024-Apr-19}
}

Sprunt, Brinkley, and Lui Sha. "Implementing Sporadic Servers in ADA." (CMU/SEI-90-TR-006). Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, May 1, 1990. https://insights.sei.cmu.edu/library/implementing-sporadic-servers-in-ada/.

B. Sprunt, and L. Sha, "Implementing Sporadic Servers in ADA," Carnegie Mellon University, Software Engineering Institute's Digital Library. Software Engineering Institute, Technical Report CMU/SEI-90-TR-006, 1-May-1990 [Online]. Available: https://insights.sei.cmu.edu/library/implementing-sporadic-servers-in-ada/. [Accessed: 19-Apr-2024].

Sprunt, Brinkley, and Lui Sha. "Implementing Sporadic Servers in ADA." (Technical Report CMU/SEI-90-TR-006). Carnegie Mellon University, Software Engineering Institute's Digital Library, Software Engineering Institute, 1 May. 1990. https://insights.sei.cmu.edu/library/implementing-sporadic-servers-in-ada/. Accessed 19 Apr. 2024.

Sprunt, Brinkley; & Sha, Lui. Implementing Sporadic Servers in ADA. CMU/SEI-90-TR-006. Software Engineering Institute. 1990. https://insights.sei.cmu.edu/library/implementing-sporadic-servers-in-ada/