28 research outputs found

    Flattening Hierarchical Scheduling.

    Get PDF
    ABSTRACT Recently, the application of virtual-machine technology to integrate real-time systems into a single host has received significant attention and caused controversy. Drawing two examples from mixed-criticality systems, we demonstrate that current virtualization technology, which handles guest scheduling as a black box, is incompatible with this modern scheduling discipline. However, there is a simple solution by exporting sufficient information for the host scheduler to overcome this problem. We describe the problem, the modification required on the guest and show on the example of two practical real-time operating systems how flattening the hierarchical scheduling problem resolves the issue. We conclude by showing the limitations of our technique at the current state of our research

    A Survey and Comparative Study of Hard and Soft Real-time Dynamic Resource Allocation Strategies for Multi/Many-core Systems

    Get PDF
    Multi-/many-core systems are envisioned to satisfy the ever-increasing performance requirements of complex applications in various domains such as embedded and high-performance computing. Such systems need to cater to increasingly dynamic workloads, requiring efficient dynamic resource allocation strategies to satisfy hard or soft real-time constraints. This article provides an extensive survey of hard and soft real-time dynamic resource allocation strategies proposed since the mid-1990s and highlights the emerging trends for multi-/many-core systems. The survey covers a taxonomy of the resource allocation strategies and considers their various optimization objectives, which have been used to provide comprehensive comparison. The strategies employ various principles, such as market and biological concepts, to perform the optimizations. The trend followed by the resource allocation strategies, open research challenges, and likely emerging research directions have also been provided

    User-Centric Power Management For Mobile Operating Systems

    Get PDF
    The power consumption of mobile devices must be carefully managed to provide a satisfied battery life to users. This target, however, recently has become more and more difficult to complete. We still cannot expect the battery life problem be solved economically shortly, even though researchers already addressed many aspects of this problem. Principally, that\u27s because existing power management systems, which concentrate on controlling hardware power states, cannot effectively make these hardware components work in low-power mode. Why is this the case? Based on our analysis of 14 users\u27 device usage trace, we found that background applications generate too many activities when the device is either idle or active. These activities are either unimportant or unnecessary for the user. However, a significant amount of CPU time was consumed by them. Moreover, these application activities cause many system services to consume a considerable quantity of battery energy. When we install more applications on our mobile devices, this situation will become even worse. Most application developers rarely consider the power consumption of applications. How to control application state and eliminate redundant application activities become more and more important. Existing power management systems, apparently, cannot handle this situation. Some publications already tried to solve the problem several years ago. For example, EcoSystem and Cinder operating systems try to allocate battery energy precisely to applications based on their requirements. However, the problem with their solution is that the estimated application power consumption cannot accurately represent its reasonable demand. Energy-aware adaptation is another solution to decrease application power consumption. In our previous research, we implemented the {\em Anole} framework to supply energy adaptation APIs to applications. To use this framework, application developers have to implement power-saving strategies in their program. In the operating system, we need to change application behavior automatically in energy adaptation mode. We noticed the latest iOS operating system implemented the idea; the system notifies users to turn off background application update when the battery level is lower than 20%20\%. However, this kind of uniformity in power management can hardly be accepted by most users, because user habits are different from each other. We need to customize the power management strategy for each user. Otherwise, the user experience may be significantly impacted. To solve this problem, we propose user-centric power management, which utilizes the usage pattern of the individual user to distinguish important application from regular applications. Energy-saving strategies will not influence important applications to the user. From the analysis of 14 users\u27 device usage traces, we found that most users\u27 user behavior follows their pattern, which is both time-dependent and location-dependent. Based on this observation, we propose the UPS power management, which collects user behaviors and analyzes the usage pattern of users. We can easily use it to bridge usage behavior to energy-saving strategies. We also proposed three energy-saving strategies, UCASS, LocalLite and WakeFilter, to optimize the redundancy in background application activities and location service usage, and the abuse of in wakelock usage. Our simulation result based on real device usage traces shows that these three strategies can effectively save battery energy consumed background application activities, location requests, and wakelock requests
    corecore