Ruffolo_Francesca_-_cs550_pres

download Ruffolo_Francesca_-_cs550_pres

of 20

Transcript of Ruffolo_Francesca_-_cs550_pres

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    1/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550

    Techniques for ImplementingQuality of Service

    in the Eclipse, Nemesis, and Real-Time MachOperating Systems

    Francesca Ruffolo

    December 6, 2001

    Instructor: Dr. Marius Soneru

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    2/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Agenda

    Motivation for Quality of Service Implementation Overview of Operating Systems

    Eclipse/BSD Nemesis Real Time Mach

    Techniques for Implementing Quality of Service Eclipse/BSD Nemesis Real Time Mach

    Conclusion References

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    3/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Motivation for Quality of Service

    An increasing need to run multiple server applications(audio and video media servers, web servers and hostservices) for organizations and individuals on the sameplatform

    A need for control over provisioning of systemresources among applications to achieve desired levelsof predictable performance

    Quality of service guarantees with respect to packetdelay and bandwidth are not extended directly to theapplication via the operating system and thus add littlevalue

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    4/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Operating System Overview

    Eclipse/BSD (Berkeley Software Distribution)

    Nemesis

    Real Time (RT) Mach

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    5/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Overview of Eclipse/BSD

    Evolved from the Plan 9 operating system developed byBell Laboratories in New Jersey starting in the late 1980sin response to trends in the computing industry at thattime:

    Networks of smaller, more personal machines werepreferred over large centralized time-shared computers(typically UNIX workstations)

    Administrators grew weary of overloaded, routine time-sharing systems and wished to move to small, self-maintained systems

    Referred to as Eclipse/BSD based off of FreeBSD (BerkeleySoftware Distribution) version 3.4.

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    6/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Overview of Nemesis

    Resulted from work completed for the Pegasus andPegasus II projects and the following partnerships:

    University of Cambridge, U.K. University of Twente, Netherlands University of Glasgow, U.K. Swedish Institute of Computer Science, Sweden Citrix Systems, LTD, U.K.

    Runs on a large number of platforms including Intel486, Pentium, PPro, DEC Alpha workstations,StrongARM SA-110 based network computers

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    7/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Overview of Real-Time Mach

    Research began in 1985 and resulted in a flagshipproduct developed by the Real-Time and MultimediaLaboratory in partnership with the Department of

    Computer Science at Carnegie Mellon University.

    Incorporated into a number of commercial operatingsystems including DECs OSF/1 for the DEC Alpha andIBM-s OS/2 for the RS6000 based machines

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    8/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Techniques for QoS Implementation

    Eclipse/BSD Reservations, Tagging, Reservation Domains,

    Cumulative Service Guarantee, Move-to-Rear ListScheduling (MTR-LS)

    Nemesis Quality of Service Manager, Run Time ResourceAllocation (RTRA), Accounting, Policing

    Real-Time Mach Processor Reserves, Dynamic QoS Server, QoS-based Resource Allocation Model (Q-RAM )

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    9/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Eclipse/BSD QoS Techniques

    Reservations /reserv (reservation) file system through which the operating

    system can access, use and reconfigure the system resourceschedulers

    Each resource contains a reservation directory (Example for

    CPU with multiple resources: /reserv/CPU/r1, /reserv/CPU/r2,etc. )

    Quality of Service Parameters: Delay, Fairness, and CumulativeService Guarantee*

    Used to determine resource allocation to the applications Obtains quality of service parameters and compares the virtual

    service time to real service time

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    10/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Eclipse/BSD QoS Techniques

    Reservation Domain Offers access and admissions to the /reserv file system Allows control over system resources among applications in

    order to achieve a desired performance level Assigns a certain fraction of each resource: a domain may

    contain 25% CPU, 50% disk I/O, 25% main memory

    Move-to-Rear List Scheduling Algorithm Provides all three quality of service parameters: bounded delay,

    cumulative guarantee, and fairness Contains an ordered list of pairs that indexes the reservation

    domain and specifies the size of the quantum or the maximumamount of service time the reservation domain can receivewithout being interrupted

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    11/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Nemesis - QoS Techniques

    Quality of Service Manager Comes to agreement with processes about the quality of service that

    will be delivered to them Receives a description of requirements from the application and

    converts it to a set of QoS parameters Decides whether or not it can accommodate the request

    Informs the application directly if level of service cannot be met(user is informed by QoS manager or application) Informs application of resource availability if service level can be

    met Run time resource allocator (RTRA)

    Assigns the available resources among those applications that need touse them by using QoS parameters supplied by the QoS manager

    System dispatcher performs run time allocation in the case of theprocessor resource

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    12/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Nemesis - QoS Techniques

    Time CPU Mem ory . I /O

    Figure 2. QoS M anagement

    Accounting / Polic in g

    Run Time Resour ce A ll oca tion

    A lica tionoS M ana er

    Contr ac t

    QoS Descrip tion

    arameters ResourceA lloca tion

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    13/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Nemesis - QoS Techniques

    Policing Ensures that an application does not exceed its allocation and startconsuming resources reserved for other applications (dispatchermonitors processor time)

    Ensures that the writer of the application does not requestexcessive resources to guarantee that applications performsatisfactorily

    Accounting Kernals already account for resources used by an application Cost of resources is charged to the accounting structure that is

    associated with the currently executing user mode protection

    domain (complicated because the single client may need to interactwith a number of servers during execution) Credits or connection to a QoS server can be used to resolve this

    issue

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    14/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Real-Time Mach QoS Techniques

    Processor Reserves Allow threads to specify their CPU resource requirements in

    terms of their timing constraints CPU demand is thus made available upon admission of the

    processor reserve by the kernal

    Dynamic QoS Server Provides interaction between the application and the system

    layer Application can specify its requirements to the system layer

    while the system layer provides to the application accurate anddynamic feedback on the state of the applications resourcesboth individually and with respect to other applications

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    15/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Real-Time Mach QoS Techniques

    Processor ReservationReal- Time Mach

    QoS Server

    Display

    Admission DynamicControl Quality Control

    Client Quality

    Attribute Database

    Client

    QoS

    Interface

    Figure 3. QoS Server Architecture

    Client

    QoS

    Interface

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    16/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Real-Time Mach QoS Techniques

    QoS Based Resource Allocation Model (Q-RAM)

    Fulfills simultaneous requirements of multiple applicationsalong multiple QoS dimensions (e.g. timeliness, data quality,reliable packet delivery) while allowing applications access to

    multiple resources (e.g CPU, disk bandwidth, memory)simultaneously

    Takes the characteristics, definitions and assumptions andmakes resource allocations to each application such that thetotal system utility is maximized with the constraint that every

    application is feasible with respect to each QoS dimension

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    17/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Conclusion

    All three systems use a mathematical model in determiningresource allocation to the applications

    Eclipses scheduling policy uses a cumulative service

    guarantee, fairness and delay quality of service parameters andcompares the virtual service time to real service time Real-Time Mach uses the Q-RAM model where it inputs its

    quality of service parameters to generate utility functions thatare then optimized

    Nemesis utilizes the RTRA to assign the available resources

    among applications using QoS parameters supplied by theQoS manager

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    18/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Conclusion

    Operating Systems used different methods of implementing QoS Eclipse appears to add the mechanisms to support QoS in the

    existing operating system Nemesis developed a separate module (QoS manager) and provided

    links to integrate the module into the system RT Mach implemented the majority of its changes in the QoS server, a

    separate module, and integrated it to the operating system with linkslimited to processor reserves area of the operating system

    Disadvantages of integrating quality of service in an existing system Possible drift from exact quality of service requirements or objectives

    because altering was needed to fit the quality of service mechanismsinto the system

    Risk of inaccurately measuring the performance Risk of propagating effects through larger portions of the system

    because the mechanisms added are at the lower levels of theoperating system

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    19/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Operating Systems with QoS Capability

    Sumo (Lancaster University)

    Synthesis (Columbia University) Synthetix (Oregon Graduate Institute)

    Vino (Harvard University)

    Tornado (University of Toronto)

    Scout (University ofArizona)

  • 8/8/2019 Ruffolo_Francesca_-_cs550_pres

    20/20

    IIT

    Comparative Operating SystemsDecember 2001

    CS550Representative List of References

    J. Blanquer, J. Bruno, E. Gabber, M. Mcshea, B. zden, and A.

    Silberschatz, "Resource Management for QoS Eclipse/BSDProceedings of the FreeBSD 1999 Conference, Berkeley, California,October 1999.

    J. Bruno, E. Gabber, B. zden, and A. Silberschatz, "The EclipseOperating System: Providing Quality of Service via

    Reservation Domains. Proceedings of the USENIX 1998Annual Technical Conference, New Orleans, Louisiana", June1998.

    E. Hyden. Operating System Support for Quality of Service.Dissertation for degree of Doctor Of Philosophy. February,1994, Chapters 3 and 4.

    R. Rajkumar, C. Lee, J. Lehoczky and D. Siewiorek. "A Resource AllocationModel for QoS Management" In Proceedings of the IEEE Real-Time SystemsSymposium December, 1997.

    See Report for remaining references