Task Priority Optimization in Real-Time Multi-Core Embedded Systems
|
|
- Hilary Bond
- 8 years ago
- Views:
Transcription
1 Task Priority Optimization in Real-Time Multi-Core Embedded Systems Erjola Lalo, Michael Deubzer, Stefan Schmidhuber, Erna Oklapi, Jürgen Mottok, Ostbayerische Technische Hochschule (OTH) Regensburg, Las 3 -Laboratory for Safe and Secure Systems, Faculty of Electrical Engineering and Information Technology, Seybothstraße 2, Regensburg, Germany, {erjola.lalo, erna.oklapi, stefan.schmidhuber, juergen.mottok}@oth-regensburg.de Timing-Architects Embedded Systems GmbH Bruderwöhrdstr. 15b, Regensburg, Germany michael.deubzer@timing-architects.com Abstract The shift from single-core to multi-core processors in real-time embedded systems leads to communication based effects on timing such as inter-core communication delays and blocking times. Moreover, the complexity of the scheduling problem increases when multi-core processors are used. In priority-based-scheduling, a fixed priority assignment is used in order to enable predictable behavior of the system. Predictability means that the system has to be analyzable which allows the detection of problems coming from scheduling decisions. For fixed priority scheduling in multi-core real-time embedded systems, a proper task priority assignment has to be done in a way that the system has minimal effects on timing. In this paper, we present an approach for finding near-optimal solutions for task priority assignment and the preemption/cooperation problem. A genetic algorithm is hereby used to create priority assignment solutions. A timing simulator is used for evaluation of each solution regarding real-time properties, memory consumption and communication overhead. In a case study we demonstrate that the proposed approach performs better than well known and single-core optimal heuristics for relatively complex systems. Index Terms priority optimization; priority assignment; embedded systems; genetic algorithms; multi-core; multi-core scheduling; I. INTRODUCTION A real-time embedded system functions correctly if and only if computational results are correct and produced in time [2]. Deadlines are hereby defined for the system s tasks to quantify to what extent computational results are produced in time. A deadline represents the upper limit for the response time of a task, which calculates as the difference between its starting time and finishing time. In order to ensure that the tasks meet their deadlines, the multi-core scheduling problem has to be solved [1]. A. Problem Definition The multi-core scheduling problem deals with the question where 1 and in which order the tasks should execute. In this work, we only deal with the latter question. Due to the fact that a real-time multi-core system has to be predictable, fixed priority scheduling is used in this work. Predictability means 1 When using partitioned scheduling, tasks have to be mapped to cores that the system should be analyzable to predict consequences of any scheduling decision. This paper deals with priority optimization of tasks in fixed priority scheduling with the goal to fulfill the aforementioned timing constraints as good as possible. We hereby consider both preemptive and cooperative scheduling in multi-core processors. In preemptive scheduling, a ready task with higher priority can preempt a running task with lower priority at any time during execution. In cooperative scheduling, tasks do not preempt each other at any time during execution. They instead preempt each other at re-scheduling points where re-scheduling decisions are taken by scheduler. The decision where a scheduling point is positioned inside a task is assumed to be decided by the developer, whereas this decision is often motivated by data consistency needs. The task prioritization approach provided in this paper is applicable as well in single core processors. In systems with simple task sets, the prioritization of tasks is simplified but for complex systems with multiple types of tasks running concurrently on a multi-core processor, it is important to consider every possible effect. More information regarding different types of tasks is provided in Section II-C of this paper. In the following, a formal definition of an embedded system is given. Definition 1: A real time embedded system S = (δ, γ, β, σ) consists of a task set δ, a processing unit γ, system resources β and a set of schedulers σ, where δ is the tasks set of cardinality n where T j is the j th task, with j = 1 n. A task is considered any subdivided part of the overall system according to its real time requirements. It serves as a framework for execution of functions. Each task consists of a finite sequence of identical activities or jobs called instances. Let J be the set of instances J j,i of task T j, with i = 1 p. J j,i then denotes the i th instance of the j th task. γ processing unit which consists of a set of processors γ m, with m = 1 r. Each processor consists of a set
2 of cores α = {C m,1, C m,2,, C m,k, C m,k+1,, C m,p }, with k = 1 p. Without loss of generality we assume a homogeneous multi-core processor. β = {B 1, B 2,, B l, B l+1,, B q } is the set of shared resources available in the system, with l = 1 q. σ is the set of schedulers in the system. Schedulers are considered to be local or global. In local scheduling there are local priority queues for each processing element. Whereas in global scheduling there is only one global priority queue for each processing element [18] [4]. In multi-core systems, task response times can be affected as a result of task interference due to access to common resources. For example, two tasks T 1 and T 2, which are running on different cores, can delay one or another because of exclusive hold of a semaphore. Thus, task T 1 is delayed or blocked for execution because of waiting for the release of the semaphore hold by task T 2. In such circumstance the response time of task T 1 increases due to the waiting time. In the worst case, the increased response time could lead to a deadline violation. Another possible impact on timing is enforced migration, where tasks are divided into parts which execute on different cores in a fixed order. Besides the additional scheduling overhead, a near-optimal priority has to be found which has to be applicable to each core the individual task parts are running on. In this paper, we consider a system without possible enforced migrations of tasks. We will however consider it in our future work. Other core-communication based effects result from interprocess activations. Inter-process activation means a task is activated through events by other tasks and is considered in this work. The activation of the inter-process activated tasks depends not only on the activation pattern itself but also on possible delays and blocking effect of the activating tasks, even across cores. B. Motivation In the following paragraph, we show three practical scenarios when a near-optimal prioritization of tasks is sufficient and necessary. 1) Minimization of Response time Minimization of response time (RT) is achieved through avoidance of any possible task delays. Delays can occur because of preemptive and cooperative task suspensions. Hence, a task T j δ is delayed as a result of activity of another task T j+1 δ. Assume the priority for task T j is higher than the priority of task T j+1 and both tasks are running on the same core. Task T j+1 delays while T j is running on the core. Therefore, RT j+1 increases. Minimization of response time of each task can improve the impact to each other and latencies are prevented. In extreme cases, long delays can cause timing constraint violations. Figure 1 shows the simulation results of a dual core system composed by two preemptive tasks: T ASK_1 and T ASK_2. The priority of T ASK_1 is lower than of T ASK_2. Hereby, T ASK_1 is delayed because of T ASK_2. Figure 1. Task delay and effects on response time In addition, delays of tasks can occur because of concurrent access to shared resources. A long delay because of waiting for access to shared resources can cause timing constraint violations. 2) Minimization of Timing Constraints Violations In Section I-A, the effects of common access to shared resources in multi-core processors have been introduced. In worst cases as a result of concurrent accesses, tasks can remain in a waiting state until a deadline violation occurs. Figure 2 shows the simulation result of dual core system. T ASK_1 and T ASK_2 are running on different cores and both request semaphore SEM_1. T ASK_2 first gets the lock on the semaphore and T ASK_1 falls in a waiting state at t = 12, 125 us and cannot continue executing until the semaphore is released at t = 12, 375 us. As a result a deadline violation of T ASK_1 occurs. Figure 2. Deadline Violations In addition, T ASK_4 which runs on the same core as T ASK_2 misses its deadline. The priority of T ASK_4 is lower than of T ASK_2 and it cannot preempt T ASK_1. We see that the effects because of waiting for the semaphore effects as well the execution behavior of T ASK_4. 3) Task Switching Overhead Minimization A task can be preempted often during execution time because of higher priority tasks. More precicely, a chain of preemptions can occur. Task T j δ is preempted by T j+1 ; T j+1 is later preempted by T j+2, which is then preempted by T j+3 and so on. In all preemptions, the operating system has to save the context stack of each task. Task switching overhead results in a time overhead and in an increase of the memory size. Figure 3 shows simulation results of a system that has high preemption overhead as a result of a bad priority assignment. In this paper we present a model-based approach for task priority optimization. The system is abstracted in a model,
3 Figure 3. Hierarchical Preemption and Overhead which is thoroughly described in the next section. Subsequently, in section III, we present the priority optimization approach itself. Moreover, in the case study we show a complex system where the presented prioritization approach performs better than known heuristics. II. SYSTEM MODEL In this section we provide a description of the real time embedded system in which priority optimization is applied. Here, the system description is expanded with more details regarding the types of tasks and categorization. Moreover, the system is abstracted in a model which is described in the following subsection. A. Timing Model The Timing Model describes all information regarding an embedded real-time system which is necessary to perform a timing simulation [17]. It consists of a description of hardware and software components, as well as configuration or mapping information. The Hardware model includes information regarding processors, cores, quartzes and memory modules. The Software model contains detailed information about processes (tasks and ISRs), runnables and signals. Signals represent the data that is read and written by the smallest unit within tasks which are called runnables. Runnables represent a software module that consists of instructions, write / read signals and calls to other runnables. Regarding scheduling, the timing model keeps information of task properties such as priority, preemptability and MTA (maximum number of concurrent instances of this task). The Operating System model includes the list of schedulers, the used scheduling algorithms, which cores they manage and the list of semaphores present in the system. In the Stimulation section, information regarding the activation pattern of tasks and ISRs are defined by stimuli. A Stimulus is a trigger that activates processes for execution. The following stimulus types are possible: periodic, sporadic, inter-process activated and single stimulus. Additional clocks allow the modification of the activation during simulation. Mapping information includes information regarding mapping of processes to schedulers and stimuli to processes. B. Properties of Tasks Each instance or job J j,i of each task is characterized by the tuple (E j,i, R j,i, D j,i, O j,i, P j,i ) Hereupon, instance J j,i has: 1) Computation Time, i.e. Net Execution Time E j,i ; 2) Period R j,i is the distance between activation of one instance of the task J j,i to the activation of the next instance J j,i+1. 3) Deadline D j,i is the time line before which the task has to finish execution; 4) Offset O j,i is the activation time of the first instance; 5) Priority P j,i is a value which the scheduler decides which task may execute first. The priority is the same for each instance of a task T j ; A real time task T j is characterized by timing constraints and computational parameters. Timing constraint refers to changeless properties of the task that must be met in order to have the desired execution behavior of a task. A very important timing constraint is deadline. Computational parameters refer to evaluation parameters used to evaluate if the requirements are hold. Computational Parameters consist of metrics for evaluation of timing results of each task and other entities of the system. Metric is an indicator or a measurement over a specific property to determine whether one particular requirement is met. The response time RT i of a task instance i for example is the time between the activation time and the termination time. It measures the whole life cycle of a process instance. Every interference resulting in a longer execution time or delay of the start influences this time [5]. C. Task Categorization Chategorization of tasks is done based on different attributes. - Regarding Activation Regarding the type of activation tasks are categorized as following: 1) Period Tasks are tasks with regular activation. Each instance J j,i of a task T j is activated with a period R i. In other words, the period of each instance is equal. 2) Sporadic Tasks are tasks with irregular activation. The activation is sporadic. In sporadic tasks the period is the minimal inter arrival time between two successive jobs; Hence, the period of each instance J j,i of a task T j can result different. 3) Chained Tasks are tasks activated through events by other tasks. The activation of chained task is dependent on the activation of the activating task. 4) Single Tasks are tasks activated a single time in a specific time slice. They can be multiple activation through multiple singled activated in a specific time. - Regarding Offset [16] Based on offset tasks are characterized in three type sets: 1) Synchronous Sets are groups of tasks with the same offset e.g. offset 0. 2) Asynchronous Sets are groups of tasks where constraints of the system determine the offset. They can be different or same for different tasks within the system. 3) Offset Free Sets have no constraints on offset and tasks are selected by scheduling algorithm for execution.
4 - Regarding Dependency Based on dependency tasks are categorized in 2 groups: 1) Dependent tasks are tasks that share common data or access to common resources. Task dependencies can be in two types: a) Sequential Dependency In this case tasks need results from other tasks in order to execute or continue executing. For example, task T j writes a signal and task T j+1 needs to read it after it is written by T j. Hence, task T j+1 necessarily has to execute after the signal was been written. b) Resource Dependency This dependency is possible in case of accesses to shared resources in exclusive mode. These resources are called critical resources / not preemptive sections e.g. semaphores, devices and certain data structures. 2) Independent tasks. Tasks have no dependencies. D. Evaluation In this work, for evaluation of solutions we use the eventbased simulator of TA Toolsuite [5]. It simulates a timing model and stores task state transitions events such as activate, start and terminate in a trace file with respective timestamps. By applying statistical estimator to the simulation trace, metrics like the response times of tasks can be calculated. Compared to response time analysis evaluation, the simulation is more feasible for complex system. The system we are focusing on is not a pure classified system, but a complex system with different execution times and activation patterns which would require highly sophisticated response time analysis. To the best of our knowledge, such a solution is not yet available for the systems we consider. III. PRIORITY OPTIMIZATION In this section, we thoroughly discuss the proposed priority optimization approach. A. Introduction Priority Optimization in this paper is based on a complex embedded system as previously described in Section II. We identified the following requirements for task prioritization: 1) No restrictions should exist in types of tasks regarding activation, offset and dependency. All type of tasks described in section II-C can be present in the system. 2) After assignment of priorities, the system should be still schedulable in the sense that no timing constraint violations occur and response time is minimized. 3) In a multi-core environment any possible inter-core effect has to be handled. 4) Besides task priority optimization, the algorithm has to find a near-optimal preemption and cooperation level between tasks. Definition 1: Prioritization of each task T j ɛδ of the system S is the function problem ζ : (P j, G j ) T j of near-optimal assignment of a scalar value called priority P j to each instance J i,j of task T j and grouping of tasks with prioritization G j for defining preemption / cooperation level in an way that no violations on timing constraints such as deadline occur; the system meets timing requirements and it responds fast and in time accordingly to the real time system specification [2]. Concentrating all of above for a complex system in one algorithm is a very tough task. Inspired by the requirements of the system and the feasibility of evolutionary algorithms used so far in priority optimization [13] [12], the prioritization optimization is solved through genetic algorithms. Other algorithms we know concerning task prioritization are heuristics and algorithms based on schedulability tests. We have seen that heuristics do not work always for systems with dependent tasks and algorithms based on schedulabilty tests require computationally expensive calculations and response time analysis. In section III-D we present the genetic algorithm in more detail. B. State-of-the-Art In 1973 Liu and Layland et al. [6] showed that Rate Monotonic Priority Assignment (RMPA) is optimal for independent synchronous tasks that share a common release time and have an implicit deadline. In 1982, Leung et al. [8] showed that Deadline Monotonic Priority Assignment (DMPA) is optimal for independent synchronous tasks with constrained deadlines. These heuristics are optimal for uniprocessor systems and in a periodic task set. No other optimal heuristic and algorithm was available for asynchronous task set until Audsley et al. [7] devised an optimal algorithm in Audsley?s algorithm was optimal for independent asynchronous task sets with arbitrary deadlines and arbitrary start time that share a critical instant [6]. Audsley?s Algorithm for Priority Assignment (OPA) assigns priorities according to a schedulability test. In 1991, Davis et al. [9] showed that OPA is applicable in multiprocessor case using fixed task priority preemptive scheduling. They show also that DMPA appears to have a poor performance in multiprocessor case. The system model that Davis and Burns define has periodic and aperiodic tasks. Tasks are independent and all the tasks are assumed to have constrained deadlines. M. A. Moncusi et al. [15] proposes an offline heuristic for allocating and assigning priorities in distributed hard real time systems with independent tasks that have an end to end deadline. In 2007 R.I. Davis et al. [10] proposes a priority assignment for fixed priority real time systems. They describe a robust priority assignment algorithm that finds the robust priority assignment with wide range of system models and interference functions. In 2009, S. Samii et al. [12] introduced an evolutionary algorithm for task priorities and flex ray frame identifiers. They assign priorities based on the study of average response time. In 2011, E. Azketa et al. [13] proposed a genetic algorithm for priority assignment for
5 tasks and messages in distributed hard real time systems. All algorithms above consider a system with independent task set. In 2012 Nemati [11] proposed a generalized version of OPA that considered shared resources with simple schedulability tests and applicable also in multiprocessor case. C. Priority Optimization Framework In our approach, the optimization algorithm considers a system with its properties and not-assigned attributes, requirements and configurations. In the end the algorithm produces several solutions of the system with assigned attributes. System Properties includes system information which is considered to be intrinsic property of the system. That means that these properties are not changed during optimization, instead they serve as input information. System Attributes includes entity properties of the system that can be set or changed by the optimization algorithm. Attributes are priorities of tasks, task grouping for defining preemption and cooperation level. Requirements include all requirement that have to be fulfilled by the algorithm for providing an acceptable prioritization. Such requirements for example are: minimization of response time for tasks of system S, for a task T j ɛδ the response time has to fulfill the condition RT j D j. Moreover, the minimization of multi-core effects, i.e. memory requirement or communication delays are possible. Evaluation is the process of evaluating the quality of produced solution.it measures to what extent the requirements are fulfilled. D. Genetic Algorithm In genetic algorithms a set of solutions called the population is used to sample the exploration space. In our approach a solutions is a set of tasks with their attributes: priorities, task grouping, and metrics for timing evaluation. One population, as in real evolution, is inherited or varied from one generation to another one. Best solutions searched in each generation are ensured through a process called fitness survival of individuals. Fitness is a scalar value that measures the quality of solutions. The first set of solutions considered as a start population of Genetic Algorithm is called initial population. The genetic algorithm used in this work is an extension of genetic algorithm of S. Schmidhuber in his Task Allocation Optimization work[3]. Genetic Algorithm runs through the following steps: Create Initial Population Initial population is created through uniform random generation of priorities for each task. A good initial population is a population with a variety of characteristics and differences between solutions. Evaluation It is the process of assignment of fitness to all solutions. Selection It is a process that selects the solutions that pass the best fitness condition. Variation Variation is used in order to create new solutions in each generation. It is performed by Crossover and Mutation. They play different roles in the genetic algorithm. Mutation is needed to explore new states through avoidance of local minima. Crossover increases the average quality of the population [14]. 1- Crossover Crossover combines attributes of two or more individuals for creating new solutions. In priority genetic algorithm we use single cut point crossover operator. The operator selects a random cutting point in two parents; it combines information of two parents by producing two children with inherited genes from both parents. 2- Mutation Mutation modifies the attributes of existing solutions to create new solutions. In this work, we use several mutation operators introduced in [14]. The purpose of implementation of several mutation operators is to experiment and evaluate the best operator for task prioritization. E. Variation Appliance In general mutation is applied to produce children of crossover at the same step as crossover. The order on which both mutation and crossover is applied is chosen to be first crossover and then mutation. While crossover improves the quality of solutions and trying to find the best solution it tends to shrink the exploration area. Theoretically, it comes a point when crossover cannot find any better solution. At this point applying mutation for increasing the exploration space gives the possibility to apply crossover in the next coming generations to find other good solutions. IV. CASE STUDY The goal of this case study is to show the effectiveness of the priority optimization algorithm proposed in this paper. Therefore, we optimize priorities and preemptions/cooperations of an artificial embedded real-time system. It consists of a symmetric dual core processor where each core operates with a clock frequency of 600 Mhz. The system consists of 9 tasks where 7 tasks are activated periodically, one task is inter-process activated and one task is activated sporadically modeled by a Weibull distribution. The tasks are scheduled by two schedulers which manage one core each. We assume that each scheduler invocation leads to a scheduling decision delay of 100ns. The optimization goal is to minimize response times (mnrt metric). With an upper bound of 1 for the mnrt metric, the fitness of a solution equals the respective mnrt metric is 1. A solution with fitness 1 indicates a deadline violation. In Table I are listed task properties of the engine management system such as offset O i, deadline D i, recurrence R i, net execution time E i as well as the activation type T. The tasks exchange 10 data signals in total and T ask2 and T ask6 share the semaphore Sem_1. Schedulers Sched_1 and Sched_2 manage core C_1 and C_2, respectively. Tasks T ask1, T ask2, T ask3, T ask4 are scheduled by Sched_1 whereas tasks T ask5, T ask6, T ask7, T ask8 and T ask9 are
6 Table I TASK PROPERTIES Task O i [ms] D i [ms] R i [ms] E i [ms] T 1 T ask E T ask P T ask P T ask P T ask P T ask P T ask P T ask P T ask /146/ S 1 Task activation type: E - IPA Event, P - Periodic, S - Sporadic Weibull 2 Respective to Min/Avg/Max scheduled by Sched_2. Priority optimization algorithm is configured in the following way: The initial population consists of 100 solutions and 50 parent solutions are selected to create 50 offspring solutions in every subsequent generation. The algorithm has been configured to stop after 100 generations. For creating offspring solutions, the IVM mutation operator and the single cut point crossover operator was used. The mutation rate was set to 30%, whereas the crossover rate was set to 70%. Each solution has been simulated with version of the simulator TA Toolsuite. Hereby a simulation time of 10s was used. After the optimization run, we compared the best solution produced by priority optimization against heuristics. Figure 4 shows the comparison of normalized Response Time for each task of Priority Genetic Algorithm (PGA), the DMPA as well as the RMPA heuristic. Priorities assigned by DMPA lead to a deadline violation for T ask8. Deadline violations also occur for T ask6 and T ask9 when using the RMPA heuristic for priority assignment. In contrary to that, the best solution from priority genetic algorithm does not lead to deadline violations and task response times are minimized in general which leads to a minimized mnrt for the overall system. Figure 5 shows the fitness of the best solution provided by priority genetic algorithms and the fitness of DMPA and RMPA heuristics. For the embedded system used in this casestudy, the comparison induces that priority genetic algorithm performs better than heuristics. The performance of heuristics heavily depends on the system under evaluation. As a result, heuristics may perform equal to priority genetic algorithm for some systems. V. CONCLUSION In this work, we presented a model based approach for priority optimization of real-time tasks in fixed-priority scheduling. We showed that for complex systems with dependent tasks, the genetic algorithm finds better solutions then the DMPA and RMPA heuristics. For such systems, the heuristics can no longer yield optimal priority assignments. The genetic Figure 4. Comparison of the normalized Response Time for each task with assigned priorities according to Priority Genetic Algorithm, DMPA and RMPA heuristic Figure 5. Comparison of fitness value between priority genetic algorithm, deadline and rate monotonic heuristics algorithm minimizes task response times and therefore the mnrt of the overall system. It is important to say that the performance of heuristics is strongly dependent on the type and complexity of the system. Future research in that field will include the improvement of the optimization of preemptive and cooperative suspensions between tasks with the aim of further improving task response times. Moreover, we will also consider split tasks with partial execution on different cores through enforced migration events. Our aim hereby is to find a near-optimal priority for split tasks in a way that priority doesn t change during migration. REFERENCES [1] R. I. Davis and A. Burns, Improved priority assignment for global fixed priority pre-emptive scheduling in multiprocessor real-time systems, Real-Time Syst., vol. 47, no. 1, pp. 1-40, Sep
7 [2] G. Buttazzo, Hard real-time computing systems: predictable scheduling algorithms and applications, 2005 [3] S. Schmidhuber, M. Deubzer, and J. Mottok. Genetic Optimization of Real-Time Multicore Systems with respect to Communication-Based Metrics. In Proceedings of the 2nd Applied Research Conference, ISBN , pages SHAKER Verlag, June [4] M. Deubzer, Robust Scheduling of Real-Time Applications on Efficient Embedded Multicore Systems, [5] Timing-Architects, TA Toolsuite Version TA Academic and Research License Program, [6] C. L. L. J.W.Layland, Scheduling Algorithms for Multiprogramming in a Hard- Real-Time Environment Scheduling Algorithms for Multiprogramming, no. 1, pp. 46?61, [7] N. C. Audsley, Optimal Priority Assignment and Feasibility of static priority tasks with arbitrary start times, no. November, [8] J. Y. T. L. and J.Whitehead, On the complexity of fixedpriority scheduling of periodic real-time tasks. [9] M. R. Systems, R. I. Davis, and A. Burns, Priority Assignment for Global Fixed Priority Pre-emptive Scheduling in, [10] R. I. Davis and a. Burns, Robust Priority Assignment for Fixed Priority Real-Time Systems, 28th IEEE Int. Real-Time Syst. Symp. (RTSS 2007), vol. 2, pp. 3?14, Dec [11] F. Nemati, Resource Sharing in Real-Time Systems on Multiprocessors, [12] S. Samii, Y. Yin, Z. Peng, P. Eles, and Y. Zhang, Immune Genetic Algorithms for Optimization of Task Priorities and FlexRay Frame Identifiers, th IEEE Int. Conf. Embed. Real-Time Comput. Syst. Appl., pp. 486?493, Aug [13] J. J. Guti, M. Marcos, E. Azketa, and J. P. Uribe, Permutational genetic algorithm for the optimized assignment of priorities to tasks and messages in distributed real-time systems, [14] P. L. Naga, R. H. Murga, I. Inza, and S. Dizdarevic, Genetic Algorithms for the Travelling Salesman Problem: A Review of Representations and Operators, no. Holland 1975, pp , [15] M. A. Moncusi and J. M. Banus, A new heuristic algorithm to assign priorities and resources to tasks with end-to-end deadlines. [16] R. I. Davis and A. Burns, A Survey of Hard Real-Time Scheduling for Multiprocessor Systems, vol. 1, no , [17] E. Lalo, Task Priority Optimization in Multi-Core Embedded Systems, Regensburg, [18] U. D. E. Nice, S. Antipolis, L. Torres, and L. Torres, Energyaware Scheduling for Multiprocessor Real-time Systems, 2011.
Predictable response times in event-driven real-time systems
Predictable response times in event-driven real-time systems Automotive 2006 - Security and Reliability in Automotive Systems Stuttgart, October 2006. Presented by: Michael González Harbour mgh@unican.es
More informationLecture 3 Theoretical Foundations of RTOS
CENG 383 Real-Time Systems Lecture 3 Theoretical Foundations of RTOS Asst. Prof. Tolga Ayav, Ph.D. Department of Computer Engineering Task States Executing Ready Suspended (or blocked) Dormant (or sleeping)
More informationLecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses
Overview of Real-Time Scheduling Embedded Real-Time Software Lecture 3 Lecture Outline Overview of real-time scheduling algorithms Clock-driven Weighted round-robin Priority-driven Dynamic vs. static Deadline
More informationReal-Time Scheduling 1 / 39
Real-Time Scheduling 1 / 39 Multiple Real-Time Processes A runs every 30 msec; each time it needs 10 msec of CPU time B runs 25 times/sec for 15 msec C runs 20 times/sec for 5 msec For our equation, A
More information174: Scheduling Systems. Emil Michta University of Zielona Gora, Zielona Gora, Poland 1 TIMING ANALYSIS IN NETWORKED MEASUREMENT CONTROL SYSTEMS
174: Scheduling Systems Emil Michta University of Zielona Gora, Zielona Gora, Poland 1 Timing Analysis in Networked Measurement Control Systems 1 2 Introduction to Scheduling Systems 2 3 Scheduling Theory
More informationPartition Scheduling in APEX Runtime Environment for Embedded Avionics Software
Partition Scheduling in APEX Runtime Environment for Embedded Avionics Software Yang-Hang Lee CISE Department, University of Florida Gainesville, FL 32611 Phone: (352) 392-1536 Fax: (352) 392-1220 Email:
More informationScheduling Imprecise Tasks in Real-Time Distributed Systems
Scheduling Imprecise Tasks in Real-Time Distributed Systems Rômulo Silva de Oliveira, Joni da Silva Fraga and Jean-Marie Farines Universidade Federal de Santa Catarina LCMI-DAS-UFSC, Caixa Postal 476 Florianópolis-SC,
More informationModular Real-Time Linux
Modular Real-Time Linux Shinpei Kato Department of Information and Computer Science, Keio University 3-14-1 Hiyoshi, Kohoku, Yokohama, Japan shinpei@ny.ics.keio.ac.jp Nobuyuki Yamasaki Department of Information
More informationReal-Time Software. Basic Scheduling and Response-Time Analysis. René Rydhof Hansen. 21. september 2010
Real-Time Software Basic Scheduling and Response-Time Analysis René Rydhof Hansen 21. september 2010 TSW (2010e) (Lecture 05) Real-Time Software 21. september 2010 1 / 28 Last Time Time in a real-time
More informationSoft Real-Time Task Response Time Prediction in Dynamic Embedded Systems
Soft Real-Time Task Response Time Prediction in Dynamic Embedded Systems Cássia Yuri Tatibana, Carlos Montez and Rômulo Silva de Oliveira Universidade Federal de Santa Catarina, Pós-Graduação em Engenharia
More informationScheduling Sporadic Tasks with Shared Resources in Hard-Real-Time Systems
Scheduling Sporadic Tasks with Shared Resources in Hard-Real- Systems Kevin Jeffay * University of North Carolina at Chapel Hill Department of Computer Science Chapel Hill, NC 27599-3175 jeffay@cs.unc.edu
More informationOperatin g Systems: Internals and Design Principle s. Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings
Operatin g Systems: Internals and Design Principle s Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings Operating Systems: Internals and Design Principles Bear in mind,
More informationHARD REAL-TIME SCHEDULING: THE DEADLINE-MONOTONIC APPROACH 1. Department of Computer Science, University of York, York, YO1 5DD, England.
HARD REAL-TIME SCHEDULING: THE DEADLINE-MONOTONIC APPROACH 1 N C Audsley A Burns M F Richardson A J Wellings Department of Computer Science, University of York, York, YO1 5DD, England ABSTRACT The scheduling
More informationReal Time Scheduling Basic Concepts. Radek Pelánek
Real Time Scheduling Basic Concepts Radek Pelánek Basic Elements Model of RT System abstraction focus only on timing constraints idealization (e.g., zero switching time) Basic Elements Basic Notions task
More informationREAL TIME OPERATING SYSTEMS. Lesson-10:
REAL TIME OPERATING SYSTEMS Lesson-10: Real Time Operating System 1 1. Real Time Operating System Definition 2 Real Time A real time is the time which continuously increments at regular intervals after
More informationLong-term monitoring of apparent latency in PREEMPT RT Linux real-time systems
Long-term monitoring of apparent latency in PREEMPT RT Linux real-time systems Carsten Emde Open Source Automation Development Lab (OSADL) eg Aichhalder Str. 39, 78713 Schramberg, Germany C.Emde@osadl.org
More informationCPU Scheduling Outline
CPU Scheduling Outline What is scheduling in the OS? What are common scheduling criteria? How to evaluate scheduling algorithms? What are common scheduling algorithms? How is thread scheduling different
More informationReal-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur
Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No. # 26 Real - Time POSIX. (Contd.) Ok Good morning, so let us get
More informationAperiodic Task Scheduling
Aperiodic Task Scheduling Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2014 年 11 月 19 日 These slides use Microsoft clip arts. Microsoft copyright
More informationLec. 7: Real-Time Scheduling
Lec. 7: Real-Time Scheduling Part 1: Fixed Priority Assignment Vijay Raghunathan ECE568/CS590/ECE495/CS490 Spring 2011 Reading List: RM Scheduling 2 [Balarin98] F. Balarin, L. Lavagno, P. Murthy, and A.
More informationMultiprocessor Scheduling and Scheduling in Linux Kernel 2.6
Multiprocessor Scheduling and Scheduling in Linux Kernel 2.6 Winter Term 2008 / 2009 Jun.-Prof. Dr. André Brinkmann Andre.Brinkmann@uni-paderborn.de Universität Paderborn PC² Agenda Multiprocessor and
More informationImproved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server
Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server Gerhard Fohler, Tomas Lennvall Mälardalen University Västeras, Sweden gfr, tlv @mdh.se Giorgio
More informationThe simple case: Cyclic execution
The simple case: Cyclic execution SCHEDULING PERIODIC TASKS Repeat a set of aperiodic tasks at a specific rate (cycle) 1 2 Periodic tasks Periodic tasks (the simplified case) Scheduled to run Arrival time
More informationN. Audsley. A. Burns Department of Computer Science, University of York, UK. ABSTRACT
REAL-TIME SYSTEM SCHEDULING N Audsley A Burns Department of Computer Science, University of York, UK ABSTRACT Recent results in the application of scheduling theory to dependable real-time systems are
More informationReal-Time Scheduling (Part 1) (Working Draft) Real-Time System Example
Real-Time Scheduling (Part 1) (Working Draft) Insup Lee Department of Computer and Information Science School of Engineering and Applied Science University of Pennsylvania www.cis.upenn.edu/~lee/ CIS 41,
More informationOperating Systems. III. Scheduling. http://soc.eurecom.fr/os/
Operating Systems Institut Mines-Telecom III. Scheduling Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/os/ Outline Basics of Scheduling Definitions Switching
More information4. Fixed-Priority Scheduling
Simple workload model 4. Fixed-Priority Scheduling Credits to A. Burns and A. Wellings The application is assumed to consist of a fixed set of tasks All tasks are periodic with known periods This defines
More informationModule 6. Embedded System Software. Version 2 EE IIT, Kharagpur 1
Module 6 Embedded System Software Version 2 EE IIT, Kharagpur 1 Lesson 30 Real-Time Task Scheduling Part 2 Version 2 EE IIT, Kharagpur 2 Specific Instructional Objectives At the end of this lesson, the
More informationGlobal Multiprocessor Real-Time Scheduling as a Constraint Satisfaction Problem
Global Multiprocessor Real-Time Scheduling as a Constraint Satisfaction Problem Liliana Cucu-Grosean & Olivier Buffet INRIA Nancy Grand-Est 615 rue du Jardin Botanique 54600 Villers-lès-Nancy, France firstname.lastname@loria.fr
More information!! #!! %! #! & ((() +, %,. /000 1 (( / 2 (( 3 45 (
!! #!! %! #! & ((() +, %,. /000 1 (( / 2 (( 3 45 ( 6 100 IEEE TRANSACTIONS ON COMPUTERS, VOL. 49, NO. 2, FEBRUARY 2000 Replica Determinism and Flexible Scheduling in Hard Real-Time Dependable Systems Stefan
More informationPerformance Comparison of RTOS
Performance Comparison of RTOS Shahmil Merchant, Kalpen Dedhia Dept Of Computer Science. Columbia University Abstract: Embedded systems are becoming an integral part of commercial products today. Mobile
More informationA Survey of Fitting Device-Driver Implementations into Real-Time Theoretical Schedulability Analysis
A Survey of Fitting Device-Driver Implementations into Real-Time Theoretical Schedulability Analysis Mark Stanovich Florida State University, USA Contents 1 Introduction 2 2 Scheduling Theory 3 2.1 Workload
More informationCPU Scheduling. CPU Scheduling
CPU Scheduling Electrical and Computer Engineering Stephen Kim (dskim@iupui.edu) ECE/IUPUI RTOS & APPS 1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling
More informationCPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS
CPU SCHEDULING CPU SCHEDULING (CONT D) Aims to assign processes to be executed by the CPU in a way that meets system objectives such as response time, throughput, and processor efficiency Broken down into
More informationModule 8. Industrial Embedded and Communication Systems. Version 2 EE IIT, Kharagpur 1
Module 8 Industrial Embedded and Communication Systems Version 2 EE IIT, Kharagpur 1 Lesson 37 Real-Time Operating Systems: Introduction and Process Management Version 2 EE IIT, Kharagpur 2 Instructional
More informationDeciding which process to run. (Deciding which thread to run) Deciding how long the chosen process can run
SFWR ENG 3BB4 Software Design 3 Concurrent System Design 2 SFWR ENG 3BB4 Software Design 3 Concurrent System Design 11.8 10 CPU Scheduling Chapter 11 CPU Scheduling Policies Deciding which process to run
More informationOperating Systems, 6 th ed. Test Bank Chapter 7
True / False Questions: Chapter 7 Memory Management 1. T / F In a multiprogramming system, main memory is divided into multiple sections: one for the operating system (resident monitor, kernel) and one
More informationComparison of Service Call Implementations in an AUTOSAR Multi-core OS
Comparison of Service Call Implementations in an AUTOSAR Multi-core OS Christian Bradatsch, Florian Kluge, Theo Ungerer Systems and Networking Department of Computer Science University of Augsburg Augsburg,
More informationAn Empirical Study and Analysis of the Dynamic Load Balancing Techniques Used in Parallel Computing Systems
An Empirical Study and Analysis of the Dynamic Load Balancing Techniques Used in Parallel Computing Systems Ardhendu Mandal and Subhas Chandra Pal Department of Computer Science and Application, University
More informationEmbedded Systems. 6. Real-Time Operating Systems
Embedded Systems 6. Real-Time Operating Systems Lothar Thiele 6-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic
More informationEfficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration
Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration 1 Harish H G, 2 Dr. R Girisha 1 PG Student, 2 Professor, Department of CSE, PESCE Mandya (An Autonomous Institution under
More informationICS 143 - Principles of Operating Systems
ICS 143 - Principles of Operating Systems Lecture 5 - CPU Scheduling Prof. Nalini Venkatasubramanian nalini@ics.uci.edu Note that some slides are adapted from course text slides 2008 Silberschatz. Some
More informationQuantum Support for Multiprocessor Pfair Scheduling in Linux
Quantum Support for Multiprocessor fair Scheduling in Linux John M. Calandrino and James H. Anderson Department of Computer Science, The University of North Carolina at Chapel Hill Abstract This paper
More informationResource Synchronization in Hierarchically Scheduled Real-Time Systems using Preemptive Critical Sections
2014 IEEE 17th International Symposium on Object/Component-Oriented Real-Time Distributed Computing Resource Synchronization in Hierarchically Scheduled Real-Time Systems using Preemptive Critical Sections
More informationAperiodic Task Scheduling
Aperiodic Task Scheduling Gerhard Fohler Mälardalen University, Sweden gerhard.fohler@mdh.se Real-Time Systems Gerhard Fohler 2005 Non Periodic Tasks So far periodic events and tasks what about others?
More information3. Scheduling issues. Common approaches /1. Common approaches /2. Common approaches /3. 2012/13 UniPD / T. Vardanega 23/01/2013. Real-Time Systems 1
Common approaches /1 3. Scheduling issues Clock-driven (time-driven) scheduling Scheduling decisions are made beforehand (off line) and carried out at predefined time instants The time instants normally
More informationIntegrating job parallelism in real-time scheduling theory
Integrating job parallelism in real-time scheduling theory Sébastien Collette Liliana Cucu Joël Goossens Abstract We investigate the global scheduling of sporadic, implicit deadline, real-time task systems
More informationRoad Map. Scheduling. Types of Scheduling. Scheduling. CPU Scheduling. Job Scheduling. Dickinson College Computer Science 354 Spring 2010.
Road Map Scheduling Dickinson College Computer Science 354 Spring 2010 Past: What an OS is, why we have them, what they do. Base hardware and support for operating systems Process Management Threads Present:
More informationSOFTWARE VERIFICATION RESEARCH CENTRE THE UNIVERSITY OF QUEENSLAND. Queensland 4072 Australia TECHNICAL REPORT. No. 02-19. Real-Time Scheduling Theory
SOFTWARE VERIFICATION RESEARCH CENTRE THE UNIVERSITY OF QUEENSLAND Queensland 4072 Australia TECHNICAL REPORT No. 02-19 Real-Time Scheduling Theory C. J. Fidge April 2002 Phone: +61 7 3365 1003 Fax: +61
More informationPriority-Driven Scheduling
Priority-Driven Scheduling Advantages of Priority-Driven Scheduling Priority-driven scheduling is easy to implement. It does not require the information on the release times and execution times of the
More informationCommonly Used Approaches to Real-Time Scheduling
Integre Technical Publishing Co., Inc. Liu January 13, 2000 8:46 a.m. chap4 page 60 C H A P T E R 4 Commonly Used Approaches to Real-Time Scheduling This chapter provides a brief overview of three commonly
More informationExercises : Real-time Scheduling analysis
Exercises : Real-time Scheduling analysis Frank Singhoff University of Brest June 2013 Exercise 1 : Fixed priority scheduling and Rate Monotonic priority assignment Given a set of tasks defined by the
More informationEffective Scheduling Algorithm and Scheduler Implementation for use with Time-Triggered Co-operative Architecture
http://dx.doi.org/10.5755/j01.eee.20.6.7282 ELEKTRONIKA IR ELEKTROTECHNIKA, ISSN 1392 1215, VOL. 20, NO. 6, 2014 Effective Scheduling Algorithm and Scheduler Implementation for use with Time-Triggered
More informationScheduling. Yücel Saygın. These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum
Scheduling Yücel Saygın These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum 1 Scheduling Introduction to Scheduling (1) Bursts of CPU usage alternate with periods
More informationMaster thesis. Title: Real-Time Scheduling methods for High Performance Signal Processing Applications on Multicore platform
Master thesis School of Information Science, Computer and Electrical Engineering Master report, IDE 1260, August 2012 Subject: Master s Thesis in Embedded and Intelligent Systems Title: Real-Time Scheduling
More informationOperating System: Scheduling
Process Management Operating System: Scheduling OS maintains a data structure for each process called Process Control Block (PCB) Information associated with each PCB: Process state: e.g. ready, or waiting
More informationOPERATING SYSTEMS SCHEDULING
OPERATING SYSTEMS SCHEDULING Jerry Breecher 5: CPU- 1 CPU What Is In This Chapter? This chapter is about how to get a process attached to a processor. It centers around efficient algorithms that perform
More informationA Study on the Application of Existing Load Balancing Algorithms for Large, Dynamic, Heterogeneous Distributed Systems
A Study on the Application of Existing Load Balancing Algorithms for Large, Dynamic, Heterogeneous Distributed Systems RUPAM MUKHOPADHYAY, DIBYAJYOTI GHOSH AND NANDINI MUKHERJEE Department of Computer
More informationMulti-service Load Balancing in a Heterogeneous Network with Vertical Handover
1 Multi-service Load Balancing in a Heterogeneous Network with Vertical Handover Jie Xu, Member, IEEE, Yuming Jiang, Member, IEEE, and Andrew Perkis, Member, IEEE Abstract In this paper we investigate
More informationToday. Intro to real-time scheduling Cyclic executives. Scheduling tables Frames Frame size constraints. Non-independent tasks Pros and cons
Today Intro to real-time scheduling Cyclic executives Scheduling tables Frames Frame size constraints Generating schedules Non-independent tasks Pros and cons Real-Time Systems The correctness of a real-time
More informationReal Time Programming: Concepts
Real Time Programming: Concepts Radek Pelánek Plan at first we will study basic concepts related to real time programming then we will have a look at specific programming languages and study how they realize
More informationPartitioned EDF Scheduling for Multiprocessors using a C=D Scheme
Partitioned EDF Scheduling for Multiprocessors using a C=D Scheme A. Burns, R.I. Davis, P. Wang and F. Zhang Department of Computer Science, University of York, UK. Abstract An EDF-based task-splitting
More informationMANY complex distributed embedded systems with time
IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS 1 Optimizing the Software Architecture for Extensibility in Hard Real-Time Distributed Systems Qi Zhu, Yang Yang, Marco Di Natale, Eelco Scholte, and Alberto
More informationA Clone-Pair Approach for the Determination of the Itinerary of Imprecise Mobile Agents with Firm Deadlines
A Clone-Pair Approach for the Determination of the Itinerary of Imprecise Mobile Agents with Firm Deadlines Luciana Rech, Carlos Montez and Rômulo de Oliveira Department of Automation and Systems Engineering
More informationPartitioned real-time scheduling on heterogeneous shared-memory multiprocessors
Partitioned real-time scheduling on heterogeneous shared-memory multiprocessors Martin Niemeier École Polytechnique Fédérale de Lausanne Discrete Optimization Group Lausanne, Switzerland martin.niemeier@epfl.ch
More informationREAL TIME OPERATING SYSTEMS. Lesson-18:
REAL TIME OPERATING SYSTEMS Lesson-18: Round Robin Time Slicing of tasks of equal priorities 1 1. Common scheduling models 2 Common scheduling models Cooperative Scheduling of ready tasks in a circular
More informationNumerical Research on Distributed Genetic Algorithm with Redundant
Numerical Research on Distributed Genetic Algorithm with Redundant Binary Number 1 Sayori Seto, 2 Akinori Kanasugi 1,2 Graduate School of Engineering, Tokyo Denki University, Japan 10kme41@ms.dendai.ac.jp,
More informationScheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems
Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems Ingo Sander ingo@kth.se Liu: Chapter 7 IL2212 Embedded Software 1 Outline l System Model and Assumptions l Scheduling Aperiodic Jobs l
More informationReal-Time Monitoring Framework for Parallel Processes
International Journal of scientific research and management (IJSRM) Volume 3 Issue 6 Pages 3134-3138 2015 \ Website: www.ijsrm.in ISSN (e): 2321-3418 Real-Time Monitoring Framework for Parallel Processes
More informationCHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER
CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER To provide the transparency of the system the user space is implemented in software as Scheduler. Given the sketch of the architecture, a low overhead scheduler
More informationEnhancing the Monitoring of Real-Time Performance in Linux
Master of Science Thesis Enhancing the Monitoring of Real-Time Performance in Linux Author: Nima Asadi nai10001@student.mdh.se Supervisor: Mehrdad Saadatmand mehrdad.saadatmand@mdh.se Examiner: Mikael
More informationDesign Pattern for the Adaptive Scheduling of Real-Time Tasks with Multiple Versions in RTSJ
Design Pattern for the Adaptive Scheduling of Real-Time Tasks with Multiple Versions in RTSJ Rodrigo Gonçalves, Rômulo Silva de Oliveira, Carlos Montez LCMI Depto. de Automação e Sistemas Univ. Fed. de
More informationReal-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur
Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No. # 06 Basics of Real-Time Task Scheduling Let us get started.
More informationReplication on Virtual Machines
Replication on Virtual Machines Siggi Cherem CS 717 November 23rd, 2004 Outline 1 Introduction The Java Virtual Machine 2 Napper, Alvisi, Vin - DSN 2003 Introduction JVM as state machine Addressing non-determinism
More informationAn Approach to Load Balancing In Cloud Computing
An Approach to Load Balancing In Cloud Computing Radha Ramani Malladi Visiting Faculty, Martins Academy, Bangalore, India ABSTRACT: Cloud computing is a structured model that defines computing services,
More informationMemory Allocation Technique for Segregated Free List Based on Genetic Algorithm
Journal of Al-Nahrain University Vol.15 (2), June, 2012, pp.161-168 Science Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm Manal F. Younis Computer Department, College
More informationAnalysis and Simulation of Scheduling Techniques for Real-Time Embedded Multi-core Architectures
Institute of Software Technology Department of Programming Languages and Compilers University of Stuttgart Universitätsstraße 38 D 70569 Stuttgart Master Thesis Nr. 3578 Analysis and Simulation of Scheduling
More informationSYSTEM ecos Embedded Configurable Operating System
BELONGS TO THE CYGNUS SOLUTIONS founded about 1989 initiative connected with an idea of free software ( commercial support for the free software ). Recently merged with RedHat. CYGNUS was also the original
More informationReal-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2
Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2 Lecture Outline Scheduling periodic tasks The rate monotonic algorithm Definition Non-optimality Time-demand analysis...
More informationDatabase Replication with Oracle 11g and MS SQL Server 2008
Database Replication with Oracle 11g and MS SQL Server 2008 Flavio Bolfing Software and Systems University of Applied Sciences Chur, Switzerland www.hsr.ch/mse Abstract Database replication is used widely
More informationTIME PREDICTABLE CPU AND DMA SHARED MEMORY ACCESS
TIME PREDICTABLE CPU AND DMA SHARED MEMORY ACCESS Christof Pitter Institute of Computer Engineering Vienna University of Technology, Austria cpitter@mail.tuwien.ac.at Martin Schoeberl Institute of Computer
More informationChapter 4 Software Lifecycle and Performance Analysis
Chapter 4 Software Lifecycle and Performance Analysis This chapter is aimed at illustrating performance modeling and analysis issues within the software lifecycle. After having introduced software and
More informationEfficient overloading techniques for primary-backup scheduling in real-time systems
ARTICLE IN PRESS J. Parallel Distrib. Comput. 64 (24) 629 648 Efficient overloading techniques for primary-backup scheduling in real-time systems R. Al-Omari, a, Arun K. Somani, b and G. Manimaran b, *
More informationIntroduction to Scheduling Theory
Introduction to Scheduling Theory Arnaud Legrand Laboratoire Informatique et Distribution IMAG CNRS, France arnaud.legrand@imag.fr November 8, 2004 1/ 26 Outline 1 Task graphs from outer space 2 Scheduling
More informationAnnouncements. Basic Concepts. Histogram of Typical CPU- Burst Times. Dispatcher. CPU Scheduler. Burst Cycle. Reading
Announcements Reading Chapter 5 Chapter 7 (Monday or Wednesday) Basic Concepts CPU I/O burst cycle Process execution consists of a cycle of CPU execution and I/O wait. CPU burst distribution What are the
More informationChapter 5 Process Scheduling
Chapter 5 Process Scheduling CPU Scheduling Objective: Basic Scheduling Concepts CPU Scheduling Algorithms Why Multiprogramming? Maximize CPU/Resources Utilization (Based on Some Criteria) CPU Scheduling
More informationSystem Software and TinyAUTOSAR
System Software and TinyAUTOSAR Florian Kluge University of Augsburg, Germany parmerasa Dissemination Event, Barcelona, 2014-09-23 Overview parmerasa System Architecture Library RTE Implementations TinyIMA
More informationReal-Time Task Scheduling for Energy-Aware Embedded Systems 1
Real-Time Task Scheduling for Energy-Aware Embedded Systems 1 Vishnu Swaminathan and Krishnendu Chakrabarty Dept. of Electrical & Computer Engineering Duke University Durham, NC 27708 fvishnus,krishg@ee.duke.edu
More informationEfficient Scheduling of Sporadic, Aperiodic, and Periodic Tasks with Complex Constraints
Efficient Scheduling of Sporadic, Aperiodic, and Periodic Tasks with Complex Constraints Damir Isović and Gerhard Fohler Department of Computer Engineering Mälardalen University, Sweden dic,gfr@mdh.se
More informationAda Real-Time Services and Virtualization
Ada Real-Time Services and Virtualization Juan Zamorano, Ángel Esquinas, Juan A. de la Puente Universidad Politécnica de Madrid, Spain jzamora,aesquina@datsi.fi.upm.es, jpuente@dit.upm.es Abstract Virtualization
More informationMAXIMIZING RESTORABLE THROUGHPUT IN MPLS NETWORKS
MAXIMIZING RESTORABLE THROUGHPUT IN MPLS NETWORKS 1 M.LAKSHMI, 2 N.LAKSHMI 1 Assitant Professor, Dept.of.Computer science, MCC college.pattukottai. 2 Research Scholar, Dept.of.Computer science, MCC college.pattukottai.
More informationScheduling Real-time Tasks: Algorithms and Complexity
Scheduling Real-time Tasks: Algorithms and Complexity Sanjoy Baruah The University of North Carolina at Chapel Hill Email: baruah@cs.unc.edu Joël Goossens Université Libre de Bruxelles Email: joel.goossens@ulb.ac.be
More informationWhite Paper. Real-time Capabilities for Linux SGI REACT Real-Time for Linux
White Paper Real-time Capabilities for Linux SGI REACT Real-Time for Linux Abstract This white paper describes the real-time capabilities provided by SGI REACT Real-Time for Linux. software. REACT enables
More informationBranch-and-Price Approach to the Vehicle Routing Problem with Time Windows
TECHNISCHE UNIVERSITEIT EINDHOVEN Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents
More informationChapter 5 Linux Load Balancing Mechanisms
Chapter 5 Linux Load Balancing Mechanisms Load balancing mechanisms in multiprocessor systems have two compatible objectives. One is to prevent processors from being idle while others processors still
More informationRESEARCH PAPER International Journal of Recent Trends in Engineering, Vol 1, No. 1, May 2009
An Algorithm for Dynamic Load Balancing in Distributed Systems with Multiple Supporting Nodes by Exploiting the Interrupt Service Parveen Jain 1, Daya Gupta 2 1,2 Delhi College of Engineering, New Delhi,
More informationCompletely Fair Scheduler and its tuning 1
Completely Fair Scheduler and its tuning 1 Jacek Kobus and Rafał Szklarski 1 Introduction The introduction of a new, the so called completely fair scheduler (CFS) to the Linux kernel 2.6.23 (October 2007)
More informationA Simultaneous Solution for General Linear Equations on a Ring or Hierarchical Cluster
Acta Technica Jaurinensis Vol. 3. No. 1. 010 A Simultaneous Solution for General Linear Equations on a Ring or Hierarchical Cluster G. Molnárka, N. Varjasi Széchenyi István University Győr, Hungary, H-906
More informationMulti-core real-time scheduling
Multi-core real-time scheduling Credits: Anne-Marie Déplanche, Irccyn, Nantes (many slides come from her presentation at ETR, Brest, September 2011) 1 Multi-core real-time scheduling! Introduction: problem
More information