DESH: overhead reduction algorithms for deferrable scheduling

Size: px
Start display at page:

Download "DESH: overhead reduction algorithms for deferrable scheduling"

Transcription

1 DOI /s DESH: overhead reduction algorithms for deferrable scheduling Ming Xiong Song Han Deji Chen Kam-Yiu Lam Shan Feng Springer Science+Business Media, LLC 2009 Abstract Although the deferrable scheduling algorithm for fixed priority transactions (DS-FP) has been shown to be a very effective approach for minimizing realtime update transaction workload, it suffers from its on-line scheduling overhead. In this work, we propose two extensions of DS-FP to minimize the on-line scheduling overhead. The proposed algorithms produce a hyperperiod from DS-FP so that the schedule generated by repeating the hyperperiod infinitely satisfies the temporal validity constraint of the real-time data. The first algorithm, named DEferrable Scheduling with Hyperperiod by Schedule Construction (DESH-SC), searches the DS-FP schedule for a hyperperiod. The second algorithm, named DEferrable Scheduling with Hyperperiod by Schedule Adjustment (DESH-SA), adjusts the DS-FP schedule M. Xiong Bell Labs, Alcatel-Lucent, 600 Mountain Avenue, Murray Hill, NJ 08807, USA xiong@research.bell-labs.com S. Han ( ) Department of Computer Sciences, University of Texas at Austin, 1 University Station C0500, Taylor Hall 2.124, Austin, TX , USA shan@cs.utexas.edu D. Chen Emerson Process Management, Research Blvd # 3, Austin, TX , USA Deji.Chen@EmersonProcess.com K.-Y. Lam Department of Computer Science, City University of Hong Kong, 83 Tat Chee Avenue, Kowloon, Hong Kong cskylam@cityu.edu.hk S. Feng The Mathematics and Software Science College, Sichuan Normal University, Chengdu, Sichuan, China fengs@sicnu.edu.cn

2 in an interval to form a hyperperiod. Our experimental results demonstrate that while both DESH-SC and DESH-SA can reduce the scheduling overhead of DS-FP, DESH- SA outperforms DESH-SC by accommodating significantly more update transactions in the system. Moreover, DESH-SA can also achieve near-optimal update workload. Keywords Real-Time databases Temporal validity constraint Fixed priority scheduling Deferrable scheduling 1 Introduction Real-time embedded systems are important components of many time-critical applications that require timely processing of massive amount of real-time data. The correct functioning of a real-time embedded system depends not only on meeting real-time constraints of application jobs, but also on the accuracy of real-time data values sampled from real-world entities. Examples of real-time data include sensor data in sensor networks, positions of aircrafts in air traffic control systems, and vehicle velocity in adaptive cruise control applications. To provide better management of sampled real-time data and to support effective processing of application jobs, realtime data are typically managed by a real-time database system (RTDBS). passage of time since the status of the corresponding entity in the real-world may change continuously. Sensor update transactions should constantly sample real-world data values and install them into the RTDBS. One efficient way to determine the correctness of real-time data in a RTDBS is to define a validity constraint (Song and Liu 1995; Ramamritham 1993; Kuo and Mok 1992, 1993; Hoetal.1997; Gerber et al. 1994; Xiong et al. 2002, 2005; Kang et al. 2002; Lam et al. 2004; Gustafsson and Hansson 2004a, 2004b; Chen and Mok 2004; Xiong and Ramamritham 2004) orage constraint (Burns and Davis 1996), which determines a validity interval length for each real-time data object. A real-time data value is only valid within its validity interval. In practice, for safety and reliability reasons, real-time embedded systems require continuous generation of update transactions to refresh real-time data objects regardless of how much the status of the corresponding real-world entities have been changed. To meet this constraint, it is important to produce a schedule for all update transactions such that for any consecutive updates of a real-time data object, the next update is completed before the previous validity interval expires. Thus one of the crucial issues in the design of realtime embedded systems is to schedule the update transactions efficiently to maintain the validity of real-time data while minimizing the total update transaction workload. Prior work Most of the previous work in update transaction scheduling assumed a periodic transaction model. The update problem for periodic update transactions consists of two parts (Xiong and Ramamritham 2004): (1) the determination of the sampling periods and deadlines of update transactions; and (2) the scheduling of update transactions. One of the proposed approaches is the Half-Half (HH) scheme (Ramamritham 1993; Hoetal.1997) in which an update transaction has a fixed period that is half of the validity interval. If the set of transactions is schedulable

3 in HH, the validity constraints of the corresponding real-time data objects can also be guaranteed. Similarly to HH, More-Less (ML) (Xiong and Ramamritham 2004; Lam et al. 2004; Chen and Mok 2004) is another periodic approach in which update transactions are scheduled based on the deadline monotonic algorithm (Leung and Whitehead 1982). Compared to HH, ML can guarantee the validity of real-time data objects with less update transaction workload. Recently, the DS-FP algorithm was proposed (Xiong et al. 2005) to further reduce the total update transaction workload. The main idea of DS-FP is to adopt sporadic task model instead of the periodic model. Compared to ML, DS-FP increases the separation of two consecutive transaction jobs by releasing an update transaction job as late as possible based on the sampling time of its previous job. Both theoretical analysis and experimental results have demonstrated that DS-FP outperforms HH and ML significantly in reducing the update transaction workload while still maintaining the real-time data validity. One major problem of DS-FP is its time complexity for on-line schedule computation (Xiong et al. 2005). The variation in its run-time overhead leads to unpredictability of the system performance. This paper thus aims at reducing the on-line scheduling overhead of the DS-FP algorithm to constant, which provides more predictability to the system performance. We propose two Deferrable Scheduling with Hyperperiod (DESH) algorithms, which construct the hyperperiod schedule off-line and reduce the on-line scheduling time complexity to O(1). Contributions The key contributions of our work include the followings. (1) To reduce on-line scheduling overhead, our first algorithm, named Deferrable Scheduling with Hyperperiod Construction (DESH-SC), searches the hyperperiod of the set of update transactions so that the transactions can be scheduled by repeating the hyperperiod schedule. However, the hyperperiods found by DESH- SC are exponentially long, which could incur significant space overhead for maintaining the hyperperiod information for on-line scheduling. (2) Our second algorithm, named Deferrable Scheduling with Schedule Adjustment (DESH-SA), adjusts the DS-FP schedule in an interval such that the adjusted schedule can be repeated infinitely. DESH-SA improves DESH-SC on producing much shorter hyperperiods and accommodating significantly more update transactions. (3) The two DESH algorithms are experimentally studied by simulation, and the primary performance metrics used in our experimental studies are the CPU workload and the number of transactions supported in the system. Our experimental results demonstrate that both DESH-SC and DESH-SA can reduce scheduling overhead of DS-FP, and DESH-SA outperforms DESH-SC by accommodating significantly more update transactions in the system. Organization This paper is organized as follows: Sect. 2 briefly reviews the background and related work in the area. Section 3 presents the details of the two proposed algorithms. Section 4 reports our experimental results of DESH-SC and DESH-SA. Finally, we conclude the paper and discuss the future work in Sect. 5.

4 2 Background and related work This section briefly reviews the temporal validity of real-time data, and the More- Less (ML) (Burns and Davis 1996; Xiong and Ramamritham 2004) and deferrable scheduling (DS-FP) (Xiong et al. 2005) algorithms. Formal definitions of the frequently used symbols are summarized in Table 1. Definition 2.1 A real-time data object (X i ) at time t is temporally valid (or absolutely consistent) if, for its jth update finished latest before t, the sampling time (r i,j )plusthevalidity interval (V i ) of the data object is not less than t, i.e., r i,j + V i t (Ramamritham 1993). A data value for real-time data object X i sampled at any time t will be valid up to (t + V i ). The actual length of the temporal validity interval of a real-time data object is application dependent (Ramamritham 1993, 1996; Locke 1997). One of the important design goals of RTDBS is to guarantee that real-time data remain fresh, i.e., they are always valid. We assume that the network delay for a sensor update transaction job to be sent from a sensor to the RTDBS (i.e., jitter between sampling time at the sensor and release time at the RTDBS) is zero for convenience of presentation. Our results here can be easily extended to the case that jitter is non-zero if the maximum jitter of a transaction is known. In the presence of non-zero jitters, we can transform a transaction τ i (with validity length V i and maximum jitter δ i) to a transaction τ i (with validity length V i = V i δ i and zero jitter). Such a transformation guarantees that if τ i can meet its validity constraint, then τ i can also meet its validity constraint. Given a set of transactions T ={τ i } m i=1, we assume without loss of generality that τ k has higher priority than τ j for k<j. Table 1 Symbols and definitions Symbol Definition X i Real-time data object i τ i Update transaction updating X i (i = 1,...,m) J i,j The jth job of τ i (j = 0, 1, 2,...) R i,j Response time of J i,j C i V i f i,j r i,j d i,j P i D i U DS i (a, b) Computation time of transaction τ i Validity (interval) length of X i Finishing time of J i,j Release (Sampling) time of J i,j Absolute deadline of J i,j Period of transaction τ i in ML Relative deadline of transaction τ i in ML An estimated average CPU utilization in DS-FP Total cumulative processor demands from higherpriority transactions received by τ i in interval [a,b)

5 More-less ML adopts the periodic task model (Leung and Whitehead 1982) for sensor update transactions whose derived deadlines are not larger than their periods. Consider synchronous transactions whose first jobs all start at time 0. A time instant after which a transaction job has the worst-case response time is called a critical instant, e.g., time 0 is a critical instant for all the transactions with deadlines no larger than their periods if those transactions are synchronous (Leung and Whitehead 1982). Note that we only consider synchronous transactions. In ML, there are three constraints to follow for transactions τ i ( i, 1 i m) (Xiong and Ramamritham 2004): Validity constraint: the sum of the period and relative deadline of transaction τ i is always less than or equal to V i, i.e., P i + D i V i. Deadline constraint: the period of an update transaction is assigned to be more than or equal to half of the validity length of its updated object, while its corresponding relative deadline is less than or equal to half of the validity length of the same object. For τ i to be schedulable, D i must be greater than or equal to C i,theworstcase execution time of τ i, i.e., C i D i <P i. Schedulability constraint: for a given set of update transactions, the Deadline Monotonic scheduling algorithm (Leung and Whitehead 1982) is used to schedule the transactions. That is, i j=1 ( D i P j C j ) D i (1 i m). ML assigns priorities to transactions based on Shortest Validity First (SVF), i.e., in the inverse order of validity length, and ties are resolved in favor of transactions with larger computation time (C i ). It assigns deadlines and periods to τ i as follows: D i = fi,0 ml i,0, (1) P i = V i D i, (2) where fi,0 ml and rml i,0 are the finishing and sampling times of the first job of τ i, respectively. Note that in a synchronous system, ri,0 ml = 0 and the first job s response time is the worst-case response time in ML. We use superscript ml to distinguish the finishing and sampling times in ML from those in DS-FP. DS-FP ML is pessimistic on the deadline and period assignment. This is because it uses a periodic task model that has a fixed period and relative deadline for each transaction, and the relative deadline D i is equal to the worst-case response time of the transaction. According to the validity constraint in ML, the larger the deadline D i, the smaller the period P i. In order to increase the separation of two consecutive jobs (and thus reduce the sensor update workload), DS-FP adaptively derives the relative deadline and separation of one job from its previous job and preemptions from higherpriority transactions. Given release time r i,j of job J i,j and deadline d i,j+1 of job J i,j+1 (j 0), d i,j+1 = r i,j + V i (3) guarantees that the validity constraint can be satisfied, as depicted in Fig. 1. Correspondingly, the following equation follows directly from (3): (r i,j+1 r i,j ) + (d i,j+1 r i,j+1 ) = V i. (4)

