Real-Time Fixed and Dynamic Priority Driven Scheduling Algorithms: Theory and Experience
Résumé
There are two main positions regarding real-time scheduling algorithms. The first is based on fixed priorities and the second makes use of dynamic priorities such as deadlines. These two approaches have never really been compared because the emphasis has always been on the ease of implementation rather than the efficiency of the algorithms and the complexity of the associated feasibility conditions. In addition to traditional real-time applications, we believe that starting to look at these two criteria will be very important in the perspective of providing admission control mechanisms and real-time guarantees on large distributed systems like the Internet network. To that end, our purpose is first to provide a general framework based, on the one hand, a representation of preemptive, real-time scheduling in an algebraic structure that enables us to evaluate the distance of the optimality of any scheduling algorithm ; and on the other hand, a consistent representation of the associated feasibility conditions that enables us to evaluate the number of basic operations. As a second step, considering several kinds of traffics, we initiate the comparison by a straight, but limited, application of our general framework. Our preliminary results will notably highlight, in the cases where deadlines are all greater than periods, that fixed priority schedulers (like deadline monotonic) behave as well as EDF while the worst-case response time analysis is less complex. The same remark is valid when the task sets are almost homogeneous but is in favor of EDF in the general case or when a simple feasibility analysis is needed. Therefore, it might be of interest, given a real-time scheduling context (spanning from small embedded system to large distributed system), to take into account these two extra criteria in order to find a right trade-off among several possible solutions.
Loading...