- We define scheduling problems.
- We define schedulability.
- We study cyclic schedules.
- We study earliest first scheduling and fixed priority scheduling.
- We perform schedulability analysis in UPPAAL.
Cyclic Scheduling
-
For the following systems, construct a cyclic executive, if possible(!), to shedule all tasks:
- P (period 3ms, cost 1ms), Q (period 6ms, cost 2ms), S (perioed 18ms, cost 5ms)
- P (period 100ms, cost 30ms), Q (period 5ms, cost 1ms), S (period 25ms, cost 5ms)
- P (period 50ms, cost 10ms), Q (period 40ms, cost 10ms), Q (period 30ms, cost 9ms)
-
Use UPPAAL for computing cyclic executives for the 3 task sets above. You may want to use the following example UPPAAL model (CyclicTasks.xml) and UPPAAL query (CyclicTasks.q).
-
For each of the tasksets above, calculate the processor utilisation, i.e., how much the processor is used, for each task (P, Q, S) and the total utilisation of the taskset.
-
For each of the tasksets above, add a new task, R, with period 50ms but with variable execution time from 5ms to 25ms, construct (if possible) cyclic executives for each taskset. Again, consult UPPAAL.
**Utilization Analysis & Response Time Analysis **
-
For the following systems, perform schedulability analysis through utilisation test under the assumption of Fixed-Priority Scheduling:
- P (period 3ms, cost 1ms),
Q (period 6ms, cost 2ms),
S (perioed 18ms, cost 5ms) - P (period 100ms, cost 30ms),
Q (period 5ms, cost 1ms),
S (period 25ms, cost 5ms) - P (period 50ms, cost 10ms),
Q (period 40ms, cost 10ms),
S (period 30ms, cost 9ms) - For any of the above tasksets that fails the utilisation test, determine (by example/brute force) if the system can be scheduled using FPS.
- Use utilisation test to determine which, if any, of the above tasksets can be scheduled using Earliest Deadline First scheduling.
- For each of the tasksets above, add a new task, R, with period 50ms but with variable execution time from 5ms to 25ms,
and perform utilisation test. For any taskset that fails, determine if the taskset can be scheduled using FPS anyway. Argue why/why not.
- P (period 3ms, cost 1ms),
-
For the following systems, perform response time analysis under the assumptions of the Simple Process Model and Fixed-Priority Scheduling:
- P (period 3ms, cost 1ms),
Q (period 6ms, cost 2ms),
S (period 18ms, cost 5ms) - P (period 100ms, cost 30ms),
Q (period 5ms, cost 1ms),
S (period 25ms, cost 5ms) - P (period 50ms, cost 10ms),
Q (period 40ms, cost 10ms),
S (period 30ms, cost 9ms)
- P (period 3ms, cost 1ms),
-
For the systems above use UPPAAL to check schedulability as well as response time analysis using FPS. You may want to use the following models (fps.xml) and queries (fps.q).