Computers and Electrical Engineering

Size: px
Start display at page:

Download "Computers and Electrical Engineering"

Transcription

1 Computers and Electrical Engineering 37 (2011) Contents lists available at ScienceDirect Computers and Electrical Engineering journal homepage: A real-time scheduling framework for embedded systems with environmental energy harvesting q Hussein EL Ghor a, Maryline Chetto a,, Rafic Hage Chehade b a IRCCyN Laboratory, University of Nantes, 1 Rue de la Noe, F Nantes, France b Lebanese University, IUT Saida, Lebanon article info abstract Article history: Received 6 May 2010 Received in revised form 2 May 2011 Accepted 2 May 2011 Available online 31 May 2011 Real-time scheduling refers to the problem in which there is a deadline associated with the execution of a task. In this paper, we address the scheduling problem for a uniprocessor platform that is powered by a renewable energy storage unit and uses a recharging system such as photovoltaic cells. First, we describe our model where two constraints need to be studied: energy and deadlines. Since executing tasks require a certain amount of energy, classical task scheduling like earliest deadline is no longer convenient. We present an on-line scheduling scheme, called earliest deadline with energy guarantee (EDeg), that jointly accounts for characteristics of the energy source, capacity of the energy storage as well as energy consumption of the tasks, and time. In order to demonstrate the benefits of our algorithm, we evaluate it by means of simulation. We show that EDeg outperforms energy non-clairvoyant algorithms in terms of both deadline miss rate and size of the energy storage unit. Ó 2011 Elsevier Ltd. All rights reserved. 1. Introduction The power management is becoming the central issue in embedded systems that must carry their own power source and cannot rely on a power outlet on the wall. Without power, the system is useless. In the consumer space such as mobile communication, the consequence may be minor; however, in the so-called hard real-time embedded systems, energy lack means a failure that can cost millions and even human lives. Traditionally, many embedded systems have been designed to be lowpower. But there is a fundamental difference between power-aware and low-power technologies. In a power-aware system, we have to make the best use of the available power and the goal of a scheduler is to assign real-time tasks to time slots such that all timing and power constraints are satisfied [1]. Nowdays, higher energy-density batteries and supercapacitors are being developed but the amount of energy available still severely limits the system s lifespan. On the other hand, in most wireless applications including sensor networks, recharging or replacing batteries is not practical or permitted and consequently alternative power sources which are present in the environment should be employed. Environmental energy harvesting is deemed a promising approach because many sensing environments provide sufficient energy that can be harvested for providing power on an infinite time. Several technologies to extract energy from the environment have been demonstrated including solar, motion-based, biochemical, and vibrational energies and many others are being developed. A key consideration that affects power management in an energy harvesting system is that instead of minimizing the energy consumption and maximizing the lifetime achieved as in classical energy storage operated devices, the system operates in a so-called energy neutral mode by consuming only as much energy as harvested [2]. q Reviews processed and approved for publication by Editor-in-Chief Dr. Manu Malek. Corresponding author. addresses: elghorh@irccyn.ec-nantes.fr (H. EL Ghor), maryline.chetto@univ-nantes.fr (M. Chetto), rafichajj@hotmail.com (R.H. Chehade) /$ - see front matter Ó 2011 Elsevier Ltd. All rights reserved. doi: /j.compeleceng

2 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) Embedded systems are generally real-time ones which have to compute a timely response to external stimuli. Real-time systems can be classified in three categories: hard, soft and weakly-hard. In hard real-time systems, all the application programs called tasks, must be guaranteed to complete within their deadlines. For soft real-time systems, it is acceptable to miss some of the deadlines occasionally with additional value for the system to finish the task, even if it is late. In weakly-hard real-time systems, tasks are allowed to miss some of their deadlines, but there is no associated value if they finish after the deadline. Whatever its category, a real-time embedded system is said to achieve energy neutral operation if its execution requirements can be supported forever despite energy limitations. This supposes to execute the tasks such that the energy used by them is always less than the energy harvested. A simple approach would be to build a harvester whose minimum instantaneous power at any instant is sufficient to supply the maximum power required by any executing task. Unfortunately, this has disadvantages, such as high costs and large space. Most embedded systems constructed to date do not extract power efficiently from the source. As a result, they use a much larger harvester (e.g. solar panel) than necessary to yield the same level of power as a more efficient one, or they rely on a larger, more expensive, higher capacity battery than needed in order to sustain extended operation. In both cases, the low harvesting efficiency limits the achievable performance and will preclude the system from many important applications. This has motivated researchers to design energy harvesting capabilities specifically dedicated to real-time embedded systems from about four years [3]. The crucial issue associated to these systems is to find scheduling mechanisms that can adapt their performance to the available energy profile. Up to now, when designing a real-time embedded system, the first concern has been usually time, leaving energy efficiency as a hopeful consequence of empiric decisions. Now, the primary concern is that power from solar panels or other free sources that cannot be stored (or stored with limited capacity) should be fully consumed greedily, or else this energy will be wasted. In this paper, we address the problem of scheduling real-time tasks on one processor to meet deadlines and energy constraints. The system we target here consists of a processing unit, an energy harvester and a rechargeable energy storage such as battery or supercapacitor. So, the problem we deal with can be formulated as follows: How can we schedule the tasks so as to guarantee their timing constraints perpetually by suitably exploiting both the processor and the available ambient energy? This work presents experimental results about a scheduling framework called earliest deadline with energy guarantee (EDeg) resulting from the extension of the earliest deadline as late as possible (EDL) server [4]. We modify earliest deadline first (EDF) scheduler so as to account for the properties of the energy source, capacity of the energy storage as well as energy consumption of the tasks. We propose a slack-based method for delaying tasks and making the processor inactive during recharging phases of the energy storage unit. On-line computing by how long the tasks should be delayed is possible thanks to EDL properties. The remainder of the paper is organized in the following manner. In the next section, we summarize related work. Section 3 describes the model and gives necessary terminology. In Section 4, we present background materials that are essential for the understanding of the paper. Section 5 is the presentation of our scheduling scheme, EDeg, with some indications about practical issues. Results of a simulation study are presented in Section 6. Section 7 concludes the paper and gives some new directions of work. 2. Related work Energy-aware real-time scheduling has been the subject of intensive research. Most of the works focus on either minimizing the energy consumption or maximizing the system performance such as the lifetime achieved under the energy constraints [5]. In such works, the rechargeability of the energy storage unit is always disregarded. Little work has explored the problem of scheduling real-time tasks in a uniprocessor rechargeable system. The question amounts to find a schedule which is able to execute all the tasks within the deadline and energy storage constraints i.e. without running out of energy. Classical priority driven scheduling has been extended to variable-voltage processors. The idea is to save power by slowing down the processor just enough to meet the deadlines [6]. But solely applying these techniques has limitations in energy harvesting systems because they minimize CPU power, rather than they dynamically manage power according to the profiles of both available energy and processor workload. In what follows, we review the main studies for scheduling tasks in real-time energy harvesting systems Scheduling frame based systems In [7], Allavena et al. address the problem of finding the scheduling of frame-based embedded systems which is able to execute all the tasks within the deadlines, starting with an energy storage fully charged, ending at the same energy level as when started. In this model, all task periods are identical and all task deadlines are equal to the common period. Consequently, the order of task execution within a frame is not crucial for whether the task set is schedulable or not. Moreover, the power scavenged by the energy source is assumed to be constant and all tasks consume energy at a constant rate. A solution is presented that schedules tasks in such a way that the wasted recharging energy is minimized and the energy storage level is at all times within two limits. The idea behind this algorithm is to insert as little idle time as necessary for recharging the energy storage and minimizing the length of the schedule. This work is certainly the first one to concentrate on a rechargeable system with hard real-time constraints. However, the solution only deals with frame based systems under

