Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 17

Real-time operating

system
Reference Models for Real Time
Systems: Processors and
Resources
Ila Kaushik
Dept. of IT
KIET Group of Institutions
Contents
 A Reference Model of Real-Time Systems
 Processors and Resources
 Temporal Parameters of Real Time Workload
 Periodic Task Model
A reference model of real-time systems
• A reference model of real-time systems is characterized by three
elements:
(1)a workload model that describes the applications supported by the
system,
(2)a resource model that describes the system resources available to the
applications, and
(3)algorithms that define how the application system uses the resources at
all times.
PROCESSORS
• all the system resources into two major types:
• processors
• resources
• Processors are often called servers and active resources;
• computers, transmission links, disks, and database server are examples of
processors.
• They carry out machine instructions, move data from one place to another,
retrieve files, process queries, and so on.
• Every job must have one or more processors in order
to execute and make progress toward completion.
• Two types of processors-
• Two processors are of the same type if they are functionally identical and
can be used interchangeably.
• Example- two transmission links with the same transmission rate between a
pair of sender and receiver are processors of the same type;
• Two processors are of different types if they are functionally different, or
for some other reason cannot be used interchangeably.
• Example- CPUs, transmission links, and disks are of different types
RESOURCES
• By resources, specifically mean passive resources.
• Examples of resources are memory, sequence numbers, mutexes, and
database locks.
• A job may need some resources in addition to the processor in order to
make progress.
TEMPORAL PARAMETERS OF REAL-
TIME WORKLOAD
• The workload on processors consists of jobs, each of which is a unit of
work to be allocated processor time and other resources.
• A set of related jobs that execute to support a function of the system is a
task.
• Each job Ji is characterized by its-
• Temporal parameters,
• Functional parameters,
• Resource parameters, and
• Interconnection parameters.
• Its temporal parameters tell us its timing constraints and behavior.
• Its interconnection parameters describe how it depends on other jobs and how
other jobs depend on it.
• Its functional parameters specify the intrinsic properties of the job.
• Finally, its resource parameters give us its resource requirements.
• The release time, absolute deadline, and relative deadline of a job J i ; these are
temporal parameters.
Fixed, Jittered, and Sporadic Release Times
• In many systems, it is unknown exactly when each job will be released.
• In other words, we do not know the actual release time r i of each job Ji ; only that
ri is in a range [ri −,ri +].
• ri can be as early as the earliest release time r i − and as late as the latest release
time ri +.
• Some models assume that only the range of r i is known and call this range the
jitter in ri , or release-time jitter..
• Almost every real-time system is required to respond to external events which occur
at random instants of time.
• When such an event occurs, the system executes a set of jobs in response.
• The release times of these jobs are not known until the event triggering them occurs.
• These jobs are called sporadic jobs or aperiodic jobs because they are released at
random time instants.
• For example, the pilot may disengage the autopilot system at any time. When this
occurs, the autopilot system changes from cruise mode to standby mode.
Execution Time
• Another temporal parameter of a job, Ji , is its execution time, ei .
• ei is the amount of time required to complete the execution of J i when it executes
alone and has all the resources.
• The execution time ei of the job Ji is in the range [ei −, ei +], where ei − and ei +
are the minimum execution time and the maximum execution time of J i ,
respectively.
• We usually assume that we know ei − and ei + of every hard real-time job Ji but
the actual execution time of the job is unknown.
PERIODIC TASK MODEL
• The periodic task model is a well-known deterministic workload model.
• With its various extensions, the model characterizes accurately many traditional
hard real-time applications, such as digital control, real-time monitoring, and
constant bit-rate voice/video transmission.
Periods, Execution Times, and Phases of
Periodic Tasks
• In the periodic task model, each computation or data transmission that is executed
repeatly at regular or semiregular time intervals in order to provide a function of
the system on a continuing basis is modeled as a period task.
• Specifically, each periodic task, denoted by T i , is a sequence of jobs.
• The period pi of the periodic task Ti is the minimum length of all time intervals
between release times of consecutive jobs in T i .
• Its execution time is the maximum execution time of all the jobs in it.
• With a slight abuse of the notation, we use e i to denote the
execution time of the periodic task T i , as well as that of all the
jobs in it.
• The tasks in the system T1, T2,..., Tn. 2 When it is necessary to refer to the
individual jobs in a task Ti , we call them Ji,1, Ji,2 and so on, Ji,k being the kth job in
Ti .
• The release time ri,1 of the first job Ji,1 in each task Ti is called the phase of Ti .
• For the sake of convenience, we use φi to denote the phase of Ti , that is, φi = ri,1.
• In general, different tasks may have different phases.
• H is used to denote the least common multiple of pi for i = 1, 2,... n.
• A time interval of length H is called a hyperperiod of the periodic tasks.
• The (maximum) number N of jobs in each hyperperiod is equal to
• The length of a hyperperiod of three periodic tasks with periods 3, 4, and 10 is 60.
• The total number N of jobs in the hyperperiod is 41.
• A job in Ti that is released at t must complete Di units of time after t;
• Di is the (relative) deadline of the task T i .
• We will omit the word “relative” except where it is unclear whether by deadline,
we mean a relative or absolute deadline.
• We will often assume that for every task a job is released and becomes ready at
the beginning of each period and must complete by the end of the period.
• In other words, Di is equal to pi for all n.
• This requirement is consistent with the throughput requirement
that the system can keep up with all the work demanded of it at all
times.
Thank
You

You might also like