A Real Time System is any information
processing system which has to respond to
externally generated input stimuli within a
finite & specified period.

In real time computing , the correctness of
the computation depends not only on the
logical results but also on the time at
which the results are produced.
In RTS a substantial
fraction of the design
effort    goes    into
making sure that the
task deadlines are
met.

A Deadline is a
given time after a
triggering event , by
which a response has
to be completed.
1. Hard real
time systems    2. Soft real time
                    systems
Hard Real Time Systems
System should meets the timings constraints.

 Response time overrun leads to disastrous
  damage
Example : Flight Control System




SOFT REAL TIME SYSTEMS
 Deadline overruns are tolerable, but not
  desired.
 There are no catastrophic consequences of
  missing one or more deadlines.
 Example : Multimedia System
Operating System Issues


Architectural Issues


Other Issues
   By task scheduling , we means that a computer’s
    resources must be shared out equitably among the
    users.

   In general-purpose system , Round robin scheduling
    is used , which ensures that user does not get a
    disproportionate share of the computer’s services.

   But Round robin scheduling approach does not
    work in Real Time applications because priority
    scheduling makes the difference in the two.
Computation       Priority   Scheduling


      Offline       Static     Preemptive
  (precomputed)


                                   Non
     Online
                  Dynamic       Preemptive
  (Dynamically)
A1. No task has any non- preempt able section & cost of
  preemption is negligible.

A2. Only processing requirements are significant;
  memory, I/O & other resource requirements are
  negligible.

A3. All tasks are independent.

A4. The deadline of a task is equal to its period.

A5. All the tasks in the task set are periodic.
   Optimal uniprocessor algorithm
   Also known as Deadline Monotonic
    Scheduling algorithm
   Tasks are preemptable
   Dynamic priorities
   Scheduler picks task , whose deadline is
    due next
   A set of tasks is schedulable ( in hard
    real time sense ) , if the total processor
    utilization is not greater than 1.
NECESSARY & SUFFICIENT
            CONDITION

In EDF , for a task set is said to be
schedulable is if it satisfy the following
necessary and sufficient condition :



   Σ   (i=1 to n)   e/p ≤ 1
                    i        i
Consider     3 periodic    processes scheduled
using EDF, the following acceptance test shows
that all deadlines will be met.


              Execution Time = ei   Period = pi
    Process

      P1              1                 8
      P2              2                 5
      P3              4                 10
The utilization will be:

U = { ( 1/8 ) + ( 2/5 ) + ( 4/10 ) }

  = 0.925       ( or 92.5 % )

The theoretical limit for any number of
processes is 100% ( or less than 1 ) and
so the system is schedulable .
Different possible scenarios

                                                         Sufficient
                                                         but NOT
                                                         necessary
                  If di ≥ pi                If di < pi
Necessary
and                                                              Necessary
sufficient                                                       and
                                                                 sufficient


             ∑ ei/pi ≤ 1             ∑ ei/di ≤ 1          Fail
                                     Pass

                                     Schedulable         Processor demand
                                                         Based test
•Optimality
ADVANTAGES   •Reduces number of task
              switches




             •Deteriorates badly under
              overload
DRAWBACKS    •Scheduling is more
              expensive
             •Needs smarter scheduler
   Static priority based algorithm : tasks
    scheduled according to priorities
   Classical uniprocessor scheduling
    algorithm
   Also called Liu-Layland algorithm or Clock
    driven uniprocessor algorithm
   Tasks are pre-emptable
   It says that if the total utilization of the task
    is not greater than n(21/n -1) where n stands
    for number of tasks to be scheduled then
    RM algorithm will schedule all the task to
    meet their respective deadlines.

   The RMA assigns priorities to the tasks
    based on their rate of occurrence, i.e. the
    lower the occurrence rate of the task the
    lower the priority assigned to it.
   In RMA the priority of the task is directly
    proportional to its rate of occurrence or it is
    inversely proportional to the period
   A set of periodic real time tasks would not be
    RMA schedulable unless they satisfy the
    following necessary condition:-




    Σ   (i=1 to n)   U =Σ
                      i     (i=1 to n)   e /p ≤ 1
                                         i   i
    Also referred to as Liu and Layland’s condition.
   It implies that a set of ‘n’ real time periodic tasks
    are schedulable under RMA if :




        Σ   (i=1 to n)   U ≤ n
                          i       (21/n     -1)
   If the set of tasks satisfies this sufficient condition
    then it is guaranteed that the set of tasks would be
    RMA schedulable.
