mdh.sePublications
Change search
Refine search result
1 - 28 of 28
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Rows per page
  • 5
  • 10
  • 20
  • 50
  • 100
  • 250
Sort
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
  • Standard (Relevance)
  • Author A-Ö
  • Author Ö-A
  • Title A-Ö
  • Title Ö-A
  • Publication type A-Ö
  • Publication type Ö-A
  • Issued (Oldest first)
  • Issued (Newest first)
  • Created (Oldest first)
  • Created (Newest first)
  • Last updated (Oldest first)
  • Last updated (Newest first)
  • Disputation date (earliest first)
  • Disputation date (latest first)
Select
The maximal number of hits you can export is 250. When you want to export more records please use the Create feeds function.
  • 1.
    Behnam, Moris
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Shin, Insik
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Bril, Reinder
    Technische Universiteit Eindhoven.
    Towards Hierarchical Scheduling in VxWorks2008In: OSPERT 2008, Proceedings of the Fourth International Workshop on Operating Systems Platforms for Embedded Real-Time Applications, 2008, p. 63-72Conference paper (Refereed)
    Abstract [en]

    Over the years, we have worked on hierarchical schedulingframeworks from a theoretical point of view. In thispaper we present our initial results of the implementationof our hierarchical scheduling framework in a commercialoperating system VxWorks. The purpose of the implementationis twofold: (1) we would like to demonstrate feasibilityof its implementation in a commercial operating system,without having to modify the kernel source code, and (2) wewould like to present detailed figures of various key propertieswith respect to the overhead of the implementation.During the implementation of the hierarchical scheduler,we have also developed a number of simple task schedulers.We present details of the implementation of Rate-Monotonic(RM) and Earliest Deadline First (EDF) schedulers. Finally,we present the design of our hierarchical schedulingframework, and we discuss our current status in the project.

  • 2.
    Behnam, Moris
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Bril, Reinder
    Eindhoven University of Technology, The Netherlands.
    Overrun and Skipping in Hierarchically Scheduled Real-Time Systems2009In: 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, 2009, p. 519-526Conference paper (Refereed)
  • 3.
    Behnam, Moris
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Shin, Insik
    Mälardalen University, School of Innovation, Design and Engineering.
    Synchronization protocols for hierarchical real-time scheduling frameworks2008In: Proceedings of the 1st Workshop on Compositional Theory and Technology for Real-Time Embedded Systems (CRTS'08) in conjunction with the 29th IEEE International Real-Time Systems Symposium (RTSS'08), Barcelona, Spain, 2008Conference paper (Refereed)
  • 4.
    Hallmans, Daniel
    et al.
    ABB AB, Ludvika.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Towards using the Graphics Processing Unit (GPU) for Embedded Systems2012In: IEEE Symposium on Emerging Technologies and Factory Automation, ETFA 2012, 2012, p. Article number: 6489715-Conference paper (Refereed)
    Abstract [en]

    The Graphics Processing Unit (GPU) is becoming a very powerful platform to accelerate graphics and dataparallel compute-intensive applications. It gives a high performance and at the same time it has a low power consumption. This combination is of high performance and low power consumption is useful when it comes to building an embedded system. In this paper we are looking at the possibility to use a combination of CPU and GPU to provide performance metrics that are required in an embedded system. In particular we look at requirements inherent in the process and power industries where we believe that the GPU has the potential to be a useful and natural element in future embedded system architectures.

  • 5.
    Moghaddami Khalilzad, Nima
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    On Adaptive Hierarchical Scheduling of Real-time Systems Using a Feedback Controller2011In: 3rd Workshop on Adaptive and Reconfigurable Embedded Systems (APRES'11), 2011Conference paper (Refereed)
    Abstract [en]

    Hierarchical scheduling provides predictable timing and temporal isolation; two properties desirable in real-time embedded systems. In hierarchically scheduled systems, subsystems should receive a sufficient amount of CPU resources in order to be able to guarantee timing constraints of its internal parts (tasks). In static systems, an exact amount of CPU resource can be allocated to a subsystem. However, in dynamic systems, where execution times of tasks vary considerably during runtime, it is desirable to give a dynamic portion of the CPU given the current load situation. In this paper we present a feedback control approach for adapting the amount of CPU resource that is allocated to subsystems during run-time such that each subsystem receives sufficient resources while keeping the number of deadline violations to a minimum. We also show an example simulation where the controller adapts the budget of a subsystem.

  • 6.
    Moghaddami Khalilzad, Nima
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Towards Adaptive Hierarchical Scheduling of Real-Time Systems2011In: IEEE Symposium on Emerging Technologies and Factory Automation, ETFA, 2011 / [ed] Mammeri, Z., New York: IEEE , 2011, p. 1-8Conference paper (Refereed)
    Abstract [en]

    Hierarchical scheduling provides a modular framework for integrating, scheduling and guaranteeing timing constraints of compositional real-time systems. In such a scheduling framework, all modules should receive a sufficient portion of the shared CPU to be able to guarantee timing constraints of their internal parts. In dynamic systems i.e., systems where the execution time of tasks are subjected to sudden and drastic changes during run-time, assigning fixed CPU portions to the modules is conducive to either low CPU utilization or numerous task deadline misses. In this paper, in order to address this problem, we propose an adaptive CPU allocation method which dynamically assigns CPU portions to the modules during run-time based on their current CPU demand. Besides, the presented approach is evaluated using a series of different simulations. In addition, we present a method for scheduling modules in situations when the CPU resource is not sufficient for scheduling all modules. We introduce the notion of module (subsystem) criticality, and in an overload situation we distribute the CPU resource based on the criticality of modules.

  • 7.
    Nolte, Thomas
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    J. Bril, Reinder
    Mälardalen University, School of Innovation, Design and Engineering.
    Shin, Insik
    Mälardalen University, School of Innovation, Design and Engineering.
    Hierarchical Scheduling of Complex Embedded Real-Time Systems2009In: Ecole d'Ete Temps-REel (ETR'09), Paris, France, 2009, p. 129-142Conference paper (Refereed)
  • 8.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Comparison of Priority Queue algorithms for Hierarchical Scheduling Framework: Technical Report, Nr. 25982011Report (Other academic)
    Abstract [en]

    The Time Event Queue (TEQ) is a datastructure that is part of the implementation of a Hierarhcial Scheduling Framework (HSF). It's main function is to store future task scheduling events (represented as absolute time values) in a sorted manner, thus, it implements a Priority Queue (PQ). A PQ is a queue with elements that are sorted by their priority. The two main operations on a PQ is insert and delete-min. The first mentioned operation will insert an item based on its priority. The second operation will extract an item with highest (or lowest) priority. As of now, the PQ structure is implemented as a sorted linked list with a median pointer and where binary search is used for insertions. The efficiency of the current implementation is not up to standard so there is a requirement that the current implementation should be replaced or optimized. An investigation should be made so that other PQ implementations are considered that are well suited for hard real-time systems. When choosing a suited PQ for the hard real-time scheduler HSF, considerations such as a low number of queue items in combination with good worst case performance is of importance. This paper will motivate and choose a group of suited PQ algorithms and present empirical tests of each of these algorithms. Based on these results and our requirements, one algorithm will be chosen to be integrated with the HSF.

  • 9.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    Model of Two-Tier Hierarchical Fixed-Priority Preemptive Scheduling2011Report (Other academic)
    Abstract [en]

    This technical report contains all 11 timed automata models that constitute a two-tier hierarchical fixed-priority preemptive scheduler.

  • 10.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering.
    On the Development of Hierarchical Real-Time Systems2012Licentiate thesis, comprehensive summary (Other academic)
    Abstract [en]

    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.

  • 11.
    Åsberg, Mikael
    Mälardalen University, School of Innovation, Design and Engineering. Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.
    Synthesis and Synchronization Support for Hierarchically Scheduled Real-Time Systems2014Doctoral thesis, comprehensive summary (Other academic)
    Abstract [en]

    A piece of software, that we define as a software system, can consist of anything from a few lines of program code or the entire software stack in a vehicle. Software systems can be divided into smaller and partially independent parts called subsystems/partitions (we use the words partition and subsystem interchangeably). The non-functional isolation of subsystems, that appears when the software system is hierarchically divided, has great advantages when it comes to preventing fault propagation between subsystems. The hierarchical division, that we refer to as hierarchical scheduling, has other advantages as well. It facilitates re-usability and it makes timing analysis of software systems easier. Hierarchical scheduling has been shown to be a useful tool in counteracting the verification challenges that comes from the growing complexity in software. For example, the avionics-specification ARINC653 and the safety-critical operating systems seL4 and PikeOS safely divide resources for independent safety-critical applications by using hierarchical scheduling.

    Hierarchical scheduling can be implemented in many different ways, depending on what resource that is supposed to be shared among applications. The resource could be the CPU, memory, network etc. The work in this thesis is focused on the practical aspects of timing isolation among subsystems, i.e., sharing of the CPU resource. Hence, this work elaborates on how to adapt and extend the operating-system task-scheduler to support hierarchical scheduling. We have focused on both independent and semi-dependent subsystems. Independent subsystems only share general resources such as the CPU and memory. Semi-independent subsystems share not only the general resources, but also other logical resources that can only be accessed in a mutually exclusive way, i.e., by one subsystem at a time. An example of such a resource could be a shared memory-space, e.g., a database, a memory-mapped device etc.

    This thesis has two main parts related to hierarchical scheduling: scheduler synthesis, and synchronization.

    Scheduler synthesis is related to implementation and design strategies when adding support for hierarchical scheduling in an operating system. We have focused on various operating systems that were lacking the feature of hierarchical scheduling. The two most interesting operating systems that we worked on was Linux and seL4. These two operating systems represent two extremes, where Linux is more focused towards soft real-time systems and seL4 towards pure hard real-time (safety-critical) systems. Linux-based systems have in general less strict demands on correctness and more requirements on usability. Usability implies less installation efforts and less limitations in the usage of the available Linux functionality. The usability aspect is especially important for Linux systems since kernel updates occur much more frequently compared to any other operating system. Hence, extending/modifying the functionality of Linux must be done in a way that does not require any modifications to the kernel. seL4 on the other hand has strict requirements on safety, i.e., functional and non-functional correctness, but also performance efficiency. Guaranteeing correctness implies a potential loss of performance due to the added overhead that the verified software can bring. The correctness aspect includes strategies on how to verify hierarchical schedulers, but also how to minimize the scheduler overhead and achieve as good run-time performance as possible. Conclusively, there are many challenges when it comes to scheduler synthesis. There are requirements on performance, usability, correctness etc. The contribution in the synthesis part includes a scheduler framework called ExSched (External Scheduler). We have also contributed with a novel approach to verify hierarchical schedulers, and a code generator called TAtoC (Timed Automata to C) which contributes to the effective run-time performance of synthesized timed-automata models.

    The second part of this thesis, synchronization, is an important general aspect of hierarchically scheduled systems since the isolation of subsystems makes resource sharing among subsystems more challenging. We have advanced the state-of-the-art in this research area by introducing a new synchronization protocol called RRP (Rollback Resource Policy) that improves on the robustness and run-time performance compared to the existing protocols. We have also conducted a large scale experimental evaluation of all existing protocols that we have implemented in the widely used real-time operating system VxWorks.

  • 12.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering.
    Nemati, Farhang
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Towards Hierarchical Scheduling in AUTOSAR2009In: Proceedings of 14th IEEE International Conference on Emerging Techonologies and Factory (ETFA'09), 2009Conference paper (Refereed)
    Abstract [en]

    AUTOSAR [17] is a partnership between automotive manufactures and suppliers. It aims at standardizing the automotive software architecture and separating software and hardware. This approach makes software more independent, maintainable, reuseable, etc. Still there is much work to do in order for this standard to be usable. This paper focus on automotive software integration in AUTOSAR, with the use of hierarchical scheduling as an enabling technology. At this point, AUTOSARcomponents do not have any timing relation with its tasks [19, 20]. This causes an unpredictive runtime behavior which can only be analyzed and verified after integration phase. We will discuss how integration can be done in AUTOSAR, with runtime temporal isolation of components. This will enable schedulability analysis at the level of components rather than at the level of tasks.

  • 13.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    An Experimental Evaluation of Synchronization Protocol Mechanisms in the Domain of Hierarchical Fixed-Priority Scheduling2013In: ACM International Conference Proceeding Series, 2013, 2013, p. 77-85Conference paper (Refereed)
    Abstract [en]

    This paper presents an extensive implementation study where we evaluate and compare different synchronization protocol mechanisms within the domain of two-level hierarchical fixed-priority preemptive scheduling. These protocol mechanisms include HSRPnP (Hierarchical Stack Resource Policy no Payback), HSRPwP (Hierarchical Stack Resource Policy with Payback), SIRAP (Subsystem Integration and Resource Allocation Policy), RRP (Rollback Resource Policy) and SRPwD (Stack Resource Policy with Donation). In an attempt to shed new light to the research in this area, we focus on the actual software implementation of these protocols in a widely used real-time operating system (VxWorks). This study is not based on worst-case schedulability analysis which is the most common angle of work in this research field. All five protocols have been implemented, tested and executed for several months with many different parameters, for example; variant number of subsystems, number of resources, system utilization settings, resource allocation strategies etc. These tests generated a large amount of useful data, for example, protocol overhead, effective subsystem utilization, number of protocol mechanism invocations etc. Due to the large complexity and size of this data, we analyzed the data with state-of-the-art statistical methods and tools (Principal Component Analysis) in order to grasp the efficiency of the protocols with respect to a large number of different parameters.

  • 14.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    J. Bril, Reinder
    Technische Universiteit Eindhoven.
    Implementation of Overrun and Skipping in VxWorks2010In: Proceedings of the 6th International Workshop on Operating Systems Platforms for Embedded Real-Time Applications, Brussels, Belgium, 2010Conference paper (Refereed)
  • 15.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Forsberg, Nils
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Kato, Shinpei
    Carnegie Mellon University, USA.
    Towards Real-Time Scheduling of Virtual Machines Without Kernel Modifications2011In: 16th IEEE International Conference on Emerging Technology and Factory Automation (ETFA'11), Work-in-Progress (WiP) session, Toulouse, France, 2011Conference paper (Refereed)
    Abstract [en]

    Virtualization is a well used technique in the area of internet server systems for managing several (legacy) applications on a single physical machine. These applications do not have strict time deadlines, which also reflects how these applications are scheduled. Using virtualization in an embedded real-time systems context is of course attractive, since we want to pack as much software as possible on a, as small as possible, hardware platform. The problem is that this kind of software does not easily cope well together, in the aspect of time related properties. Hence, we need a new mechanism, i.e., a scheduler, that can satisfy the timing requirements of each application. However, scheduler implementations typically require modifications to middleware or kernel and this is not acceptable in the area embedded systems, due to stability and reliability reasons. Hence, in this paper, we propose a framework for scheduling (soft real-time) applications residing in separate operating systems (virtual machines) using hierarchical fixed-priority preemptive scheduling, without the requirement of kernel modifications.

  • 16.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Kraft, Johan
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Kato, Shinpei
    Mälardalen University, School of Innovation, Design and Engineering.
    A loadable task execution recorder for Linux2010In: Proceedings of the 1st International Workshop on Analysis Tools and Methodologies for Embedded and Real-time Systems, Brussels, Belgium, 2010Conference paper (Refereed)
  • 17.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Towards a User-Mode Approach to Partitioned Scheduling in the seL4 Microkernel2012Conference paper (Refereed)
    Abstract [en]

    This paper presents a preliminary study of applying partitioned scheduling in the seL4 microkernel. This microkernel is the first operating system kernel ever to be formally proven for its functional correctness. Even though the kernel is completely verified it still delivers high performance comparable to other L4 kernels. The seL4 kernel implements isolation of components in terms of the memory resource and security. However, there is still a missing part when it comes to isolation and that is time partitioning. Time partitioning can be implemented inside the kernel (privileged mode) or in user space (user mode). The latter is done using regular user-space thread(s) and can easily be modified while the other approach requires re-verification of the kernel whenever modifications to the time-partitioning policy is done. On the other hand, having the time-partitioning mechanism in privileged mode would yield better performance. We have implemented time partitioning (partitioned scheduling) in the seL4 user space and we elaborate on its performance in terms of overhead costs.

  • 18.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Behnam, Moris
    Mälardalen University, School of Innovation, Design and Engineering.
    Resource sharing using the rollback mechanism in hierarchically scheduled real-time open systems2013In: Real-Time Technology and Applications - Proceedings, 2013, p. 129-140Conference paper (Refereed)
    Abstract [en]

    In this paper we present a new synchronization protocol called RRP (Rollback Resource Policy) which is compatible with hierarchically scheduled open systems and specialized for resources that can be aborted and rolled back. We conduct an extensive event-based simulation and compare RRP against all equivalent existing protocols in hierarchical fixed priority preemptive scheduling; SIRAP (Subsystem Integration and Resource Allocation Policy), OPEN-HSRPnP (open systems version of Hierarchical Stack Resource Policy no Payback) and OPEN-HSRPwP (open systems version of Hierarchical Stack Resource Policy with Payback). Our simulation study shows that RRP has better average-case response-times than the state-of-the-art protocol in open systems, i.e., SIRAP, and that it performs better than OPEN-HSRPnP/OPEN-HSRPwP in terms of schedulability of randomly generated systems. The simulations consider both resources that are compatible with rollback as well as resources incompatible with rollback (only abort), such that the resource-rollback overhead can be evaluated. We also measure CPU overhead costs (in VxWorks) related to the rollback mechanism of tasks and resources. We use the eXtremeDB (embedded real-time) database to measure the resource-rollback overhead.

  • 19.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Joki, Mikael
    Eskilstuna Elektronikpartner AB, Sverige.
    Hogbrink, Jimmy
    Eskilstuna Elektronikpartner AB, Sverige.
    Siwani, Saher
    Eskilstuna Elektronikpartner AB, Sverige.
    Fast Linux Bootup using Non-Intrusive Methods for Predictable Industrial Embedded Systems2013Conference paper (Refereed)
    Abstract [en]

    Fast kernel boot-time is one of the major concerns in industrial embedded systems. Application domains where boot time is relevant include (among others) automation, automotive, avionics etc. Linux is one of the big players among operating system solutions for general embedded systems, hence, a relevant question is how fast Linux can boot on typical hardware platforms (ARM9) used in such industrial systems. One important constraint is that this boot-time optimization should be as non-intrusive as possible. The reason for this comes from the fact that industrial embedded systems typically have high demands on reliability and stability. For example, adding, removing or changing critical source-code (such as kernel or initialization code) is impermissible. This paper shows the steps towards a fast-booting Linux kernel using non-intrusive methods. Moreover, targeting embedded systems with temporal constraints, the paper shows how fast the real-time scheduling framework ExSched can be loaded and started during bootup. This scheduling framework supports several real-time scheduling algorithms (user defined, multi-core, partitioned, fixed-priority periodic tasks etc.) and it does not modify the Linux kernel source code. Hence, the non-intrusive bootup optimization methods together with the unmodified Linux kernel and the non-patched real-time scheduler module offers both reliability and predictability.

  • 20.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Kato, Shinpei
    Carnegie Mellon University, Department of Electrical and Computer Engineering, United States.
    A Loadable Task Execution Recorder for Hierarchical Scheduling in Linux2011In: Proceedings - 17th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2011, 2011, p. 380-387Conference paper (Refereed)
    Abstract [en]

    This paper presents a Hierarchical Scheduling Framework (HSF) recorder for Linux-based operating systems. The HSF-recorder is a loadable kernel module that is capable of recording tasks and servers without requiring any kernel modifications. Hence, it complies with the reliability and stability requirements in the area of embedded systems where proven versions of Linux are preferred. The recorder is built upon the loadable real-time scheduler framework RESCH (REal-time SCHed- uler). We evaluate our recorder by comparing the overhead of this solu- tion against two other recorders. Also, the tracing accuracy of the HSF- recorder is tested by running a media-processing task together with periodic real-time Linux tasks in combination with servers. We experiment with different task parameters and scheduling strategies and measure the performance of the media-processing task. The tests are recorded with the HSF-recorder, and the Ftrace recorder, in order to show the correctness of the experiments and the HSF-recorder itself.

  • 21.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Kato, Shinpei
    Towards Hierarchical Scheduling in Linux/Multi-core Platform2010In: 15th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA 2010), 2010Conference paper (Refereed)
    Abstract [en]

    This paper proposes the implementation of 4 different scheduling strategies for combining multi-core scheduling with hierarchical scheduling. Three of the scheduling schemes are analyzable with state-of-the-art schedulability analysis theory, available in the real-time systems community. Our idea is to implement these hierarchical multi-core scheduling strategies in a Linux based operating system, without modifying the kernel, and evaluate them. As of now, we have developed/implemented a prototype two-level hierarchical scheduling framework (HSF) in Linux (uni-core), which supports fixed priority preemptive scheduling (FPPS) of periodic servers at the top level, and FPPS of periodic tasks at the second level. The HSF is based on the REal-time SCHeduler (RESCH) framework.(1)

  • 22.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering. IS (Embedded Systems).
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Kato, Shinpei
    University of California, Santa Cruz, USA.
    Towards Partitioned Hierarchical Real-Time Scheduling on Multi-core Processors2013Conference paper (Refereed)
    Abstract [en]

    This paper extends previous work on hierarchical scheduling to multi-core systems. We have implemented partitioned multi-core scheduling of servers in the Linux kernel, using the scheduling framework ExSched. Neither ExSched nor the presented scheduler require any modifications to the Linux kernel. Hence, this makes the installation and kernel-version updates easier. We also present a user-space simulator which can be used when developing new multi-core hierarchical schedulers (plug-ins) for ExSched. We evaluate the overhead of our new multi-core hierarchical scheduler and compare it to a single-core hierarchical scheduler. Our results can be useful for developers that want to minimize the scheduler overhead when using partitioned hierarchical multi-core scheduling.

  • 23.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Kato, Shinpei
    Nagoya University.
    Rajkumar, Ragunathan
    Carnegie Mellon University.
    ExSched: An External CPU Scheduler Framework for Real-Time Systems2012In: 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA'12), 2012, p. 240-249Conference paper (Refereed)
  • 24.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Otero Perez, Clara M.
    NXP Semiconductors/Research, High Tech. Campus.
    Kato, Shinpei
    University of Tokyo.
    Execution Time Monitoring in Linux2009In: Proceedings of the Work-In-Progress (WIP) session of 14th IEEE International Conference on Emerging Techonologies and Factory (ETFA'09), 2009Conference paper (Refereed)
    Abstract [en]

    This paper presents an implementation of an Execution Time Monitor (ETM) which can be applied in a resource management framework, such as the one proposed in the Open Media Platform (OMP) [4]. OMP is a European project which aims at creating an open, flexible and resource efficient software architecture for mobile devices such as cell phones and handsets. One of its goals is to open up the possibility for software portability and fast integration of applications, in order to decrease development costs. The task of the ETM is to measure task execution time and provide this information to the scheduler which then can schedule tasks in a more efficient and dynamic way. This implementation is our first step towards a full resource management framework that later will include a hierarchical scheduler, for soft real-time systems.

  • 25.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Pettersson, Paul
    Mälardalen University, School of Innovation, Design and Engineering.
    Prototyping and Code Synthesis of Hierarchically Scheduled Systems using TIMES2010In: FTRA Journal of Convergence, ISSN 2093-7741, Vol. 1, no 1, p. 75-84Article in journal (Refereed)
    Abstract [en]

    In hierarchical scheduling a system is organized as a tree of nodes, where each node schedules its child nodes. A node contains tasks and/or subsystems, where a subsystem is typically developed by a development team. Given a system where each part is subcontracted to different developers, they can benefit from hierarchical scheduling by parallel development and simplified integration of subsystems. Each team should have the possibility to test their system before integration. Hence, we show how a node, in a hierarchical scheduling tree, can be analyzed in the Times tool by replacing all interference from nodes with a small set of higher priority tasks. We show an algorithm that can generate these tasks, including their parameters. Further, we use the Times code-generator, in combination with operating system extensions, to generate source code that emulates the scheduling environment for a subsystem, in an arbitrary level in the tree. Our experiments include two example systems. In the first case we generate source code for an industrial oriented platform (VxWorks) and conduct a performance evaluation. In the second example we generate source code that emulates the scheduling environment for a video application, running in Linux, and we perform a frame-rate evaluation.

  • 26.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Pettersson, Paul
    Mälardalen University, School of Innovation, Design and Engineering.
    Prototyping Hierarchically Scheduled Systems using Task Automata and TIMES2010In: Proceedings of the 5th International Conference on Embedded and Multimedia Computing (EMC-10), 2010, p. article nr: 5575626-Conference paper (Refereed)
    Abstract [en]

    In hierarchical scheduling, a system is organized into multiple levels of individually scheduled subsystems (hierarchical scheduling tree), which provides several benefits for developers including possibilities for parallel development of subsystems. In this paper, we study how the model of task automata and the Times tool can be applied to provide support for rapid and early prototyping of hierarchically scheduled embedded systems. As a main result, we show how a single node, in an arbitrary level in a hierarchical scheduling tree (scheduled with fixed-priority preemptive scheduling), can easily be analyzed in Times by replacing all interfering nodes with a small set of higher priority (dummy) tasks. We show with an algorithm how these dummy tasks are generated (including task-parameters such as period, offset etc.). Further, we generate executable source code, with the Times code-generator, that emulates the scheduling environment (with our dummy tasks), i.e., the hierarchical scheduling tree and all of its preemptions, of a small example system. Yet another contribution is that we transform the generated (brickOS) source code to run on an industrial oriented platform (VxWorks), and conduct an performance evaluation.

  • 27.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Pettersson, Paul
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Evaluating the Run-Time Performance of Synthesised Resource-Reservation Schedulers Using TAtoC, UPPAAL and Frama-C2013Report (Other academic)
  • 28.
    Åsberg, Mikael
    et al.
    Mälardalen University, School of Innovation, Design and Engineering.
    Pettersson, Paul
    Mälardalen University, School of Innovation, Design and Engineering.
    Nolte, Thomas
    Mälardalen University, School of Innovation, Design and Engineering.
    Modelling, Verification and Synthesis of Two-Tier Hierarchical Fixed-Priority Preemptive Scheduling2011In: Proceedings - 23rd EUROMICRO Conference on Real-Time Systems (ECRTS'11), 2011, p. 172-181Conference paper (Refereed)
    Abstract [en]

    Hierarchical scheduling has major benefits when it comes to integrating hard real-time applications. One of those benefits is that it gives a clear runtime separation of applications in the time domain. This in turn gives a protection against timing error propagation in between applications. However, these benefits rely on the assumption that the scheduler itself schedules applications correctly according to the scheduling parameters and the chosen scheduling policy. A faulty scheduler can affect all applications in a negative way. Hence, being able to guarantee that the scheduler is correct is of great importance. Therefore, in this paper, we study how properties of hierarchical scheduling can be verified. We model a hierarchically scheduled system using task automata, and we conduct verification with model checking using the Times tool. Further, we generate C-code from the model and we execute the hierarchical scheduler in the Vx Works kernel. The CPU and memory overhead of the modelled scheduler is compared against an equivalent manually coded two-level hierarchical scheduler. We show that the worst-case memory consumption is similar and that there is a considerable difference in CPU overhead.

1 - 28 of 28
CiteExportLink to result list
Permanent link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf