01.OSHistory - Introduction to Operating Systems An operating system is the interface between the user and the architecture User Applications

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
Operating Systems: Basic Concepts and History 1 Introduction to Operating Systems An operating system is the interface between the user and the architecture. User Applications OS as juggler: providing the illusion of a dedicated machine with infinite memory and CPU. Operating System Hardware Virtual Machine Interface Physical Machine Interface 2 OS as government: protecting users from each other, allocating resources efficiently and fairly, and providing secure and safe communication OS as complex system: keeping OS design and implementation as simple as possible is the key to getting the OS to work
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
What is an Operating System? Any code that runs with the hardware kernel bit set ¾ An abstract virtual machine ¾ A set of abstractions that simplify application design ± Files instead of bytes on a disk Core OS services, written by “pros” ¾ Processes, process scheduling ¾ Address spaces ¾ Device control ¾ ~30% of Linux source code. Basis of stability and security Device drivers written by “whoever” 3 ¾ Software run in kernel to manages a particular vendor s hardware ± E.g. Homer Simpson doll with USB ¾ ~70% of Linux source code ¾ OS is extensible ¾ Drivers are the biggest source of OS instability What is an Operating System? For any OS area (CPU scheduling, file systems, memory management), begin by asking two questions ¾ What’s the hardware interface? (The Physical Reality) ¾ What is the application interface? (The Nicer Interface for programmer producivity) Key questions: ¾ Why is the application interface defined the way it is? ¾ Should we push more functionality into applications, the OS, or the hardware? ¾ What are the tradeoffs between programmability, complexity, and 4 flexibility?
Background image of page 2
Operating System Functions Service provider ¾ Provide standard facilities ± File system ± Standard libraries Wi d t ± Window system ± Coordinator : three aspects ¾ Protection: prevent jobs from interfering with each other ¾ Communication: enable jobs to interact with each other ¾ Resource management: facilitate sharing of resources across jobs. Operating systems are everywhere ¾ Single function devices (embedded controllers Nintendo 5 Single-function devices (embedded controllers, Nintendo, …) ± OS provides a collection of standard services ± Sometimes OS/middleware distinction is blurry ¾ Multi-function/application devices (workstations and servers) ± OS manages application interactions Why do we need operating systems? Convenience ¾ Provide a high-level abstraction of physical resources. ± Make hardware usable by getting rid of warts & specifics Make hardware usable by getting rid of warts & specifics. ¾ Enable the construction of more complex software systems ¾ Enable portable code.
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

This document was uploaded on 03/09/2012.

Page1 / 15

01.OSHistory - Introduction to Operating Systems An operating system is the interface between the user and the architecture User Applications

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online