Engineering
SOLUTION: Middleware Support for Aperiodic Tasks Article Critique Essay
SOLUTION: Middleware Support for Aperiodic Tasks Article Critique Essay.
Middleware Support for Aperiodic Tasks in Distributed Real-Time Systems ∗
Yuanfang Zhang, Chenyang Lu, and Christopher Gill
Department of Computer Science and Engineering
Washington University, St. Louis, MO, USA
{yfzhang, lu, cdgill}@cse.wustl.edu
Abstract
Many mission-critical distributed real-time applications
must handle aperiodic tasks with end-to-end deadlines.
However, existing middleware (e.g., RT-CORBA) lacks
schedulability analysis and run-time enforcement mechanisms needed to give online real-time guarantees for aperiodic tasks. The primary contribution of this work is the
design, implementation, and performance evaluation of the
first realization of deferrable server and admission control
mechanisms for aperiodic tasks in middleware. Empirical
results on a KURT-Linux testbed demonstrate the efficiency
and effectiveness of our deferrable server and admission
control mechanisms in TAO’s federated event service.
1 Introduction
Many distributed real-time systems must handle a mix
of periodic and aperiodic tasks. Some aperiodic tasks have
end-to-end deadlines whose assurance is critical to the correct behavior of the system. For example, in an industrial
plant monitoring system, an aperiodic alert event may be
generated when a series of periodic sensor readings meets
certain hazard detection criteria. This event must be processed on multiple processors within an end-to-end deadline. User inputs and sensor readings may trigger various
other real-time aperiodic tasks. A key challenge in such
systems is providing online real-time guarantees to critical
aperiodic tasks that arrive dynamically.
State of the Art. Schedulability analysis is essential
for achieving predictable real-time properties. Aperiodic scheduling has been studied extensively in real-time
scheduling theory. Earlier work on aperiodic servers has
integrated scheduling of aperiodic and periodic tasks [24,
19, 11, 21, 16, 17, 12, 5, 22], and new schedulability
∗ This work was supported in part by the DARPA Adaptive and Reflective Middleware Systems (ARMS) program (contract NBCHC030140)
and NSF CAREER award CNS-0448554. Approved for public release.
Distribution unlimited.
Patrick Lardieri and Gautam Thaker
Advanced Technology Laboratories
Lockheed Martin, Cherry Hill, NJ, USA
{plardier, gthaker}@atl.lmco.com
tests based on aperiodic utilization bounds [2] and a new
admission control approach [3] were introduced recently.
However, despite significant theoretical results on aperiodic scheduling, these results have not been applied to the
standards-based middleware that is increasingly being used
for developing distributed real-time applications. For example, current implementations of Real-Time CORBA (RTCORBA) [14] do not provide any of the schedulability tests
or run-time mechanisms required by aperiodic servers. As a
result, those middleware implementations are currently unsuitable for applications with real-time aperiodic tasks. Admission control has been proposed as an effective approach
to handle dynamic real-time tasks in distributed operating
systems [23, 20]. However, those kernel-level mechanisms
cannot be ported to distributed middleware that lacks finegrained resource control. Admission control also has been
implemented in real-time middleware services [1], but they
do not support aperiodic end-to-end tasks, which are essential to many distributed real-time applications.
Research Contributions. To address the limitations of
current generation real-time middleware in supporting aperiodic tasks in dynamic distributed real-time systems, we
have developed an integrated middleware architecture for
end-to-end aperiodic and periodic task scheduling in The
ACE ORB (TAO) [9]. We have developed what are to our
knowledge the first middleware-layer (1) mechanisms for
deferrable servers, in TAO’s federated event service [8];
and (2) admission control service supporting both aperiodic
and periodic end-to-end tasks. Our work bridges an important gap between aperiodic scheduling theory and stateof-the-art real-time middleware. Applying that theory to a
real-world middleware environment faces several important
challenges as it requires (1) consideration of the specific requirements of the system model in applying that theory, and
(2) highly efficient design and implementation of the runtime mechanisms on standard operating system platforms.
Our empirical results on a Linux testbed demonstrate the
success of our approach in supporting deferrable servers
and online admission control for both aperiodic and peri-
odic end-to-end tasks, efficiently in middleware.
Section 2 introduces the specific system model addressed by
this research, and provides background information on aperiodic scheduling approaches. Section 3 presents our middleware architecture for supporting aperiodic task scheduling end-to-end in distributed real-time systems. Section 4
evaluates the performance of our approach. Finally, we offer concluding remarks in Section 5.
2 Background
In this section we describe a representative distributed
real-time application that has motivated the work presented
in this paper, and consider alternatives for scheduling the
aperiodic tasks that feature prominently in that application.
2.1
Shipboard Computing System Model
Military shipboard computing [26] is moving toward
a common computing and networking infrastructure that
hosts the mission execution, mission support and quality of
life systems required for shipboard operations. The objective of the middleware architecture presented in this paper
is to ensure that in the complex large-scale distributed realtime computing environments envisioned, mission critical
and safety critical tasks will meet their real-time performance requirements, even in the presence of a myriad of
other competing non-critical real-time tasks.
The physical system architecture consists of a number of
display consoles that host primarily human/computer interface software, and are connected by a real-time network to
a large number of inter-connected servers that host the software that delivers much of the system’s mission computing
capability. The software running on this distributed infrastructure comprises a mix of periodic and aperiodic tasks,
which are subject to a mix of critical and non-critical performance requirements.
On the servers, many tactical applications are implemented as end-to-end tasks each consisting of multiple subtasks that may be located on different processors. An example of such an application is sensor data processing, which
consists of multiple subtasks. The majority of this data processing is periodic and non-critical. However, if a series of
sensor reports meets certain threat criteria, an urgent self
defense mode may be enabled. Further processing of the
data becomes a critical aperiodic task with a deadline, i.e.,
to make an engagement decision. Should the decision be
to engage, a critical periodic task is then launched, i.e., to
manage countermeasures.
The shipboard computing system model is representative
of many complex distributed real-time systems. Such a system is composed of a set of periodic and aperiodic tasks.
A task is composed of a chain or a graph of subtasks which
may be located on multiple processors. A subtask cannot be
released until its predecessor has been completed. A task is
subject to an end-to-end deadline which may be critical or
non-critical. Since new aperiodic and periodic tasks may
arrive dynamically, it is impossible to provide realistic offline guarantees of the schedulability of the system. Instead,
an admission control strategy is needed to provide on-line
guarantees to aperiodic tasks. Our middleware architecture
is designed to support this general system model, though
some of the specific policies supported by our current implementation are driven by the characteristics of the shipboard computing system model in particular.
2.2
Aperiodic Scheduling Approaches
We now give a brief review of two aperiodic scheduling techniques that can be applied to the system model
described in Section 2.1. For each approach we describe
both the required run-time scheduling mechanisms and the
schedulability analysis. Although each approach may have
various possible policies, in the following we only describe
the particular set of policies provided by our middleware.
Aperiodic Utilization Bound. According to the aperiodic
utilization bound (AUB) analysis [2], a system achieves its
highest schedulable synthetic utilization bound under the
End-to-end Deadline Monotonic Scheduling (EDMS) algorithm. Under EDMS, a subtask has a higher priority if it
belongs to a task with a shorter end-to-end deadline. The
subtasks of a given task are synchronized by a greedy protocol, because the AUB analysis does not require their interrelease times to be bounded. Note that AUB does not distinguish aperiodic from periodic tasks. All tasks are scheduled
using the same scheduling policy. In the AUB analysis, the
set of current tasks S(t) at any time t is defined as the set
of tasks that have released but whose deadlines have not expired. Hence, S(t) = {Ti |Ai ≤ t
Purchase answer to see full
attachment
Yuanfang Zhang, Chenyang Lu, and Christopher Gill
Department of Computer Science and Engineering
Washington University, St. Louis, MO, USA
{yfzhang, lu, cdgill}@cse.wustl.edu
Abstract
Many mission-critical distributed real-time applications
must handle aperiodic tasks with end-to-end deadlines.
However, existing middleware (e.g., RT-CORBA) lacks
schedulability analysis and run-time enforcement mechanisms needed to give online real-time guarantees for aperiodic tasks. The primary contribution of this work is the
design, implementation, and performance evaluation of the
first realization of deferrable server and admission control
mechanisms for aperiodic tasks in middleware. Empirical
results on a KURT-Linux testbed demonstrate the efficiency
and effectiveness of our deferrable server and admission
control mechanisms in TAO’s federated event service.
1 Introduction
Many distributed real-time systems must handle a mix
of periodic and aperiodic tasks. Some aperiodic tasks have
end-to-end deadlines whose assurance is critical to the correct behavior of the system. For example, in an industrial
plant monitoring system, an aperiodic alert event may be
generated when a series of periodic sensor readings meets
certain hazard detection criteria. This event must be processed on multiple processors within an end-to-end deadline. User inputs and sensor readings may trigger various
other real-time aperiodic tasks. A key challenge in such
systems is providing online real-time guarantees to critical
aperiodic tasks that arrive dynamically.
State of the Art. Schedulability analysis is essential
for achieving predictable real-time properties. Aperiodic scheduling has been studied extensively in real-time
scheduling theory. Earlier work on aperiodic servers has
integrated scheduling of aperiodic and periodic tasks [24,
19, 11, 21, 16, 17, 12, 5, 22], and new schedulability
∗ This work was supported in part by the DARPA Adaptive and Reflective Middleware Systems (ARMS) program (contract NBCHC030140)
and NSF CAREER award CNS-0448554. Approved for public release.
Distribution unlimited.
Patrick Lardieri and Gautam Thaker
Advanced Technology Laboratories
Lockheed Martin, Cherry Hill, NJ, USA
{plardier, gthaker}@atl.lmco.com
tests based on aperiodic utilization bounds [2] and a new
admission control approach [3] were introduced recently.
However, despite significant theoretical results on aperiodic scheduling, these results have not been applied to the
standards-based middleware that is increasingly being used
for developing distributed real-time applications. For example, current implementations of Real-Time CORBA (RTCORBA) [14] do not provide any of the schedulability tests
or run-time mechanisms required by aperiodic servers. As a
result, those middleware implementations are currently unsuitable for applications with real-time aperiodic tasks. Admission control has been proposed as an effective approach
to handle dynamic real-time tasks in distributed operating
systems [23, 20]. However, those kernel-level mechanisms
cannot be ported to distributed middleware that lacks finegrained resource control. Admission control also has been
implemented in real-time middleware services [1], but they
do not support aperiodic end-to-end tasks, which are essential to many distributed real-time applications.
Research Contributions. To address the limitations of
current generation real-time middleware in supporting aperiodic tasks in dynamic distributed real-time systems, we
have developed an integrated middleware architecture for
end-to-end aperiodic and periodic task scheduling in The
ACE ORB (TAO) [9]. We have developed what are to our
knowledge the first middleware-layer (1) mechanisms for
deferrable servers, in TAO’s federated event service [8];
and (2) admission control service supporting both aperiodic
and periodic end-to-end tasks. Our work bridges an important gap between aperiodic scheduling theory and stateof-the-art real-time middleware. Applying that theory to a
real-world middleware environment faces several important
challenges as it requires (1) consideration of the specific requirements of the system model in applying that theory, and
(2) highly efficient design and implementation of the runtime mechanisms on standard operating system platforms.
Our empirical results on a Linux testbed demonstrate the
success of our approach in supporting deferrable servers
and online admission control for both aperiodic and peri-
odic end-to-end tasks, efficiently in middleware.
Section 2 introduces the specific system model addressed by
this research, and provides background information on aperiodic scheduling approaches. Section 3 presents our middleware architecture for supporting aperiodic task scheduling end-to-end in distributed real-time systems. Section 4
evaluates the performance of our approach. Finally, we offer concluding remarks in Section 5.
2 Background
In this section we describe a representative distributed
real-time application that has motivated the work presented
in this paper, and consider alternatives for scheduling the
aperiodic tasks that feature prominently in that application.
2.1
Shipboard Computing System Model
Military shipboard computing [26] is moving toward
a common computing and networking infrastructure that
hosts the mission execution, mission support and quality of
life systems required for shipboard operations. The objective of the middleware architecture presented in this paper
is to ensure that in the complex large-scale distributed realtime computing environments envisioned, mission critical
and safety critical tasks will meet their real-time performance requirements, even in the presence of a myriad of
other competing non-critical real-time tasks.
The physical system architecture consists of a number of
display consoles that host primarily human/computer interface software, and are connected by a real-time network to
a large number of inter-connected servers that host the software that delivers much of the system’s mission computing
capability. The software running on this distributed infrastructure comprises a mix of periodic and aperiodic tasks,
which are subject to a mix of critical and non-critical performance requirements.
On the servers, many tactical applications are implemented as end-to-end tasks each consisting of multiple subtasks that may be located on different processors. An example of such an application is sensor data processing, which
consists of multiple subtasks. The majority of this data processing is periodic and non-critical. However, if a series of
sensor reports meets certain threat criteria, an urgent self
defense mode may be enabled. Further processing of the
data becomes a critical aperiodic task with a deadline, i.e.,
to make an engagement decision. Should the decision be
to engage, a critical periodic task is then launched, i.e., to
manage countermeasures.
The shipboard computing system model is representative
of many complex distributed real-time systems. Such a system is composed of a set of periodic and aperiodic tasks.
A task is composed of a chain or a graph of subtasks which
may be located on multiple processors. A subtask cannot be
released until its predecessor has been completed. A task is
subject to an end-to-end deadline which may be critical or
non-critical. Since new aperiodic and periodic tasks may
arrive dynamically, it is impossible to provide realistic offline guarantees of the schedulability of the system. Instead,
an admission control strategy is needed to provide on-line
guarantees to aperiodic tasks. Our middleware architecture
is designed to support this general system model, though
some of the specific policies supported by our current implementation are driven by the characteristics of the shipboard computing system model in particular.
2.2
Aperiodic Scheduling Approaches
We now give a brief review of two aperiodic scheduling techniques that can be applied to the system model
described in Section 2.1. For each approach we describe
both the required run-time scheduling mechanisms and the
schedulability analysis. Although each approach may have
various possible policies, in the following we only describe
the particular set of policies provided by our middleware.
Aperiodic Utilization Bound. According to the aperiodic
utilization bound (AUB) analysis [2], a system achieves its
highest schedulable synthetic utilization bound under the
End-to-end Deadline Monotonic Scheduling (EDMS) algorithm. Under EDMS, a subtask has a higher priority if it
belongs to a task with a shorter end-to-end deadline. The
subtasks of a given task are synchronized by a greedy protocol, because the AUB analysis does not require their interrelease times to be bounded. Note that AUB does not distinguish aperiodic from periodic tasks. All tasks are scheduled
using the same scheduling policy. In the AUB analysis, the
set of current tasks S(t) at any time t is defined as the set
of tasks that have released but whose deadlines have not expired. Hence, S(t) = {Ti |Ai ≤ t
Purchase answer to see full
attachment
SOLUTION: Middleware Support for Aperiodic Tasks Article Critique Essay