国外计算机类优秀博士答辩pptPhDdefense()
foo Using Hierarchical Scheduling to Support Soft Real-Time Applications in General-Purpose Operating Systems John Regehr March 20, 2001 Outline Overview of Contributions A general hierarchy of soft real-time schedulers can provide guaranteed scheduling behavior The Hierarchical Loadable Scheduler (HLS) architecture… Can be efficiently implemented in a general-purpose OS Increases application performance compared to case where scheduler and apps are mismatched Augmented CPU reservations increase predictability when the OS steals CPU time from real-time applications Motivation People use general-purpose OSs (GPOSs) for many kinds of tasks e.g. Unix, Windows, MacOS variants Compatibility, commodity, convenience Applications have diverse scheduling requirements Time-sharing Soft real-time Isolation Co-scheduling between processors or machines The Problem One size does not fit all Supporting evidence: companies sell scheduler extensions Ensim: ServerXchange Sun: Solaris Resource Manager Aurema: Active Resource Management TimeSys: Linux/RT Motivating Data: Unfair CPU Allocation Between Users User 1 gets little CPU time when User 2 creates many threads Approach Allow a hierarchy of CPU schedulers to control processor allocation Thesis Statement: It is useful and feasible to extend a GPOS with a general, heterogeneous scheduling hierarchy. A heterogeneous hierarchy employs different schedulers A general hierarchy does not impose a fixed scheduling model Example Hierarchy Time Scales Long: System is used in a particular way Duration: usually uptime of a system or longer Medium: Applications start, end, and change requirements Duration: seconds, minutes, or longer Short: Individual scheduling decisions made by schedulers within the hierarchy Duration: milliseconds or 10s of ms What Microsoft Should Do Put HLS into consumer Windows! By default Support interactive, batch, and multimedia applications for a single user However, also include Library of useful schedulers and AP