3 500 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) the restrictive hypothesis that each task is characterized by an instantaneous consumption power which is constant along time Scheduling with task rewards Weakly-hard real-time systems can be designed so as providing services with adjustable quality evaluated in terms of rewards. Reward-based scheduling was explored in the context of imprecise computation where real-time tasks consist of mandatory and optional parts and a reward function is associated with the length of the optional part [8]. Multiple versions allow quality of service tradeoffs by providing different levels of accuracy with different execution times and energy consumptions. When the harvested energy is temporarily low, the service must be lowered or suspended. The main issues are to maximize the overall reward and to determine the minimum battery capacity necessary to optimally exploit a given power source. The research presented in [9] propose off-line solutions in a single speed processor system while a solution with dynamic voltage scaling (DVS) has been proposed recently in [10] Scheduling with solar energy harvesting The first work that really makes adaptive power management for energy harvesting systems has been published in [11]. Their model captures the behaviour of an actual solar energy source through tracing its power profile. In that paper, the authors propose algorithms for tuning system duty cycle based on the parameters of the solar energy source. The system switches between active mode and sleep mode depending on harvesting energy and consequently may operate perpetually. Here, the problem is formulated as a linear program. This linear program has to be solved periodically. Within each period, adaptations of the duty cycle become necessary if the observed energy values differ from the predicted ones. The main drawback of the proposed algorithms is that they do not target at tasks in a real-time pattern. Dealing with real-time tasks under the strong variation of energy source with respect to time remains a central issue up to day [12] Scheduling tasks with constant power consumption Later in [3], Moser et al. focus on scheduling tasks with deadlines, periodic or not, that run on a uniprocessor system that is powered by a rechargeable storage unit. The source power is assumed to be predictable but time-varying. They propose lazy scheduling algorithm (LSA) and prove it to be optimal in terms of deadline miss ratio. LSA is a variation of the famous earliest deadline first scheduler [13]: the system starts executing a task only if the task is ready and has the earliest deadline among all ready tasks and the system is able to keep on running at the maximum power until the deadline of the task. In that work, the consumption power of the computing system is characterized by some maximum value which implies that for every task, its total energy consumption is directly connected to its execution time through the constant power of the processing device. The main disadvantage of this work is that the LSA algorithm executes tasks at full power and therefore, future tasks will violate deadlines because of limited energy. Moreover, in practice, the total energy which can be consumed by a task is not necessarily proportional to its execution time Scheduling with DVFS technology In [7], Allavena et al. describe an off-line scheduler that uses voltage and frequency selection (DVFS) for a frame based system. While they permit to reduce power consumption by slowing down task execution under deadline constraints, their approach relies on the unrealistic assumption that both the instantaneous consumption power and production power are constant. In 2008, Liu et al. propose an energy aware dynamic voltage and frequency selection algorithm, called EA-DVFS, for periodic tasks [14]. The purpose of EA-DVFS is to efficiently use the task slack and further reduce the deadline miss rate. In this algorithm, whether or not the system slows down the task execution for energy saving depends on the available energy. If the system has sufficient energy, the task is executed at its full speed; otherwise, it is stretched and executed at a lower speed. Unfortunately, this algorithm has limited impact since, in most embedded applications, the energy storage has a non constant recharging rate and every task is characterized by its own profile of power consumption which can vary along time Scheduling tasks with variable power consumption In practice, the total energy which can be consumed by a task has no correlation with the worst case execution time [15]. For every task, the worst case instantaneous consumption power depends on the circuitry as well as the instrumentation used by the task during and/or after its execution. Let us notice that the biggest energy consumption is not necessarily in the computer. It may come from actuators receiving output data from the tasks such as motors. Clearly, as an embedded system uses a unique energy storage considered as the critical resource of the system, a successful power-aware scheme must consider these non-computation activities and coordinate their power usage as a whole system.

4 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) Model and terminology 3.1. Task set A large number of energy-constrained embedded real-time systems operate in a cyclic basis, with a set of tasks that must execute before deadlines. We consider here an embedded system that is composed of periodic tasks as depicted in Fig. 1. The arrival times, energy demands and deadlines of the tasks are known in advance. A periodic task set can be denoted as follows: s ¼fs i ; i ¼ 1;...; ng. A four-tuple ðc i ; E i ; D i ; T i Þ is associated with each s i. In this characterization, task s i makes its initial request at time 0 and its subsequent requests at times kt i ; k ¼ 1; 2;...called release times. The least common multiple of T 1 ; T 2 ;...; T n (called the hyperperiod) is denoted by T LCM. Each request of s i requires a worst case execution time (WCET) of C i time units and has a worst case energy consumption (WCEC) of E i. We assume that the WCEC of a task has no relation with its WCET. A deadline for s i occurs D i units after each request by which task s i must have completed its execution. We assume that 0 < C i 6 D i 6 T i for each 1 6 i 6 n. We define the processor utilization as U p ¼ P n C i i¼1 T i and the energy utilization as U e ¼ P n E i i¼1. T i U p is the percentage of processing time if tasks of s are solely executed on the device. One can interpret U e, measured in joules/s, as the average power consumed by s when executing on the device. A job is any request that a task makes. A four-tuple ðr j ; C j ; E j ; d j Þ is associated with a job J j and gives its release time, WCET, WCEC and (absolute) deadline, respectively. A job can be preempted and later resumed at any time and there is no time or energy loss associated with such preemption Energy source In order to characterize the energy source, we have to concentrate on the harvested energy since it can incorporate all losses caused by power conversion and charging process. Generally, the harvested power is time-varying including solar energy which can be assumed constant on average in a long-term perspective. However, on a short-term perspective, the harvested power is highly unstable. Here, we assume that the energy source is uncontrolled but predictable: we cannot control it but its behaviour may be modeled to predict the expected availability at a given time within some error margin. Solar energy cannot be controlled but models for its dependence on diurnal and seasonal cycles are known and can be used to predict availability. The prediction error may be improved using commonly available weather forecasts for the place where the embedded system is deployed. Consequently, we define the worst case charging rate (WCCR), namely P r ðtþ, which is a lower bound on the harvested source power output. P r ðtþ is then the instantaneous charging rate that incorporates all losses caused by power conversion and charging process. We assume that energy production times can overlap with the consumption times. Clearly, we make no assumption about the nature and dynamics of the energy source, making our approach more easily implemented in real systems where data about the energy source may not be available beforehand. When available, the average power of the fluctuating energy source will be denoted as P r Energy storage Our system uses an ideal energy storage unit (supercapacitor or battery) that has a nominal capacity, namely E, corresponding to a maximum energy (expressed in Joules or Watts-hour). The energy level has to remain between two boundaries E min and E max with E ¼ E max E min. The stored energy may be used at any time later and does not leak any energy over time. If the storage is fully charged, and we continue to charge it, energy is wasted. In contrast, if the storage is fully discharged, no task can be executed. Fig. 1. A typical energy harvesting real-time system.

5 502 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) Definitions A schedule C for s is said to be valid if the deadlines of all tasks of s are met in C, starting with a storage fully charged. A task set s is said to be temporally-feasible if there exists a valid schedule for s without considering its energy constraints. A task set s is said to be feasible if there exists a valid schedule for s with considering its energy constraints. A scheduling algorithm will be called optimal if it finds a valid schedule whenever one exists. From previous definitions, it clearly appears that every task set s can be feasible only if U p 6 1 and Ue Background material Real-time task scheduling refers to determine the order in which tasks are to be executed. The problem of scheduling periodic tasks on one processor with no energy constraint has been an active area of research for more than thirty years [16]. There are two popular approaches: fixed-priority algorithms, including rate monotonic [13] and deadline monotonic [17], and dynamic-priority algorithms, including the earliest deadline first (EDF) algorithm [18]. EDF schedules at each instant of time t, the ready task (i.e. the task that may be processed and is not yet completed) whose deadline is closest to t. EDF is an optimal scheduling algorithm in the sense that if a set of tasks can be scheduled by any algorithm, then it can be scheduled by EDF. The EDF algorithm is typically preemptive, in the sense that, a newly arrived task may preempt the running task if its absolute deadline is shorter. This dynamic priority assignment allows EDF to exploit the full processor, reaching up to 100% of the available processing time. EDF can be used to schedule both periodic and aperiodic tasks, this is because the task order is based on the absolute deadline. Liu and Layland [13] proved that a periodic task set with deadlines equal to periods is schedulable by EDF if and only if the total processor utilization U p is less than or equal to one Static EDS In general, implementation of EDF consists in ordering tasks according to their urgency and executing them as soon as possible with no inserted idle time. Such implementation is known as earliest deadline as soon as possible (EDS) [4]. For a given periodic task set, the EDS schedule can be pre-computed and memorized in order to reduce scheduling overheads at run time. Consider a periodic task set s that is composed of three tasks, s ¼fs i ; j1 6 i 6 3 and s i ¼ðC i ; D i ; T i Þg. Let s 1 ¼ð3; 6; 9Þ; s 2 ¼ð3; 8; 12Þ and s 3 ¼ð3; 12; 18Þ. The EDS schedule produced on task set s during the first hyperperiod is depicted in Fig. 2: 4.2. Static EDL We may imagine an implementation of EDF that leads to execute periodic tasks as late as possible without causing their deadline to be missed. Then, determination of the latest start time for every instance requires preliminary construction of the schedule produced by the so-called earliest deadline as late as possible (EDL) algorithm [4]. The main idea of EDL is to differ the execution of tasks which results in maximizing the length of idle time periods at the beginning of the schedule. Determination of the duration and position of these idle times is done by mapping out the EDL schedule produced from time zero up to the end of the first hyperperiod thanks to recurrent formulae. This is realized by means of the two following vectors [19]: Static deadline vector K: it represents the time instants from 0 to the end of the first hyperperiod, at which idle times occur and is constructed from the distinct deadlines of tasks. K¼fk 0 ; k 1 ;...; k i ; k iþ1 ;...; k q g. We note that q 6 N þ 1 where N denotes the number of instances within ½0; T LCM Š. Pr Fig. 2. Static EDS schedule.

6 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) Fig. 3. Static EDL scheduling. Static idle time vector D: it represents the lengths of the idle times which start at time instants given by K. D¼fD 0 ; D 1 ;...; D i ; D iþ1 ;...; D q g. Let us consider the previous task set s. We note that K ¼ð0; 6; 8; 12; 15; 20; 24; 30; 32; 33Þ and D ¼ð2; 0; 1; 0; 2; 1; 0; 0; 0; 3Þ (see Fig. 3) Mixed scheduling EDS/EDL Fig. 4. Dynamic EDL schedule built at time 6. The slack time of a hard deadline task set at current time t is the length of the longest interval starting at t during which the processor may be idle continuously while still satisfying all the timing constraints. Slack time analysis has been extensively investigated in real-time server systems in which aperiodic (or sporadic) tasks are jointly scheduled with periodic tasks [19]. In these systems, the purpose of slack time analysis is to improve the response time of aperiodic tasks or to increase their acceptance ratio. Determining slack time at run-time amounts to compute the so-called dynamic EDL schedule precisely defined by the two following vectors: Dynamicdeadline vector K(t): it represents the time instants greater than or equal to t in the current hyperperiod, at which idle times occur. Dynamic idle time vector D(t): it represents the length of the idle times that starts at time instants given by K(t). Details of computation are given in [19]. Let us assume that the previous periodic task set has been scheduled according to EDS from time zero until time t ¼ 6. To determine the slack time at time 6, we compute the dynamic EDL schedule for the interval [6,36]. Fig. 4 enables us to verify that KðtÞ ¼ð6; 8; 12; 15; 20; 24; 30; 32; 33Þ, DðtÞ ¼ð2; 1; 0; 2; 1; 0; 0; 0; 3Þ and the slack time equals 2. In what follows, we will use the idea of slack stealing to postpone task execution whenever the energy level proves to be insufficient. Then recharging the energy storage unit must be achieved while still guaranteeing all the deadlines constraints. 5. A scheduling algorithm under renewable energy constraints Under energy constraints, the scheduling algorithm has to make the energy storage level be sufficient to provide energy for all future occurring tasks, considering their timing and energy requirements and the replenishment rate of the storage