6 Fig. 1 Illustration of DS-FP scheduling If r i,j+1 can be shifted onward to r i,j+1 along the time line in Fig. 1, it does not violate (4). After the shift, temporal validity can still be guaranteed as long as J i,j+1 is completed by its deadline d i,j+1. The idea of DS-FP is to defer the sampling time (i.e., release time), r i,j+1,ofj i,j s next job as late as possible while still guaranteeing the validity constraint. According to the fixed priority scheduling theory, r i,j+1 in DS-FP can be derived backwards from its deadline d i,j+1 as follows: r i,j+1 = d i,j+1 R i,j+1 (r i,j+1,d i,j+1 ); (5) R i,j+1 (r i,j+1,d i,j+1 ) = i (r i,j+1,d i,j+1 ) + C i. (6) where i (a, b) denotes the total cumulative processor demands made by all jobs of higher-priority transaction τ k ( k, 1 k i 1) during time interval [a,b), and R i,j+1 (r i,j+1,d i,j+1 ) (or R i,j+1 for simplicity in DS-FP) the response time of J i,j+1 deriving backwards from its deadline d i,j+1. Note that the schedule of all higherpriority jobs that are released prior to d i,j+1 needs to be computed before computing i (r i,j+1,d i,j+1 ). Similarly to ML, DS-FP also assigns priorities to transactions according to SVF. Readers are referred to the Appendix for the details of the DS-FP algorithm. Now we summarize the algorithm as follows. First we set r i,0 = 0, i, 1 i m. The highest priority job among the outstanding jobs is always scheduled first. It is only preempted when a new job with higher priority is ready. As soon as a job J i,j is completed, we derive the r i,j+1 of its next job according to above calculations. The algorithm fails when a job misses its deadline. Otherwise it keeps running. It is proved that any task set that is scheduled by ML is also scheduled by DS-FP (Xiong et al. 2006). The EDL algorithm proposed in Chetto and Chetto (1989) processes tasks as late as possible based on the Earliest Deadline algorithm (Liu and Layland 1973). EDL assumes that all deadlines of tasks are given whereas DS-FP and DESH algorithms

7 derive deadlines dynamically. The validity constrained scheduling, e.g., ML, DS-FP, and DESH algorithms, are different from the distance constrained scheduling, which guarantees an upper bound to the finishing times of two consecutive instances of a task (Han et al. 1995). 3 Deferrable scheduling with hyperperiod The DS-FP algorithm is very effective at reducing processor utilization while guaranteeing the validity constraint. However, its on-line scheduling overhead in terms of time complexity is much higher than that of ML. Moreover, the scheduling overhead of DS-FP depends on the number of transactions and the validity length of updated data. Thus, DS-FP can become very expensive, e.g., when the transaction set becomes large. In contrast to a periodic schedule that has the least common multiple of task periods as its hyperperiod, there is usually no such natural hyperperiod for a DS-FP schedule. Next, we present two DEferrable Scheduling with Hyperperiod (DESH) algorithms for constructing periodic schedules off-line from the DS-FP algorithm so that the on-line scheduling time complexity can be reduced. Note that this will undoubtedly increase the space overhead for keeping the DESH schedules. But the space overhead can be kept reasonably low as demonstrated in our experiments in Sect. 4.OurDESH algorithms satisfy the following properties: Property 3.1 A schedule satisfies the validity constraint. Property 3.2 The on-line scheduling time complexity is O(1). 3.1 DEferrable Scheduling with Hyperperiod: Schedule Construction (DESH-SC) In this subsection, we present DEferrable Scheduling with Hyperperiod based on Schedule Construction (DESH-SC), a DS-FP based algorithm that can reduce the online scheduling overhead. The basic idea of DESH-SC is to search for an interval of DS-FP schedule, the hyperperiod, that could be repeated infinitely without violating the validity constraint. Note that DESH-SC could return without finding a hyperperiod. The DESH-SC algorithm consists of two parts: an algorithm for finding the hyperperiod off-line (see Algorithm 3.1) and an algorithm for scheduling transactions on-line. The latter is trivial once a hyperperiod is found because it only needs to repeat the hyperperiod schedule. Therefore, we next describe how the hyperperiod is derived from the schedule of DS-FP. For a DS-FP schedule and a time period [t s,t e ],wesay[t s,t e ] is a hyperperiod for the transaction set if for all transactions τ i (1 i m), the following schedule satisfies τ i s validity constraint: it is the same as the DS-FP schedule from time 0 to t e.fromt e onward, it repeats the DS-FP schedule in [t s,t e ] to infinity. Please note that t s and t e do not need to be idle time points in DESH-SA, which is different from the requirements of t s and t e in DESH-SC.

8 Lemma 3.1 [t s,t e ] is a hyperperiod in DESH-SC if for all τ i (1 i m) the following conditions hold. 1. t s and t e are CPU idle time points. 2. t s > V i. 3. τ i is scheduled at least once in [t s,t e ]. 4. I(t s,τ i ) I(t e,τ i ), where function I(t,τ i ) is defined as the time distance between t and τ i s latest release time before t. Proof Given any τ i (1 i m), we first prove in the hyperperiod schedule that the distance of the finish time of the first τ i job after t e and the release time of its latest job before t e satisfies the validity constraint. Note that the first job after t e repeats the first job in [t s,t e ]. Because t s > V i, the first job of τ i in [t s,t e ] must finish by (t s I(t s,τ i )) + V i, in other words, by V i I(t s,τ i ) after t s. Since [t s,t e ] is repeated after t e, the first job of τ i after t e also finishes by V i I(t s,τ i ) after t e. The distance between the finish time of its first job in the second hyperperiod [t e, 2t e t s ] and the release time of its latest job in the first hyperperiod [t s,t e ] is no longer than: I(t e,τ i ) + (V i I(t s,τ i )) = V i + (I (t e,τ i ) I(t s,τ i )) V i. Similarly, we can prove that the distance between the finish time of its first job in the (k + 1)th (k = 1, 2,...) hyperperiod and the release time of its latest job in the kth hyperperiod is no longer than V i. Thus, the jobs of τ i satisfy the validity constraint. Note that the third condition could be derived from the fourth condition: If no job is scheduled in [t s,t e ], then τ i s latest release time before t s is also its latest release time before t e, hence the fourth condition is always false. To better satisfy the fourth condition, we need to assign t s to be the end of an idle period and t e to be the beginning of another idle period. By idle period [t 1,t 2 ] we mean that CPU is busy right before t 1, it idles between t 1 and t 2, and it is busy again after t 2. Once the hyperperiod is found, we could increase t e as long as the conditions in Lemma 3.1 are satisfied. The idea is presented in Algorithm 3.1. In the algorithm, we continuously push t 2 of idle periods into a queue Q as possible candidates for t s of a hyperperiod. For each subsequent idle period, we check its t 1 against each t 2 saved in Q to see if they form a hyperperiod. If the hyperperiod is found, we could then further increase t e as long as [t s,t e ] still satisfies the conditions in Lemma 3.1. The increase cannot exceed I(t s,τ i ) I(t e,τ i ) for any transaction τ i, 1 i m.we define w to be the minimum of I(t s,τ i ) I(t e,τ i ) in the algorithm. Algorithm 3.1 SearchHyperperiod: Input: A DS-FP schedule, a utilization limit U max, and a time limit t max. Output: The hyperperiod with utilization U max. 1 U 1.001; // Initialization of hyperperiod utilization. 2 t 2 max{v i 1 i m}; 3 [t 1,t 2 ] first CPU idle period after t 2 ;

9 4 Append t 2 to Q; //Q is a FIFO queue of t 2. 5 while (U > U max ) do 6 [t 1,t 2 ] next CPU idle period after t 2 ; 7 // t max is the maximum time to search. 8 if (t 1 >t max ) then return failure; endif 9 t e t 1 ; 10 for t s = first in Q to last in Q do 11 if ([t s,t e ] satisfies Condition 4 in Lemma 3.1) 12 then 13 Signal that a hyperperiod exists; 14 w min{i(t s,τ i ) I(t e,τ i ) 1 i m}; 15 t e t e + min(w, (t 2 t 1 )); // Fine-tune t e. 16 U utilization in [t s,t e ]; 17 if (U > U ) then 18 U U ; 19 if (U U max ) then goto RT N; endif 20 endif 21 endif 22 end 23 if Q is full then Dequeue the oldest; endif 24 Append t 2 to Q; 25 end 26 RTN: return [t s,t e ] as the hyperperiod; Note that Algorithm 3.1 is not guaranteed to find a hyperperiod if one exists. This is due to the time limit (t max ), space limit (the size of Q), and the value of U max.the value of U max should not exceed 1.0. In our experiments, U max is set as a value close to the average utilization estimation of DS-FP defined in Definition 3.1 (Sect. 3.2). The following example demonstrates how the algorithm works. Example 3.1 Suppose that there are three update transactions whose parameters are shownintable2. The resulting periods and deadlines in ML are shown in the same table. For each job of τ 1, τ 2 and τ 3 before time 45, Table 3 compares its (release time, deadline) pairs which are assigned by ML and DS-FP respectively. Figure 2(a) depicts part of a DS-FP schedule during the interval [15, 45], where t1 i and ti 2 are the beginning and ending times of the ith (i = 1, 2,...) idle period respectively. In the DS-FP schedule, the first idle period after V 3 = 20, i.e., the largest V i,is[21, 22]. Table 2 Parameters derived from ML τ 1 τ 2 τ 3 C i V i P i D i 1 3 6

