On the Development of Hierarchical Real-Time Systems

Hierarchical scheduling (also referred to as resource reservation) is a hot topic within the research of real-time systems. It has many advantages such that it can facilitate software integration, fault isolation, structured analysis, legacy system integration etc. The main idea is to partition reso...

Full description

Bibliographic Details
Main Author: Åsberg, Mikael
Format: Others
Language:English
Published: Mälardalens högskola, Akademin för innovation, design och teknik 2012
Subjects:
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:mdh:diva-14633
http://nbn-resolving.de/urn:isbn:987-91-7485-075-8
id ndltd-UPSALLA1-oai-DiVA.org-mdh-14633
record_format oai_dc
spelling ndltd-UPSALLA1-oai-DiVA.org-mdh-146332018-01-13T05:11:47ZOn the Development of Hierarchical Real-Time SystemsengÅsberg, MikaelMälardalens högskola, Akademin för innovation, design och teknikVästerås : Mälardalen University2012Computer SciencesDatavetenskap (datalogi)Hierarchical scheduling (also referred to as resource reservation) is a hot topic within the research of real-time systems. It has many advantages such that it can facilitate software integration, fault isolation, structured analysis, legacy system integration etc. The main idea is to partition resources into well defined slots and the resource itself may be the processor, memory etc. This technique is rarely used in real-time applications, however, it is well adopted in the avionics industry in order to isolate error propagation between system parts, and facilitate analysis of the system.Much of the research within resource reservation deals with theoretical schedulability analysis of partitioned systems, including shared resources (other than the processor). We will in this thesis address more practical issues related to resource reservation. We focus on implementation and prototyping aspects, as well as verification and instrumentation. One of our assumptions is that we deal only with fixed-priority preemptive scheduling (FPPS).The first part in this thesis deals with individual software systems that may have its own tasks as well as a scheduler and it is assumed to be part of another larger system, hence, we refer to this individual system as a subsystem. The subsystem is assumed to be integrated together with other subsystems, but at a early stage, we make it possible to simulate the subsystem running together with the rest of the subsystems. This "simulation`` does not require the actual resource reservation mechanism, the only requirement is an operating system with support for FPPS. This pre-study may be a natural step towards the "real`` integration, since each individual subsystem can be test executed within its assigned partition. All subsystems are assumed to run together using a resource reservation mechanism (during the actual integration). We have developed two prototypes of this mechanism. The first prototype is hand-crafted and it is equipped with a program tracer for partitoned based schedulers. This instrumentation is useful for debugging and visualization of program traces for this type of scheduling. The second prototype is developed using timed automata with tasks (task automata). This model-based scheduler is verified for correctness and it is possible to automatically generate source code for the scheduler. We have successfully synthesized this scheduler for the real-time operating system VxWorks. However, it can easily be executed on most other platforms. Both prototypes has pros and cons. The first version has good performance while the second can guarantee its correctness, hence, there is a trade-off between performance and correctness. Licentiate thesis, comprehensive summaryinfo:eu-repo/semantics/masterThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:mdh:diva-14633urn:isbn:987-91-7485-075-8Mälardalen University Press Licentiate Theses, 1651-9256 ; 155application/pdfinfo:eu-repo/semantics/openAccess
collection NDLTD
language English
format Others
sources NDLTD
topic Computer Sciences
Datavetenskap (datalogi)
spellingShingle Computer Sciences
Datavetenskap (datalogi)
Åsberg, Mikael
On the Development of Hierarchical Real-Time Systems
description Hierarchical scheduling (also referred to as resource reservation) is a hot topic within the research of real-time systems. It has many advantages such that it can facilitate software integration, fault isolation, structured analysis, legacy system integration etc. The main idea is to partition resources into well defined slots and the resource itself may be the processor, memory etc. This technique is rarely used in real-time applications, however, it is well adopted in the avionics industry in order to isolate error propagation between system parts, and facilitate analysis of the system.Much of the research within resource reservation deals with theoretical schedulability analysis of partitioned systems, including shared resources (other than the processor). We will in this thesis address more practical issues related to resource reservation. We focus on implementation and prototyping aspects, as well as verification and instrumentation. One of our assumptions is that we deal only with fixed-priority preemptive scheduling (FPPS).The first part in this thesis deals with individual software systems that may have its own tasks as well as a scheduler and it is assumed to be part of another larger system, hence, we refer to this individual system as a subsystem. The subsystem is assumed to be integrated together with other subsystems, but at a early stage, we make it possible to simulate the subsystem running together with the rest of the subsystems. This "simulation`` does not require the actual resource reservation mechanism, the only requirement is an operating system with support for FPPS. This pre-study may be a natural step towards the "real`` integration, since each individual subsystem can be test executed within its assigned partition. All subsystems are assumed to run together using a resource reservation mechanism (during the actual integration). We have developed two prototypes of this mechanism. The first prototype is hand-crafted and it is equipped with a program tracer for partitoned based schedulers. This instrumentation is useful for debugging and visualization of program traces for this type of scheduling. The second prototype is developed using timed automata with tasks (task automata). This model-based scheduler is verified for correctness and it is possible to automatically generate source code for the scheduler. We have successfully synthesized this scheduler for the real-time operating system VxWorks. However, it can easily be executed on most other platforms. Both prototypes has pros and cons. The first version has good performance while the second can guarantee its correctness, hence, there is a trade-off between performance and correctness.
author Åsberg, Mikael
author_facet Åsberg, Mikael
author_sort Åsberg, Mikael
title On the Development of Hierarchical Real-Time Systems
title_short On the Development of Hierarchical Real-Time Systems
title_full On the Development of Hierarchical Real-Time Systems
title_fullStr On the Development of Hierarchical Real-Time Systems
title_full_unstemmed On the Development of Hierarchical Real-Time Systems
title_sort on the development of hierarchical real-time systems
publisher Mälardalens högskola, Akademin för innovation, design och teknik
publishDate 2012
url http://urn.kb.se/resolve?urn=urn:nbn:se:mdh:diva-14633
http://nbn-resolving.de/urn:isbn:987-91-7485-075-8
work_keys_str_mv AT asbergmikael onthedevelopmentofhierarchicalrealtimesystems
_version_ 1718607459373809664