7 504 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) unit. For this reason, scheduling tasks according to EDS or EDL may result in unnecessary deadline violations since they are not energy-clairvoyant Presentation of the algorithm The intuition behind the scheduling algorithm is to run tasks according to the earliest deadline first rule. However, before authorizing a task to execute, we must ensure that the energy storage is sufficient to provide energy for all future occurring tasks. When this condition is not verified, the processor has to sleep so that the storage unit recharges as much as possible and as long as all the deadlines can still be met despite execution postponement. Following the idea described above, we propose the earliest deadline with energy guarantee (EDeg) algorithm. To formally present the algorithm, we need to introduce two concepts: The slack energy of job J j at time t represents the amount of energy surplus in the storage that can be used from t until the start time of J j while still guaranteeing its timing and energy requirements. The slack energy of job J j at time t is given by EðtÞþ R d j P t r ðtþdt A j where A j is the processor demand within t; d j required by the periodic instances ready to be processed between t and d j. The slack energy of the periodic task set at current time t, is the maximum amount of energy that can be consumed from t continuously while still satisfying all the timing constraints. The slack energy at time t is computed only when there is at least one job, say J j which will be released after t and has a deadline d j that is less than or equal to that of the highest priority job, ready at t. The slack energy of the system is determined by the minimum slack energy of all the jobs. The three major components of EDeg algorithm are E(t), Slack.energy (t) and it Slack.time(t). In details, t is the current time, E(t) is the residual capacity of the storage unit at time t i.e. the energy that is currently stored. Slack.energy(t) and Slack.- time(t) are, respectively the slack energy and the slack time at time t. PENDING is a Boolean which equals true whenever there is at least one job in the ready list queue. We use the function wait() to put the processor to sleep and function execute() to put the processor to run the ready job with the earliest deadline. Characteristics of EDeg scheduling are the following: We never run out of storage (that is, we never dispatch tasks when there is no energy); this is obvious from the algorithm that does not allow tasks to run after E min. We start charging the storage unit when, either it is empty or there is no more sufficient energy to guarantee the feasible execution of all future occurring tasks i.e. the system has no more slack energy. The charging process aims to charge at the maximum level, E max, provided there is sufficient slack time. Slack time is computed when entering the wait state and subsequently decremented at each time instant. We stop repleneshing the storage unit i.e. the processing device enters the active state as soon as there is no more slack time or the storage unit is fully replenished. Such condition can be easily detected through an interrupt mechanism and adequate circuitry between energy storage unit and processing device. We only waste recharging power when there are no pending tasks and the storage unit is full. The framework of EDeg scheduling is as follows: Algorithm 1. Earliest deadline with energy guarantee algorithm (EDeg) while (1) do while PENDING=true do while (EðtÞ > E min and Slack:energyðtÞ > 0) do execute() end while while (EðtÞ < E max and Slack:timeðtÞ > 0) do wait() end while end while while PENDING=false do wait() end while end while 5.2. Efficiency The computations of Slack.energy(t) and Slack.time(t) are thus the major keys to the operation of the EDeg algorithm. As shown in [19], the slack time of a periodic task set at a given time instant can be obtained on-line by computing the dynamic

8 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) EDL schedule, with complexity OðK:nÞ. n is the number of periodic tasks, and K is equal to br=pc, where R and p are, respectively the longest deadline and the shortest period of current ready tasks. The complexity for computing the slack energy is OðK:nÞ too. As EDeg has low and constant space requirements, this makes it easily implementable on many low-power, unsophisticated hardware platforms including micro-controllers. A suggestion to improve the efficiency of the scheduler in terms of overhead is to compute statically a lower bound on the slack time and a lower bound on the slack energy. And we use them at run-time instead of exact values which would require on-line computations. The effect will be only, first to stop charging earlier and second to stop executing tasks earlier. As a consequence, decreasing the processor overheads due to computations will cause increasing the number of tasks preemptions Measurement support As any power management algorithm, EDeg typically needs information about available energy resources. Many battery operated devices, ranging from hand-helds to laptops, provide the facility to monitor the residual capacity of the battery. A second related measurement is the variability in this energy supply. A method to estimate the energy input then is to measure the current flowing out of the harvesting source and its voltage. This immediately yields the instantaneous power input at any time point. Data about when and how much environmental energy is available is directly provided by these measurements. Also, these measurements can be tracked at the desired resolution in time to estimate the variability of the energy source Illustrative example Let us consider the previous periodic task set where each task is now characterized by its worst case energy consumption. s ¼fs i j1 6 i 6 3; s i ¼ðC i ; D i ; T i ; E i Þg. Let s 1 ¼ð3; 6; 9; 8Þ; s 2 ¼ð3; 8; 12; 8Þ and s 3 ¼ð3; 12; 18; 8Þ. We assume that the energy storage capacity is E ¼ 6. For simplicity, the rechargeable power, P r, is constant along time and equals 2. We note that U p ¼ 0:75; U e ¼ 2 and consequently the necessary feasibility condition related to energy constraints, U e 6 P r is satisfied. When every task executes, it consumes energy with average power given by E i C i i.e. 8/3, roughly equal to Whenever the processor is active, the storage unit discharges and the decreasing rate is 0.66 in average. By scheduling the task set s according to EDS within the first hyperperiod i.e. from 0 to 36, disregarding energy limitations, we verify that s is temporally-feasible (see Fig. 2). However, when considering the energy constraints, the task set reveals to be not feasible since the storage unit becomes empty at t = 9. As the system immediately stops, we conclude that the deadline miss ratio during the hyperperiod is about 33% as shown by Fig. 5. Under static EDL scheduling, the system stops at t = 27 due to energy shortage. The deadline miss ratio is consequently 78% (see Fig. 6). Even if deadline missing occurs later compared with EDS, EDL does not provide acceptable performance. While energy is wasted in the early part of the schedule, afterwards, it reveals to be insufficient to cope with surplus of energy demand due to execution postponement. Applying a classical greedy scheduler such as EDS or EDL reveals impossible because the system fails as soon as energy shortage occurs. In contrast, singularity of EDeg lies in inserting processor idle times for recharging the storage unit only whenever necessary. And the recharging time is computed from the current slack time of the task set in order to still guarantee all the deadlines while avoiding energy overflow. Then, the processor is let inactive as long as the energy storage has not filled completely ðe ¼ E max Þ and the latest start time of the next periodic task has not been attained. Clearly, this amounts to make slack stealing controlled by the residual capacity of the energy storage. The EDeg schedule is described in Fig. 7. Let us explain how EDeg dynamically constructs the schedule. At time 0, the residual capacity i.e. remaining energy is maximum since the storage is full. s 1 is the highest priority task, executes until time 3 and consumes 8 energy units. At time 3, the residual capacity is given by E max E 2 þ Pr C 2 ¼ 4. s 2 has now the highest priority and the slack energy is undefined Fig. 5. EDS scheduling.

9 506 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) Fig. 6. EDL scheduling. Fig. 7. EDeg scheduling. since no future instance has a deadline less than the deadline of s 2. s 2 executes completely until time 6 and consumes 8 energy units. The residual capacity then equals 4 energy units. s 3 has now the highest priority and completely executes until time 9 where the residual capacity falls at 0. As the storage is empty, the processor has to remain idle as long as the storage has not fulfilled (predicted at time 12) and the latest start time has not been attained (at time 12 which is computed using dynamic EDL). s 1 is then the highest priority task, executes till time instant 15 where the residual capacity is 4. s 2 is then the highest priority task, executes till time 18 where the residual capacity equals 4. s 1 executes from time 18 until time 21 where the residual capacity falls to 0. The processor then remains idle as long as the storage has not fulfilled (predicted at time 24) and the latest start time has not been attained (at time 24 which is computed using dynamic EDL). At time 24, the highest priority task, say s 3 executes and completes exactly at time 27 where the residual capacity equals 4. s 2 executes till time 30. s 1 then executes until time 33 where the energy storage is empty. The processor is let idle for recharging until the end of the hyperperiod at t = 36. We note that neutral operation is guaranteed since the storage is fully charged at the end of the hyperperiod. In contrast to EDS and EDL, EDeg feasibly schedules the task set, with the same characteristics of the storage unit and the power source profile. 6. Performance evaluation 6.1. Simulation details Two main issues need to be discussed in order to evaluate EDeg: energy storage size and operational performance level in terms of deadline missing. To evaluate the effectiveness of the proposed EDeg algorithm, we develop a discrete-event simulation in C/C++. In the simulator, we implement EDeg. For sake of comparison, we also implement EDS and EDL and two heuristics, respectively called EDd 1 and EDd A. EDd A is the EDS scheduler that discards all the ready instances whenever the storage unit is empty and consequently lets the processor idle until the next release time. EDd 1 is the EDS scheduler that discards only one instance (the highest priority one) whenever the storage unit is empty and then lets the processor idle until the next release time. We report here part of a performance analysis which consists of two simulation experiments. In the first experiment, we measure the percentage of feasible instances during one hyperperiod. In the second one, we measure the remaining energy in the storage unit (also called residual capacity) along time up to the first deadline violation or the end of the first hyperperiod.