10 Table 3 Release time and deadline comparison Job τ 1 τ 2 τ 3 ML/DS-FP ML DS-FP ML DS-FP 0 (0,1) (0, 3) (0, 3) (0, 6) (0, 6) 1 (4,5) (7, 10) (7, 10) (14, 20) (18, 20) 2 (8,9) (14, 17) (14, 17) (28, 34) (35, 38) 3 (12,13) (21, 24) (22, 24) (16,17) (28, 31) (30, 32) 5 (20,21) (35, 38) (38, 40) 6 (24,25) (28,29) 8 (32,33) 9 (36,37) t2 1 = 22 is pushed in Q. During the next three idle periods, the condition of Line 11 in Algorithm 3.1 always fails. Note that τ 3 has not been scheduled yet since V 3. For the fifth idle period [t1 5,t5 2 ]=[41, 44], the second element in Q with t2 2 = 28 satisfies the condition of Line 11 in Algorithm 3.1.Wehavet s = 28, w = I(28,τ 1 ) I(41,τ 1 ) = 3, t e = 41 + min(w, (t 2 t 1 )) = = 44, and U = 10/16 = If U max 0.625, Algorithm 3.1 returns hyperperiod [28, 44]. Note that Algorithm 3.1 does not depend on which scheduling algorithm produces the input schedule. It could be applied to any valid schedule satisfying the validity constraint. The complete DESH-SC schedule constructed from Algorithm 3.1 satisfies the Properties 3.1 and DEferrable Scheduling with Hyperperiod: Schedule Adjustment (DESH-SA) In this subsection, we present DEferrable Scheduling with Hyperperiod based on Schedule Adjustment (DESH-SA), a DS-FP based algorithm that can reduce the online scheduling overhead while achieving processor utilization close to that of DS-FP. By schedule adjustment, we mean changing release times and deadlines of jobs. The basic idea of DESH-SA is to construct a hyperperiod schedule S H off-line for T, a set of validity constrained transactions. Suppose the first hyperperiod of the S H schedule has length S H. If the first hyperperiod of S H can be constructed by adjusting the DS-FP schedule in the time interval [0, S H ], the complete S H schedule can be constructed by repeating the first hyperperiod of S H infinitely every S H time units. Thus, similarly to DESH-SC, thedesh-sa algorithm consists of two parts: an algorithm for constructing the hyperperiod off-line (see Algorithm 3.2) and an algorithm for scheduling transactions on-line. We next describe how the first hyperperiod schedule of S H in the interval [0, S H ] is derived from the schedule of DS-FP. Given time t e > 0, note that a DS-FP schedule in the interval [0,t e ] can be constructed off-line. Assume that jobs J i,ki 1 and J i,ki of τ i (k i 1&1 i m) satisfy

11 Fig. 2 DESH-SC and DESH-SA examples the following condition for t e : d i,ki 1 <t e d i,ki. (7) First, deadlines d i,ki will be adjusted to time t e if they are different, i.e., all jobs J i,ki ( i, 1 i m) must complete by t e. Note that there are J i,0,...,j i,ki, i.e., k i +1 jobs of τ i, during the interval [0,t e ] after the adjustment, and k i is the largest index of all jobs of τ i that complete by t e. Likewise, let jobs J i,ki +1 ( i, 1 i m) of all τ i safter adjustment be released from time t e, which is similar to the case that the first jobs are all released from time 0. Thus, jobs of all transactions can be released synchronously at time nt e, where n is a natural number. This can be done by repeating schedule in [0,t e ] forever. Second, let the DS-FP schedule in [0,t e ] be adjusted backwards from time t e so that the adjusted schedule is valid for guaranteeing the validity constraint. Thefollowing condition can be enforced for 0 t t e and integers n 1,n 2 0 if the schedule in the interval [0,t e ] is repeated infinitely: g(n 1 t e,t)= g(n 2 t e,t) (8) where g(nt e,t) is a function returning a pair of integers i, k, which indicates that the kth job of τ i in the nth hyperperiod is active at time t (i.e., at time nt e + t). Equa-

12 tion (8) implies that any two hyperperiods have the exactly same schedule. Function g(nt e,t)is formally defined as i, j n(k i + 1), the CPU is allocated to J i,j g(nt e,t)= at time nt e + t; (9) 0, 0, the CPU is idle at time nt e + t. Note that n, j are integers, and n 0&j 0 hold for (9). Equation (8) ensures that all transactions are released synchronously at time 0, t e,2t e,..., etc. If the processor is allocated to job J i,j at time nt e + t, then it is the (j n(k i + 1))th job of τ i from time nt e (Note that there are (k i + 1)τ i jobs during the interval [0,t e ]). Equations (8) and (9) ensure that the complete S H schedule is constructed periodically by repeating the schedule of the interval [0,t e ] every t e units. Next, we present an estimation of the average processor utilization of DS-FP, U DS, from a statistical perspective and discuss how time t e is chosen. Definition 3.1 Given a set of transactions T ={τ i } m i=1 that can be scheduled by ML, let P j be the average period for τ j, the estimated average processor utilization under DS-FP, U DS is defined as follows: U DS = m i=1 C i P i = m ( i=1 V i C i C i 1 i 1 C j j=1 P j First, t e has to be a value that allows the processor utilization of the first S H hyperperiod to be close to U DS, which is demonstrated to be very close to the average utilization of fixed priority transactions with the same priority assignment (Xiong et al. 2005). Any time t 0 can be chosen as the initial value of t e if the processor utilization at t e, U(t e ) is close to U DS, where U(t e ) is defined as follows: mi=1 (k i + 1)C i U(t e ) =. (11) t e Please note that k i is the index of the last job (i.e., J ki ) of transaction τ i that completes by time t e. Second, t e can be chosen from an idle time. The following theorem, which is a sufficient condition of constructing a general DESH-SA schedule for a validity constrained transaction set without any adjustment, explains the rationale for choosing an idle time as t e. Theorem 3.1 Given a DS-FP schedule for a validity constrained transaction set T, suppose t idle is an idle time in the schedule and the schedule before t idle is feasible. Let r i,ki 1 (k i 1) be the latest release time of jobs of τ i (1 i m) before t idle. If ) (10)

13 i (1 i m), t idle r i,ki 1 + d i,0 V i (12) holds, then the interval [0,t idle ] can be used as the first hyperperiod of the DESH-SA schedule without any adjustment. Proof Note that once a job is released under DS-FP, the processor cannot be idle until the job completes. Thus, i (1 i m), d i,ki 1 <t idle <r i,ki (13) If all jobs J i,ki are released at time t idle, i.e., r i,ki = t idle, then the schedule of the interval [t idle, 2 t idle ] is the same as that of the interval [0,t idle ]. Moreover, if (12) holds, d i,ki r i,ki 1 = d i,ki t idle + t idle r i,ki 1 = d i,0 0 + t idle r i,ki 1 V i {by (12)} That is, two consecutive jobs J i,ki 1, J i,ki ( i, 1 i m) across two neighboring hyperperiods satisfy the validity constraint. Thus a feasible DESH-SA schedule can be constructed by having the schedule of the interval [0,t idle ] as the first hyperperiod schedule. Note that if t e is set to be t idle, then it is not necessary to adjust the schedule of any transactions in the interval [0,t idle ] for making the first hyperperiod of DESH-SA. However, it is not always possible to find such a time t idle for all transactions satisfying (12), in which case the DS-FP schedule in the interval [0,t e ] corresponding to a subset of the transactions needs to be adjusted. Specifically, if transaction τ h (1 h m) is the highest priority transaction whose schedule needs to be adjusted due to violation of (12), then the schedule of all lower-priority transactions τ i (h < i m) also needs to be adjusted due to the impact of release time and deadline adjustment of τ i s higher-priority transactions in the interval [0,t e ]. This is described in Algorithm 3.2. Algorithm 3.2 AdjustScheduleForHyperperiod(T, t e ): Input: Transaction set T and time t e > 0. Output: Adjusted schedule S H in [0,t e ] satisfying (8), and i, k i. 1 Construct DS-FP schedule S H in [0,t e ] for τ i T ; 2 //J i,j has r i,j,d i,j computed in S H (j k i by (7)). 3 h min i {i τ i T & τ i violates (12)}. 4 //J i,ki is the latest τ i job in the interval [0,t e ]. 5 (i < h), k i k i 1; // No adjustment for i<h

14 6 t s t e ; // Schedule in [t s,t e ] will be adjusted. 7 for i = h to m do // Adjust S H in [0,t e ]. 8 d i,k i t e ; // d i,j is adjusted from d i,j. 9 j k i ; 10 while (j > 0) do 11 if (d i,j r i,j < i (r i,j,d i,j ) + C i) 12 // J i,j s response time >d i,j r i,j. 13 then // r i,j is adjusted from r i,j. 14 r i,j d i,j i(r i,j,d i,j ) C i; 15 if (((j < k i ) (d i,j+1 r i,j > V i)) (r i,j < 0)) 16 then report failure; endif 17 if (r i,j <d i,j 1) // Ripple impact. 18 then d i,j 1 r i,j ; // Change d i,j else d i,j 1 d i,j 1; // No change. 20 endif 21 j j 1; 22 else // No adjustment for this job. 23 if (t s d i,j ) // No more adjustment for τ i. 24 then 25 t s = d i,j ; 26 break; // Jump out of while loop 27 else // Examine the previous job of τ i. 28 d i,j 1 d i,j 1; // No change. 29 j j 1; 30 endif 31 endif 32 end 33 if ((j = 0) ((d i,j < i(0,d i,j ) + C i))) 34 then report failure; 35 else t s 0; 36 endif 37 end 38 return adjusted S H in [0,t e ] and i, k i ; Note that Line 11 checks if J i,j s response time is greater than d i,j r i,j,the difference of its adjusted deadline and original release time. If so, its release time also needs to be adjusted backwards. This may cause a violation of the validity constraint, thusdesh-sa reports failure (Line 16). Otherwise, if itsnewlyadjusted release time is ahead of its prior job s deadline, then its prior job s schedule has to be adjusted. This causes a ripple impact on the schedule adjustment. The next example illustrates DESH-SA. Example 3.2 Figure 2(b) shows the result of applying DESH-SA on the same transaction set as in Example 3.1. The upper and lower schedules in Fig. 2(b) are the DS-FP

15 and its corresponding DESH-SA schedules, respectively. Let t e = 33, then h = 3. Only τ 3 needs to be adjusted. DESH-SA sets d 3,1 = 33. J 3,1 can be re-scheduled and its adjusted release time is 27. The newly adjusted schedule from time 0 to 33 is the DESH-SA hyperperiod. Theorem 3.2 Given a synchronous update transaction set T with known C i and V i (1 i m), if ( i) fi,0 ml V i 2 in ML, then WCRT i f ml i,0 where WCRT i and f ml i,0 denote the worst-case response time of τ i under DS-FP and ML, respectively. Proof See Theorem 3.1 in Xiong et al. (2008). After the schedule adjustment, the release time and deadline of job J i,ki +1 ( i, 1 i m), which appears as the first job in the second hyperperiod, are set as follows: r i,k i +1 = t e; (14) d i,k i +1 = t e + d i,0. (15) Lemma 3.2 If fi,0 ml V i 2 in ML, the release time of J i,k i and the deadline of J i,ki +1 after adjustment in Algorithm 3.2 is constrained by V i, i.e., d i,k i +1 r i,k i V i. (16) Proof i (i<h), (k i 1) is assigned to k i at Line 5 in Algorithm 3.2. By Theorem 3.1, t e + d i,0 r i,ki V i d i,k i +1 r i,k i V i {by Algorithm 3.2, r i,k i = r i,ki } Next, we prove it for h i m. By schedule adjustment, r i,k i +1 = d i,k i = t e. (17) After the schedule adjustment, according to Theorem 3.2, the following equations hold: The sum of (18) and (19) is: d i,k i +1 r i,k i +1 f i,0 ml (18) d i,k i r i,k i fi,0 ml (19) d i,k i +1 r i,k i 2f ml i,0 V i. Thus, (16) holds.

