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
   53   54   55   56   57   58   59   60   61   62   63