10 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) Since the performance of the above algorithms is severely affected by the properties of the arriving tasks, we use a simulator that generates 30 tasks with least common multiple of the periods equal to The worst-case computation times are set according to the processor utilization, U p. Deadlines are less than or equal to periods and greater than or equal to the computation times ðc i 6 D i 6 T i ). The rechargeable power is variable with time. A random number generator enables us to produce, for every quantum of time, a power energy profile with minimum value 1 and a maximum value, here 9, as an input of the simulator. The energy consumptions are set according to the energy utilization, U e, which necessarily verifies U e 6 P r. We assume that the energy storage is fully charged at the beginning of the simulation. After a deadline violation is detected, the simulation terminates for EDL and EDS. Under EDd 1 and EDd A, the simulation continues until the end of the hyperperiod. The simulation is repeated for 1000 task sets under a given processor utilization. For the fair comparison of EDeg, EDS, EDL, EDd 1 and EDd A, all simulations are performed under the same condition Experiment 1: size of the energy storage and deadline miss rate First, we take interest in the average ratio of instances that meet their deadlines with the five scheduling algorithms by varying the energy storage capacity. This metrics enables us to deduce two measures. The first one gives us an indication about the ratio of time during which there is no deadline violation. The second one gives, for each scheduler and for a given processor utilization ratio, the minimum size of the storage that ensures time and energy feasibility. We report here the results of three simulation studies where the processor utilization U p is set to 0.3, 0.6 and 0.9, respectively. Fig. 8 depicts the percentage of instances that meet their deadlines over the energy storage capacity E. For each task set, we compute E feas as the minimum storage capacity which permits to achieve neutral operation i.e. time validity of the schedule with battery fully recharged at the end of the hyperperiod. Consequently, we make vary E so as all task sets turn out to be feasible under EDeg. For U p ¼ 0:3, the percentage of feasible instances with EDeg algorithm is 100% when the energy storage capacity is at least 1700 energy units. Consequently, E feas ¼ Under EDS, maximum idle time is made available at the end of the hyperperiod. As the storage is initially full, the energy which is available will be used to execute task instances. EDS idle times in the early part of the schedule do not permit the storage to fully recharge because the processor is quasi-continuously busy. In the EDL schedule, tasks are delayed as much as possible and the storage unit recharges sufficiently during the idle times to execute task instances in the busy intervals without making the storage empty and the system failed. As a result, EDL will give better results than EDS in terms of number of feasible instances before first deadline violation. In summary, both EDS and EDL are greedy schedulers which perform badly in energy constraint environment and do not permit to build a valid schedule. Consequently, we are interested in examining the performances of two best-effort heuristics that provide respective solutions in order to cope with energy lack situations and continue to operate despite a deadline violation. When the energy storage unit is empty, EDd 1 discards the highest priority instance that is ready. Then, we let the processor idle until the next release time. EDd 1 performs significantly better than EDd A that systematically discards all ready instances when the energy storage unit is empty. Even if no time is wasted in attempting to execute tasks which will not meet their deadlines, the total number of discarded instances is higher with EDd A compared with EDd 1. However, when the size of the energy storage increases, the number of discarded instances will be close to each other and consequently the difference between EDd 1 and EDd A will not be significant. As observed in Fig. 8a, 100% task instances meet their deadlines i.e. task sets are feasible when the energy storage capacity is 5800 for EDS, EDd 1 and EDd A. That means that the storage unit must be more than 3 times bigger with EDS, EDd 1 and EDd A to maintain zero deadline miss, compared with EDeg. For U p ¼ 0:6 (see Fig. 8b), the percentage of feasible instances under EDeg algorithm is 100% when the energy storage capacity is at least 2400 energy units. Furthermore, the energy storage capacity that is required for EDS, EDd 1 and EDd A to ensure 100% feasible instances is That means that EDeg can provide the same level of performance with a storage unit which is about 2.5 times less. We observe that the relative performance gain of EDeg in terms of capacity savings is decreasing when the processor utilization rate is increasing. For higher values of processor utilization, savings are decreasing, yet they are still significant. For U p ¼ 0:9 (see Fig. 8c), EDeg obtains capacity savings of about 50% compared with EDL, EDS, EDd 1 and EDd A. Let us notice that all schedulers require exactly the same storage size when U p ¼ 1 since the processor is continuously busy. In summary, experiment 1 points out that the proposed EDeg scheduler is very effective in reducing deadline miss rate and storage size for a real-time system with energy harvesting facilities. And lower is the processor utilization rate, higher is the capacity saving Experiment 2: remaining energy in the storage unit Finally, we are interested in the remaining energy stored in the system. Fig. 9 aims to illustrate for U p ¼ 0:3, how the energy level in the storage unit changes along time. We only report this information for the three following schedulers, EDeg, EDS and EDL. Under EDS, the remaining energy is decreasing until the storage unit is empty or not sufficient to execute the highest priority instance. On the contrary, EDL will benefit from the idle times which are present in the early part of the hyperperiod in order to recharge the storage unit. This is why EDL stores significantly more energy than EDS. In our simulation, EDS and EDL, respectively stop at about 10% and 20% of the hyperperiod (Fig. 9). EDeg runs as EDS except that, whenever there is no sufficient energy to execute the highest priority task, the processor starts sleeping but does not stop definitively. Recall that in our model, the instantaneous power that is consumed by a task may be arbitrarily high. Conse-

11 508 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) % of Feasible Instances EDS 40 EDL EDd_A 20 EDd_1 EDeg E / E min 120 % of Feasible Instances EDS 40 EDL EDd_A 20 EDd_1 EDeg E / E min 120 % of Feasible Instances EDS EDL EDd_A EDd_1 EDeg E / E min Fig. 8. Percentage of feasible instances. (a) Low processor utilization ðu p ¼ 0:3Þ. (b) Medium processor utilization ðu p ¼ 0:6Þ. (c) High processor utilization ðu p ¼ 0:9Þ. quently, whenever a task requires to be run, its energy consumption requirement is compared with the amount of energy that will be available during the next unit of time. This implies that the energy level will decrease systematically when exe-

12 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) % of Remaining Energy EDeg EDL EDS time (sec.) Fig. 9. Variation of the remaining energy level. cuting a task without necessarily attaining the minimum level i.e. 0. Then, the storage unit will recharge until being fulfilled and as long as the system will be able to meet all the deadlines. As seen in Fig. 9, the energy level is decreasing until t = 350, where the remaining energy is not sufficient to execute the next task instance. Therefore the processor idles until t = 420, where the energy level is around 77% of the total capacity. This phenomena is repeating along the hyperperiod. The storage unit is fulfilled again at the end of the hyperperiod, which means that the application runs in an energy neutral operation mode. 7. Conclusion Energy-aware design becomes a more important issue in embedded systems that require best use of available power sources and deliver high performance at the same time. The performance of a practical energy harvesting real-time system, measured by the deadline miss rate, heavily depends upon the stored energy and the energy harvested from the environment. Unfortunately, the scavenging power is time-varying and thus very unstable. We target a scheduling framework for embedded systems with variable power constraints which need to operate perennially thanks to the environmental energy. In this paper, our focus was on scheduling periodic tasks with deadlines on a uniprocessor and fixed-speed system which is powered by a renewable energy storage with limited capacity such as a battery or a capacitor. This work presents the following contributions to research: our scheduler is model-free with respect to the energy source. It can be implemented in any energy harvesting system without the need for a priori information about the source which may be uncontrollable and time-varying. We propose an efficient way of scheduling tasks, based on the on-line computation of the slack time and the slack energy which is a new concept dedicated to hard deadline tasks with regenerative energy constraints. We started by describing the preemptive scheduling algorithm, namely EDeg, that is a variation of EDF. EDeg has been designed for any set of time critical tasks, periodic or not, given any energy source profile with a variable power production and an energy storage unit with limited capacity. The simulation study reports the performance of EDeg, measured by the deadline miss rate compared with classical EDF. It shows that EDeg outperforms EDS and EDL for all processor utilization factors. Several interesting issues need further attention. To expand the applicability of our scheduling framework, we would like first to incorporate additional power management techniques including voltage/frequency scaling and dynamic power management to support more effective power-aware designs. References [1] Schmitz MT, Al-Hashimi BM, Eles P. System-level design techniques for energy-efficient embedded systems. Kluwer Academic Publishers; [2] Kansal A, Hsu J, Zahedi S, Srivastava MB. Power management in energy harvesting sensor networks. ACM Trans Embedded Comput Syst 2007;6(4). [3] Moser C, Brunelli D, Thiele L, Benini L. Real-time scheduling for energy harvesting sensor nodes. Real-Time Syst 2007;37(3): [4] Chetto H, Chetto M. Some results of the earliest deadline scheduling algorithm. IEEE Trans Softw Eng 1989;15(10): [5] Sinha A, Chandrasan A. Dynamic power management in wireless sensor networks. IEEE Design Test Comput 2001;18(2): [6] Raghunathan V, Kansal A, Hsu Jason, Friedman Jonathan, Srivastava Mani. Design considerations for solar energy harvesting wireless embedded systems. In: Proceedings of the fourth international symposium on information processing in sensor networks, p [7] Allavena A, Mosse D. Scheduling of frame-based embedded systems with rechargeable batteries. Workshop Power Manage Real-time Embedded Syst [8] Shih WK, Liu JWS. On-line scheduling of imprecise computations to minimize error. SIAM J Comput 1996;25(5): [9] Rusu C, Melhem RG, Mosse D. Multi-version scheduling in rechargeable energyaware real-time systems. In: Proceedings of 15th Euromicro conference on real-time systems, p