16 Lemma 3.2 guarantees that the validity constraint can be satisfied for J i,ki and J i,ki +1, which are two consecutive jobs in different hyperperiods (e.g., the 1st and 2nd hyperperiods). Algorithm 3.2 also guarantees that the validity constraint can be satisfied for jobs J i,0,..., J i,ki, which are in the same hyperperiod. Moreover, if the schedule of the first S H hyperperiod can be constructed off-line, the on-line scheduling overhead of DESH-SA in terms of time complexity is constant as it only needs to repeat the schedule of the first S H hyperperiod infinitely. Therefore, the complete DESH-SA schedule constructed from Algorithm 3.2 satisfies the aforementioned Properties 3.1 and Performance evaluation This section presents important results from our simulation studies of the DESH algorithms. Our goal is to find out whether the DESH algorithms are effective for reducing the DS-FP overhead. The primary performance metrics used in our experimental studies are the CPU workload and the number of transactions supported in the system. 4.1 Simulation model and parameters In the experiments, we investigate whether DESH-SA and DESH-SC can find a hyperperiod, and if so, how much excess CPU workloads they may incur compared to DS-FP. We also compare the hyperperiod length of DESH-SA and DESH-SC to study the space efficiency of the approaches, and demonstrate the percentage of transactions to be adjusted when we calculate the hyperperiod for DESH-SA. For simplicity, only one version of a real-time data object is maintained. Upon refreshing a real-time data object, the older version is discarded. We ignore the on-line scheduling overhead in our experiments, and consider it to be O(1) for all algorithms (which is true for DESH algorithms). This is in favor of DS-FP as its scheduling overhead is ignored for the CPU workload in our experiments. We define N adjust to be the average number of jobs whose release times or deadlines are adjusted in [0,t e ] under DESH-SA. A summary of the parameters and default settings is presented in Table 4. The baseline values for the parameters follow those used in Xiong and Ramamritham (2004), which are originally from air traffic control applications. Two categories of parameters are defined: system and update transaction parameters. For system configurations, we only consider a single CPU, main memory based RTDBS. The number Table 4 Parameters and default settings Parameter Meaning Value N CPU No. of CPU 1 N T No. of real-time data [10, 300] V i (ms) Validity interval of X i [4000, 8000] C i (ms) Time for updating X i [5, 15] Trans. length No. of data to update 1

17 of real-time data varies from 10 to 300 and the validity length of each real-time data object is uniformly distributed from 4000 to 8000 ms. For update transactions, it is assumed that each transaction updates one real-time data object, and its CPU time is uniformly distributed from 5 to 15 ms. 4.2 Experimental results In this subsection, the CPU workloads of sensor update transactions produced by DS-FP, DESH-SC and DESH-SA are quantitatively compared. In the first set of experiments, update transactions are generated randomly according to the parameter settings in Table 4 while in the second set of experiments, m i=1 C i V i of the update transaction set is fixed at 45% and V i C i is varied to show its impact on the performance of the algorithms. With the DESH algorithms, the transaction with maximum validity interval is run at least 200 times (thus issuing 200 jobs) so that the CPU workload of the first S H hyperperiod is close to U DS. Then the idle times following the completion of those jobs under DS-FP are chosen as t e candidates. Those candidates are tested to find out whether the interval [0,t e ] can be used as the first hyperperiod. The resulting CPU workloads generated from DESH-SA, DESH-SC and DS-FP are depicted in Fig. 3. In the figure, DS-FP(Est.) indicates the estimated average CPU utilization U DS, and DS-FP(Expt.) is the actual utilization of DS-FP obtained in the experiments. The results in Fig. 3 demonstrate that the CPU workload of DS-FP(Est.) nearly matches that of DS-FP(Expt.). In Fig. 3, thedesh-sc curve is only plotted in the range where the number of update transactions in the system varies from 5 to 35. This is because in our experiments, DESH-SC can only find its hyperperiod when the number of update transactions is no more than 35. Indeed, CPU workloads of DESH-SC and DESH-SA nearly match that of DS-FP, and it is hard to tell the difference in the figure. However, it is observed that the DESH-SA workload is consistently lower than that of ML. This is expected because the deadline adjustment in DESH-SA has little impact on increasing the overall system workload. Even when the number of transactions in the system is up to 300, DESH-SA only incurs less than 1% Fig. 3 CPU workload comparison

18 Fig. 4 Average # of adjusted jobs per transaction in [0,t e ] Fig. 5 Average hyperperiod length comparison excess CPU workload compared to that of DS-FP. Note that the on-line scheduling overhead is ignored for DS-FP in our experiments. Thus the actual CPU workload for DS-FP should be higher than what is shown in the figure. Also note that the extra overhead resulting from DESH-SA is adjustable. For example, if the interval [0,t e ] is further enlarged, the CPU workload of DESH-SA can be reduced, in which case it can become even closer to that of DS-FP. Figure 4 shows the average number of adjusted jobs (N adjust ) obtained for each transaction in DESH-SA. The data is collected from 50 different transaction sets. It should be noted that the average number of adjusted jobs for each transaction is lower than 2, and it increases while the priority of a transaction decreases. Considering that such job adjustment produces a hyperperiod schedule that reduces on-line scheduling overhead to O(1), the benefit of the adjustment is justified. Next, we compare the hyperperiod length calculated from DESH-SC and DESH- SA. Figure 5 shows that the hyperperiod length for DESH-SA remains almost the same with the increase of the number of transactions in the system. But the hyperperiod length for DESH-SC increases rapidly and when the number of transactions

19 Fig. 6 Hyperperiod length vs. U max (DESH-SC) Fig. 7 Percentage of transactions adjusted (DESH-SA) in the system increases beyond 35, DESH-SC cannot find a hyperperiod. A shorter hyperperiod implies that less space overhead is needed for keeping scheduling information. This implies that DESH-SA is also space efficient. We also study the impact of U max, the hyperperiod utilization limit in DESH-SC (Algorithm 3.1), on the resulting hyperperiod length. Figure 6 shows the relationship of the resulting hyperperiod length and U max. In the figure, U max is varied as 1.02 DS-FP(Est.), 1.06 DS-FP(Est.), and 1.10 DS-FP(Est.). The differences among the hyperperiod lengths are really small. A larger U max results in a slightly shorter hyperperiod because DESH-SC terminates sooner with larger U max in Algorithm 3.1. Figure 7 shows the percentage of transactions adjusted for DESH-SA. There are two percentage curves in the figure. The higher one is the percentage of transactions adjusted no matter whether they violate (12). Those transactions include all τ i where h i m (h is calculated at Line 3 in Algorithm 3.2). The lower curve is the percentage of transactions which actually violate (12). The former should be higher than the latter because if the schedule of a transaction, e.g., τ h, is adjusted, then the schedule

20 Fig. 8 CPU workload with fixed m i=1 C i V i of its lower-priority transactions will be adjusted even if a lower-priority one does not violate (12) before τ h s adjustment. As mentioned earlier, we also conducted experiments by varying V i C i and fixing mi=1 C i V i of the update transaction set at 45%. The results are depicted in Fig. 8, which compares ML, DS-FP, DESH-SA, m C i i=1 V i and m C i i=1 V i C i.asinfig.3,the actual utilization for DS-FP is very close to the estimated average utilization U DS C i V i C i (shown as DS-FP(Est.)). As explained in Xiong et al. (2005), m i=1 is the CPU workload resulting from the possible maximum separation V i C i satisfying the validity constraint for each transaction τ i. It is the CPU lower bound ignoring transaction interference. It is observed in Fig. 8 that the CPU workloads of DS-FP and DESH-SA are very close to that of m C i i=1 V i C i. The larger V i C i is, the closer DS-FP, DESH-SA and m C i i=1 V i C i are. This is because the probability of transaction interference decreases for DS-FP and DESH-SA when V i becomes larger. In summary, it is demonstrated in our experimental results that the CPU workloads produced by the DESH algorithms nearly match those produced by DS-FP. In addition, DESH-SA outperforms DESH-SC in terms of time and space complexity. Thus, DESH-SA is a very efficient algorithm for reducing the DS-FP overhead. C i 5 Conclusions and future work This paper presents novel approaches derived from DS-FP, named DESH-SC and DESH-SA, that reduce the on-line scheduling overhead to O(1). DESH-SC searches for a hyperperiod in the DS-FP schedule while DESH-SA adjusts the DS-FP schedule in an interval to satisfy the temporal validity constraint. Our experimental results demonstrate that DESH-SA is a very effective approach for minimizing the sensor update workload while guaranteeing the validity constraint, and it is efficient in terms of time and space complexity. However, there are many open questions regarding the hyperperiod in a DS-FP schedule. For example, it is unclear what a necessary and sufficient condition is for

21 the DESH-SA algorithm to produce a hyperperiod. Also, if a transaction set is not schedulable by DS-FP, is it possible to construct a hyperperiod schedule so that its constructed schedule is schedulable? We intend to address these challenging problems in our future work. Appendix: Deferrable scheduling algorithm This appendix presents DS-FP,afixed priority scheduling algorithm, which was originally presented in Xiong et al. (2005). Transaction priority assignment policy in DS- FP is the same as in ML, i.e., Shortest Validity First. Given an update transaction set T, it is assumed that τ i has a priority higher than τ j if i<j as we let V i V j. Algorithm 6.1 presents the DS-FP algorithm. There are two cases for the DS-FP algorithm: 1) At system initialization time, Lines 13 to 22 iteratively calculate the first job s response time for τ i. The first job s deadline is set as its response time (Line 23). 2) Upon completion of τ i s job J i,k (1 i m, k 0), the deadline of its next job (J i,k+1 ), d i,k+1, is derived at Line 28 so that the farthest distance of J i,k s sampling time and J i,k+1 s finishing time is bounded by the validity length V i (3). Finally, the sampling time of J i,k+1, r i,k+1, is derived backwards from its deadline by accounting for the interferences from higher-priority transactions (Line 30). Algorithm 6.1 DS-FP algorithm: Input: A set of update transactions T ={τ i } m i=1 (m 1) with known {C i} m i=1 and {V i } m i=1. Output: Construct a partial schedule S if T is feasible; otherwise, reject. 1 case (system initialization time): 2 t 0; // Initialization 3 // LSD i Latest Scheduled Deadline of τ i s jobs. 4 LSD i 0, i (1 i m); 5 l i 0, i (1 i m); 6 // l i is the latest scheduled job of τ i 7 for i = 1 to m do 8 // Schedule finish time for τ i,0. 9 r i,0 0; 10 f i,0 C i ; 11 // Calculate higher-priority (HP) preemptions. 12 oldhppreempt 0; // initial HP preemptions 13 hppreempt CalcHPPreempt(i, 0, 0,f i,0 ); 14 while (hppreempt > oldhppreempt) do 15 // Accounting for the interferences of HP tasks 16 f i,0 r i,0 + hppreempt + C i ; 17 // If this condition is violated, it is not possible to schedule two jobs 18 by V i.

