540 research outputs found

    Scheduling Techniques for Operating Systems for Medical and IoT Devices: A Review

    Get PDF
    Software and Hardware synthesis are the major subtasks in the implementation of hardware/software systems. Increasing trend is to build SoCs/NoC/Embedded System for Implantable Medical Devices (IMD) and Internet of Things (IoT) devices, which includes multiple Microprocessors and Signal Processors, allowing designing complex hardware and software systems, yet flexible with respect to the delivered performance and executed application. An important technique, which affect the macroscopic system implementation characteristics is the scheduling of hardware operations, program instructions and software processes. This paper presents a survey of the various scheduling strategies in process scheduling. Process Scheduling has to take into account the real-time constraints. Processes are characterized by their timing constraints, periodicity, precedence and data dependency, pre-emptivity, priority etc. The affect of these characteristics on scheduling decisions has been described in this paper

    An Experimental Analysis of DAG Scheduling Methods in Hard Real-time Multiprocessor Systems

    Get PDF
    International audienceThe scheduling of real-time parallel tasks on multiprocessor systems is more complicated than the one of independent sequential tasks, specially for the Directed Acyclic Graph (DAG) parallel model. The complexity is due to the structure of the DAG tasks and the precedence constraints between their subtasks. The trivial DAG scheduling method is to apply directly common real-time scheduling algorithms despite their lack of compatibility with the parallel model. Another scheduling method called the stretching method is summarized as converting each parallel DAG task in the set into a collection of independent sequential threads that are easier to be scheduled. In this paper, we are interested in analyzing global preemptive scheduling of DAGs using both methods by showing that both methods are not comparable in the case of using Deadline Monotonic (DM) and Earliest Deadline First (EDF) scheduling algorithms. Then we use extensive simulations to compare and analyze their performance

    MORA: an Energy-Aware Slack Reclamation Scheme for Scheduling Sporadic Real-Time Tasks upon Multiprocessor Platforms

    Full text link
    In this paper, we address the global and preemptive energy-aware scheduling problem of sporadic constrained-deadline tasks on DVFS-identical multiprocessor platforms. We propose an online slack reclamation scheme which profits from the discrepancy between the worst- and actual-case execution time of the tasks by slowing down the speed of the processors in order to save energy. Our algorithm called MORA takes into account the application-specific consumption profile of the tasks. We demonstrate that MORA does not jeopardize the system schedulability and we show by performing simulations that it can save up to 32% of energy (in average) compared to execution without using any energy-aware algorithm.Comment: 11 page

    ATMP: An Adaptive Tolerance-based Mixed-criticality Protocol for Multi-core Systems

    Get PDF
    © 2018 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted ncomponent of this work in other works.The challenge of mixed-criticality scheduling is to keep tasks of higher criticality running in case of resource shortages caused by faults. Traditionally, mixedcriticality scheduling has focused on methods to handle faults where tasks overrun their optimistic worst-case execution time (WCET) estimate. In this paper we present the Adaptive Tolerance based Mixed-criticality Protocol (ATMP), which generalises the concept of mixed-criticality scheduling to handle also faults of other nature, like failure of cores in a multi-core system. ATMP is an adaptation method triggered by resource shortage at runtime. The first step of ATMP is to re-partition the task to the available cores and the second step is to optimise the utility at each core using the tolerance-based real-time computing model (TRTCM). The evaluation shows that the utility optimisation of ATMP can achieve a smoother degradation of service compared to just abandoning tasks

    A Survey of Research into Mixed Criticality Systems

    Get PDF
    This survey covers research into mixed criticality systems that has been published since Vestal’s seminal paper in 2007, up until the end of 2016. The survey is organised along the lines of the major research areas within this topic. These include single processor analysis (including fixed priority and EDF scheduling, shared resources and static and synchronous scheduling), multiprocessor analysis, realistic models, and systems issues. The survey also explores the relationship between research into mixed criticality systems and other topics such as hard and soft time constraints, fault tolerant scheduling, hierarchical scheduling, cyber physical systems, probabilistic real-time systems, and industrial safety standards

    QoS and security-aware task assignment and scheduling in real-time systems

    Get PDF
    Security issues in mission-critical real-time systems (e.g., command and control systems) are becoming increasingly important as there are growing needs for satisfying information assurance in these systems. In such systems, it is important to guarantee real-time deadlines along with the security requirements (e.g., confidentiality, integrity, and availability) of the applications. Traditionally, resource management in real-time systems has focused on meeting deadlines along with satisfying fault-tolerance and/or resource constraints. Such an approach is inadequate to accommodate security requirements into resource management algorithms. Based on the imprecise computation paradigm, a task can have several Quality of Service (QoS) levels, higher QoS result incurs higher computational cost. Similarly, achieving a higher level of confidentially requires stronger encryption, which incurs higher computational cost. Therefore, there exists a tradeoff between schedulability of the tasks on the one hand, and the accuracy (QoS) and security of the results produced on the other hand. This tradeoff must be carefully accounted in the resource management algorithms. In this context, this dissertation makes the following contributions: (i) formulation of scheduling problems accounting both deadline and security requirements of workloads in real-time systems, (ii) development of novel task allocation and scheduling algorithms for such workloads, (iii) and evaluation of the results through simulation studies and a limited test evaluations in one case. In particular, the following are the three key contributions. Firstly, the problem of scheduling a set of non-preemptable real-time tasks with security and QoS requirements with the goal of maximizing integrated QoS and security of the system is addressed. This problem is formulated as MILP, and then its complexity is proved to be NP-hard. An online efficient heuristic algorithm is developed as the problem is NP-hard. Simulation studies for a wide range of workload scenarios showed that the proposed algorithm outperforms a set of baseline algorithms. Further, the proposed algorithm\u27s performance is close to the optimal solution in a specific special case of the problem. Secondly, a static assignment and scheduling of a set of dependent real-time tasks, modeled as Directed Acyclic Graph (DAG), with security and QoS requirements in heterogeneous real-time system with the objective of maximizing Total Quality Value (TQV) of the system is studied. This problem is formulated as MINLP. Since this problem is NP-hard, a heuristic algorithm to maximize TQV while satisfying the security constraint of the system is developed. The proposed algorithm was evaluated through extensive simulation studies and compared to a set of baseline algorithms for variations of synthetic workloads. The proposed algorithm outperforms the baseline algorithms in all the simulated conditions for fully-connected and shared bus network topologies. Finally, the problem of dynamic assignment and scheduling of a set of dependent tasks with QoS and security requirements in heterogeneous distributed system to maximize the system TQV is addressed. Two heuristic algorithms to maximize TQV of the system are proposed because the problem is NP-hard. The proposed algorithms were evaluated by extensive simulation studies and by a test experiment in InfoSpher platform. The proposed algorithms outperform the baseline algorithms in most of the simulated conditions for fully-connected and shared bus network topologies

    Scheduling policies and system software architectures for mixed-criticality computing

    Get PDF
    Mixed-criticality model of computation is being increasingly adopted in timing-sensitive systems. The model not only ensures that the most critical tasks in a system never fails, but also aims for better systems resource utilization in normal condition. In this report, we describe the widely used mixed-criticality task model and fixed-priority scheduling algorithms for the model in uniprocessors. Because of the necessity by the mixed-criticality task model and scheduling policies, isolation, both temporal and spatial, among tasks is one of the main requirements from the system design point of view. Different virtualization techniques have been used to design system software architecture with the goal of isolation. We discuss such a few system software architectures which are being and can be used for mixed-criticality model of computation

    Using Imprecise Computing for Improved Real-Time Scheduling

    Get PDF
    Conventional hard real-time scheduling is often overly pessimistic due to the worst case execution time estimation. The pessimism can be mitigated by exploiting imprecise computing in applications where occasional small errors are acceptable. This leverage is investigated in a few previous works, which are restricted to preemptive cases. We study how to make use of imprecise computing in uniprocessor non-preemptive real-time scheduling, which is known to be more difficult than its preemptive counterpart. Several heuristic algorithms are developed for periodic tasks with independent or cumulative errors due to imprecision. Simulation results show that the proposed techniques can significantly improve task schedulability and achieve desired accuracy– schedulability tradeoff. The benefit of considering imprecise computing is further confirmed by a prototyping implementation in Linux system. Mixed-criticality system is a popular model for reducing pessimism in real-time scheduling while providing guarantee for critical tasks in presence of unexpected overrun. However, it is controversial due to some drawbacks. First, all low-criticality tasks are dropped in high-criticality mode, although they are still needed. Second, a single high-criticality job overrun leads to the pessimistic high-criticality mode for all high-criticality tasks and consequently resource utilization becomes inefficient. We attempt to tackle aforementioned two limitations of mixed-criticality system simultaneously in multiprocessor scheduling, while those two issues are mostly focused on uniprocessor scheduling in several recent works. We study how to achieve graceful degradation of low-criticality tasks by continuing their executions with imprecise computing or even precise computing if there is sufficient utilization slack. Schedulability conditions under this Variable-Precision Mixed-Criticality (VPMC) system model are investigated for partitioned scheduling and global fpEDF-VD scheduling. And a deferred switching protocol is introduced so that the chance of switching to high-criticality mode is significantly reduced. Moreover, we develop a precision optimization approach that maximizes precise computing of low-criticality tasks through 0-1 knapsack formulation. Experiments are performed through both software simulations and Linux proto- typing with consideration of overhead. Schedulability of the proposed methods is studied so that the Quality-of-Service for low-criticality tasks is improved with guarantee of satisfying all deadline constraints. The proposed precision optimization can largely reduce computing errors compared to constantly executing low-criticality tasks with imprecise computing in high-criticality mode
    • …
    corecore