(0) System Structure


  • Simple Structure

-any part of the system may use the functionality of the rest ofthe system

-MS-DOS (user programs can call low level I/O routines)View the OS as a series of levels

–Each level performs a related subset of functions

–Each level relies on the next lower level to perform more primitive functions

–This decomposes a problem into a number of more manageable subproblems

  • Layered Approach

    The operating system is divided into a number of layers (levels), each built on top of lower layers. The bottom layer (layer 0), is the hardware; the highest (layer N) is the user interface.

    With modularity, layers are selected such that each uses functions (operations) and services of only lower-level layers

---Properties

 Simplicity of construction
 Simplicity of Debugging
 Problems
 Precise definition of layers
 Example: Memory manager requires device driver of backing store (due to virtual memory)
 The device driver requires CPU scheduler (since if the driver waits for IO, another task should be scheduled)
 CPU scheduler may require virtual memory for large amount of information of some processes
 Less efficiency: due to the number of layers a request should pass