22 19 if (f i,0 > V i C i ) then abort endif; 20 oldhppreempt hppreempt; 21 hppreempt CalcHPPreempt(i, 0, 0,f i,0 ); 22 end 23 d i,0 f i,0 ; 24 end 25 return; 26 case (upon completion of J i,k ) : 27 // Schedule release time for J i,k d i,k+1 r i,k + V i ; // get next deadline for J i,k+1 29 // r i,k+1 is also the sampling time for J i,k+1 30 r i,k+1 ScheduleRT(i, k + 1,C i,d i,k+1 ); 31 return; Algorithm 6.2 ScheduleRT(i, k, C i, d i,k ): Input: J i,k with C i and d i,k. Output: r i,k. 1 oldhppreempt 0; // initial HP preemptions 2 hppreempt 0; 3 r i,k d i,k C i ; 4 // Calculate HP preemptions backwards from d i,k. 5 hppreempt CalcHPPreempt(i,k,r i,k,d i,k ); 6 while (hppreempt > oldhppreempt) do 7 // Accounting for the interferences of HP tasks 8 r i,k d i,k hppreempt C i ; 9 if (r i,k <d i,k 1 ) then abort endif; 10 oldhppreempt hppreempt; 11 hppreempt GetHPPreempt(i,k,r i,k,d i,k ); 12 end 13 return r i,k ; Algorithm 6.3 CalcHPPreempt(i, k, t 1, t 2 ): Input: J i,k, and a time interval [t 1,t 2 ). Output: Total cumulative processor demands from higher-priority transactions τ j (1 j i 1) during [t 1,t 2 ). 1 l i k; // Record latest scheduled job of τ i. 2 d i,k t 2 ; 3 LSD i t 2 ; 4 if (i = 1) 5 then // No preemptions from higher-priority tasks. 6 return 0; 7 elsif (LSD i 1 LSD i ) 8 then // Get preemptions from τ j ( j,1 j<i)

23 9 // because τ j s schedule is complete before t return GetHPPreempt(i,k,t 1, LSD i ); 11 endif 12 // build S up to or exceeding t 2 for τ j (1 j<i). 13 for j = 1 to i 1 do 14 while (d j,lj < LSD i ) do 15 d j,lj +1 r j,lj + V j ; 16 r j,lj +1 ScheduleRT(j, l j + 1,C j,d j,lj +1); 17 l j l j + 1; 18 LSD j d j,lj ; 19 end 20 end 21 return GetHPPreempt(i,k,t 1, LSD i ); Function ScheduleRT(i, k, C i,d i,k ) (Algorithm 6.2) calculates the release time r i,k with known computation time C i and deadline d i,k. It starts with release time r i,k = d i,k C i, then iteratively calculates i (r i,k,d i,k ), the total cumulative processor demands made by all higher-priority jobs of J i,k during the interval [r i,k,d i,k ), and adjusts r i,k by accounting for the interferences from higher-priority transactions (Lines 5 to 12). The computation of r i,k continues until the interferences from higherpriority transactions do not change in an iteration. In particular, Line 9 detects any infeasible schedule. A schedule becomes infeasible under DS-FP if r i,k <d i,k 1 (k 0), i.e., release time of J i,k becomes earlier than the deadline of its preceding job J i,k 1. Function GetHPPreempt(i, k, t 1,t 2 ) scans the interval [t 1,t 2 ), adds up total preemptions from τ j ( j, 1 j i 1), and returns i (t 1,t 2 ), the cumulative processor demands of τ j during [t 1,t 2 ) from schedule S that has been built from CalcHP- Prempt. Function CalcHPPreempt(i, k, t 1,t 2 ) (Algorithm 6.3) calculates i (t 1,t 2 ),the total cumulative processor demands made by all higher-priority jobs of J i,k during the interval [t 1,t 2 ).Line7 ensures that ( j,1 j<i), τ j s schedule is completely built before time t 2. This is because τ i s schedule cannot be completely built before t 2 unless the schedules of its higher-priority transactions are complete before t 2.In this case, the function simply returns an amount of higher-priority preemptions for τ i during [t 1,t 2 ) by invoking GetHPPreempt(i,k,t 1,t 2 ), which returns i (t 1,t 2 ). If any higher-priority transaction τ j (j i) does not have a complete schedule during [t 1, t 2 ), its schedule S up to or exceeding t 2 is built on the fly (Lines 14 to 19). This enables the computation of i (t 1,t 2 ). The latest scheduled deadline of τ i s job, LSD i, indicates the latest deadline of τ i s jobs that have been computed. References Burns A, Davis R (1996) Choosing task periods to minimise system utilisation in time triggered systems. Inf Process Lett 58: Chen D, Mok AK (2004) Scheduling similarity-constrained real-time tasks. In: ESA/VLSI, pp

24 Chetto H, Chetto M (1989) Some results of the earliest deadline scheduling algorithm. IEEE Trans Softw Eng 15(10): Gerber R, Hong S, Saksena M (1994) Guaranteeing end-to-end timing constraints by calibrating intermediate processes. In: IEEE real-time systems symposium, December 1994 Gustafsson T, Hansson J (2004a) Data management in real-time systems: a case of on-demand updates in vehicle control systems. In: IEEE real-time and embedded technology and applications symposium, pp Gustafsson T, Hansson J (2004b) Dynamic on-demand updating of data in real-time database systems. In: ACM SAC Han CC, Lin KJ, Liu JW-S (1995) Scheduling jobs with temporal distance constraints. SIAM J Comput 24(5): Kang KD, Son S, Stankovic JA, Abdelzaher T (2002) A QoS-sensitive approach for timeliness and freshness guarantees in real-time databases. In: EuroMicro real-time systems conference, June 2002 Kuo T, Mok AK (1992) Real-time data semantics and similarity-based concurrency control. In: IEEE real-time systems symposium, December 1992 Kuo T, Mok AK (1993) SSP: a semantics-based protocol for real-time data access. In: IEEE real-time systems symposium, December 1993 Ho S, Kuo T, Mok AK (1997) Similarity-based load adjustment for real-time data-intensive applications. In: IEEE real-time systems symposium Lam KY, Xiong M, Liang B, Guo Y (2004) Statistical quality of service guarantee for temporal consistency of real-time data objects. In: IEEE real-time systems symposium Leung J, Whitehead J (1982) On the complexity of fixed-priority scheduling of periodic real-time tasks. Perform Eval 2: Liu CL, Layland J (1973) Scheduling algorithms for multiprogramming in a hard real-time environment. J ACM 20(1) Locke D (1997) Real-time databases: real-world requirements. In: Bestavros A, Lin K-J, Son SH (eds) Real-time database systems: issues and applications. Kluwer Academic, Dordrecht, pp Ramamritham K (1993) Real-time databases. Distrib Parallel Databases 1(1993): Ramamritham K (1996) Where do time constraints come from and where do they go? Int J Database Manag 7(2):4 10 Song X, Liu JWS (1995) Maintaining temporal consistency: pessimistic vs. optimistic concurrency control. IEEE Trans Knowl Data Eng 7(5): Xiong M, Ramamritham K (2004) Deriving deadlines and periods for real-time update transactions. IEEE Trans Comput 53(5): Xiong M, Ramamritham K, Stankovic JA, Towsley D, Sivasankaran RM (2002) Scheduling transactions with temporal constraints: exploiting data semantics. IEEE Trans Knowl Data Eng 14(5): Xiong M, Han S, Lam KY (2005) A deferrable scheduling algorithm for real-time transactions maintaining data freshness. In: IEEE real-time systems symposium Xiong M, Han S, Chen D (2006) Deferrable scheduling for temporal consistency: schedulability analysis and overhead reduction. In: IEEE international conference on embedded and real-time computing systems and applications, August 2006 Xiong M, Han S, Lam KY, Chen D (2008) Deferrable scheduling for maintaining real-time data freshness: algorithm, analysis and results. IEEE Trans Comput 57(7): Ming Xiong received his Ph.D. degree in Computer Science from University of Massachusetts Amherst in He is currently a member of technical staff at Bell Labs, Alcatel-Lucent. His research interests include database systems, real-time systems and mobile computing.

25 Song Han received his Bachelor of Science degree in Computer Science from Nanjing University, P.R. China in 2003 and Master of Philosophy degree in Computer Science from City University of Hong Kong in He is currently a Ph.D. student in the Department of Computer Sciences at the University of Texas at Austin. His research interests are real-time systems, database systems, wireless networks and data mining. He is a student member of the IEEE. Deji Chen received his Ph.D. degree in Computer Science from the University of Texas at Austin in He is currently a senior principal software engineer at Emerson Process Management. His research interests include real-time systems and wireless process control. Kam-Yiu Lam received the B.Sc. (Hons) degree on Computer Studies with distinction and Ph.D. degree from the City University of Hong Kong in 1990 and 1994, respectively. He is currently an Associate Professor in the Department of Computer Science, City University of Hong Kong. His current research interests are real-time database systems, real-time active database systems, mobile computing and distributed multimedia systems. Shan Feng received his Ph.D. degree in Computer Software and Theory from Chinese Academy of Science in He is currently an associate professor of Sichuan Normal University, Chengdu, China. His research interests include database systems, data mining theories, and real-time systems.

Online Scheduling Switch for Maintaining Data Freshness in Flexible Real-Time Systems

Online Scheduling Switch for Maintaining Data Freshness in Flexible Real-Time Systems Online Scheduling Switch for Maintaining Data Freshness in Flexible Real-Time Systems Song Han 1 Deji Chen 2 Ming Xiong 3 Aloysius K. Mok 1 1 The University of Texas at Austin 2 Emerson Process Management

More information

Lecture 6. Real-Time Systems. Dynamic Priority Scheduling

Lecture 6. Real-Time Systems. Dynamic Priority Scheduling Real-Time Systems Lecture 6 Dynamic Priority Scheduling Online scheduling with dynamic priorities: Earliest Deadline First scheduling CPU utilization bound Optimality and comparison with RM: Schedulability

More information

EDF Feasibility and Hardware Accelerators

EDF Feasibility and Hardware Accelerators EDF Feasibility and Hardware Accelerators Andrew Morton University of Waterloo, Waterloo, Canada, arrmorton@uwaterloo.ca Wayne M. Loucks University of Waterloo, Waterloo, Canada, wmloucks@pads.uwaterloo.ca

More information

