Sloth on Time: Efficient Hardware-Based Scheduling for Time-Triggered RTOS

@article{Hofer2012SlothOT,
  title={Sloth on Time: Efficient Hardware-Based Scheduling for Time-Triggered RTOS},
  author={Wanja Hofer and Daniel Danner and Rainer Muller and Fabian Scheler and Wolfgang Schr{\"o}der-Preikschat and Daniel Lohmann},
  journal={2012 IEEE 33rd Real-Time Systems Symposium},
  year={2012},
  pages={237-247}
}
Traditional time-triggered operating systems are implemented by multiplexing a single hardware timer - the system timer - in software, having the kernel maintain dispatcher tables at run time. Our Sloth on Time approach proposes to make use of multiple timer cells as available on modern micro controller platforms to encapsulate dispatcher tables in the timer configuration, yielding low scheduling and dispatching latencies at run time. Sloth on Time instruments available timer cells in different… 

Figures and Tables from this paper

Work-in-Progress: TTI: A Timing ISA for LET Model in Safety-Critical Systems
TLDR
Preliminary results show that the proposed time-triggered instruction set – TTI can significantly reduce overheads of LET kernel and jitters of the LET-based tasks compared to traditional implementations, which can achieve cycle-level precise timed behaviors as a result.
Levels of Specialization in Real-Time Operating Systems
ions: Already done by CPP macros Instances: Threads and queues statically instantiated Interactions: LED task inlined in ISR Abstractions Instances Interactions Text segment (bytes) 91,084 91,196
A Mechanism to Prevent Stuff Bits in CAN for Achieving Jitterless Communication
TLDR
A mechanism is presented that prevents the occurrence of stuff bits in the whole frame completely and makes the duration of frame transmissions fixed and, hence, it achieves very accurate reception times.
Alternatives to Classic Real Time
TLDR
This paper will take a closer look at some of the research in the field of real time systems, including the Liu and Layland method, and topics relevant for the task model such as scheduling, dynamic voltage scaling, WCET and time/utility functions.
Interrupt Handling Architectures
TLDR
This chapter analyzes the differences between the general purpose and real-time operating systems in terms of temporal predictability, event response latency, overhead and overload control.

References

SHOWING 1-10 OF 23 REFERENCES
Sleepy Sloth: Threads as Interrupts as Threads
TLDR
Sleepy Sloth abolishes the (artificial) distinction between threads and ISRs: Threads can be dispatched as efficiently as interrupt handlers and interrupt handlers can be scheduled as flexibly as threads.
Hashed and hierarchical timing wheels: data structures for the efficient implementation of a timer facility
TLDR
A timer algorithm for small timer intervals is presented that is similar to the timing wheel technique used in logic simulators, and a hierarchy of timing wheels with different granularities is used to span a greater range of intervals.
Sloth: Threads as Interrupts
TLDR
This work proposes to internally design all threads as interrupts, thereby simplifying the managed control-flow abstractions and letting the hardware interrupt subsystem do most of the scheduling work.
Preventing interrupt overload
TLDR
Three new techniques are described, two software-based and one hardware-based, for creating systems that delay or drop excessive interrupt requests before they can overload a processor and provide a last-ditch safety guarantee in the presence of a serious malfunction.
Periodic timers revisited: The real-time embedded system perspective
30 seconds is not enough!: a study of operating system timer usage
TLDR
It is shown how the same timer facilities serve at least five distinct purposes, and their performance characteristics under a selection of application workloads, and the potential benefit of adaptive timeouts are examined.
Predictable Interrupt Management for Real Time Kernels over conventional PC Hardware
TLDR
This paper analyzes the traditional model of interrupt management and its incapacity to incorporate reliability and the temporal predictability demanded on real-time systems and proposes a model that integrates interrupts and tasks handling.
Hardware implementation of a real-time operating system
TLDR
According to the evaluation results based on an FPGA implementation, hardware portion of these functionalities can be executed within 250 ns and the task scheduling can be performed within 750 ns simultaneously, which are about 6 to 50 times faster than software implementation.
A hardware/software kernel for system on chip designs
TLDR
In this paper, a uniprocessor real-time kernel that implements the Earliest Deadline First (EDF) scheduling policy is partitioned by moving the EDF scheduler into a coprocessar, and a metric is proposed that permits a unified comparison of kernelCoprocessors and application coprocessionors during design partitioning.
Fastchart-a fast time deterministic CPU and hardware based real-time-kernel
  • L. Lindh
  • Computer Science
    Proceedings. EUROMICRO `91 Workshop on Real-Time Systems
  • 1991
TLDR
A new hardware structure that is deterministic, fast and includes a real-time kernel in hardware is described, but this structure is limited to small real- time systems.
...
...