Implementation of Task Scheduling Algorithms of Multiprocessor and Mixed Critical Systems-2
Implementation of Task Scheduling Algorithms of Multiprocessor and Mixed Critical Systems-2
Volume 5 Issue 3
e-ISSN: 2582-2993
DOI: https://doi.org/10.5281/zenodo.7326272
*Corresponding Author
E-Mail Id: [email protected]
ABSTRACT
The advent of multi-core architecture rises many challenges, issues and opportunities.
Multicores have significantly increased performance of embedded real-time systems and high
performance systems. It has also created a greater impact in the way of software development
from application software’s to operating system kernels. An increasing number of high
performance systems are programmed using modern programming languages due to parallel
programming revolution created by the multicores. The cost reduction trends in modern
embedded systems induces functional consolidation which results in development of mixed
critical systems (MCS). Two critical challenges are addressed in this research work are one is
overcoming the limitations of modern programming languages to support for developing time
sensitive applications in multicore systems. Another one is developing task scheduling strategy
in multicore systems to decrease the runtime overhead as well as improving support for mixed
critical systems.
Keywords: About four key words or phrases in alphabetical order, separated by commas
Ensuring time bounded operations all tasks. An infinite loop is used for
system calls are deterministic. preemptive scheduling of tasks in RTOS.
Each task acts as an independent program
All kernel operations can be placed in a loop between ready and finish
pre-empted in RTOS. place. According to certain events or
Priority inversion problem is tokens or flags action will takes place but
prevented in RTOS using certain task will not return to the scheduling point
mechanisms. unlike function does?
Pre-Emptiveness The embedded system means a software is
Operating system schedules the higher embedded on hardware as one of the
priority task by preempting the many important component. They are widely
lower priority tasks, all operations of lower used in small automation to larger avionic
priority tasks are blocked due to embedded systems. The complexity of
preemption. It is used to solve problem of embedded system software is increasing as
more latency for higher priority task which the complexity of embedded system
designer may not want. The worst case hardware is also improving. Earlier 8 bit
latency or time delay in execution is embedded systems are not using operating
diff erent for every task in a system. Higher systems inside but modern 8 bit devices
priority task latency is much smaller are using small kernels as shown in Figure
compared to latency of the lower priority 2.
The embedded system means a software is rise in the adoption of single core
embedded on hardware as one of the processors. Multicore architectures have
important component. They are widely got a momentum due to limitations in
used in small automation to larger avionic using high speed single core processor.
embedded systems. The complexity of This shift from single core to multicore
embedded system software is increasing as processors [4] is a very big challenge in
the complexity of embedded system computing field for embedded real-time
hardware is also improving. Earlier 8 bit systems developers and designers for
embedded systems are not using operating example consider existing old legacy
systems inside but modern 8 bit devices systems using uniprocessor assumptions
are using small kernals as shown in Figure for its development.
2.
There are systems developed many years
Multicore architecture has become the ago and maintained by developers, and
trend of high performance processors. they cannot be replaced very easily due to
Multicore or Multi-processors introduces huge investments for developing such
parallelization revolution in software or systems. Another important aspect while
hardware. Figure 3 shows exponential shifting to multicore is task allocation
growth of multi core processors and initial among diff erent cores to improve
point of its evolution. This trend is performance of such multicore platforms.
continuing, moving from multi cores to Here partitioning algorithm is presented to
many cores but according to Ambdhal’s efficiently allocating tasks of the systems
law speed up factor is a limiting element to diff erent cores. The partitioning
for chip manufactures for increasing technique also used to increase
number of cores in the processors. performance of the system by ensuring its
According to power usage and problems correctness.
related to thermal will hiders [7] a further
along with some of the varied parameters the tasks, reacting to this events by
in a larger range for representing a various switching the scheduling modes.
embedded hard real-time application using
this eff orts. The results obtained by this Without aff ecting system’s safety
experiments shows that by combing implementing this kind of runtime
priority assignment algorithm developed mechanism efficiently is very important for
by Audsley’s with Bertogna et al. any scheduler to identify runtime events
schedulability test surpass other and respond in a timely fashion. This paper
approaches. According to Lukas Sigrist find out alternative implementations to
and Georgia. The mixed criticality these mechanisms and evaluates
scheduling problem and several policies to empirically how much it aff ects the
overcome the problem is rising due to use runtime overhead on the scheduling of
of multi-cores in embedded system mixed-critical applications. Two
deployments and multicritical applications scheduling schemes are implemented one
are co-hosting in the same embedded is flexible time-triggered FTTS and
platform. Scheduling policies to overcome another one is PEDF-VD (partitioned
mixed critical scheduling problem EDF-VD). The runtime overhead of both
employs certain runtime monitoring proposed scheduling technique is
mechanisms and handles certain measured on an Intel @ Xeon Phi having
exceptional events including task 60 cores and Intel @ core i5 on 4 cores.
overruns. Special events will be handled in Extensively executing user generated task
a timely fashion without compromising the sets on avionic applications of avionic
safety of the system. industry, the observation is the runtime
overheads also cannot be neglected on
This paper introducing alternative massively increased cores with multi core
implementations of the runtime architectures due to which they loss
mechanism in mixed criticality systems. schedulability upto 97%. Runtime
This mechanisms are empirically mechanisms evaluation is the early phase
evaluated on their runtime overheads. Two of the design and incorporating it’s
such policies are improved is flexible time overheads in schedulability analysis is
triggered scheduling and Partitioned becoming necessary step in the
EDF-VD. There runtime overhead is mixed-critical systems design. The need
measured on 60 core Xeon Phi and 4 core for small overheads bounded within a rang
Xeon Phi processor. The usage of motivates the development of new
multicore systems is significantly improved architecture that are timing
increasing for embedded systems this predictable and it’s runtime environments
includes safety critical systems like are targeting for mixed critical
military, Automobiles, medical, avionics. applications. Response time analysis of the
Deploying applications having diff erent mixed critical system is carried out by S.K.
critical levels in the same embedded Baruah, A. Burns and R.I. Davis in [7].
system requires proper isolation among
those tasks. This kind of conditions creates Certification requirement is a major
mixed critical task scheduling problem. challenge for many of the safety critical
There are certain recently proposed embedded systems using tasks having
techniques and policies exist they employ multiple critical levels. In many cases only
mechanisms in runtime to monitor few of the system functionality are safety
execution of the tasks, identify exceptional critical and hence require certification. The
conditions or events like overrunning of rest of the functions are they do not require
any certification or they are very less
critical in nature. The runtime monitoring architectures, which is having many units
is very challenging and scheduling of processing on a unique chip, has raised
analysis of such systems of such systems is the interest in solving many problems for
very complex in mixed criticality systems. developing such systems. As a result of
The paper contains novel implementation this, task scheduling technique for multi
technique for fixed priority scheduling of core and many core architectures now a
multi criticality systems on uniprocessors. days have obtained a huge amount of
The proposed scheme monitors the jobs attention. In past decade there are many
during run-time. An optimal scheme for scheduling techniques have been
task priority assignment is developed and developed. Many cases have received only
sufficient amount of response time analysis 50 % of least upper bound in the system
is also derived. The proposed novel idea is utilization, this is very pessimistic.
dominate all previously implemented Investigation of schedulability of the
schemes. Benefits of the proposed scheme real-time tasks on this multi core and many
is also evaluated. There are three kind of core systems, Theoretical schedulability
priority assignment techniques as shown tests can be used. However, task sets with
below good system utilization bound, one of the
Partitioning the criticality (PC), it is best alternative method is exhaustive
most commonly used scheme also simulation of the system. RealtssMP is
called as criticality monotonic priority also one of the simulation tool among few
assignment scheme. Here task having tools to conduct such simulations of
higher criticality will be assigned a scheduling algorithms and also perform
higher priority. schedulability analysis. Simulation tools is
Static mixed criticality (SMC), all also proved to be beneficial in the
jobs of a task can execute only up to evolution of the algorithms in terms of its
its bounded execution time but it performance and developing new
cannot execute further any more time. scheduling techniques or algorithms. This
Tn such cases they are aborted and kind of tools also used as an educational
scheduled again when it is safe to tools for academic purpose. Alejandro
execute. Here priorities of the jobs Alonso, Emilio Salazar, and Miguel A. de
cannot change once assigned. Miguel identified tool set for developing
Adaptive mixed criticality (AMC), the mixed critical partitioned system in.
proposed priority assignment Virtualized mixed-criticality multicore
technique is used in adaptive mixed systems exhibit new challenges for its
criticality. Run time monitoring of the development and it is becoming active
tasks and switching its priority levels research now a days. There is an added
enhances its performance compared to complexity exist: Now it is required to find
static critical systems. unlike SMC exactly how to partition the tasks and
here job is not withdrawn from the assign those tasks to partitions. Here many
execution if it exceeds representative issues are discussed including application
execution time instead of that its criticality level, dependability and security
priority will be enhanced allowing it requirement and timing requirement etc.
to finish its execution The MultiPARATES tool depends on
model driven engineering’s (MDE’s) that
According to Ramirez and Arnoldo since is more appropriate approach in this
from few couple of years Real-time settings, it supports or helps in bridging the
systems have been dependent on gap between partitioning and design
multiprocessor architectures. However, issues. How systems are developed now a
the significant improvement in multi core days can be changed by MDE.
Table 2.4: Various Multiprocessor task scheduling Algorithms and it’s challenge
Algorithm Mechanism used Features Challenges and limitations
EDF Uses dynamic Priority Assignment CPU utilization is full It is more difficult to implement
and deadline based scheduling
criteria
RM Uses static Priority Assignment and Simple to implement It does not work for multicore
period based scheduling criteria processors
LLF Uses dynamic Priority Assignment CPU utilization is full It is more difficult to implement
and Laxity based scheduling criteria. and efficient in all
conditions
U-EDF It uses vertical EDF (G-EDF) and It is optimal for task It will not work for sporadic
horizontal EDF with slight variation preemptions, migrations tasks because prior knowledge
in EDF have been reduced of the task arrival times is
required
Pfair Set of sub tasks have been created Optimal scheduling of It uses more assumptions, less
using a large task, Within the time periodic tasks on unicore practical.
interval they must execute all and multicore
subtasks. processors.
HLFEL First simple algorithm for statically Scheduling technique Communication time is
scheduling task graph, Priorities of used for parallel neglected.
task is decided by certain static level processing.
attributes.
ISH Same as HLFET but it uses idle Scheduling technique It will not consider all kinds of
times created by processors due to used for parallel static attributes.
partial scheduling. processing
MCP Task priorities are determined based It gives higher It will neglect communication
on as late as possible (ALAP’S) performance to tasks cost when computing task
attribute. which is having priorities.
minimum start time.
ETF Earliest start times of the task is Scheduling technique It will not minimize the duration
determined and particular task used for parallel of scheduling at each step
having smaller time to start is processing
selected. It is also uses static level
attributes.
DLS Priorities of tasks are determined Scheduling technique Scheduling list is not maintained
based on dynamic level attributes used for parallel during scheduling process.
instead of static level attributes. processing.
CNPT Criticality node (CN’s) is used as a Performance is greater It will not consider other
task priorities, works in two phases and complexity is less. dynamic and static attributes
Listing and processor assignment.
EDZL Zero laxity jobs are given the top More number of task It will not guarantee that
priority sets meet their deadline arbitrary deadline independent
sporadic tasks will be scheduled
successfully
CONCLUSION REFERENCES
The advent of multi-core architecture rises 1. Chen, S., Mulgrew, B., & Grant, P. M.
many challenges, issues and opportunities. (1993). A clustering technique for
Multicores have significantly increased digital communications channel
performance of embedded real-time equalization using radial basis function
systems and high performance systems. networks. IEEE Transactions on
neural networks, 4(4), 570-590.
It has also created a greater impact in the 2. Duncombe, J. U. (1959). Infrared
way of software development from navigation—Part I: An assessment of
application software’s to operating system feasibility. IEEE Trans. Electron
kernels. An increasing number of high Devices, 11(1), 34-39.
performance systems are programmed 3. Lin, C. Y., Wu, M., Bloom, J. A., Cox,
using modern programming languages due I. J., Miller, M. L., & Lui, Y. M. (2000,
to parallel programming revolution created May). Rotation-, scale-, and
by the multicores. translation-resilient public
watermarking for images. In Security
The cost reduction trends in modern and watermarking of multimedia
embedded systems induces functional contents II (Vol. 3971, pp. 90-98).
consolidation which results in SPIE.
development of mixed critical systems 4. Suhas, G. K., Devananda, S. N.,
(MCS). Two critical challenges are Jagadeesh, R., Pareek, P. K., & Dixit,
addressed in this research work are one is S. (2021). Recommendation-Based
overcoming the limitations of modern Interactivity Through Cross Platform
programming languages to support for Using Big Data. In Emerging
developing time sensitive applications in Technologies in Data Mining and
multicore systems. Information Security (pp. 651-659).
Springer, Singapore.
Another one is developing task scheduling 5. GK, M. S., Verma, V. K., Devananda,
strategy in multicore systems to decrease S. N., BR, C. R., Manchale, P., &
the runtime overhead as well as improving Pareek, P. K. An Exploration on
support for mixed critical systems. Recommendation Based Interactivity