Scheduling Periodic Real-Time Tasks on Uniprocessor Systems. LS 12, TU Dortmund

Scheduling Periodic Real-Time Tasks on Uniprocessor Systems. LS 12, TU Dortmund Scheduling Periodic Real-Time Tasks on Uniprocessor Systems Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 08, Dec., 2015 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 38 Periodic Control System Pseudo-code

More information

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i Embedded Systems 15-1 - REVIEW: Aperiodic scheduling C i J i 0 a i s i f i d i Given: A set of non-periodic tasks {J 1,, J n } with arrival times a i, deadlines d i, computation times C i precedence constraints

More information

Non-Preemptive and Limited Preemptive Scheduling. LS 12, TU Dortmund

Non-Preemptive and Limited Preemptive Scheduling. LS 12, TU Dortmund Non-Preemptive and Limited Preemptive Scheduling LS 12, TU Dortmund 09 May 2017 (LS 12, TU Dortmund) 1 / 31 Outline Non-Preemptive Scheduling A General View Exact Schedulability Test Pessimistic Schedulability

More information

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions Mitra Nasri Chair of Real-time Systems, Technische Universität Kaiserslautern, Germany nasri@eit.uni-kl.de

More information

Task Models and Scheduling

Task Models and Scheduling Task Models and Scheduling Jan Reineke Saarland University June 27 th, 2013 With thanks to Jian-Jia Chen at KIT! Jan Reineke Task Models and Scheduling June 27 th, 2013 1 / 36 Task Models and Scheduling

More information

3. Scheduling issues. Common approaches 3. Common approaches 1. Preemption vs. non preemption. Common approaches 2. Further definitions

3. Scheduling issues. Common approaches 3. Common approaches 1. Preemption vs. non preemption. Common approaches 2. Further definitions Common approaches 3 3. Scheduling issues Priority-driven (event-driven) scheduling This class of algorithms is greedy They never leave available processing resources unutilized An available resource may

More information

Bounding the End-to-End Response Times of Tasks in a Distributed. Real-Time System Using the Direct Synchronization Protocol.

Bounding the End-to-End Response Times of Tasks in a Distributed. Real-Time System Using the Direct Synchronization Protocol. Bounding the End-to-End Response imes of asks in a Distributed Real-ime System Using the Direct Synchronization Protocol Jun Sun Jane Liu Abstract In a distributed real-time system, a task may consist

More information

RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES

RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES Department for Embedded Systems/Real-Time Systems, University of Ulm {name.surname}@informatik.uni-ulm.de Abstract:

More information

CITY UNIVERSITY OF HONG KONG 香港城市大學. Scheduling and Sampling Technologies for Sensor Data 傳感數據的調度和採樣技術

CITY UNIVERSITY OF HONG KONG 香港城市大學. Scheduling and Sampling Technologies for Sensor Data 傳感數據的調度和採樣技術 CITY UNIVERSITY OF HONG KONG 香港城市大學 Scheduling and Sampling Technologies for Sensor Data 傳感數據的調度和採樣技術 Submitted to Department of Computer Science 電腦科學系 In Partial Fulfillment of the Requirements for the

More information

Real-Time Scheduling. Real Time Operating Systems and Middleware. Luca Abeni

Real-Time Scheduling. Real Time Operating Systems and Middleware. Luca Abeni Real Time Operating Systems and Middleware Luca Abeni luca.abeni@unitn.it Definitions Algorithm logical procedure used to solve a problem Program formal description of an algorithm, using a programming

More information

A 2-Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value

A 2-Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value A -Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value Shuhui Li, Miao Song, Peng-Jun Wan, Shangping Ren Department of Engineering Mechanics,

More information

Real-time Systems: Scheduling Periodic Tasks

Real-time Systems: Scheduling Periodic Tasks Real-time Systems: Scheduling Periodic Tasks Advanced Operating Systems Lecture 15 This work is licensed under the Creative Commons Attribution-NoDerivatives 4.0 International License. To view a copy of

More information

Clock-driven scheduling

Clock-driven scheduling Clock-driven scheduling Also known as static or off-line scheduling Michal Sojka Czech Technical University in Prague, Faculty of Electrical Engineering, Department of Control Engineering November 8, 2017

More information

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013 Lecture 3 Real-Time Scheduling Daniel Kästner AbsInt GmbH 203 Model-based Software Development 2 SCADE Suite Application Model in SCADE (data flow + SSM) System Model (tasks, interrupts, buses, ) SymTA/S

More information

EDF Scheduling. Giuseppe Lipari May 11, Scuola Superiore Sant Anna Pisa

EDF Scheduling. Giuseppe Lipari   May 11, Scuola Superiore Sant Anna Pisa EDF Scheduling Giuseppe Lipari http://feanor.sssup.it/~lipari Scuola Superiore Sant Anna Pisa May 11, 2008 Outline 1 Dynamic priority 2 Basic analysis 3 FP vs EDF 4 Processor demand bound analysis Generalization

More information

Andrew Morton University of Waterloo Canada

Andrew Morton University of Waterloo Canada EDF Feasibility and Hardware Accelerators Andrew Morton University of Waterloo Canada Outline 1) Introduction and motivation 2) Review of EDF and feasibility analysis 3) Hardware accelerators and scheduling

More information

Supplement of Improvement of Real-Time Multi-Core Schedulability with Forced Non- Preemption

Supplement of Improvement of Real-Time Multi-Core Schedulability with Forced Non- Preemption 12 Supplement of Improvement of Real-Time Multi-Core Schedulability with Forced Non- Preemption Jinkyu Lee, Department of Computer Science and Engineering, Sungkyunkwan University, South Korea. Kang G.

More information

Schedulability of Periodic and Sporadic Task Sets on Uniprocessor Systems

Schedulability of Periodic and Sporadic Task Sets on Uniprocessor Systems Schedulability of Periodic and Sporadic Task Sets on Uniprocessor Systems Jan Reineke Saarland University July 4, 2013 With thanks to Jian-Jia Chen! Jan Reineke July 4, 2013 1 / 58 Task Models and Scheduling

More information

Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks

Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks Moonju Park Ubiquitous Computing Lab., IBM Korea, Seoul, Korea mjupark@kr.ibm.com Abstract. This paper addresses the problem of

More information

EDF Scheduling. Giuseppe Lipari CRIStAL - Université de Lille 1. October 4, 2015

EDF Scheduling. Giuseppe Lipari  CRIStAL - Université de Lille 1. October 4, 2015 EDF Scheduling Giuseppe Lipari http://www.lifl.fr/~lipari CRIStAL - Université de Lille 1 October 4, 2015 G. Lipari (CRIStAL) Earliest Deadline Scheduling October 4, 2015 1 / 61 Earliest Deadline First

More information

Probabilistic Preemption Control using Frequency Scaling for Sporadic Real-time Tasks

Probabilistic Preemption Control using Frequency Scaling for Sporadic Real-time Tasks Probabilistic Preemption Control using Frequency Scaling for Sporadic Real-time Tasks Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat Mälardalen Real-Time Research Center, Mälardalen University,

More information

There are three priority driven approaches that we will look at

There are three priority driven approaches that we will look at Priority Driven Approaches There are three priority driven approaches that we will look at Earliest-Deadline-First (EDF) Least-Slack-Time-first (LST) Latest-Release-Time-first (LRT) 1 EDF Earliest deadline

More information

Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3

Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3 Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3 Lecture Outline The rate monotonic algorithm (cont d) Maximum utilisation test The deadline monotonic algorithm The earliest

More information

System Model. Real-Time systems. Giuseppe Lipari. Scuola Superiore Sant Anna Pisa -Italy

System Model. Real-Time systems. Giuseppe Lipari. Scuola Superiore Sant Anna Pisa -Italy Real-Time systems System Model Giuseppe Lipari Scuola Superiore Sant Anna Pisa -Italy Corso di Sistemi in tempo reale Laurea Specialistica in Ingegneria dell Informazione Università di Pisa p. 1/?? Task

More information

Schedulability analysis of global Deadline-Monotonic scheduling

Schedulability analysis of global Deadline-Monotonic scheduling Schedulability analysis of global Deadline-Monotonic scheduling Sanjoy Baruah Abstract The multiprocessor Deadline-Monotonic (DM) scheduling of sporadic task systems is studied. A new sufficient schedulability

More information

Embedded Systems Development

Embedded Systems Development Embedded Systems Development Lecture 3 Real-Time Scheduling Dr. Daniel Kästner AbsInt Angewandte Informatik GmbH kaestner@absint.com Model-based Software Development Generator Lustre programs Esterel programs

More information

A New Sufficient Feasibility Test for Asynchronous Real-Time Periodic Task Sets

