A scheduling algorithm for tasks described by time value function
Real-Time Systems
Approximate Algorithms for the 0/1 Knapsack Problem
Journal of the ACM (JACM)
Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications
Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications
Advanced Concepts in Operating Systems
Advanced Concepts in Operating Systems
Guest Editors' Introduction to Special Section on Asynchronous Real-Time Distributed Systems
IEEE Transactions on Computers
Dynamic Storage Allocation: A Survey and Critical Review
IWMM '95 Proceedings of the International Workshop on Memory Management
Best-effort decision-making for real-time scheduling
Best-effort decision-making for real-time scheduling
Scheduling dependent real-time activities
Scheduling dependent real-time activities
A comparison of memory allocators for real-time applications
JTRES '06 Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems
A constant-time dynamic storage allocator for real-time systems
Real-Time Systems
Hi-index | 0.01 |
Whereas fairness can be the basis for general-purpose operating system scheduling policies, timeliness is the primary concern for real-time systems. As such, real-time schedulers permit uninterrupted, exclusive access to the CPU by a specific task to ensure its timely completion of execution. Only a subset of tasks, however, can satisfy their timing constraints during processor overload conditions in a real-time system. Utility accrual (UA) scheduling disciplines assure scalability and graceful performance degradation by identifying the subset of tasks to be granted the heavily contended system resources.Furthermore, whereas general-purpose operating systems treat memory monolithically and indiscriminately service dynamic allocation requests, UA-schedulers can benefit from special memory management considerations during memory overload conditions. MSA, the scheduling algorithm here presented is the first of its kind to treat memory as a UA-scheduler-managed resource. The scheduler is made aware of memory allocation requirements of each task throughout runtime and accordingly makes appropriate CPU and resource scheduling decisions. The algorithm is well-suited for use in resource-constrained embedded systems in a soft real-time environment.We have implemented MSA in a POSIX real-time operating environment and measured its performance under various load conditions. Our experimental results show overall performance gains over other memory-unaware UA scheduling algorithms during memory overload.