35 research outputs found

    Safe and Optimal Scheduling for Hard and Soft Tasks

    Get PDF
    We consider a stochastic scheduling problem with both hard and soft tasks on a single machine. Each task is described by a discrete probability distribution over possible execution times, and possible inter-arrival times of the job, and a fixed deadline. Soft tasks also carry a penalty cost to be paid when they miss a deadline. We ask to compute an online and non-clairvoyant scheduler (i.e. one that must take decisions without knowing the future evolution of the system) that is safe and efficient. Safety imposes that deadline of hard tasks are never violated while efficient means that we want to minimise the mean cost of missing deadlines by soft tasks. First, we show that the dynamics of such a system can be modelled as a finite Markov Decision Process (MDP). Second, we show that our scheduling problem is PP-hard and in EXPTime. Third, we report on a prototype tool that solves our scheduling problem by relying on the Storm tool to analyse the corresponding MDP. We show how antichain techniques can be used as a potential heuristic

    Implementación de Slack Stealing y una tarea planificadora en nxtOSEK sobre Lego Mindstorms NXT 2.0

    Get PDF
    Este trabajo presenta una implementación, utilizando el Sistema Operativo de Tiempo Real nxtOSEK y el kit de robótica educativa Lego Mindstorms NXT 2.0, en configuración segway, de un método de Slack Stealing para la administración del tiempo ocioso en un Sistema de Tiempo Real, junto con una Tarea Planificadora que aprovecha el mismo para la ejecución concurrente de tareas periódicas y esporádicas, sin que las primeras pierdan sus vencimientos. Mediante este desarrollo, se pueden ejecutar tareas no críticas de manera concurrente, sin afectar las tareas críticas que mantienen el segway en equilibrio.Sociedad Argentina de Informática e Investigación Operativ

    Implementación de Slack Stealing y una tarea planificadora en nxtOSEK sobre Lego Mindstorms NXT 2.0

    Get PDF
    Este trabajo presenta una implementación, utilizando el Sistema Operativo de Tiempo Real nxtOSEK y el kit de robótica educativa Lego Mindstorms NXT 2.0, en configuración segway, de un método de Slack Stealing para la administración del tiempo ocioso en un Sistema de Tiempo Real, junto con una Tarea Planificadora que aprovecha el mismo para la ejecución concurrente de tareas periódicas y esporádicas, sin que las primeras pierdan sus vencimientos. Mediante este desarrollo, se pueden ejecutar tareas no críticas de manera concurrente, sin afectar las tareas críticas que mantienen el segway en equilibrio.Sociedad Argentina de Informática e Investigación Operativ

    Implementación de Slack Stealing y una tarea planificadora en nxtOSEK sobre Lego Mindstorms NXT 2.0

    Get PDF
    Este trabajo presenta una implementación, utilizando el Sistema Operativo de Tiempo Real nxtOSEK y el kit de robótica educativa Lego Mindstorms NXT 2.0, en configuración segway, de un método de Slack Stealing para la administración del tiempo ocioso en un Sistema de Tiempo Real, junto con una Tarea Planificadora que aprovecha el mismo para la ejecución concurrente de tareas periódicas y esporádicas, sin que las primeras pierdan sus vencimientos. Mediante este desarrollo, se pueden ejecutar tareas no críticas de manera concurrente, sin afectar las tareas críticas que mantienen el segway en equilibrio.Sociedad Argentina de Informática e Investigación Operativ

    Real-time USB communication in the Quest operating system

    Full text link

    Cache Related Pre-emption Delays in Embedded Real-Time Systems

    Get PDF
    Real-time systems are subject to stringent deadlines which make their temporal behaviour just as important as their functional behaviour. In multi-tasking real-time systems, the execution time of each task must be determined, and then combined together with information about the scheduling policy to ensure that there are enough resources to schedule all of the tasks. This is usually achieved by performing timing analysis on the individual tasks, and then schedulability analysis on the system as a whole. In systems with cache, multiple tasks can share this common resource which can lead to cache-related pre-emption delays (CRPD) being introduced. CRPD is the additional cost incurred from resuming a pre-empted task that no longer has the instructions or data it was using in cache, because the pre-empting task(s) evicted them from cache. It is therefore important to be able to account for CRPD when performing schedulability analysis. This thesis focuses on the effects of CRPD on a single processor system, further expanding our understanding of CRPD and ability to analyse and optimise for it. We present new CRPD analysis for Earliest Deadline First (EDF) scheduling that significantly outperforms existing analysis, and then perform the first comparison between Fixed Priority (FP) and EDF accounting for CRPD. In this comparison, we explore the effects of CRPD across a wide range of system and taskset parameters. We introduce a new task layout optimisation technique that maximises system schedulability via reduced CRPD. Finally, we extend CRPD analysis to hierarchical systems, allowing the effects of cache when scheduling multiple independent applications on a single processor to be analysed

    CertiCAN: Certifying CAN Analyses and Their Results

    Get PDF
    We present CertiCAN, a tool produced using the Coq proof assistant for the formalcertification of CAN analysis results. Result certification is a process that is lightweight and flexiblecompared to tool certification. Indeed, the certification of an industrial analyzer needs access tothe source code, requires the proof of many optimizations or implementation tricks and new proofeffort at each software update. In contrast, CertiCAN only relies on the result provided by sucha tool and remains independent of the tool itself or its updates. Furthermore, it is usually moretime efficient to check a result than to produce it. All these reasons make CertiCAN a practicalchoice for industrial purposes.CertiCAN is based on the certification and combined use of two well-known CAN analysis tech-niques completed with additional optimizations. Experiments demonstrate that CertiCAN is com-putationally efficient and faster than the underlying combined analysis. It is able to certify theresults of RTaW-Pegase, an industrial CAN analysis tool, even for large systems. This result pavesthe way for a broader acceptance of formal tools for the certification of real-time systems analysisresults.Nous présentons CertiCAN, un outil produit à l’aide de l’assistant de preuvesCoq et permettant de certifier les résultats d’analyses de bus CAN. La certification de résultatsd’analyses est un procédé moins coûteux et plus flexible que la certification des analyses elles-mêmes. En effet, la certification d’un analyseur industriel demande l’accès au code source, lapreuve d’un code souvent complexe avec de nombreuses optimisations ou astuces de mise enœuvre sans compter le besoin de nouvelles preuves à chaque mise à jour. CertiCAN, de son côté,n’a besoin que du résultat de l’analyse ; il reste indépendant de l’analyseur, de son implantationet de ses mises à jour. De plus, il est toujours plus efficace de vérifier un résultat que de leproduire. Ces caractéristiques font de CertiCAN un choix pragmatique pour une utilisationindustrielle.CertiCAN est basé sur la certification et l’utilisation combinée de deux techniques classiquesd’analyse complétée par une collection d’optimisations. Les expérimentations montrent que Cer-tiCAN est efficace et plus rapide que les analyses sous-jacentes. Il est capable de certifier lesrésultats de RTaW-Pegase, un analyseur industriel de bus CAN, et ce même pour des systèmescomplexes. Ce résultat ouvre la voie à une utilisation plus large d’outils formels pour la certifi-cation des résultats d’analyse de systèmes temps-réels

    Activity Report: Automatic Control 2012

    Get PDF

    Conditions d’ordonnançabilité pour un langage dirigé par le temps

    Get PDF
    The goal of this research is to define a time-triggered language for modeling real-time systems and to provide the conditions for their schedulability under Earliest Deadline First (EDF). Time-triggered languages separate the functional part of applications from their timing definition. These languages permit to model the real-time system temporal behavior by assigning system activities to particular time instants. We propose a new time-triggered framework, Extended Timing Definition Language (E-TDL), that enhances the basic task model used in Giotto and TDL while keeping compositional and modular structure brought by the latter. An E-TDL task is characterized by: an offset, a worst case execution time, a Logical Execution Time (a time interval between task release and its termination) and a period.The schedulability analysis of the system based on this new task model should be, in particular for EDF, investigated. We develop, on the concept of the processor demand criterion, conditions for the feasibility of an E-TDL system running on a single CPU under EDF. A necessary and sufficient condition is obtained by considering the global schedules that are made up of execution traces occurring at the same time in distinct modules that are able to switch their modes at predefined instants. We estimate a maximal length of the interval on which the schedulability condition must be checked. A tool suite performing the schedulability analysis of the E-TDL systems is developed.Les travaux réalisés dans le cadre de cette thèse ont pour objectif de proposer un langage de description temporelle pour des systèmes temps-réel et d’établir les conditions de leur ordonnançabilité sous l’algorithme Earliest Deadline First (EDF). Les langages de description temporelle permettent de spécifier le comportement temporel d’une application indépendamment de son comportement fonctionnel. Le programmeur déclare dans ces langages à quels instants précis doivent être déclenchées et terminées les activités du système. Cette gestion du temps, précise et explicite, apporte au système son caractère déterministe. Le langage proposé, Extended Timing Definition Language (E-TDL), étend des langages dirigés par le temps existants, en particulier Giotto et TDL, en introduisant un nouveau modèle de tâche donné par quatre paramètres : phase, pire temps d’exécution, temps d’exécution logique TEL (intervalle de temps séparant le lancement de la tâche et sa terminaison) et période.L’introduction de ce nouveau modèle de tâche nécessite de revisiter en particulier le problème de l’ordonnançabilité des tâches pour EDF. Cette thèse propose et développe une analyse basée sur la fonction de demande pour des ensembles de tâches décrites en E-TDL et s’exécutant en contexte monoprocesseur. Une condition nécessaire et suffisante est obtenue au travers d’une analyse précise des intervalles séparant les activations de tâches au sein de différents modules s’exécutant indépendamment et pouvant changer de mode à des instants prédéfinis. Une borne de la longueur des intervalles sur lesquels doit s’opérer la vérification est déterminée. Un outil mettant en œuvre cette analyse a été développé
    corecore