13 510 H. EL Ghor et al. / Computers and Electrical Engineering 37 (2011) [10] Moser C, Chen J-J, Thiele L. Reward maximization for embedded systems with renewable energies. In: Proceedings of 14th IEEE international conference on embedded and real-time computing systems and applications, p [11] Kansal A, Hsu J. Harvesting aware power management for sensor networks. In: IEEE Proceedings of design automation conference, [12] Hsu J, Zahedi S, Kansal A, Srivastava M, Raghunathan V. Adaptive duty cycling for energy harvesting systems. In: Proceedings of the international symposium on low power electronics and design, p [13] Liu C-L, Layland J-W. Scheduling algorithms for multiprogramming in a hard real-time environment. J ACM 1973;20(1): [14] Liu S, Qiu Q, Wu Q. Energy aware dynamic voltage and frequency selection for real-time systems with energy harvesting. In: Proceedings of the conference on design, automation and test in Europe, p [15] Jayaseelan R, Mitra T, Li X. Estimating the worst-case energy consumption of embedded software. In: Proceedings of 12th IEEE real-time and embedded technology and applications symposium, p [16] Liu J-W-S. Real-time systems. Prentice-Hall; [17] Leung J-Y-T, Whitehead J. On the complexity of fixed-priority scheduling of periodic real-time tasks. Perform Evaluat 1982;2(4): [18] Dertouzos ML. Control robotics: the procedural control of physical processes. Proc Int Federat Inform Process Cong 1974: [19] Silly-Chetto M. The EDL server for scheduling periodic and soft aperiodic tasks with resource constraints. Real-Time Syst 1999;17(1):1 25. Hussein EL Ghor is currently pursuing the Ph.D. degree at the University of Nantes, France. He has been a member of the Real Time System group at IRCCyN Laboratory from He received the engineering degree from the Lebanese University, Lebanon, in His research interests concern real-time scheduling and partitioning with particular emphasis on energy harvesting systems. Maryline Chetto received the degree of Docteur in control engineering and the degree of Habilitée à Diriger des Recherches in Computer Science from the University of Nantes, France, in 1984 and 1993, respectively. She is currently a full Professor with the Institute of Technology of Nantes and is conducting her research at IRCCyN Laboratory. Her main research interests are scheduling and power management for real-time systems. She has published more than 70 journal articles and conference papers in the area of real-time systems. Rafic Hage Chehade received the Ph.D. degree in electrical engineering from the University of Lille 2, France, in His doctoral thesis was on medical instrumentation. From 1990 to 1997, he was teaching in the University of Lille 1 and Ecole d ingenieurs HEI. He joined the Lebanese University in 1997 and is currently an Associate Professor in the Institute of Technology of Saida. His research interests include digital communication and embedded technology.

Real-Time Scheduling with Renewable Energy. IRCCyN, Real-Time Systems Group. Maryline CHETTO

Real-Time Scheduling with Renewable Energy. IRCCyN, Real-Time Systems Group. Maryline CHETTO Real-Time Scheduling with Renewable Energy Ordonnancement mono-processeur dans les systèmes temps réel récupérant l'énergie ambiante IRCCyN, Real-Time Systems Group Maryline CHETTO 17 janvier 2012 1 Outline

More information

Clock-Driven Scheduling

Clock-Driven Scheduling NOTATIONS AND ASSUMPTIONS: UNIT-2 Clock-Driven Scheduling The clock-driven approach to scheduling is applicable only when the system is by and large deterministic, except for a few aperiodic and sporadic

More information

Real-Time and Embedded Systems (M) Lecture 4

Real-Time and Embedded Systems (M) Lecture 4 Clock-Driven Scheduling Real-Time and Embedded Systems (M) Lecture 4 Lecture Outline Assumptions and notation for clock-driven scheduling Handling periodic jobs Static, clock-driven schedules and the cyclic

More information

Energy Efficient Fixed-Priority Scheduling for Real-Time Systems on Variable Voltage Processors

Energy Efficient Fixed-Priority Scheduling for Real-Time Systems on Variable Voltage Processors Energy Efficient Fixed-Priority Scheduling for Real-Time Systems on Variable Voltage Processors Gang Quan Xiaobo (Sharon) Hu Department of Computer Science & Engineering University of Notre Dame Notre

More information

2. Scheduling issues. Common approaches /2. Common approaches /1. Common approaches / /18 UniPD - T. Vardanega 14/03/2018

2. Scheduling issues. Common approaches /2. Common approaches /1. Common approaches / /18 UniPD - T. Vardanega 14/03/2018 Common approaches /2 2. Scheduling issues Weighted round-robin scheduling With basic round-robin (which requires preemption) All ready jobs are placed in a FIFO queue CPU time quantized, that is, allotted

More information

Lecture Note #4: Task Scheduling (1) EECS 571 Principles of Real-Time Embedded Systems. Kang G. Shin EECS Department University of Michigan

Lecture Note #4: Task Scheduling (1) EECS 571 Principles of Real-Time Embedded Systems. Kang G. Shin EECS Department University of Michigan Lecture Note #4: Task Scheduling (1) EECS 571 Principles of Real-Time Embedded Systems Kang G. Shin EECS Department University of Michigan 1 Reading Assignment Liu and Layland s paper Chapter 3 of the

More information

3. Scheduling issues. Common approaches /2. Common approaches /1. Common approaches / /17 UniPD / T. Vardanega 06/03/2017

3. Scheduling issues. Common approaches /2. Common approaches /1. Common approaches / /17 UniPD / T. Vardanega 06/03/2017 Common approaches /2 3. Scheduling issues Weighted round-robin scheduling With basic round-robin All ready jobs are placed in a FIFO queue The job at head of queue is allowed to execute for one time slice

More information

Clock-Driven Scheduling

Clock-Driven Scheduling Integre Technical Publishing Co., Inc. Liu January 13, 2000 8:49 a.m. chap5 page 85 C H A P T E R 5 Clock-Driven Scheduling The previous chapter gave a skeletal description of clock-driven scheduling.

More information

ELC 4438: Embedded System Design Real-Time Scheduling

ELC 4438: Embedded System Design Real-Time Scheduling ELC 4438: Embedded System Design Real-Time Scheduling Liang Dong Electrical and Computer Engineering Baylor University Scheduler and Schedule Jobs are scheduled and allocated resources according to the

More information

Lecture 6: Scheduling. Michael O Boyle Embedded Software

Lecture 6: Scheduling. Michael O Boyle Embedded Software Lecture 6: Scheduling Michael O Boyle Embedded Software Overview Definitions of real time scheduling Classification Aperiodic no dependence No preemption EDD Preemption EDF Least Laxity Periodic Rate Monotonic

More information

Priority-Driven Scheduling of Periodic Tasks. Why Focus on Uniprocessor Scheduling?

Priority-Driven Scheduling of Periodic Tasks. Why Focus on Uniprocessor Scheduling? Priority-Driven Scheduling of Periodic asks Priority-driven vs. clock-driven scheduling: clock-driven: cyclic schedule executive processor tasks a priori! priority-driven: priority queue processor tasks

More information

Scheduling theory, part 1

Scheduling theory, part 1 Scheduling theory, part 1 Aperiodic jobs Pontus Ekberg Uppsala University 2017-09-01 Real-time systems? Not necessarily fast but always predictable 2 Real-time systems: theory & practice Practice Building

More information

GENERALIZED TASK SCHEDULER

GENERALIZED TASK SCHEDULER CHAPTER 4 By Radu Muresan University of Guelph Page 1 ENGG4420 CHAPTER 4 LECTURE 4 November 12 09 2:49 PM GENERALIZED TASK SCHEDULER In practical applications we need to be able to schedule a mixture of

More information

Preference-Oriented Fixed-Priority Scheduling for Real-Time Systems

Preference-Oriented Fixed-Priority Scheduling for Real-Time Systems Preference-Oriented Fixed-Priority Scheduling for Real-Time Systems Rehana Begam, Dakai Zhu University of Texas at San Antonio San Antonio, TX, 7829 rehan.sheta@gmail.com, dakai.zhu@utsa.edu Hakan Aydin

More information

Exploiting Dynamic Workload Variation in Low Energy Preemptive Task Scheduling

Exploiting Dynamic Workload Variation in Low Energy Preemptive Task Scheduling Exploiting Dynamic Workload Variation in Low Energy Preemptive Scheduling Xiaobo Sharon Department of Electrical and Electronic Engineering Department of Computer Science and Engineering Hong Kong University

More information

Adaptive Total Bandwidth Server: Using Predictive Execution Time

Adaptive Total Bandwidth Server: Using Predictive Execution Time Adaptive Total Bandwidth Server: Using Predictive Execution Time Kiyofumi Tanaka School of Information Science, Japan Advanced Institute of Science and Technology, Asahidai 1 1, Nomi-city, Ishikawa, 923

More information

Real time scheduling for embedded systems

Real time scheduling for embedded systems Real time scheduling for embedded systems Introduction In many critical systems, tasks must compute a value within a given time bound The correctness of the system relies on these contraints Introduction

More information

Energy Efficient Scheduler of Aperiodic Jobs for Real-time Embedded Systems

