General-Purpose Timing : The Failure of Periodic Timers

All general-purpose commodity operating systems use periodic clock interrupts to regain control and measure the passage of time. This is ill-suited for desktop settings, as the fine-grained timing requirements of modern multimedia applications require a high clock rate, which may suffer from significant overhead. It is ill-suited for HPC environments, as asynchronous interrupts ruin the coordination among cluster nodes. And it is ill-suited for mobile platforms, as it wastes significant energy, especially when the system is otherwise idle. To be truly general-purpose, systems should therefore switch to a mechanism that is closer to one-shot timers (set only for specific needs) while avoiding the potentially huge overhead they entail. With a careful design it is possible to achieve both high accuracy and low overhead, thus significantly extending the applicability of general-purpose operating systems.

[1]  John Lions,et al.  Lions' Commentary on UNIX 6th Edition, with Source Code , 1976, Computer classics revisited.

[2]  Raphael A. Finkel,et al.  An Operating Systems Vade Mecum , 1986 .

[3]  Robin Fairbairns,et al.  The Design and Implementation of an Operating System to Support Distributed Multimedia Applications , 1996, IEEE J. Sel. Areas Commun..

[4]  Hans Werner Meuer,et al.  Top500 Supercomputer Sites , 1997 .

[5]  Abraham Silberschatz,et al.  The Pebble Component-Based Operating System , 1999, USENIX Annual Technical Conference, General Track.

[6]  Peter Druschel,et al.  Soft timers: efficient microsecond software timer support for network processing , 1999, SOSP.

[7]  A. Benjamin Perlman,et al.  Rail Passenger Equipment Crashworthiness Testing Requirements and Implementation , 2000, Rail Transportation.

[8]  Jonathan Walpole,et al.  Supporting time-sensitive applications on a commodity OS , 2002, OPSR.

[9]  Yoshikatsu Tada John Lions : Lions' Commentary on UNIX 6th Edition with Source Code , 2002 .

[10]  Laxmikant V. Kalé,et al.  NAMD: Biomolecular Simulation on Thousands of Processors , 2002, ACM/IEEE SC 2002 Conference (SC'02).

[11]  J. Fier,et al.  Improving the Scalability of Parallel Jobs by adding Parallel Awareness to the Operating System , 2003, ACM/IEEE SC 2003 Conference (SC'03).

[12]  F. Petrini,et al.  The Case of the Missing Supercomputer Performance: Achieving Optimal Performance on the 8,192 Processors of ASCI Q , 2003, ACM/IEEE SC 2003 Conference (SC'03).

[13]  Jason Nieh,et al.  A SMART scheduler for multimedia applications , 2003, TOCS.

[14]  Dan Tsafrir,et al.  Effects of clock resolution on the scheduling of interactive and soft real-time processes , 2003, SIGMETRICS '03.