102 research outputs found

    Robust Partitioned Scheduling for Static-Priority Real-Time Multiprocessor Systems with Shared Resources

    Get PDF
    International audienceWe focus on the partitioned scheduling of sporadic real-time tasks with constrained deadlines. The scheduling policy on each processor is static-priority. The considered tasks are not independent and the consistency of these shared data is ensured by a multiprocessor synchronization protocol. Considering these assumptions, we propose a partitioned scheduling algorithm which tends to maximize the robustness of the tasks to the Worst Case Execution Time (WCET) overruns faults. We describe the context of the problem and we outline our solution based on simulated annealing

    Worst case analysis of TreeMap data structure

    Get PDF
    International audienceData structures with relaxed balance eases the update of shared resources on asynchronous parallel architectures. This improvement is obtained by a better locking scheme of the data structure. In this paper, we describe the complexity and analyze the worst case cost of access operations on such a structure. We propose a data structure with the same properties as Java TreeMap but implemented with chromatic search tree; a tree with relaxed balance. The aim of our structure is to provide a more efficient TreeMap we can use in concurrent and real-time applications

    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

    Sustainability in static-priority restricted-migration scheduling

    Get PDF
    International audienceIn this paper, we focus on the static-priority scheduling of periodic hard real-time tasks upon identical multiprocessor platforms. In order to bound the inter-processor migrations, we consider the restricted-migration scheduling policy for which a task is allowed to migrate only at job boundaries. Several jobs of the same task can then be assigned on different processors but a given job can not migrate. It has been shown that this scheduling policy can suffer from scheduling anomalies. These anomalies occur when a decrease in execution requirement of a job causes a deadline miss. We present a static-priority restricted-migration scheduling algorithm and we prove it does not suffer from these anomalies. We also review the scheduling anomalies according to the scheduling tests for this algorithm

    The Design and Implementation of Real-time Event-based Applications with RTSJ

    Get PDF
    International audienceThis paper presents a framework to design real-time event-based applications using Java. The Real-Time Specification for Java (RTSJ) is well designed for hard periodic real-time systems. Though it also proposes classes to model asynchronous events and deal with sporadic or aperiodic tasks, it remains insufficient. The literature proposes the use of periodic servers called task servers to handle nonperiodic traffics in real-time systems. Unfortunately, there is no support for task servers in RTSJ. In order to fix this lack, we propose an RTSJ extension model. To validate our design, we adapt and implement two policies: the polling server and the deferrable server policies. To show how effi- cient these policies are, we compare implementation results and results obtained with a discrete-event-based simulato

    RTSJ Extensions: Event Manager and Feasibility Analyzer

    Get PDF
    International audienceWe present in this paper our experience on the implementation with RTSJ of advanced algorithms to handle aperiodic traffic. We have adapted existing algorithms in order to take into account some constraints brought about by the use of Java language, and our aim which is to propose a portable mechanism. To circumscribe some difficulties, we had to use some programming ruses which could be better integrated into the specification. From these experiences resulted a set of modifications to the specification which we propose to submit to the community in this paper, in addition to a unified event manager framework

    The jointly scheduling of hard periodic tasks with soft aperiodic events within the Real-Time Specification for Java (RTSJ)

    Get PDF
    The studied problem is the jointly scheduling of hard periodic tasks with soft aperiodic events, where the response times of soft tasks have to be as low as possible while the warranty to meet their deadlines has to be given to hard tasks. A lot of theoretical solutions have been proposed these past two decades but we are interested on the implementability of these solutions under the real-time specification for Java (RTSJ), without changing the scheduler. This led us to adapt the existing algorithms to operate at a user land level in the system, to propose some optimizations and counter measures in order to balance the lost of performances and finally to set up an approximate slack stealer algorithm specifically designed to take into account RTSJ restrictions. We propose new classes to extend the RTSJ API's to implement these mechanisms and some minor modification suggestions to existing ones as a feed back from our RTSJ experiences. We demonstrates the efficiency of the modified algorithms through extensive simulations and the implementability on available RTSJ compliant virtual machine by an overhead measure in real situation with the RTSJ JamaïcaVM from Aïcas. We also measure the overhead on LejosRT, an RTSJ compliant firmware for Lego Mindstorms NXT in development

    Experimental Analysis of the Tardiness of Parallel Tasks in Soft Real-time Systems

    Get PDF
    International audienceA parallel application is defined as the application that can be executed on multiple processors simultaneously. In software, parallelism is a useful programming technique to take advantage of the hard-ware advancement in processors manufacturing nowadays. In real-time systems, where tasks have to respect certain timing constraints during execution, a single task has a shorter response time when executed in parallel than the sequential execution. However, the same cannot be trivially applied to a set of parallel tasks (taskset) sharing the same processing platform, and there is a negative intuition regarding parallelism in real-time systems. In this work, we are interested in analyzing this statement and providing an experimental analysis regarding the effect of parallelism soft on real-time systems. By performing an extensive simulation of the scheduling process of parallel taskset on multiprocessor systems using a known scheduling algorithm called the global Earliest-Deadline First (gEDF), we aim at providing an indication about the effects (positive or negative) of parallelism in real-time scheduling

    Schedulability Analysis for Directed Acyclic Graphs on Multiprocessor Systems at a Subtask Level

    Get PDF
    International audienceThis paper addresses the problem of scheduling parallel real- time tasks of Directed Acyclic Graph (DAG) model on multiprocessor systems. We propose a new scheduling method based on a subtask-level, which means that the schedulability decisions are taken based on the local temporal parameters of subtasks. This method requires modifying the subtasks to add more parameters which are necessary for the analysis, such as local offsets, deadlines and release jitters. Then we provide interference and workload analyses of DAG tasks, and we provide a schedulability test for any work conserving scheduling algorithm

    A Parallelizing Algorithm for Real-Time Tasks of Directed Acyclic Graphs Model

    Get PDF
    International audienceIn this paper, we consider parallel real-time tasks follow- ing a Directed Acyclic Graph (DAG) model. This task model is classical in embedded and industrial system applications. Each real-time task is defined by a set of subtasks under precedence constraints. With each subtask being associated a worst case execution time and a maximal degree of parallelism. We propose a parallelizing algorithm based on the critical path concept, in which we find the best parallelizing structure of the task according to the response time and the required number of processors, considering the worst case execution time of the subtasks
    corecore