Você está na página 1de 10

Fixed Priority Servers

Dienstag, 14. April 2015

09:44

Polling Server

In this kind of algorithm the server has "capacity" and a period, named as respectively as Cs and Ts. The tasks can be schedulled normally as RM, including the server. If the server has a capacity
replenishment value less then a supposed task, than this task will have a lower priority then the polling server in the schedulling algorithm. The polling server becomes active every period interval Ts, if
there is an aperiodic task to be served, this task will get use of the processor until the capacity of the server is fully utilized. If the task being executed demands a computing time higher then the capacity of
the server, this task will be finished next time, when the capacity of the server is replenished during ist period of activation.
Processor utilization formula:
Processor least upper bound utilization formula:

The schedulability test for a task set with a polling server can be done with an extension of the assumption that if, Up Ulub. Then we can write

In the formula above n corresponds to the number of periodic tasks and m to the number of polling servers, in fact to the number of servers that behave like periodic tasks. The schedulling is feasible if the
utilization of the processor by the the servers and the periodic task is lesse or equal then the utilization least upper bound of all periodic task plus the servers.
Aperiodic guarantee: suppose that an aperiodic task arrives and Ca Cs, so the worst case scenario here would be if this task arrived just after the server has been called. In this case this task would have
to wait until the next activation of the server, resulting in a response time of 2Ts. Thus it is guaranteed if 2Ts Da. For the general case we can have the following formula:

Priority Exchange Server


In the priority exchanging server also has a replanishing facto Cs and a period Ts, tanking account of those values the server itself is treated lika an usual task and prioritized by RM like the others.
Everytime the server becomes active the capacity at the server level of priority is replenished. If there are no active task at this level, this capacity is transfered to a lower level and so on.

3
5
4

2
7

RTS II Seite 1

1: Here the server becomes active but there is no active task at the level and the capacity is transfered to the lower active level;
2: One more time the capacity is not used and it is transfered to a lower level;
3: The server becomes active and the capacity at its level is replenished by Cs, at this also theres an aperiodic request and the capacity at server level is used to perform the task.
4: The server becomes active one more time but with no request the capacity is transfered to a lower active level.
5: One aperiodic request comes up, there is no capacity in its level, so the task will be using the capacity of a lower level if exists, in this case the 1 because it was the highest subsequent level.
6: Server becomes active one more time, with no aperiodic request the capacity is transfered to a lower active level, in this case the 2 leve because the level above is not active anymore.
7: There are no active task in this level, so the capacity is consumed until depletion.

Apriodic guarantee:
where

Sporadic Server

1
5

The Sporadic Server has 2 basic rules: Replenishm Time (RT) and Replenish Amount (RA):
RT = tA + TS
RA = capacity used in [tA, tI], tI corresponds to time when an aperiodic task is finished or the capacity is depleted.

1: The server becomes active at t 0, filling the capacity at ist highest value (5).
2: 2 gets preempted because it has lower priority then the server, and RT is set to 4+10 = 14.
3: The aperiodic task is preempted by 1 because it has a higher priority, but the server is still active because of 1 higher priority.
4: The aperic resumes and finished its job and a RA is set to 2, because is the amount of capacity used when the server was active.
5: The RA is applied at RT.

Schedudulability Analysis:

RTS II Seite 2

Dynamic Priority Servers - EDF based


Mittwoch, 29. April 2015

08:40

The main idea behind the priority servers is that aperiodic tasks receive an artificial deadline, done by one or more of the many algorithms so the scheduller will decide between the ready tasks
based on EDF choice which will be executed next.

Dynamic Priority Exchange Server:

1: The capacity of the server Cs is transfered to Cs1


2: The rest of Cs is transfered to Cs2
3: Cs1 is transfered to Cs2
4: One more time Cs is transfered to Cs1
5: When Cs(24) is depleted Cs2(24) is used to perform the job. Note that all capacities have the same 24 deadline, so they al l have the same priority.

Schedullability of a DPE Server:

Dynamic Sporadic Server:


Here the RT becomes the deadline of the aperiodic tasks

1: Here the server is activated at 3 and in this activation 2 units of time are consumed so: RT=deadline=3+6 and RA=2

RTS II Seite 3

1: Here the server is activated at 3 and in this activation 2 units of time are consumed so: RT=deadline=3+6 and RA=2
2: 1 gets preempted because an aperiodic task poped up with deadline 15 while 1 had deadline 16.

Total Bandwidth Server:


In this algorithm the deadline assigned will be

Schedulability Analysis
and

Constant Bandwidth Server:


The basic idea is that if you need more time to do a task your deadline will be extended, thus your priority will be lowered.

Rules:
If Cs (ds,k - ri,j)Us then a new deadline is set with d s, k+1 = ri, j + Ts. If Cs is depleted a new deadline is set with d s, k+1 = ds, k + Ts.

RTS II Seite 4

Execution Time Analysis


Donnerstag, 30. April 2015

06:17

Execution time by measurement:

Execution time by analysis:

RTS II Seite 5

Slotshift
Donnerstag, 30. April 2015

03:48

When a system or an interval is overloaded, the other system or previous interval can help it with some spare capacity (SC) t hat it has available

Slot shifting enables a TT systems to handle some ET tasks. There some limitation to be observed
Sending message;
Receiving message;
EST and DL of the preceding interval or chain.

Considering the pessimistic scenario with points to points cited above to be ensured, we can now check how much time do we ha ve to acomodate these tasks. We want to acomodate such tasks but also
guarantee the execution of the offline scheduled tasks, such estra time is called spare capacity (SC), and the mechanism to a comodate some tasks in those capacities, thus reducing them, is called borrowing.

But how can we calculate how much SC do we have to schedulle extra tasks or relief one interval?

The considerations in this equation are as follow:

RTS II Seite 6

1: First we count the amount of total time we have in the interval.


2: The we consider the execution of the tasks in that interval using the worst execution time, the most pessimistic way.
3: Now we have to consider how much do we need. Since we are trying to relief the i+1 interval, we assume that this interval has 0 or less SC.

RTS II Seite 7

Clocksysnc
Donnerstag, 30. April 2015

06:26

We can syschronize by avarage, but if there is one or more malicious clock in the system, the sync will faill.

Fault Tolerant Algorithm:

Periodic resynchronizytion interval.

Maximum specified drift rate.

Maximum drift of clock in Rint

RTS II Seite 8

CAN
Donnerstag, 30. April 2015

07:28

Cm = transmission time.
Response time Rm = Jm + wm + Cm

RTS II Seite 9

RTS II Seite 10

Você também pode gostar