The MARUTI hard real-time operating system
ACM SIGOPS Operating Systems Review
Memory coherence in shared virtual memory systems
ACM Transactions on Computer Systems (TOCS)
Real-time systems engineering and applications
Real-time systems engineering and applications
Parametric scheduling for hard real-time systems
Parametric scheduling for hard real-time systems
Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment
Journal of the ACM (JACM)
Proceedings of the thirteenth annual ACM symposium on Parallel algorithms and architectures
An optimal strategy for sellers in an online auction
ACM Transactions on Internet Technology (TOIT)
Performance Guarantees for Web Server End-Systems: A Control-Theoretical Approach
IEEE Transactions on Parallel and Distributed Systems
A distributed surveillance task using miniature robots
Proceedings of the first international joint conference on Autonomous agents and multiagent systems: part 3
Deadline Scheduling for Real-Time Systems: Edf and Related Algorithms
Deadline Scheduling for Real-Time Systems: Edf and Related Algorithms
WOSP '02 Proceedings of the 3rd international workshop on Software and performance
Priority Inheritance Protocols: An Approach to Real-Time Synchronization
IEEE Transactions on Computers
Parametric Dispatching of Hard Real-Time Tasks
IEEE Transactions on Computers
An Analysis of Zero-Clairvoyant Scheduling
TACAS '02 Proceedings of the 8th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
A Specification Framework for Real-Time Scheduling
SOFSEM '02 Proceedings of the 29th Conference on Current Trends in Theory and Practice of Informatics: Theory and Practice of Informatics
Statistical Real-Time Communication over Ethernet
IEEE Transactions on Parallel and Distributed Systems
Non-Blocking Data Sharing in Multiprocessor Real-Time Systems
RTCSA '99 Proceedings of the Sixth International Conference on Real-Time Computing Systems and Applications
Improving Quality-of-Control Using Flexible Timing Constraints: Metric and Scheduling Issues
RTSS '02 Proceedings of the 23rd IEEE Real-Time Systems Symposium
The Monitoring of Timing Constraints on Time Intervals
RTSS '02 Proceedings of the 23rd IEEE Real-Time Systems Symposium
Enhancing the performance and dependability of real-time systems
IPDS '95 Proceedings of the International Computer Performance and Dependability Symposium on Computer Performance and Dependability Symposium
Dynamic and Aggressive Scheduling Techniques for Power-Aware Real-Time Systems
RTSS '01 Proceedings of the 22nd IEEE Real-Time Systems Symposium
Duality in the parametric polytope and its applications to a scheduling problem
Duality in the parametric polytope and its applications to a scheduling problem
Implementation and performance evaluation of a real-time e-brokerage system
RTSS'10 Proceedings of the 21st IEEE conference on Real-time systems symposium
Hi-index | 0.00 |
With the onset of distributed computing in hard real-time applications, the problem of assigning to, scheduling in, and executing jobs on processors, has received a lot of attention. Usually, real-time systems are embedded in closed loop reactive environments with uncertain behaviors and such systems take varying times to respond to such stimuli. One of the fundamental features of such systems is the presence of complex timing constraints between pairs of jobs. A secondary feature is the non-constant nature of the execution times of jobs. Real-time operating systems such as MARUTI can measure the interval within which the execution time varies (Mosse et al. In: Second IEEE Workshop on Experimental Distributed System, pp. 29-34, IEEE, 1990; Levi et al. 1989, ACM Special Interest Group Operat Syst 23(3):90-106). Partially clairvoyant scheduling was introduced in (Saksena, Parametric Scheduling in Hard Real-Time Systems. PhD thesis, University of Maryland, College Park, June 1994) to schedule jobs with varying execution times and non-trivial timing constraints. The schedulability of the job set is determined offline and a set of dispatch functions are produced from the given set of constraints if the job set is schedulable. The dispatch functions bind the start time of a job J to an interval that depends on the start and execution times of jobs sequenced before J. The online dispatcher of the system reads these dispatch functions and computes the interval within which a job can start without violating the constraints imposed on the system. In certain situations, the dispatcher fails to dispatch a job as the time to compute the dispatch functions associated with a job is greater than the interval within which the job needs to be dispatched. This phenomenon is called Loss of Dispatchability (Subramani, Duality in the Parametric Polytope and its Applications to a Scheduling Problem. PhD thesis, University of Maryland, College Park, August 2000). In this paper, we propose and implement a partially clairvoyant dispatching algorithm on a shared memory cluster with Concurrent Read Exclusive Write (CREW) architecture and contrast it with the sequential approach. For a preset number of processors, our approach has O(1) dispatch complexity while using a total of O(n2) space, while the sequential approach requires Ω(n) time. The detailed implementation profile obtained clearly demonstrates the superiority of the multiprocessor approach to dispatching. We also address the issue of scalability of the dispatcher for increasing number of processors and show that job sets of different sizes require different number of processors. Finally, we demonstrate the effect of execution time on the dispatchability of schedules.