Energy Efficient Scheduler of Aperiodic Jobs for Real-time Embedded Systems International Journal of Automation and omputing DOI: 10.1007/s11633-016-0993-3 Energy Efficient Scheduler of Aperiodic Jobs for Real-time Embedded Systems Hussein El Ghor 1 E. M. Aggoune 2 1 University

More information

Dual Priority Scheduling: A Means of Providing Flexibility in Hard Real-time Systems.

Dual Priority Scheduling: A Means of Providing Flexibility in Hard Real-time Systems. Dual Priority Scheduling: A Means of Providing Flexibility in Hard Real-time Systems Robert Davis Real-Time Systems Research Group, Department of Computer Science, University of York, Y1 5DD, England Email:

More information

ENGG4420 CHAPTER 4 LECTURE 3 GENERALIZED TASK SCHEDULER

ENGG4420 CHAPTER 4 LECTURE 3 GENERALIZED TASK SCHEDULER CHAPTER 4 By Radu Muresan University of Guelph Page 1 ENGG4420 CHAPTER 4 LECTURE 3 November 14 12 9:44 AM GENERALIZED TASK SCHEDULER In practical applications we need to be able to schedule a mixture of

More information

Limited-preemptive Earliest Deadline First Scheduling of Real-time Tasks on Multiprocessors

Limited-preemptive Earliest Deadline First Scheduling of Real-time Tasks on Multiprocessors Limited-preemptive Earliest Deadline First Scheduling of Real-time Tasks on Multiprocessors Mälardalen University School of Innovation, Design and Technology Kaiqian Zhu Master Thesis 5/27/15 Examiner:

More information

Slack Assessment of the Real Time Scheduling Algorithms

Slack Assessment of the Real Time Scheduling Algorithms International Journal of Control Theory and Applications ISSN : 0974-5572 International Science Press Volume 9 Number 43 2016 Slack Assessment of the Real Time Scheduling Algorithms P. Ramesh a and Uppu

More information

Real Time Scheduling. Real Time Scheduling. Real-Time Scheduling. Scheduling

Real Time Scheduling. Real Time Scheduling. Real-Time Scheduling. Scheduling Real Time Scheduling Process control plants, robotics, air traffic control, telecommunications Real Time Computing is defined as:- a type of computing where the correctness of the system depends not only

More information

Co-scheduling Real-time Tasks and Non Real-time Tasks Using Empirical Probability Distribution of Execution Time Requirements.

Co-scheduling Real-time Tasks and Non Real-time Tasks Using Empirical Probability Distribution of Execution Time Requirements. Co-scheduling Real-time Tasks and Non Real-time Tasks Using Empirical Probability Distribution of Execution Time Requirements Abhishek Singh A dissertation submitted to the faculty of the University of

More information

Lab: Response Time Analysis using FpsCalc Course: Real-Time Systems Period: Autumn 2015

Lab: Response Time Analysis using FpsCalc Course: Real-Time Systems Period: Autumn 2015 Lab: Response Time Analysis using FpsCalc Course: Real-Time Systems Period: Autumn 2015 Lab Assistant name: Jakaria Abdullah email: jakaria.abdullah@it.uu.se room: 1235 Introduction The purpose of this

More information

Performance Comparison of RTS Scheduling Algorithms

Performance Comparison of RTS Scheduling Algorithms ISSN : 2229-4333(Print) ISSN : 0976-8491(Online) Performance Comparison of RTS Scheduling s Amit Sandhu Deptt. of CSE, Arni School of Technology, Arni University, Kathgarh (HP), India IJCST Vo l. 2, Is

More information

DEADLINE MONOTONIC ALGORITHM (DMA)

DEADLINE MONOTONIC ALGORITHM (DMA) CHAPTER 4 By Radu Muresan University of Guelph Page 1 ENGG4420 CHAPTER 4 LECTURE 5 November 19 12 12:07 PM DEADLINE MONOTONIC ALGORITHM (DMA) RMA no longer remains an optimal scheduling algorithm for periodic

More information

CS510 Operating System Foundations. Jonathan Walpole

CS510 Operating System Foundations. Jonathan Walpole CS510 Operating System Foundations Jonathan Walpole Project 3 Part 1: The Sleeping Barber problem - Use semaphores and mutex variables for thread synchronization - You decide how to test your code!! We

More information

Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling

Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling Georg von der Brüggen 1, Jian-Jia Chen 1, Robert I. Davis 2, and Wen-Hung Kevin Huang

More information

LOAD SHARING IN HETEROGENEOUS DISTRIBUTED SYSTEMS

LOAD SHARING IN HETEROGENEOUS DISTRIBUTED SYSTEMS Proceedings of the 2 Winter Simulation Conference E. Yücesan, C.-H. Chen, J. L. Snowdon, and J. M. Charnes, eds. LOAD SHARING IN HETEROGENEOUS DISTRIBUTED SYSTEMS Helen D. Karatza Department of Informatics

More information

CS 143A - Principles of Operating Systems

CS 143A - Principles of Operating Systems CS 143A - Principles of Operating Systems Lecture 4 - CPU Scheduling Prof. Nalini Venkatasubramanian nalini@ics.uci.edu CPU Scheduling 1 Outline Basic Concepts Scheduling Objectives Levels of Scheduling

More information

Tasks or processes attempt to control or react to external events occuring in real time RT processes must be able to keep up events

Tasks or processes attempt to control or react to external events occuring in real time RT processes must be able to keep up events RTOS Characteristics Time constraints Shdli Scheduling C. Brandolese, W. Fornaciari Real-Time Systems Definition of real-time system A real-time system is one in which h the correctness of the computation

More information

CHAPTER 4 CONTENT October :10 PM

CHAPTER 4 CONTENT October :10 PM CHAPTER 4 By Radu Muresan University of Guelph Page 1 CHAPTER 4 CONTENT October 30 09 4:10 PM UNIPROCESSOR SCHEDULING Real Time Task Model Concepts Types of Real Time Tasks and Their Characteristics Task

More information

Uniprocessor Scheduling

Uniprocessor Scheduling Chapter 9 Uniprocessor Scheduling In a multiprogramming system, multiple processes are kept in the main memory. Each process alternates between using the processor, and waiting for an I/O device or another

More information

Gang Scheduling Performance on a Cluster of Non-Dedicated Workstations

Gang Scheduling Performance on a Cluster of Non-Dedicated Workstations Gang Scheduling Performance on a Cluster of Non-Dedicated Workstations Helen D. Karatza Department of Informatics Aristotle University of Thessaloniki 54006 Thessaloniki, Greece karatza@csd.auth.gr Abstract

More information

א א א א א א א א

א א א א א א א א א א א W א א א א א א א א א 2008 2007 1 Chapter 6: CPU Scheduling Basic Concept CPU-I/O Burst Cycle CPU Scheduler Preemptive Scheduling Dispatcher Scheduling Criteria Scheduling Algorithms First-Come, First-Served

More information

Intro to O/S Scheduling. Intro to O/S Scheduling (continued)

Intro to O/S Scheduling. Intro to O/S Scheduling (continued) Intro to O/S Scheduling 1. Intro to O/S Scheduling 2. What is Scheduling? 3. Computer Systems Scheduling 4. O/S Scheduling Categories 5. O/S Scheduling and Process State 6. O/S Scheduling Layers 7. Scheduling

More information

Reference model of real-time systems

Reference model of real-time systems Reference model of real-time systems Chapter 3 of Liu Michal Sojka Czech Technical University in Prague, Faculty of Electrical Engineering, Department of Control Engineering November 8, 2017 Some slides

More information

CSC 553 Operating Systems

CSC 553 Operating Systems CSC 553 Operating Systems Lecture 9 - Uniprocessor Scheduling Types of Scheduling Long-term scheduling The decision to add to the pool of processes to be executed Medium-term scheduling The decision to

More information

CPU Scheduling. Chapter 9

CPU Scheduling. Chapter 9 CPU Scheduling 1 Chapter 9 2 CPU Scheduling We concentrate on the problem of scheduling the usage of a single processor among all the existing processes in the system The goal is to achieve High processor

More information

Chapter 9 Uniprocessor Scheduling

Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles Chapter 9 Uniprocessor Scheduling Eighth Edition By William Stallings Table 9.1 Types of Scheduling Long- t er m schedul i ng The decision to add to the

More information

Dual Priority Algorithm to Schedule Real-Time Tasks in a Shared Memory Multiprocessor

Dual Priority Algorithm to Schedule Real-Time Tasks in a Shared Memory Multiprocessor Dual Priority Algorithm to Schedule Real-Time Tasks in a Shared Memory Multiprocessor Josep M. Banús, Alex Arenas and Jesús Labarta Departament d'enginyeria Informàtica i Matemàtiques, Universitat Rovira

More information

Real-Time Systems. Modeling Real-Time Systems

Real-Time Systems. Modeling Real-Time Systems Real-Time Systems Modeling Real-Time Systems Hermann Härtig WS 2013/14 Models purpose of models describe: certain properties derive: knowledge about (same or other) properties (using tools) neglect: details

More information

MAX PLANCK INSTITUTE FOR SOFTWARE SYSTEMS. Max Planck Institute for Software Systems (MPI-SWS) Germany

MAX PLANCK INSTITUTE FOR SOFTWARE SYSTEMS. Max Planck Institute for Software Systems (MPI-SWS) Germany MAX PLANCK INSTITUTE FOR SOFTWARE SYSTEMS Mitra Nasri* Bjӧrn B. Brandenburg Max Planck Institute for Software Systems (MPI-SWS) Germany RTSS, December 2017 An exact and sustainable schedulability analysis

More information

Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras

Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras Week 05 Lecture 19 Priority Based Scheduling Algorithms So