CASES :
Consider the case when
• there is only 1 task in the system, i.e., n=1
    U1 = 1
• there is 2 tasks in the system, i.e., n=2
    U2 = 0.824
• n=∞, applying L’Hospitals Rule
    ln 2 = 0.69

CONCLUSION:
From above computation it is clear that maximum
CPU utilization that can be achieved under RMA is 1.
Consider 3 tasks to be scheduled using RMA, the
following acceptance test determines whether that
all deadlines will be met or not.


     TASK          EXECUTION          PERIOD
                      TIME

       T1               20               100
       T2               30               150
       T3               60               200
Checking for the NECESSARY CONDITION :
        Σ(i=1 to n)   U =Σ
                       i   (i=1 to n)   e /p
                                         i   i   ≤   1

               U1                              0.2

               U2                              0.2

               U3                              0.3

         Σ(i=1 to 3) U                         0.7
Checking for the SUFFICIENT CONDITION :
              Σ(i=1 to n) Ui ≤ n(21/n -1)

For n=3,
               n(21/n -1) = 3(21/3 -1)
                          = 0.78 < 1
                       Ui = 0.7 < 0.78

Hence, sufficient condition is satisfied.
Therefore, all the given three tasks are
schedulable under RMA.
• possesses good transient
 Advantages      overload handling



              • difficult to support
                aperiodic and sporadic
                tasks
Disadvantages
              • not optimal when task
                periods and deadlines
                differ
EDF                                 RMA
   EDF is also called Deadline-        RMA is also      called     Liu-
    Monotonic         Scheduling         Layland algorithm.
    algorithm
                                        Static priority algorithm
   Dynamic priority algorithm

                                        All tasks are assumed to be
   Tasks do not have to be
                                         periodic
    periodic

   Full     processor   can   be       It lacks flexibility. For e.g.
    feasibly        scheduled,  if       RMA assumes that tasks are
    utilization of task set is no        infinitely preempt able.
    greater than 1
                                        Simpler implementation, even
   It requires a run time               in systems without explicit
    overhead. Deteriorates during        support for timing constraints
    overload conditions                  (periods, deadlines)