A New Sufficient Feasibility Test for Asynchronous Real-Time Periodic Task Sets A New Sufficient Feasibility Test for Asynchronous Real-Time Periodic Task Sets Abstract The problem of feasibility analysis for asynchronous periodic task sets (ie where tasks can have an initial offset

More information

Multiprocessor Scheduling II: Global Scheduling. LS 12, TU Dortmund

Multiprocessor Scheduling II: Global Scheduling. LS 12, TU Dortmund Multiprocessor Scheduling II: Global Scheduling Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 28, June, 2016 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 42 Global Scheduling We will only focus on identical

More information

Embedded Systems 14. Overview of embedded systems design

Embedded Systems 14. Overview of embedded systems design Embedded Systems 14-1 - Overview of embedded systems design - 2-1 Point of departure: Scheduling general IT systems In general IT systems, not much is known about the computational processes a priori The

More information

Controlling Preemption for Better Schedulability in Multi-Core Systems

Controlling Preemption for Better Schedulability in Multi-Core Systems 2012 IEEE 33rd Real-Time Systems Symposium Controlling Preemption for Better Schedulability in Multi-Core Systems Jinkyu Lee and Kang G. Shin Dept. of Electrical Engineering and Computer Science, The University

More information

Process Scheduling for RTS. RTS Scheduling Approach. Cyclic Executive Approach

Process Scheduling for RTS. RTS Scheduling Approach. Cyclic Executive Approach Process Scheduling for RTS Dr. Hugh Melvin, Dept. of IT, NUI,G RTS Scheduling Approach RTS typically control multiple parameters concurrently Eg. Flight Control System Speed, altitude, inclination etc..

More information

Real-Time Scheduling and Resource Management

Real-Time Scheduling and Resource Management ARTIST2 Summer School 2008 in Europe Autrans (near Grenoble), France September 8-12, 2008 Real-Time Scheduling and Resource Management Lecturer: Giorgio Buttazzo Full Professor Scuola Superiore Sant Anna

More information

Networked Embedded Systems WS 2016/17

Networked Embedded Systems WS 2016/17 Networked Embedded Systems WS 2016/17 Lecture 2: Real-time Scheduling Marco Zimmerling Goal of Today s Lecture Introduction to scheduling of compute tasks on a single processor Tasks need to finish before

More information

Static priority scheduling

Static priority scheduling Static priority scheduling Michal Sojka Czech Technical University in Prague, Faculty of Electrical Engineering, Department of Control Engineering November 8, 2017 Some slides are derived from lectures

More information

Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment

Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment Deepu C. Thomas Sathish Gopalakrishnan Marco Caccamo Chang-Gun Lee Abstract Scheduling periodic tasks that

More information

Scheduling Slack Time in Fixed Priority Pre-emptive Systems

Scheduling Slack Time in Fixed Priority Pre-emptive Systems Scheduling Slack Time in Fixed Priority Pre-emptive Systems R.I.Davis Real-Time Systems Research Group, Department of Computer Science, University of York, England. ABSTRACT This report addresses the problem

More information

A Utilization Bound for Aperiodic Tasks and Priority Driven Scheduling

A Utilization Bound for Aperiodic Tasks and Priority Driven Scheduling A Utilization Bound for Aperiodic Tasks and Priority Driven Scheduling Tarek F. Abdelzaher, Vivek Sharma Department of Computer Science, University of Virginia, Charlottesville, VA 224 Chenyang Lu Department

More information

CIS 4930/6930: Principles of Cyber-Physical Systems

CIS 4930/6930: Principles of Cyber-Physical Systems CIS 4930/6930: Principles of Cyber-Physical Systems Chapter 11 Scheduling Hao Zheng Department of Computer Science and Engineering University of South Florida H. Zheng (CSE USF) CIS 4930/6930: Principles

More information

Contention-Free Executions for Real-Time Multiprocessor Scheduling

Contention-Free Executions for Real-Time Multiprocessor Scheduling Contention-Free Executions for Real-Time Multiprocessor Scheduling JINKYU LEE, University of Michigan ARVIND EASWARAN, Nanyang Technological University INSIK SHIN, KAIST A time slot is defined as contention-free

More information

Improved Priority Assignment for the Abort-and-Restart (AR) Model

Improved Priority Assignment for the Abort-and-Restart (AR) Model Improved Priority Assignment for the Abort-and-Restart (AR) Model H.C. Wong and A. Burns Department of Computer Science, University of York, UK. February 1, 2013 Abstract This paper addresses the scheduling

More information

Mitra Nasri* Morteza Mohaqeqi Gerhard Fohler

Mitra Nasri* Morteza Mohaqeqi Gerhard Fohler Mitra Nasri* Morteza Mohaqeqi Gerhard Fohler RTNS, October 2016 Since 1973 it is known that period ratio affects the RM Schedulability The hardest-to-schedule task set [Liu and Layland] T 2 T n T 1 T 2

More information

Real-Time Systems. Lecture 4. Scheduling basics. Task scheduling - basic taxonomy Basic scheduling techniques Static cyclic scheduling

Real-Time Systems. Lecture 4. Scheduling basics. Task scheduling - basic taxonomy Basic scheduling techniques Static cyclic scheduling Real-Time Systems Lecture 4 Scheduling basics Task scheduling - basic taxonomy Basic scheduling techniques Static cyclic scheduling 1 Last lecture (3) Real-time kernels The task states States and transition

More information

Scheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University

Scheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University 6 Scheduling Uwe R. Zimmer & Alistair Rendell The Australian National University References for this chapter [Bacon98] J. Bacon Concurrent Systems 1998 (2nd Edition) Addison Wesley Longman Ltd, ISBN 0-201-17767-6

More information

Laxity dynamics and LLF schedulability analysis on multiprocessor platforms

Laxity dynamics and LLF schedulability analysis on multiprocessor platforms DOI 10.1007/s11241-012-9157-x Laxity dynamics and LLF schedulability analysis on multiprocessor platforms Jinkyu Lee Arvind Easwaran Insik Shin Springer Science+Business Media, LLC 2012 Abstract LLF Least

More information

A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption

A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption Rohini Krishnapura, Steve Goddard, Ala Qadi Computer Science & Engineering University of Nebraska Lincoln Lincoln, NE 68588-0115

More information

arxiv: v3 [cs.ds] 23 Sep 2016

arxiv: v3 [cs.ds] 23 Sep 2016 Evaluate and Compare Two Utilization-Based Schedulability-Test Framewors for Real-Time Systems arxiv:1505.02155v3 [cs.ds] 23 Sep 2016 Jian-Jia Chen and Wen-Hung Huang Department of Informatics TU Dortmund

More information

2.1 Task and Scheduling Model. 2.2 Definitions and Schedulability Guarantees

2.1 Task and Scheduling Model. 2.2 Definitions and Schedulability Guarantees Fixed-Priority Scheduling of Mixed Soft and Hard Real-Time Tasks on Multiprocessors Jian-Jia Chen, Wen-Hung Huang Zheng Dong, Cong Liu TU Dortmund University, Germany The University of Texas at Dallas,

More information

Tardiness Bounds under Global EDF Scheduling on a Multiprocessor

Tardiness Bounds under Global EDF Scheduling on a Multiprocessor Tardiness ounds under Global EDF Scheduling on a Multiprocessor UmaMaheswari C. Devi and James H. Anderson Department of Computer Science The University of North Carolina at Chapel Hill Abstract This paper

More information

Schedulability Analysis for the Abort-and-Restart Model

Schedulability Analysis for the Abort-and-Restart Model Schedulability Analysis for the Abort-and-Restart Model Hing Choi Wong Doctor of Philosophy University of York Computer Science December 2014 Abstract In real-time systems, a schedulable task-set guarantees

More information

Predictability of Least Laxity First Scheduling Algorithm on Multiprocessor Real-Time Systems

Predictability of Least Laxity First Scheduling Algorithm on Multiprocessor Real-Time Systems Predictability of Least Laxity First Scheduling Algorithm on Multiprocessor Real-Time Systems Sangchul Han and Minkyu Park School of Computer Science and Engineering, Seoul National University, Seoul,

More information

AS computer hardware technology advances, both

AS computer hardware technology advances, both 1 Best-Harmonically-Fit Periodic Task Assignment Algorithm on Multiple Periodic Resources Chunhui Guo, Student Member, IEEE, Xiayu Hua, Student Member, IEEE, Hao Wu, Student Member, IEEE, Douglas Lautner,

More information

Multiprocessor Scheduling of Age Constraint Processes

Multiprocessor Scheduling of Age Constraint Processes Multiprocessor Scheduling of Age Constraint Processes Lars Lundberg Department of Computer Science, University of Karlskrona/Ronneby, Soft Center, S-372 25 Ronneby, Sweden, email: Lars.Lundberg@ide.hk-r.se

More information

Rate-monotonic scheduling on uniform multiprocessors

Rate-monotonic scheduling on uniform multiprocessors Rate-monotonic scheduling on uniform multiprocessors Sanjoy K. 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 information

Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors. Sanjoy K.

Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors. Sanjoy K. Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors Sanjoy K. Baruah Abstract In fixed-priority scheduling the priority of a job, once assigned,

More information

Segment-Fixed Priority Scheduling for Self-Suspending Real-Time Tasks

Segment-Fixed Priority Scheduling for Self-Suspending Real-Time Tasks Segment-Fixed Priority Scheduling for Self-Suspending Real-Time Tasks Junsung Kim, Björn Andersson, Dionisio de Niz, and Raj Rajkumar Carnegie Mellon University 2/31 Motion Planning on Self-driving Parallel

More information

Load Regulating Algorithm for Static-Priority Task Scheduling on Multiprocessors

Load Regulating Algorithm for Static-Priority Task Scheduling on Multiprocessors Technical Report No. 2009-7 Load Regulating Algorithm for Static-Priority Task Scheduling on Multiprocessors RISAT MAHMUD PATHAN JAN JONSSON Department of Computer Science and Engineering CHALMERS UNIVERSITY

More information

Multiprocessor Scheduling I: Partitioned Scheduling. LS 12, TU Dortmund

Multiprocessor Scheduling I: Partitioned Scheduling. LS 12, TU Dortmund Multiprocessor Scheduling I: Partitioned Scheduling Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 22/23, June, 2015 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 47 Outline Introduction to Multiprocessor

More information

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University Che-Wei Chang chewei@mail.cgu.edu.tw Department of Computer Science and Information Engineering, Chang Gung University } 2017/11/15 Midterm } 2017/11/22 Final Project Announcement 2 1. Introduction 2.

More information

Real-Time and Embedded Systems (M) Lecture 5

Real-Time and Embedded Systems (M) Lecture 5 Priority-driven Scheduling of Periodic Tasks (1) Real-Time and Embedded Systems (M) Lecture 5 Lecture Outline Assumptions Fixed-priority algorithms Rate monotonic Deadline monotonic Dynamic-priority algorithms

More information

CSE 380 Computer Operating Systems

CSE 380 Computer Operating Systems CSE 380 Computer Operating Systems Instructor: Insup Lee & Dianna Xu University of Pennsylvania, Fall 2003 Lecture Note 3: CPU Scheduling 1 CPU SCHEDULING q How can OS schedule the allocation of CPU cycles

More information

Non-preemptive Scheduling of Distance Constrained Tasks Subject to Minimizing Processor Load

Non-preemptive Scheduling of Distance Constrained Tasks Subject to Minimizing Processor Load Non-preemptive Scheduling of Distance Constrained Tasks Subject to Minimizing Processor Load Klaus H. Ecker Ohio University, Athens, OH, USA, ecker@ohio.edu Alexander Hasenfuss Clausthal University of

More information

Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation*

Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation* Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation* Meng Xu Linh Thi Xuan Phan Hyon-Young Choi Insup Lee University of Pennsylvania Abstract We introduce

More information

A Note on Modeling Self-Suspending Time as Blocking Time in Real-Time Systems

A Note on Modeling Self-Suspending Time as Blocking Time in Real-Time Systems A Note on Modeling Self-Suspending Time as Blocking Time in Real-Time Systems Jian-Jia Chen 1, Wen-Hung Huang 1, and Geoffrey Nelissen 2 1 TU Dortmund University, Germany Email: jian-jia.chen@tu-dortmund.de,

More information

Real-Time Scheduling