More information

Journal of Computer and System Sciences

Journal of Computer and System Sciences Journal of Computer and System Sciences 77 (2011) 917 932 Contents lists available at ScienceDirect Journal of Computer and System Sciences www.elsevier.com/locate/jcss Balanced energy ation scheme for

More information

On the Comparison of CPLEX-Computed Job Schedules with the Self-Tuning dynp Job Scheduler

On the Comparison of CPLEX-Computed Job Schedules with the Self-Tuning dynp Job Scheduler On the Comparison of CPLEX-Computed Job Schedules with the Self-Tuning dynp Job Scheduler Sven Grothklags 1 and Achim Streit 2 1 Faculty of Computer Science, Electrical Engineering and Mathematics, Institute

More information

Energy Efficient Online Scheduling of Real Time Tasks on Large Multi-threaded Multiprocessor Systems

Energy Efficient Online Scheduling of Real Time Tasks on Large Multi-threaded Multiprocessor Systems Energy Efficient Online Scheduling of Real Tasks on Large Multi-threaded Multiprocessor Systems M. Ghose, A. Sahu, S. Karmakar Department of Computer Science and Engineering IIT Guwahati India Abstract

More information

CPU SCHEDULING. Scheduling Objectives. Outline. Basic Concepts. Enforcement of fairness in allocating resources to processes

CPU SCHEDULING. Scheduling Objectives. Outline. Basic Concepts. Enforcement of fairness in allocating resources to processes Scheduling Objectives CPU SCHEDULING Enforcement of fairness in allocating resources to processes Enforcement of priorities Make best use of available system resources Give preference to processes holding