Real time-system

  • 2.
    A Real TimeSystem is any information processing system which has to respond to externally generated input stimuli within a finite & specified period. In real time computing , the correctness of the computation depends not only on the logical results but also on the time at which the results are produced.
  • 3.
    In RTS asubstantial fraction of the design effort goes into making sure that the task deadlines are met. A Deadline is a given time after a triggering event , by which a response has to be completed.
  • 4.
    1. Hard real timesystems 2. Soft real time systems
  • 5.
    Hard Real TimeSystems System should meets the timings constraints.  Response time overrun leads to disastrous damage Example : Flight Control System SOFT REAL TIME SYSTEMS  Deadline overruns are tolerable, but not desired.  There are no catastrophic consequences of missing one or more deadlines.  Example : Multimedia System
  • 6.
  • 7.
    By task scheduling , we means that a computer’s resources must be shared out equitably among the users.  In general-purpose system , Round robin scheduling is used , which ensures that user does not get a disproportionate share of the computer’s services.  But Round robin scheduling approach does not work in Real Time applications because priority scheduling makes the difference in the two.
  • 8.
    Computation Priority Scheduling Offline Static Preemptive (precomputed) Non Online Dynamic Preemptive (Dynamically)
  • 9.
    A1. No taskhas any non- preempt able section & cost of preemption is negligible. A2. Only processing requirements are significant; memory, I/O & other resource requirements are negligible. A3. All tasks are independent. A4. The deadline of a task is equal to its period. A5. All the tasks in the task set are periodic.
  • 10.
    Optimal uniprocessor algorithm  Also known as Deadline Monotonic Scheduling algorithm  Tasks are preemptable  Dynamic priorities  Scheduler picks task , whose deadline is due next  A set of tasks is schedulable ( in hard real time sense ) , if the total processor utilization is not greater than 1.
  • 11.
    NECESSARY & SUFFICIENT CONDITION In EDF , for a task set is said to be schedulable is if it satisfy the following necessary and sufficient condition : Σ (i=1 to n) e/p ≤ 1 i i
  • 12.
    Consider 3 periodic processes scheduled using EDF, the following acceptance test shows that all deadlines will be met. Execution Time = ei Period = pi Process P1 1 8 P2 2 5 P3 4 10
  • 13.
    The utilization willbe: U = { ( 1/8 ) + ( 2/5 ) + ( 4/10 ) } = 0.925 ( or 92.5 % ) The theoretical limit for any number of processes is 100% ( or less than 1 ) and so the system is schedulable .
  • 14.
    Different possible scenarios Sufficient but NOT necessary If di ≥ pi If di < pi Necessary and Necessary sufficient and sufficient ∑ ei/pi ≤ 1 ∑ ei/di ≤ 1 Fail Pass Schedulable Processor demand Based test
  • 15.
    •Optimality ADVANTAGES •Reduces number of task switches •Deteriorates badly under overload DRAWBACKS •Scheduling is more expensive •Needs smarter scheduler
  • 16.
    Static priority based algorithm : tasks scheduled according to priorities  Classical uniprocessor scheduling algorithm  Also called Liu-Layland algorithm or Clock driven uniprocessor algorithm  Tasks are pre-emptable
  • 17.
    It says that if the total utilization of the task is not greater than n(21/n -1) where n stands for number of tasks to be scheduled then RM algorithm will schedule all the task to meet their respective deadlines.  The RMA assigns priorities to the tasks based on their rate of occurrence, i.e. the lower the occurrence rate of the task the lower the priority assigned to it.
  • 18.
    In RMA the priority of the task is directly proportional to its rate of occurrence or it is inversely proportional to the period
  • 19.
    A set of periodic real time tasks would not be RMA schedulable unless they satisfy the following necessary condition:- Σ (i=1 to n) U =Σ i (i=1 to n) e /p ≤ 1 i i
  • 20.
    Also referred to as Liu and Layland’s condition.  It implies that a set of ‘n’ real time periodic tasks are schedulable under RMA if : Σ (i=1 to n) U ≤ n i (21/n -1)
  • 21.
    If the set of tasks satisfies this sufficient condition then it is guaranteed that the set of tasks would be RMA schedulable. CASES : Consider the case when • there is only 1 task in the system, i.e., n=1 U1 = 1 • there is 2 tasks in the system, i.e., n=2 U2 = 0.824 • n=∞, applying L’Hospitals Rule ln 2 = 0.69 CONCLUSION: From above computation it is clear that maximum CPU utilization that can be achieved under RMA is 1.
  • 22.
    Consider 3 tasksto be scheduled using RMA, the following acceptance test determines whether that all deadlines will be met or not. TASK EXECUTION PERIOD TIME T1 20 100 T2 30 150 T3 60 200
  • 23.
    Checking for theNECESSARY CONDITION : Σ(i=1 to n) U =Σ i (i=1 to n) e /p i i ≤ 1 U1 0.2 U2 0.2 U3 0.3 Σ(i=1 to 3) U 0.7
  • 24.
    Checking for theSUFFICIENT CONDITION : Σ(i=1 to n) Ui ≤ n(21/n -1) For n=3, n(21/n -1) = 3(21/3 -1) = 0.78 < 1 Ui = 0.7 < 0.78 Hence, sufficient condition is satisfied. Therefore, all the given three tasks are schedulable under RMA.
  • 25.
    • possesses goodtransient Advantages overload handling • difficult to support aperiodic and sporadic tasks Disadvantages • not optimal when task periods and deadlines differ
  • 26.
    EDF RMA  EDF is also called Deadline-  RMA is also called Liu- Monotonic Scheduling Layland algorithm. algorithm  Static priority algorithm  Dynamic priority algorithm  All tasks are assumed to be  Tasks do not have to be periodic periodic  Full processor can be  It lacks flexibility. For e.g. feasibly scheduled, if RMA assumes that tasks are utilization of task set is no infinitely preempt able. greater than 1  Simpler implementation, even  It requires a run time in systems without explicit overhead. Deteriorates during support for timing constraints overload conditions (periods, deadlines)