Bachelor and Master Theses

Title: Adapting Mode Switches into the Hierarchical scheduling
Subject: Computer Science
Level: Advanced
Description: Introduction
Mode switches are used to partition the system’s behaviour into different modes to reduce the complexity of large embedded systems. For example in an airplane control system, operational modes can be take-off, taxi, landing, and cruise modes, each with a different general goal and function. The current operating mode of a system depends on the particular phase it is executing. Each mode corresponds to specific system behaviour. At a specific time, the system can be in one of those predefined modes and switched from one mode to another upon some condition. Some mode switch mechanism is used to transform the system from one mode to another at runtime.
Hierarchical Scheduling Framework (HSF) [1] is used to provide the temporal isolation among components. In hierarchical scheduling the CPU is partitioned into many servers that are scheduled by a global (system-level) scheduler. A two-level HSF can be viewed as a tree with one parent node (global scheduler) and many leaf nodes (local schedulers). The leaf nodes contain its own internal set of tasks that are scheduled by a local (subsystem-level) scheduler. The parent node is a global scheduler that schedules local schedulers. Thus using HSF subsystems can be developed and analyzed in isolation from each other. Accordingly we can say that the HSF provides partitioning of the CPU between different servers. Thus, server-functionality can be isolated from each other for, e.g., fault containment, compositional verification, validation and certification, and unit testing.
We have implemented a two-level hierarchical scheduling [1, 2] support in an open source real-time operating system, FreeRTOS [3], to support temporal isolation among real-time components. We have implemented idling periodic and deferrable servers using fixed-priority preemptive scheduling at both local and global scheduling levels. And we have tested our implementations and performed experimental evaluations on AVR-based 32 bit board EVK1100 with a AVR32UC3A0512 micro-controller [4].
We propose to extend the hierarchical scheduling with the mode switches to make it adaptive in nature. We propose to use the same platform, EVK1100, using the FreeRTOS operating system, and our hierarchical scheduling implementation on FreeRTOS. The following goals are expected to be achieved: (1) Literature study about mode switch issues, and hierarchical scheduling; (2) understanding the current hierarchical scheduling implementation in FreeRTOS; (3) The design and implementation of mode switches and the test of its correctness and efficiency; (4) Writing the master thesis; (5) [optional] Writing and publishing a scientific article based on the master thesis.

[1] Rafia Inam, Jukka Mäki-Turja, Mikael Sjödin, S. M. H. Ashjaei, Sara Afshar. ”Support for hierarchical scheduling in FreeRTOS“. In Proc. of the IEEE International Conference on Emerging Technologies and Factory Automation (ETFA 2011), September 2011. Awarded IEEE-IES scholarship for best student paper.
[2] Rafia Inam, Jukka Mäki-Turja, Mikael Sjödin, Moris Behnam. “Hard real-time support for hierarchical scheduling in FreeRTOS”. In Proc. of the 7th International Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT 11), July 2011.
[3] “FreeRTOS web-site,”
[4] “ATMEL EVK1100 product page,”
Prel. end date: 2013-09-11
Presentation date: 2012-11-16
Student: Daniel Sanchez Villalba
IDT supervisor: Rafia Inam, 021 103196
Examinator: Mikael Sjödin
Mikael Sjödin, +46 70 288 2829

Rapport och bilagor


Senaste uppdatering



2012-12-13, 17:35

  • Mälardalen University |
  • Box 883 |
  • 721 23 Västerås/Eskilstuna |
  • 021-101300, 016-153600 |
  • webmaster |
  • Latest update: 2017.10.14