=Paper=
{{Paper
|id=Vol-1291/ewili14_9
|storemode=property
|title=Adaptive Resource Synchronization In Hierarchical Real-Time Systems
|pdfUrl=https://ceur-ws.org/Vol-1291/ewili14_9.pdf
|volume=Vol-1291
|dblpUrl=https://dblp.org/rec/conf/ewili/SpringerPG14
}}
==Adaptive Resource Synchronization In Hierarchical Real-Time Systems==
Adaptive Resource Synchronization In Hierarchical Real-Time Systems Tom Springer, Steffen Peter, and Tony Givargis Center for Embedded Computer Systems University of California, Irvine, USA {tspringe, st.peter, givargis}@uci.edu ABSTRACT Policy (SRP) [5] are not a viable solution either because there is In this paper we outline the Adaptive Resource Allocation no system wide visibility across subsystems. To cope with these Protocol (ARAP) as an improved resource synchronization issues, the Hierarchical Scheduling Framework (HSF) has been algorithm for hierarchically scheduled real-time systems. ARAP introduced to simplify the development and integration of exploits knowledge about task utilization, using a proportional- embedded systems and shown to be particularly useful in the area integral-derivative (PID) controller, to estimate required resource of open systems [1]. bandwidth and improve scheduling decisions. Our analysis and The primary goal of hierarchical scheduling is to bind the experiments with RTSIM show that ARAP provides better temporal behavior of those applications whose execution times temporal isolation and resource utilization during periods of deviate considerably, allowing for the predictable integration of transient overload compared to state-of-the-art resource the various subsystems. However, in order to provide this synchronization algorithms. Implemented as part of VxWorks, the temporal isolation the basic HSF model assumes the absence of results are confirmed using an avionic system, for which ARAP shared resources. The problem with this assumption is that most substantially reduced the number of hard real-time deadline embedded systems share global resources and need to be misses.1 synchronized. While traditional resource access protocols can be Categories and Subject Descriptors used to synchronize resources locally, within a subsystem, global C.3 [Special-Purpose and Application-Based Systems]: Real- resource access presents added challenges such as the Time and embedded systems. unpredictable holding times between globally shared resources. In this paper we present the Adaptive Resource Allocation General Terms Protocol (ARAP) which is a new resource synchronization policy Algorithms, Performance, Reliability. for globally shared resources in an HSF, focused in a single Keywords processor environment. ARAP utilizes knowledge about previous Real-time systems, hierarchical scheduling, resource sharing, task utilization, by applying the concept of control theory using a operating systems. proportional-integral-derivative (PID) controller, to adapt to changes in the system. The primary benefit of this new strategy is 1. INTRODUCTION that the system can now adapt to computational changes Modern embedded and Cyber Physical Systems such as smart dynamically. The result being that temporal isolation is cities, autonomous automotive systems or the smart electrical grid maintained between subsystems even during periods of overload. are composed of various subsystems which are often developed We applied ARAP in an actual embedded system that was independently. A common requirement for such systems is experiencing overload conditions resulting in missed deadlines temporal isolation, meaning that the temporal behavior of one due to soft and hard real-time tasks sharing the same resource. subsystem should never adversely affect the temporal behavior of Our experiments demonstrated the benefit of ARAP specifically another subsystem. during overload conditions and as a result deadline misses for This requirement for temporal isolation is challenged by two hard real-time tasks were eliminated. Other contributions of this major properties we address in this paper. First, the amount of paper include: the performance analysis of ARAP as compared to data and resulting computation times may vary significantly. Such other synchronization protocols, the ARAP protocol implemented variations are not easy to predict neither in their magnitude nor as part of the resource manager class in an open source real-time their duration. The second challenge is that the temporal behavior scheduling simulator, a simulation model of transient overload of the subsystems is often influenced by resources which are conditions for performance analysis and the first time shared among tasks. For instance, if an interface to a sensor implementation (to the best of our knowledge) of an HSF as part device is locked by a task in one subsystem the temporal isolation of the VxWorks real-time operating system. of other subsystems requiring access to the sensor could be The remainder of the paper is structured as follows: In Section 2 violated. we provide an overview of hierarchical scheduling. Related work To address these challenges a variety of solutions have been is reviewed in Section 3 while Section 4 presents the adaptive proposed. The most common approach is “over-engineering.” resource access mechanism used in our protocol. Performance Historically, systems were designed and considered “safe” with a analysis and results are provided in Section 5. Section 6 describes utilization factor U of less than 70% [18], while systems with a the simulation environment and Section 7 presents the higher utilization were deemed “unsafe”. Traditional resource implementation in an actual embedded system application. access protocols, such as Priority Inheritance Protocol (PIP) [4], the Priority Ceiling Protocol (PCP) [4] or the Stack Resource 2. PRELIMINARIES This section presents the overall architecture of a hierarchical scheduled system as well as the definition of a system overload 1 EWiLi’14, November 2014, Lisbon, Portugal. Copyright condition. retained by the authors. 2.1 Hierarchical Scheduling Overall system load is defined in [18] as the equivalent to the The basic framework of a hierarchically scheduled system [2] [3] processor utilization factor U: is composed of multiple applications (subsystems) where each (1) application could be composed of multiple tasks (see Figure 1). A global scheduler controls which application can use the processor where is the computational time and is the task period. A while the local scheduler determines which application’s task load value of means the system is overloaded (requested should actually execute. Every application is allocated a separate computation time exceeds the available processor time). service manager, known as the server. Each server is allocated a Consequently, there are two broad classifications of overload CPU capacity reserve, which is assigned as a pair where conditions also defined by the authors in [18]: is defined as the time quantum and is defined as the period. 1. Transient overload is defined for a limited time where the average load is but the maximum load is . 2. Permanent overload is defined for an unpredictable duration where the average load is . It is important to note that in this paper our approach was to only consider transient overload conditions. As a result, the primary benchmark of our work is to practically eliminate hard real-time task deadline misses and manage soft real-time task misses so that the system can recover gracefully from an occasional transient overload condition. 3. RELATED WORK Initially an HSF was proposed by authors in [3][9] as a means to perform composability analysis for open systems development. The motivation being that it can quickly become intractable to accurately verify the timing behavior of the embedded system as Figure 1: Hierarchical Scheduling Framework the complexity increases. The approach was to verify the timing behavior of each individual subsystem independently then Each task gets to execute for its assigned time quantum , when compose each subsystem into the overall system. However, the task’s time quantum is exhausted the task is blocked until typical embedded systems are not entirely independent because its next period. In effect, the server functions as an independent subsystems may need to share resources which are why previous processor virtually limiting the bandwidth of each application. research on HSFs was extended to include schedulability analysis 2.2 Resource Sharing of semi-independent real-time components [8] [5]. Resource sharing in an HSF can be classified as either local or The SIRAP [8] protocol was developed for fixed-priority global. Tasks that share resources within the same subsystem are preemptive scheduling while the BROE [10] protocol was considered local resource sharing. Tasks that share resource developed for dynamic-priority scheduling. Both protocols use a across applications are classified as global resource sharing which form of budget check to determine if there was enough budget left requires the resource be protected at the local as well as global to enter the critical section. If the remaining budget was deficient level. Therefore a task that locks a global resource will also cause to complete the critical section the task was blocked from locking its server to lock the resource. This creates an added complication the resource until the next budget replenishment. The limitation of increased resource holding times due to the server budget with the budget check approach is that the critical section exhaustion. execution time is based upon worst-case analysis. This could lead Researchers have proposed several solutions [8][6] to the problem to resource under utilization due to conservative WCET of this added delay in critical sections due to server budget estimations. Additionally, a priori knowledge of the WCET for a exhaustion. One such approach called budget check checks to see critical section is required which is often difficult to evaluate in if there is sufficient server budget before allowing a task to enter a applications with variable execution times. critical section. If the budget is insufficient the task is not granted Hierarchical scheduling with resource sharing HSRP [2] and later access to the resource until the next budget replenishment. In extended to OPEN-HSRP [10] utilized a budget overrun approach another approach the task is allowed to enter a critical section to reduce the resource holding times during budget expiration. without checking for a sufficient budget. As a result, if the budget While this approach does provide better flexibility for applications is exhausted while still inside the critical section the task is just with variable execution times there are some disadvantages. One allowed to continue and consume extra budget until the end of the such drawback is that even though a task is allowed to overrun its critical section. budget there still has to be a limit placed upon the maximum overrun time. In order to prevent unbounded blocking a task is 2.3 Overload Conditions forcefully preempted if it is still holding the resource during the The problem of server budget exhaustion while a task is inside a next budget replenishment. This leads to limitations being placed critical section can be amplified during periods of overload upon the types of shared resources used to those that can safely be because it could unnecessarily increase the time a critical task aborted to relatively short critical section execution times. would have to wait for the resource. As a consequence, task Another consideration is because a task can overrun its budget the overruns can result because tasks execute longer than expected strict temporal isolation between subsystems could be violated. It which can have an increasingly negative impact on resource is for these reasons that HSRP based systems are typically only holding times. Thus, before we proceed any further, we will take used for soft real-time systems. the time to provide a brief definition of an overload condition. Other recently published work, known as RRP [11], took a 4.1.1 Budget Exhaustion different approach to resource locking before budget exhaustion. The primary difference between the various resource access Instead of performing a budget check the task is allowed to enter protocols in an HSF is how the budget exhaustion of a the critical section and unlike HSRP if the budget has expired the subsystem’s server is handled. As mentioned in Section 3 the task is simply preempted and rolled back. The RRP protocol SIRAP protocol performs a budget check while OPEN-HSRP improved the average case response times and task schedulability permits budget overflow. Similar to the SIRAP protocol our compared to SIRAP and the OPEN-HSRP protocols. However, method also performs a form of budget check. However, instead the limitation with RRP is that it can only be used with shared of using a static a-priori calculation of the Critical Section resources that can be safely rolled back (e.g. databases). Execution Time (CSET) ARAP incorporates feedback to estimate Our approach does not rely on WCET analysis of critical section the next resource holding time for that critical section executions times but instead uses feedback which is more flexible execution instance. since it represents the actual operating environment. Previous The primary benefit of incorporating feedback is that the system research has proposed using feedback to manage CPU scheduling can dynamically adapt to changes in CSET specifically during reservations [12] [13] then extended it to include application periods of transient overload. In this situation the SIRAP protocol defined Quality of Service (QoS) parameters. However, ARAP is tends to be too conservative because with SIRAP the overload the first to apply a feedback mechanism to resources that are condition would have to be factored into the CSET calculation shared across subsystems in a hierarchically scheduled system. resulting in task under utilization. While the OPEN-HSRP Past research has demonstrated [14][15] that previous task protocol can better adapt to overload conditions the overrun behavior is a valid indicator for future task behavior and because mechanism could adversely affect the response times of higher our method incorporates feedback ARAP is better positioned to priority tasks. Therefore, our approach leads to a more robust and respond to transient overload conditions. Consequently, SIRAP is better utilized system with a higher degree of determinism. too conservative by using static WCET analysis while OPEN- HSRP overrun mechanisms could affect the deadlines of higher 4.1.2 Feedback Mechanism priority tasks specifically during periods of transient overload. Our feedback architecture is implemented as part of the kernel (see Figure 3) and consists of a PID which is used to estimate the 4. ADAPTIVE RESOURCE ACCESS execution time for a task executing inside a critical section. The PROTOCOL (ARAP) output or observed value of the PID is the estimated error ratio This section provides an overview of ARAP which is a resource (ER) which is defined as the ratio between the actual measured access protocol that synchronizes access to shared resources in a critical section execution time and the previous window of past hierarchically scheduled system. In this paper we only consider error ratios. The semaphore request mechanism is used as the shared memory as the mutually exclusive resource. However, actuator of the system determining whether a task is granted ARAP could also be extended to include other shared resources access to the critical section. The control action is performed by (e.g. memory-mapped areas, device registers, and peripheral either allowing the task to acquire the semaphore or to block the devices) as well. The access to these resources are performed as task waiting on the semaphore. If a task requests a semaphore part of a critical section and protected by a semaphore. (e.g. srp_wait ()) it has to pass the budget check test to acquire the semaphore. The budget check test uses information from the PID 4.1 Protocol Description controller as well as information from the scheduler to determine Similar to the SIRAP and OPEN-HSRP protocols ARAP utilizes a if there is enough remaining budget to complete the critical two-level hierarchy for resource management. Resources that are section. To apply the feedback control ARAP uses the PID shared within a subsystem are managed with SRP and resources controller to compute which is used to project the next that are shared across subsystems are managed with an extended critical section execution time based upon the ER. Using the basic version of HSRP. The overall sequence of actions for ARAP is form a general PID controller [19] defined as: provided by the flowchart depicted in Figure 2. (2) where , and are the PID control parameters, IW is the integration window and DW is the size of the differentiation interval. Figure 3: Structure of feedback architecture 4.1.3 Implementation Considerations The implementation of ARAP is similar to SIRAP but the locking operations (srp_wait, and srp_signal) are modified to utilize the Figure 2: ARAP architecture flowchart feedback mechanism. The locking operation is performed by the srp_wait function so when a task tries to acquire a resource the local scheduler performs a check to determine if there is enough tasks with lower priority than which share a global resource, budget to complete the critical section. At the semaphore request such that: time t let the function calcRHT(), which utilizes the PID (6) controller, calculate the projected resource holding time so that . At the same time let the function (7) getCurBudget() get the subsystem server’s remaining budget such that . If the task’s projected resource (8) holding time then the task is allowed to lock the The resource holding time for is defined as the maximum resource and execution continues according to the rules of HSRP. critical section execution plus the interference from the tasks On the other hand, if then the task is not permitted to with a higher preemption level than the ceiling of the resource lock the resource until the next subsystem budget replenishment, during the CSET of . Such that is computed using this is known as self-blocking. The release operation is performed as follows: by the srp_signal function which signifies the completion of the critical section. The time that is spent in the critical section is used (9) as the feedback to the PID controller. At the semaphore release where is the ceiling of the resource accessed within the time t’ the function recordRHT( records the actual time critical section and are the worst-case execution time spent in the critical section. and period of the task that has a higher preemption level than . The value u represents the maximum resource 5. PERFORMANCE ANALYSIS within a subsystem. This section provides the background for the performance analysis of ARAP as part of a hierarchically scheduled system (equations 5.2 Global Performance Analysis are applied in subsection 5.3). Given that both ARAP and SIRAP For global scheduling analysis the virtual processor model can be perform a budget check the analysis performed for SIRAP [8] can extended to a global model where multiple subsystems be applied to ARAP as well. The difference is that ARAP uses a can be verified according to equation (3). Therefore, the projected CSET based upon feedback whereas SIRAP uses static schedulability test for a fixed priority global scheduler is defined a-priori CSET. as: 5.1 Local Performance Analysis (10) According to the authors in [7] each subsystem is where of subsystem is the maximum resource holding time schedulable if with a preemption level less than . (3) 5.3 Performance Results where is the supply bound function used by authors [8] to Schedulability analysis for HSRP was performed by authors in [2] calculate the minimum CPU allocations required during an which is very similar to the SIRAP analysis which excludes self- interval of time. Authors in [7] presented a periodic processor blocking but has to consider the overrun mechanisms. Similar to model to characterize the allocations defined by what they called SIRAP as well the analysis for OPEN-HSRP is extended from the virtual processor model represented as . The supply equation (3) as follows: bound function (see Figure 4) of the virtual processor model is (11) defined as: where is the maximum blocking time when is blocked by a (4) lower priority task. The supply bound function is defined by equation (4) and the request bound function is where and is defined as the defined as follows: interval . (12) where is the set of tasks with priorities higher than . The global schedulability is defined as: (13) where the load bound function is defined as follows: (14) where (15) where is the set of subsystems with a higher priority than Figure 4: Supply bound function virtual processor model subsystem and is the maximum time that is blocked by T(3,2), k=3 lower priority subsystems. The performance of ARAP is evaluated as the minimum value of the request bound function The request bound function of a task is defined as: that would guarantee schedulability. For the synthetic (5) workload we generated random variances of a hierarchical system where is the WCET of task , is the maximum self- consisting of 3 separate subsystems such that . Each blocking for task , is the interference from tasks with a subsystem consisted of 3 tasks with a global resource being higher priority than and is the maximum interference by shared between each subsystem. Each subsystem has a total using resource sharing with budget overrun (OPEN-HSRP). We utilization of 15%. Task periods ranged between 100 and 1000. executed sample runs modeling transient overload conditions at Figure 5 represents the overall task acceptance rate for the 0%, 5%, 10%, 15%, 20% and 25% respectively. The Figures 6 simulated task sets required for task schedulability as defined by and 7 separate out the miss rates between the hard and soft real equation (3). Notice that ARAP has an improved acceptance rate time tasks. over SIRAP. The reason for this improvement is that the WCET calculation for ARAP adapts to the current workload which provides greater flexibility than SIRAP’s static approach. Additionally, because ARAP is adaptable it is comparable to OPEN-HSRP but without the added complexity of managing the overruns of the OPEN-HSRP protocol. Figure 6: Hard Real-Time task miss rate (RTSIM) Figure 5: Task acceptance rate for simulated task sets 6. SIMULATION ENVIRONMENT This section describes the simulation environment we used to further analyze ARAP which was implemented as a simulation component within RTSIM [16]. RTSIM (Real-Time System Simulator) is a task scheduler simulation and is used primarily for simulating real-time control systems. In order to implement Figure 7: Soft Real-Time task miss rate (RTSIM) ARAP in RTSIM we extended the existing resource manager In the figures above EDF-FCFS represents EDF scheduling with class to include the feedback mechanisms. standard first-come-first-serve resource management (no PIP), EDF-HSRP represents EDF scheduling with OPEN-HSRP 6.1 Modeling and PID Tuning resource management and EDF-ARAP represents EDF scheduling A Heaviside step function was used to model the transient with PID feedback control. Depicted in Figure 6 the ARAP overload condition. Heaviside functions are used extensively in protocol outperforms the other methods while it sacrifices some control theory to represent different loads. The discontinuous deadline misses in soft real-time tasks. Notice that in Figure 6 nature of this function maps nicely to an overload situation where both scheduling mechanisms EDF-FCFS and EDF-HSRP exhibit we can model periods of nominal, ramp-up and ramp-down hard real-time task misses. Even though EDF-HSRP manages the behaviors. The Ziegler-Nichols [17] tuning method was used to soft real-time tasks with a periodic server hard real-time task tune the feedback mechanism. misses are realized because the overrun mechanism allows the task to continue, even though its server budget has been 6.2 Example Task Set exhausted. In Figure 7 EDF-HSRP outperforms EDF-ARAP The example task set consisted of a total of five periodic tasks, because the overrun mechanism allows the task to continue at the two hard real-time and three soft real-time tasks but only two expense of hard real-time deadline misses. tasks T3 and T5 shared a critical region and therefore were synchronized by a semaphore. For the two tasks (T3 and T5), that 7. PRACTICAL EVALUATION shared a semaphore, execution times were modeled to exceed To demonstrate the practicality of our approach we also their nominal rates. The Tasks T4 and T5 which represent hard implemented ARAP as part of a ground-based command and real-time tasks were allowed to execute up to their predefined control test set used for satellite telemetry processing. A WCET while Task T3 was modeled to exceed its bandwidth, hardware-in-the-loop (HWIL) simulator was used to provide the thereby generating a transient overload condition. workload for our system. This particular use case was chosen In order to provide a comparison of ARAP we simulated both the because telemetry processing times can vary considerably traditional first-come-first-serve (FCFS) and OPEN-HSRP depending upon the data rate and how densely the telemetry frame resource allocation protocols in RTSIM. One note; is that due to is populated. In this way, we can use the HWIL simulator to the simulated transient overload conditions of our scenario SIRAP generate transient overload conditions. was not included in the results because it was repeatedly denied The main software components of the system includes a hard real- access to the shared resource due to conservative nature of the time periodic task that performs the frame processing of a protocol. telemetry stream. The other primary software component is a soft We ran simulations using the task set defined above with the real-time task that provides the health and status monitoring for Heaviside function to simulate task execution times for analysis as the vehicle. The telemetry processing task and the monitoring task to how well the ARAP protocol performed against EDF both share a global resource which is the decommutated telemetry scheduling with FCFS resource allocation (no PIP) as well as EDF buffer. Similar to the simulation environment we used the HWIL simulator to model transient overloads between 0%-25%. Two of-the-art synchronization protocols. By implementing ARAP as traditional resource synchronization protocols (PIP and FCFS) part of an actual embedded system application we were able to were used in the evaluation for comparison. effectively eliminate deadline misses for a critical high priority The results for the overall deadline miss rates were separated out task. Our motivation for this work stems for the aerospace based upon soft and real-time tasks. Soft real-time tasks were industry where systems are routinely over engineered in the scheduled by the local subsystem scheduler which is scheduled by interest of real-time determinism. It is a common perception that the global fixed priority scheduler of VxWorks. Hard real-time an embedded system is considered “unsafe” above 70% total tasks were scheduled directly by the global VxWorks scheduler. utilization. As a result of this work we demonstrated that we can Soft real-time tasks were modeled to allow their execution time to build more efficient embedded systems by more effectively exceed their budget while the hard real-time tasks were designed managing the tasks within that system and in doing so reducing to not exceed their pre-defined utilization budget. the total number of processing elements required. Figures 8 and 9 show the miss rates of the hard real-time tasks and 9. ACKNOWLEDGMENT soft real-time tasks respectively. The feedback mechanism This work was supported in part by the National Science represented as FPPS-ARAP in the graph was compared against Foundation under NSF grant number 1136146. the priority inheritance protocol (FPPS-PIP) and the first-come- first-server (FPPS-FCFS) protocol. Notice how even when using 10. REFERENCES priority inheritance a lower priority task can still cause a higher [1] Z. Deng and J.W. Liu, “Scheduling real-time applications in an priority task to miss their deadline. The reason is that while PIP open environment.” In Proc. of IEEE Real-Time Systems Symp. does solve the priority inversion problem it does not solve the 1997. problem of unbounded blocking. [2] R.I. Davis and A. Burns, “Resource Sharing in Hierarchical Fixed Priority Pre-emptive Systems.” In RTSS’06. As illustrated in Figure 8 ARAP does provide the mechanism for [3] P. Goyal, X. Guo and H.M. Vin, “A hierarchical CPU scheduler eliminating the extended blocking by a lower priority task for multimedia operating systems.” In OSDI, pp. 107-121, 1996. however, the soft real-time task could be affected causing increased missed deadlines for the soft real-time task. Notice that [4] L. Sha, R. Rajkumar and J.P. Lehoczky, “Priority Inheritance in Figure 9 ARAP reports the highest number of deadline misses Protocols: An Approach to Real-Time Synchronization”. IEEE trans. Comput. Vol 39, pp. 1175-1185, 1990. for soft real-time tasks. The reason for this behavior is that during a transient overload the task may be denied access to the resource [5] T.P. Baker , “Slack-Based Scheduling of Real-Time Processes”. and have to wait until the next budget replenishment period. As Real-Time Systems, vol. 3 pp. 67-99, 1991. shown in the results using a feedback mechanism can directly [6] L.Abeni and G.C. Buttazzo, “Resource reservations in dynamic benefit the determinism of a hard real-time at the possible expense real-time systems”, Real-Time Systems, pp. 123-165, 2004. of other soft real-time tasks that share the global resource. [7] A. Mok, X.Feng and D. Chen. “Resource Partition for Real-Time Systems”. In Proc. of IEEE Real-Time Technology and Appl. Symp., pp99-110, 2005. [8] M. Behnam, T. Nolte, M Sjodin and I Shin. “SIRAP: A synchronization protocol for hierarchical resource sharing real-time open systems,” In EM-SOFT 07. [9] N. Fisher, M. Bertogna and S. Baraugh. “The Design of an EDF- Scheduled Resource-Sharing Open Environment”. In RTSS ’07. [10] M. Behnam, T. Nolte, M Sjodin and I Shin. “Overrun Methods and Resource Holding Times for Semi-Independent Real-Time Systems,” IEEE trans. on Indus. Informatics, 2010. Figure 8: Hard Real-Time task miss rate (vxWorks) [11] M. Asberg, T. Nolte and M. Behnam, “Resource Sharing Using the Rollback Mechanism in Hierarchically Scheduled Real-Time Open Systems,” In RTSA ’13 [12] L. Abeni, G.C. Buttazzo , “Hierarchical qos management for time sensitive applications,” In RTAS’01. [13] L. Abeni, L. Palopoli, G. Lipari, J. Walpole, “Analysis of a Reservation-Based Feedback Scheduler,” In RTSS ’02. [14] P. Phinjaroenphan, S. Beivinakoppa, P. Zeephongsekul. “A Method For Estimating the Execution Time of a Parallel Task on a Grid mode,” Advances in Grid Computing – EGC 2005. [15] Burchard, L.-O.; Altenbernd, P., "Estimating decoding times of Figure 9: Soft Real-Time task miss rate (vxWorks) MPEG-2 video streams," Image Processing, vol.3, 2000 [16] RTSIM, http://www.rtsim.sssupit.com 8. CONCLUSION [17] Ziegler, J.G Nichols, N.B. Optimal settings for automatic In this paper we considered the problem of sharing global controllers. Transactions of the ASME pp759-768, 1962. resources in a hierarchical scheduled system. Traditionally, HSF was designed for soft real-time applications, in part due to [18] G. C. Buttazzo, Hard Real-Time Computing Systems, Springer, Real-Time System Series, 2011 problem of unbounded resource holding times between global resources. Our approach which utilized feedback from the actual [19] Stankovic, Jack A., et al. "The case for feedback control real-time system to estimate future usage provided greater flexibility and scheduling." Real-Time Systems, 1999. Proc of the 11th Euromicro Conference on. IEEE, 1999. allowed for the system to adapt to changes better than other state-