Notes - MIECT
Sistemas Operativos E De Tempo-real
Notes - MIECT
Sistemas Operativos E De Tempo-real
  • Sistemas Operativos e de Tempo-real
  • Basic Concepts About Real-Time Systems
    • Preliminaries
    • Definitions
    • Objective of the Study of RTS
    • Requirements of Real-Time Systems
  • Real Time Model
    • Real Time Model
    • Temporal Control
    • Task states and execution
    • Kernel/RTOS Architecture
      • Time Management Functions
    • Examples of RTOS
  • Practical Class 01
    • Real-Time Services in Linux
    • Using the Linux real-time services
  • Scheduling Basics
    • Basic concepts
    • Scheduling Algorithms
      • Basic algorithms
    • Static Cyclic Scheduling
    • Exercise
  • Fixed Priority Scheduling
    • Online scheduling with fixed priorities
    • Schedulability tests based on utilization
      • Deadline Monotonic Scheduling DM
    • Response-time analysis
  • Practical Class 2
    • Xenomai brief introduction
    • API
    • Developing an application
  • Dynamic Priority Scheduling
    • On-line scheduling with dynamic priorities
    • Analysis: CPU utilization bound
    • Analysis: CPU Load Analysis
    • Other deadline assignment criteria
  • Exclusive Access to Shared Resources
    • The priority inversion problem
    • Techniques for allowing exclusive access
    • Priority Inheritance Protocol
    • Priority Ceiling Protocol
    • Stack Resource Policy
    • Notes
  • Aperiodic Servers
    • Joint scheduling of periodic and aperiodic tasks
    • Aperiodic Servers
    • Fixed Priority Servers
    • Dynamic Priority Servers
  • Limited preemption, release jitter and overheads
    • Non-preemptive scheduling
    • Impact of Release Jitter
    • Accounting for overheads
    • Considerations about the WCET
  • Profiling and Code Optimization
    • Code optimization techniques
      • CPU independent optimization techniques
      • Cache impact
      • Optimization techniques dependent on memory architecture
      • Architecture-dependent optimization techniques
    • Profiling
  • Multiprocessor Scheduling, V1.2
    • Introduction
    • Definitions, Assumptions and Scheduling Model
    • Scheduling for Multicore Platforms
    • Task allocation
Powered by GitBook
On this page
  • CPU Load Analysis
  • How to compute h(t)?
  • EDF Scheduling
  1. Dynamic Priority Scheduling

Analysis: CPU Load Analysis

PreviousAnalysis: CPU utilization boundNextOther deadline assignment criteria

Last updated 2 years ago

CPU Load Analysis

For D < T , the biggest period during which the CPU is permanently used (i.e. without interruption, idle time) corresponds to the scenario in which all tasks are activated synchronously. This period is called synchronous busy period and has duration L.

L can be computed by the following iterative method, which returns the first instant since the synchronous activation in which the CPU completes all the submitted jobs.

Computation of L

Knowing L, we have to guarantee the Load Condition , i.e.

The Load Condition refers to all the work that must be completed by t.

How to compute h(t)?

Example:

  • Task set Γ = {(2, 4), (2, 8), (3, 16)}.

  • Draw the Gantt chart and mark the points where tasks must complete.

  • Write a suitable equation.

Knowing L we have to guarantee the load condition, i.e.

And h(t) can be computed as follows:

The computation of h(t) for all values of t ∈ [0, L[ is unfeasible.

  • However it is enough computing the load condition for the instants in which the load function varies, i.e.

Note: there are other, possibly shorter, values for L.

EDF Scheduling

But the CPU load analysis indicates that the task set is schedulable!

-> Schedulability not guaranteed.