More information

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling Scheduling I Today! Introduction to scheduling! Classical algorithms Next Time! Advanced topics on scheduling Scheduling out there! You are the manager of a supermarket (ok, things don t always turn out

More information

The Design of SMART: A Scheduler for Multimedia Applications

The Design of SMART: A Scheduler for Multimedia Applications The Design of SMART: A Scheduler for Multimedia Applications Jason Nieh and Monica S. Lam {nieh,lam}@cs.stanford.edu Technical Report CSL-TR-96-697 Computer Systems Laboratory Stanford University June

More information

Mwave/OS: A Predictable Real-time DSP Operating System

Mwave/OS: A Predictable Real-time DSP Operating System Mwave/OS: A Predictable Real-time DSP Operating System Jay K. Strosnider and Daniel I. Katcher Department of Electrical& Computer Engineering Carnegie Mellon University Pittsburgh, PA 15213 strosnider@ece.cmu.edu

More information

CPU scheduling. CPU Scheduling

CPU scheduling. CPU Scheduling EECS 3221 Operating System Fundamentals No.4 CPU scheduling Prof. Hui Jiang Dept of Electrical Engineering and Computer Science, York University CPU Scheduling CPU scheduling is the basis of multiprogramming

More information

Author's personal copy

Author's personal copy J. Parallel Distrib. Comput. 71 (2011) 963 973 Contents lists available at ScienceDirect J. Parallel Distrib. Comput. journal homepage: www.elsevier.com/locate/jpdc Online algorithms for advance resource

More information

Preemptive Scheduling of Multi-Criticality Systems with Varying Degrees of Execution Time Assurance

Preemptive Scheduling of Multi-Criticality Systems with Varying Degrees of Execution Time Assurance 28th IEEE International Real-Time Systems Symposium Preemptive Scheduling of Multi-Criticality Systems with Varying Degrees of Execution Time Assurance Steve Vestal steve.vestal@honeywell.com Honeywell

More information

SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES

SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES Al-Naimi Assistant Professor Industrial Engineering Branch Department of Production Engineering and Metallurgy University of Technology Baghdad - Iraq dr.mahmoudalnaimi@uotechnology.edu.iq

More information

Introduction to Real-Time Systems. Note: Slides are adopted from Lui Sha and Marco Caccamo

Introduction to Real-Time Systems. Note: Slides are adopted from Lui Sha and Marco Caccamo Introduction to Real-Time Systems Note: Slides are adopted from Lui Sha and Marco Caccamo 1 Overview Today: this lecture introduces real-time scheduling theory To learn more on real-time scheduling terminology:

More information

A Three-Step Approach For Low Power Scheduling Of Real- Time Embedded Systems

A Three-Step Approach For Low Power Scheduling Of Real- Time Embedded Systems A Three-Step Approach For Low Power Scheduling Of Real- Time Embedded Systems Rajesh Prathipati and Rabi Mahapatra Dept of Computer Science Texas A&M University College Station, TX 77843 {rajeshp,rabi}@cs.tamu.edu

More information

Scheduling Processes 11/6/16. Processes (refresher) Scheduling Processes The OS has to decide: Scheduler. Scheduling Policies

Scheduling Processes 11/6/16. Processes (refresher) Scheduling Processes The OS has to decide: Scheduler. Scheduling Policies Scheduling Processes Don Porter Portions courtesy Emmett Witchel Processes (refresher) Each process has state, that includes its text and data, procedure call stack, etc. This state resides in memory.

More information

Preemptive Resource Management for Dynamically Arriving Tasks in an Oversubscribed Heterogeneous Computing System

Preemptive Resource Management for Dynamically Arriving Tasks in an Oversubscribed Heterogeneous Computing System 2017 IEEE International Parallel and Distributed Processing Symposium Workshops Preemptive Resource Management for Dynamically Arriving Tasks in an Oversubscribed Heterogeneous Computing System Dylan Machovec

More information

Advanced Types Of Scheduling

Advanced Types Of Scheduling Advanced Types Of Scheduling In the previous article I discussed about some of the basic types of scheduling algorithms. In this article I will discuss about some other advanced scheduling algorithms.

More information

Lecture 11: Scheduling

Lecture 11: Scheduling Design & Co-design of Embedded Systems Lecture 11: Scheduling Sharif University of Technology Computer Engineering Dept. Winter-Spring 2008 Mehdi Modarressi Processes and operating systems Dynamic vs.

More information

CS 111. Operating Systems Peter Reiher

CS 111. Operating Systems Peter Reiher Operating System Principles: Scheduling Operating Systems Peter Reiher Page 1 Outline What is scheduling? What are our scheduling goals? What resources should we schedule? Example scheduling algorithms

More information

Triage: Balancing Energy and Quality of Service in a Microserver

Triage: Balancing Energy and Quality of Service in a Microserver Triage: Balancing Energy and Quality of Service in a Microserver Nilanjan Banerjee, Jacob Sorber, Mark Corner, Sami Rollins, Deepak Ganesan University of Massachusetts, Amherst University of San Francisco,

More information

Course Outline. Embedded Real Time Operating System Chin Fu Kuo National University of Kaohsiung 2009 Fall

Course Outline. Embedded Real Time Operating System Chin Fu Kuo National University of Kaohsiung 2009 Fall Course Outline Embedded Real Time Operating System Chin Fu Kuo National University of Kaohsiung 2009 Fall Information Instructor: chinfukuo2006@nuk.edu.tw Office: M624 TA:? Course Materials Website http://www.csie.nuk.edu.tw/~kcf/course_main.htm

More information

SimSo: A Simulation Tool to Evaluate Real-Time Multiprocessor Scheduling Algorithms

SimSo: A Simulation Tool to Evaluate Real-Time Multiprocessor Scheduling Algorithms : A Simulation Tool to Evaluate Real-Time Multiprocessor Scheduling Algorithms Maxime Chéramy, Pierre-Emmanuel Hladik and Anne-Marie Déplanche maxime.cheramy@laas.fr July 8, 2014 5th International Workshop

More information

New methods for redistributing slack time in real-time systems: applications and comparative evaluations

New methods for redistributing slack time in real-time systems: applications and comparative evaluations The Journal of Systems and Software 69 (2004) 115 128 www.elsevier.com/locate/jss New methods for redistributing slack time in real-time systems: applications and comparative evaluations R.M. Santos, J.

More information

Energy-Efficient Scheduling of Interactive Services on Heterogeneous Multicore Processors

Energy-Efficient Scheduling of Interactive Services on Heterogeneous Multicore Processors Energy-Efficient Scheduling of Interactive Services on Heterogeneous Multicore Processors Shaolei Ren, Yuxiong He, Sameh Elnikety University of California, Los Angeles, CA Microsoft Research, Redmond,

More information

Improving Charging Efficiency with Workload Scheduling in Energy Harvesting Embedded Systems

Improving Charging Efficiency with Workload Scheduling in Energy Harvesting Embedded Systems Improving Charging Efficiency with Workload Scheduling in Energy Harvesting Embedded Systems Yukan Zhang, Yang Ge and Qinru Qiu Department of Electrical Engineering and Computer Science, Syracuse University

More information

This is a repository copy of Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling.

This is a repository copy of Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling. This is a repository copy of Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling. White Rose Research Online URL for this paper: http://eprints.whiterose.ac.uk/103630/

More information

Resource Allocation Strategies in a 2-level Hierarchical Grid System

Resource Allocation Strategies in a 2-level Hierarchical Grid System st Annual Simulation Symposium Resource Allocation Strategies in a -level Hierarchical Grid System Stylianos Zikos and Helen D. Karatza Department of Informatics Aristotle University of Thessaloniki 5

More information

An Optimal Service Ordering for a World Wide Web Server

An Optimal Service Ordering for a World Wide Web Server An Optimal Service Ordering for a World Wide Web Server Amy Csizmar Dalal Hewlett-Packard Laboratories amy dalal@hpcom Scott Jordan University of California at Irvine sjordan@uciedu Abstract We consider

More information

Multiple-Source and Multiple-Destination Charge Migration in Hybrid Electrical Energy Storage Systems*

Multiple-Source and Multiple-Destination Charge Migration in Hybrid Electrical Energy Storage Systems* Multiple-Source and Multiple-Destination Charge Migration in Hybrid Electrical Energy Storage Systems* Yanzhi Wang, Qing Xie, and Massoud Pedram University of Southern California Los Angeles, CA, USA 90089

More information

Scheduling issues in mixedcriticality

Scheduling issues in mixedcriticality Scheduling issues in mixedcriticality systems Sanjoy Baruah The University of North Carolina at Chapel Hill Scheduling issues in mixedcriticality systems Integrated environments: Multiple systems on a

More information

Project 2 solution code

Project 2 solution code Project 2 solution code Project 2 solution code in files for project 3: Mutex solution in Synch.c But this code has several flaws! If you copied this, we will know! Producer/Consumer and Dining Philosophers

More information

Incentive-Based P2P Scheduling in Grid Computing

Incentive-Based P2P Scheduling in Grid Computing Incentive-Based P2P Scheduling in Grid Computing Yanmin Zhu 1, Lijuan Xiao 2, Lionel M. Ni 1, and Zhiwei Xu 2 1 Department of Computer Science Hong Kong University of Science and Technology Clearwater

More information

Dynamic Scheduling of Aperiodic Jobs in Project Management

Dynamic Scheduling of Aperiodic Jobs in Project Management Dynamic Scheduling of Aperiodic Jobs in Project Management ABSTRACT The research article is meant to propose a solution for the scheduling problem that many industries face. With a large number of machines

More information

Discrete and dynamic versus continuous and static loading policy for a multi-compartment vehicle

Discrete and dynamic versus continuous and static loading policy for a multi-compartment vehicle European Journal of Operational Research 174 (2006) 1329 1337 Short Communication Discrete and dynamic versus continuous and static loading policy for a multi-compartment vehicle Yossi Bukchin a, *, Subhash

More information

Asymptotic Analysis of Real-Time Queues

Asymptotic Analysis of Real-Time Queues Asymptotic Analysis of John Lehoczky Department of Statistics Carnegie Mellon University Pittsburgh, PA 15213 Co-authors: Steve Shreve, Kavita Ramanan, Lukasz Kruk, Bogdan Doytchinov, Calvin Yeung, and

More information

Modeling of competition in revenue management Petr Fiala 1

Modeling of competition in revenue management Petr Fiala 1 Modeling of competition in revenue management Petr Fiala 1 Abstract. Revenue management (RM) is the art and science of predicting consumer behavior and optimizing price and product availability to maximize

More information

Adapting Task Utility in Externally Triggered Energy Harvesting Wireless Sensing Systems

Adapting Task Utility in Externally Triggered Energy Harvesting Wireless Sensing Systems Adapting Task Utility in Externally Triggered Energy Harvesting Wireless Sensing Systems Jamie Bradley Steck Department of Computer Science and Engineering University of California, San Diego jlbradle@ucsd.edu

More information

Mode Change Protocols for Priority-Driven Preemptive Scheduling

Mode Change Protocols for Priority-Driven Preemptive Scheduling Technical Report CMU/SEI-88-TR-34 ESD-TR-88-035 Mode Change Protocols for Priority-Driven Preemptive Scheduling Lui Sha Ragunathan Rajkumar John Lehoczky Krithi Ramamritham November 1988 Technical Report

More information

Chapter 6: CPU Scheduling. Basic Concepts. Histogram of CPU-burst Times. CPU Scheduler. Dispatcher. Alternating Sequence of CPU And I/O Bursts

Chapter 6: CPU Scheduling. Basic Concepts. Histogram of CPU-burst Times. CPU Scheduler. Dispatcher. Alternating Sequence of CPU And I/O Bursts Chapter 6: CPU Scheduling Basic Concepts Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation Maximum CPU utilization obtained

More information

CSE 451: Operating Systems Spring Module 8 Scheduling

CSE 451: Operating Systems Spring Module 8 Scheduling CSE 451: Operating Systems Spring 2017 Module 8 Scheduling John Zahorjan Scheduling In discussing processes and threads, we talked about context switching an interrupt occurs (device completion, timer

More information

CSC 1600: Chapter 5. CPU Scheduling. Review of Process States

CSC 1600: Chapter 5. CPU Scheduling. Review of Process States CSC 1600: Chapter 5 CPU Scheduling Review of Process States 1 OS Queuing Model Enter Ready queue CPU Exit Disk Queue Network Queue Printer Queue Processes enter and leave the system CPU Scheduling Each

More information

Bounding Worst-Case Response Time for Tasks With Non-Preemptive Regions

Bounding Worst-Case Response Time for Tasks With Non-Preemptive Regions Bounding Worst-Case Response Time for Tasks With Non-Preemptive Regions Harini Ramaprasad, Frank Mueller Dept. of Computer Science, Center for Efficient, Secure and Reliable Computing North Carolina State

More information

A Systematic Approach to Performance Evaluation

A Systematic Approach to Performance Evaluation A Systematic Approach to Performance evaluation is the process of determining how well an existing or future computer system meets a set of alternative performance objectives. Arbitrarily selecting performance

More information

Power Management Techniques for Autonomous Wireless Communicating Objects

Power Management Techniques for Autonomous Wireless Communicating Objects Power Management Techniques for Autonomous Wireless Communicating Objects Alain Pegatoquet Associate Professor Andréa Castagnetti Post-Doc CEA-LIST Trong-Nhan Le PhD Student PACO Conference Gardanne 2013,

More information

Design and Implementation of LST Based Dynamic Scheduler on Real Time OS

Design and Implementation of LST Based Dynamic Scheduler on Real Time OS Design and Implementation of LST Based Dynamic Scheduler on Real Time OS Prasad M Kamath, Rakesh Belagali, Sushant S Kulkarni, Vinayak Hegde, Geetishree Mishra Department of Electronics and Communication,

More information

SE350: Operating Systems. Lecture 6: Scheduling

SE350: Operating Systems. Lecture 6: Scheduling SE350: Operating Systems Lecture 6: Scheduling Main Points Definitions Response time, throughput, scheduling policy, Uniprocessor policies FIFO, SJF, Round Robin, Multiprocessor policies Scheduling sequential

More information

Energy Aware Resource Allocation for Data Center

Energy Aware Resource Allocation for Data Center Advances in Computational Sciences and Technology ISSN 0973-6107 Volume 10, Number 1 (2017) pp. 1-9 Research India Publications http://www.ripublication.com Energy Aware Resource Allocation for Data Center

More information

Controlling Energy Profile of RT Multiprocessor Systems by Anticipating Workload at Runtime

Controlling Energy Profile of RT Multiprocessor Systems by Anticipating Workload at Runtime Controlling Energy Profile of RT Multiprocessor Systems by Anticipating Workload at Runtime Khurram Bhatti, Muhammad Farooq, Cécile Belleudy, Michel Auguin LEAT Laboratory, University of Nice-Sophia Antipolis,

More information

Numerical investigation of tradeoffs in production-inventory control policies with advance demand information

Numerical investigation of tradeoffs in production-inventory control policies with advance demand information Numerical investigation of tradeoffs in production-inventory control policies with advance demand information George Liberopoulos and telios oukoumialos University of Thessaly, Department of Mechanical

More information

Journal of Global Research in Computer Science

Journal of Global Research in Computer Science Volume 2, No. 5, May 211 Journal of Global Research in Computer Science RESEARCH PAPER Available Online at www.jgrcs.info Weighted Mean Priority Based Scheduling for Interactive Systems H.S.Behera *1,

More information

Resource Scheduling in Hybrid Grid Environment

Resource Scheduling in Hybrid Grid Environment Resource Scheduling in Hybrid Grid Environment Dr. N. Malarvizhi Professor & Head, Department of Information Technology Jawahar Engineering College Chennai, India nmv_94@yahoo.com Dr. N. Sankar Ram Professor

More information

Learning Module II: Real-Time Systems Design

Learning Module II: Real-Time Systems Design Learning Module II: Real-Time Systems Design Outline Introduction to real-time systems Timing requirements and timing analysis - Concept of Worst-Case Execution Time (WCET) - Why it is hard for analyzing

More information

Pro-Energy: a novel energy prediction model for solar and wind energy-harvesting Wireless Sensor Networks

Pro-Energy: a novel energy prediction model for solar and wind energy-harvesting Wireless Sensor Networks Pro-Energy: a novel energy prediction model for solar and wind energy-harvesting Wireless Sensor Networks Alessandro Cammarano Chiara Petrioli Dora Spenza Department of Computer Science Sapienza University

More information

Principles of Operating Systems

Principles of Operating Systems Principles of Operating Systems Lecture 9-10 - CPU Scheduling Ardalan Amiri Sani (ardalan@uci.edu) [lecture slides contains some content adapted from previous slides by Prof. Nalini Venkatasubramanian,

More information

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto Ricardo Rocha Department of Computer Science Faculty of Sciences University of Porto Slides based on the book Operating System Concepts, 9th Edition, Abraham Silberschatz, Peter B. Galvin and Greg Gagne,

More information

Q1. What is Real time system? Explain the basic model of Real time system. (8)

Q1. What is Real time system? Explain the basic model of Real time system. (8) B. TECH VIII SEM I MID TERM EXAMINATION BRANCH: CSE SUB. CODE: 8CS4.2A SUBJECT: REAL TIME SYSTEM TIME ALLOWED: 2 Hours MAX. MARKS: 40 Q1. What is Real time system? Explain the basic model of Real time

More information