• No se han encontrado resultados

DE TRANSMISION DE LA PROPIEDAD DE COSAS MUEBLES

2.1. El modelo del Code civil français

The task model is a combination of the classic periodic real-time task model of Liu and Layland [Liu and Layland, 1973b] and the elastic resource distribution frame-work of Marau et al. [Marau et al., 2011]. According to the periodic task model, as introduced in Section 2.1.2, repeatedly executed computations or data transmissions are modeled as periodic tasks, which are sequential activities to be executed on a single core at any time (suspension, migration to another core and subsequent re-sumption is possible). Each task τi is defined as an infinite sequence of jobs and characterized by a period Ti, denoting the time interval between the activation times of consecutive jobs. The worst-case execution time (WCET) Ci of a task represents an upper bound on the amount of time required to execute the task. We assume implicit deadlines for all tasks (relative deadline Di = Ti), so a real-time job must be completed T units of time after its activation at the start of its period. The execution of a job may be preempted at any time prior to completing execution and resumed later. The utilization U(τi) is defined as the ratio of WCET and period:

U (τi)== Cdef i/Ti.

A criticality level χ is assigned to each task, referring to its importance for the overall system and the severity of failure. Moreover, it might be associated with a specific certification level as defined by a certification authority. Only two generic criticality levels are assumed in this work: HI and LO, with HI denoting higher severity of failure and stronger certification requirements. The periodic task model is applicable to many real-time applications and well-suited for mixed-criticality sys-tems. Certification authorities require to determine WCETs to demonstrate the correctness of the system under pessimistic assumptions and numerous methods and tools to support the determination of WCETs exist [Wilhelm et al., 2008]. Never-theless, it should be mentioned that the results of this thesis could be transferred to the sporadic task model, which defines each task by a WCET, a relative deadline, and a minimum inter-arrival time between subsequent jobs [Mok, 1983].

Marau et al. extended the periodic task model in order to realize an elastic

4.1 Workload Model 71

Execution

BCET WCET Time

Possbile Execution Times Frequency

Figure 4.1: Distribution of execution times of a task between best-case and worst-case execution time

scheduling [Marau et al., 2011]. A task 1 τi is characterized by a minimum band-width Umini) ≥ 0 and a maximum bandwidth Umini)+Ulaxi). Therefore, the utilization laxity Ulaxi) ≥ 0 can be understood as the utilization that the task could use reasonably in addition to the minimum bandwidth. First, all tasks re-ceive their minimum bandwidth Umin, since this allocation is required for the cor-rect execution. Umin can be derived from the WCET as Umini) = Ci/Ti. Given a (fixed) resource capacity UR, the spare bandwidth defines the bandwidth that can be distributed among n tasks after having guaranteed their minimum require-ments: Uspare def

== UR−Pn

i=1Umini). It is distributed based on a weight w(τi) (e.g., a quality of service parameter). The actual bandwidth allocation U(τi) to a task τi is within the range [Umini), Umini) + Ulaxi)]. Consequently, the maxi-mum allowed execution time within a specific period of the task is within the range [Ti· Umini), Ti· (Umini) + Ulaxi))].

The WCET denotes the upper bound of the execution time, based on the most pessimistic assumptions of the execution of the task. The actual execution time of a job depends on the initial state, the amount and characteristics of the input data (for embedded systems often dependent on the environmental conditions) as well as the state of the hardware platform (e.g., cache miss or hit, pipeline stalls) and is in many cases considerably lower than the WCET [Wilhelm et al., 2008]. Varying execution times are assumed in the context of this work between a (potentially unknown) best-case execution time (BCET) and the known WCET, characterized by an arbitrary and unknown probability distribution, as depicted in Figure 4.1.

Finally, tasks can have multiple operational modes. These modes are mutually exclusive, i.e., a single mode is active at each point in time. By means of a mode

1Marau et al. refer more generically to services, which are either a periodic task or a message stream.

change, the system is able to adapt to changes in the environment [Fohler, 1993]. See Real and Crespo for a survey on multi-mode real-time systems [Real and Crespo, 2004]. Each mode produces a different behavior and implements a different func-tionality or delivers a different quality of service. In the context of this work, modes are characterized by differing resource demands, in particular regarding processor utilization. They differ regarding utilization laxity Ulax and potentially regarding w. Mode-independent task parameters are criticality level, period, relative deadline, and minimum utilization Umin. An exception is the disabling of tasks as a special case of a mode change, i.e., it is not executed by the operating system (no resource requirement at all: Umin = 0), and the corresponding enabling.

A task is characterized by a set of 5-tuples, in which each tuple defines a mode (M1, ..., Mm indicate different modes of the enabled task, off refers to the disabled mode):

τi ==defiof f = (Ti, Ciof f = 0, χi, Ulaxi)of f = 0, w(τi)of f = 0), τiM1 = (Ti, Ci, χi, Ulaxi)M1, w(τi)M1),

τiM2 = (Ti, Ci, χi, Ulaxi)M2, w(τi)M2), ...

τiMm = (Ti, Ci, χi, Ulaxi)Mm, w(τi)Mm)} , where

• Ti ∈ N+ is the period (Di= Ti is the relative deadline),

• Ci ∈ N represents an upper bound on the execution time,

• χi∈ {LO, HI} is the criticality level,

• Ulaxi)∈ [0, 1] is the utilization laxity,

• w(τi)∈ [0, 1] is the weight.

Ulax and w differ for each mode (in addition, Cof f = 0 and wof f = 0), the other attributes are mode-independent.

Summary. The task model is based on the classic periodic real-time task model.

There is a known worst-case execution time bound, but the actual execution times of the jobs can be lower and vary at runtime. The task model is elastic: each task is characterized by a minimum utilization and a utilization laxity that the task could use reasonably in addition. A criticality level refers to the importance of the task for the overall system. Tasks can have several operational modes, which differ regarding behavior and resource demand.

4.1 Workload Model 73

Documento similar