Real-Time Scheduling 1 Real-Time Scheduling Formal Model [Some parts of this lecture are based on a real-time systems course of Colin Perkins http://csperkins.org/teaching/rtes/index.html] Real-Time Scheduling Formal Model

More information

Scheduling periodic Tasks on Multiple Periodic Resources

Scheduling periodic Tasks on Multiple Periodic Resources Scheduling periodic Tasks on Multiple Periodic Resources Xiayu Hua, Zheng Li, Hao Wu, Shangping Ren* Department of Computer Science Illinois Institute of Technology Chicago, IL 60616, USA {xhua, zli80,

More information

EECS 571 Principles of Real-Time Embedded Systems. Lecture Note #7: More on Uniprocessor Scheduling

EECS 571 Principles of Real-Time Embedded Systems. Lecture Note #7: More on Uniprocessor Scheduling EECS 571 Principles of Real-Time Embedded Systems Lecture Note #7: More on Uniprocessor Scheduling Kang G. Shin EECS Department University of Michigan Precedence and Exclusion Constraints Thus far, we

More information

Worst-case response time analysis of real-time tasks under fixed-priority scheduling with deferred preemption revisited

Worst-case response time analysis of real-time tasks under fixed-priority scheduling with deferred preemption revisited Worst-case response time analysis of real-time tasks under fixed-priority scheduling with deferred preemption revisited Reinder J. Bril and Johan J. Lukkien Technische Universiteit Eindhoven (TU/e), en

More information

Aperiodic Task Scheduling

Aperiodic Task Scheduling Aperiodic Task Scheduling Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2017 年 11 月 29 日 These slides use Microsoft clip arts. Microsoft copyright

More information

Simulation of Process Scheduling Algorithms

Simulation of Process Scheduling Algorithms Simulation of Process Scheduling Algorithms Project Report Instructor: Dr. Raimund Ege Submitted by: Sonal Sood Pramod Barthwal Index 1. Introduction 2. Proposal 3. Background 3.1 What is a Process 4.

More information

Exam Spring Embedded Systems. Prof. L. Thiele

Exam Spring Embedded Systems. Prof. L. Thiele Exam Spring 20 Embedded Systems Prof. L. Thiele NOTE: The given solution is only a proposal. For correctness, completeness, or understandability no responsibility is taken. Sommer 20 Eingebettete Systeme

More information

Multiprocessor Real-Time Scheduling Considering Concurrency and Urgency

Multiprocessor Real-Time Scheduling Considering Concurrency and Urgency Multiprocessor Real-Time Scheduling Considering Concurrency Urgency Jinkyu Lee, Arvind Easwaran, Insik Shin Insup Lee Dept. of Computer Science, KAIST, South Korea IPP-HURRAY! Research Group, Polytechnic

More information

Improved Deadline Monotonic Scheduling With Dynamic and Intelligent Time Slice for Real-time Systems

Improved Deadline Monotonic Scheduling With Dynamic and Intelligent Time Slice for Real-time Systems Improved Deadline Monotonic Scheduling With Dynamic and Intelligent Time Slice for Real-time Systems H. S. Behera, Sushree Sangita Panda and Jana Chakraborty Department of Computer Science and Engineering,

More information

CPU SCHEDULING RONG ZHENG

CPU SCHEDULING RONG ZHENG CPU SCHEDULING RONG ZHENG OVERVIEW Why scheduling? Non-preemptive vs Preemptive policies FCFS, SJF, Round robin, multilevel queues with feedback, guaranteed scheduling 2 SHORT-TERM, MID-TERM, LONG- TERM

More information

IN4343 Real Time Systems April 9th 2014, from 9:00 to 12:00

IN4343 Real Time Systems April 9th 2014, from 9:00 to 12:00 TECHNISCHE UNIVERSITEIT DELFT Faculteit Elektrotechniek, Wiskunde en Informatica IN4343 Real Time Systems April 9th 2014, from 9:00 to 12:00 Koen Langendoen Marco Zuniga Question: 1 2 3 4 5 Total Points:

More information

Real-Time Systems. Event-Driven Scheduling

Real-Time Systems. Event-Driven Scheduling Real-Time Systems Event-Driven Scheduling Hermann Härtig WS 2018/19 Outline mostly following Jane Liu, Real-Time Systems Principles Scheduling EDF and LST as dynamic scheduling methods Fixed Priority schedulers

More information

Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4

Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4 Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4 Priority-driven Scheduling Assign priorities to jobs, based on their deadline or other timing constraint Make scheduling

More information

Semi-Partitioned Fixed-Priority Scheduling on Multiprocessors

Semi-Partitioned Fixed-Priority Scheduling on Multiprocessors Semi-Partitioned Fixed-Priority Scheduling on Multiprocessors Shinpei Kato and Nobuyuki Yamasaki Department of Information and Computer Science Keio University, Yokohama, Japan {shinpei,yamasaki}@ny.ics.keio.ac.jp

More information

Cyclic Schedules: General Structure. Frame Size Constraints

Cyclic Schedules: General Structure. Frame Size Constraints CPSC-663: Real-ime Systems Cyclic Schedules: General Structure Scheduling decision is made periodically: Frame Scheduling decision is made periodically: choose which job to execute perorm monitoring and

More information

Tardiness Bounds under Global EDF Scheduling on a. Multiprocessor

Tardiness Bounds under Global EDF Scheduling on a. Multiprocessor Tardiness Bounds under Global EDF Scheduling on a Multiprocessor UmaMaheswari C. Devi and James H. Anderson Department of Computer Science The University of North Carolina at Chapel Hill Abstract We consider

More information

Real-Time Systems. Lecture #14. Risat Pathan. Department of Computer Science and Engineering Chalmers University of Technology

Real-Time Systems. Lecture #14. Risat Pathan. Department of Computer Science and Engineering Chalmers University of Technology Real-Time Systems Lecture #14 Risat Pathan Department of Computer Science and Engineering Chalmers University of Technology Real-Time Systems Specification Implementation Multiprocessor scheduling -- Partitioned

More information

The Partitioned Dynamic-priority Scheduling of Sporadic Task Systems

The Partitioned Dynamic-priority Scheduling of Sporadic Task Systems The Partitioned Dynamic-priority Scheduling of Sporadic Task Systems Abstract A polynomial-time algorithm is presented for partitioning a collection of sporadic tasks among the processors of an identical

More information

Bounding and Shaping the Demand of Mixed-Criticality Sporadic Tasks

Bounding and Shaping the Demand of Mixed-Criticality Sporadic Tasks Bounding and Shaping the Demand of Mixed-Criticality Sporadic Tasks Pontus Ekberg and Wang Yi Uppsala University, Sweden Email: {pontus.ekberg yi}@it.uu.se Abstract We derive demand-bound functions for

More information

Static-Priority Scheduling. CSCE 990: Real-Time Systems. Steve Goddard. Static-priority Scheduling

Static-Priority Scheduling. CSCE 990: Real-Time Systems. Steve Goddard. Static-priority Scheduling CSCE 990: Real-Time Systems Static-Priority Scheduling Steve Goddard goddard@cse.unl.edu http://www.cse.unl.edu/~goddard/courses/realtimesystems Static-priority Scheduling Real-Time Systems Static-Priority

More information

An Improved Schedulability Test for Uniprocessor. Periodic Task Systems

An Improved Schedulability Test for Uniprocessor. Periodic Task Systems An Improved Schedulability Test for Uniprocessor Periodic Task Systems UmaMaheswari C. Devi Department of Computer Science, University of North Carolina, Chapel Hill, NC 27599-375 December 2002 Abstract

More information

Design and Analysis of Time-Critical Systems Response-time Analysis with a Focus on Shared Resources

Design and Analysis of Time-Critical Systems Response-time Analysis with a Focus on Shared Resources Design and Analysis of Time-Critical Systems Response-time Analysis with a Focus on Shared Resources Jan Reineke @ saarland university ACACES Summer School 2017 Fiuggi, Italy computer science Fixed-Priority

More information

The FMLP + : An Asymptotically Optimal Real-Time Locking Protocol for Suspension-Aware Analysis

The FMLP + : An Asymptotically Optimal Real-Time Locking Protocol for Suspension-Aware Analysis The FMLP + : An Asymptotically Optimal Real-Time Locking Protocol for Suspension-Aware Analysis Björn B. Brandenburg Max Planck Institute for Software Systems (MPI-SWS) Abstract Multiprocessor real-time

More information

Online Energy-Aware I/O Device Scheduling for Hard Real-Time Systems with Shared Resources

Online Energy-Aware I/O Device Scheduling for Hard Real-Time Systems with Shared Resources Online Energy-Aware I/O Device Scheduling for Hard Real-Time Systems with Shared Resources Abstract The challenge in conserving energy in embedded real-time systems is to reduce power consumption while

More information

Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2

Real-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...!2

More information

Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities

Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities Revision 1 July 23, 215 Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities Arpan Gujarati Felipe Cerqueira Björn B. Brandenburg Max Planck Institute for Software

More information

Exact speedup factors and sub-optimality for non-preemptive scheduling

Exact speedup factors and sub-optimality for non-preemptive scheduling Real-Time Syst (2018) 54:208 246 https://doi.org/10.1007/s11241-017-9294-3 Exact speedup factors and sub-optimality for non-preemptive scheduling Robert I. Davis 1 Abhilash Thekkilakattil 2 Oliver Gettings

More information

Real-Time Systems. Event-Driven Scheduling

Real-Time Systems. Event-Driven Scheduling Real-Time Systems Event-Driven Scheduling Marcus Völp, Hermann Härtig WS 2013/14 Outline mostly following Jane Liu, Real-Time Systems Principles Scheduling EDF and LST as dynamic scheduling methods Fixed

More information

The Feasibility Analysis of Multiprocessor Real-Time Systems

The Feasibility Analysis of Multiprocessor Real-Time Systems The Feasibility Analysis of Multiprocessor Real-Time Systems Sanjoy Baruah Nathan Fisher The University of North Carolina at Chapel Hill Abstract The multiprocessor scheduling of collections of real-time

More information

Multi-core Real-Time Scheduling for Generalized Parallel Task Models

Multi-core Real-Time Scheduling for Generalized Parallel Task Models Washington University in St. Louis Washington University Open Scholarship All Computer Science and Engineering Research Computer Science and Engineering Report Number: WUCSE-011-45 011 Multi-core Real-Time

More information

Exploiting Precedence Relations in the Schedulability Analysis of Distributed Real-Time Systems

Exploiting Precedence Relations in the Schedulability Analysis of Distributed Real-Time Systems Exploiting Precedence Relations in the Schedulability Analysis of Distributed Real-Time Systems By: J.C. Palencia and M. González Harbour Departamento de Electrónica y Computadores, Universidad de Cantabria,

More information

An Optimal Real-Time Scheduling Algorithm for Multiprocessors

An Optimal Real-Time Scheduling Algorithm for Multiprocessors An Optimal Real-Time Scheduling Algorithm for Multiprocessors Hyeonjoong Cho, Binoy Ravindran, and E. Douglas Jensen ECE Dept., Virginia Tech Blacksburg, VA 24061, USA {hjcho,binoy}@vt.edu The MITRE Corporation

More information

On the Soft Real-Time Optimality of Global EDF on Multiprocessors: From Identical to Uniform Heterogeneous

On the Soft Real-Time Optimality of Global EDF on Multiprocessors: From Identical to Uniform Heterogeneous On the Soft Real-Time Optimality of Global EDF on Multiprocessors: From Identical to Uniform Heterogeneous Kecheng Yang and James H. Anderson Department of Computer Science, University of North Carolina

More information

Advances in processor, memory, and communication technologies

Advances in processor, memory, and communication technologies Discrete and continuous min-energy schedules for variable voltage processors Minming Li, Andrew C. Yao, and Frances F. Yao Department of Computer Sciences and Technology and Center for Advanced Study,

More information