Implementing Sporadic Servers in ADA
• Technical Report
Publisher
Software Engineering Institute
CMU/SEI Report Number
CMU/SEI-90-TR-006Topic or Tag
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 November 23, 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-Nov-23}
}
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: 23-Nov-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 23 Nov. 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/