Page 58 - DCAP608_REAL TIME SYSTEMS
P. 58
Unit 5: Real-time System Dependencies
4. The ……………… computation task can meaningfully run only after the “current position Notes
determination” task completes.
5. In the classical model, all the immediate successors of a job must be executed; an outgoing
edge from every vertex expresses an ……………… constraint.
6. A dependency between a pair of producer-consumer jobs that are piped can theoretically
be represented by a ……………… graph.
5.3 Resource Parameters of Jobs and Parameters of Resources
Every job requires a processor throughout its execution. A job may also execute in parallel on a
number of processors, and the number of processors it requires may vary during its execution.
The amount of time required by a job to complete may be the function of the number of
processors used to execute the job. The resource parameters of a job give us the type and number
of processors required by a job to execute as well as how the length of time of computation
varies with different number of processors. In this course we will mostly consider jobs that are
executed on a single processor.
In addition to processor, a job may also require some other resources. The resource parameters
of each job give us the type of processor and the units of each resource type required by the job
and the time intervals during its execution when the units are required. These parameters
provide the information that is needed to support resource management decisions.
5.3.1 Pre-emptivity of Resources
A resource is non-pre-emptible if each unit of the resource in constrained to be used serially, i.e.
once a non-pre-emptible resource is allocated to a job, other jobs needing the unit must wait
until the job completes its use. If jobs can use every unit of resource in an interleaving fashion,
the resource is pre-emptible. The lock on a data object in a database is non-pre-emptible. The
transaction can be preempted on the processor by other transactions that are not waiting for
the locks held by it. In the token ring example, this is better to model the token ring as a
non-pre-emptible resource (to avoid resubmission) and leave message transmission jobs
pre-emptible. We can preempt the transmission of a less urgent message in preference to more
urgent massages.
5.3.2 Resource Graph
The configuration of the resources can be described using a resource graph. There is a vertex R
i
for every processor or resource R in the system. The attributes of the vertex are the parameters
i
of the resource. The resource type of a resource tells us whether the resource is a processor or a
passive resource, and its number give us the available number of units. Edges in a resource
graph represent the relationship among resources.
There are two types of edges.
An edge from a vertex R to another R can mean that R is a component of R (memory is
i k k i
part of a computer)
This edge is an is-a-part-of edge.
The root of each tree represents a major component which contains subcomponents
represented by vertices in the tree.
Computer is root, main memory and so on are children.
LOVELY PROFESSIONAL UNIVERSITY 53