A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.

Slides:



Advertisements
Similar presentations
Operating Systems Components of OS
Advertisements

Threads, SMP, and Microkernels
Chap 2 System Structures.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
3.1 Silberschatz, Galvin and Gagne ©2003 Operating System Concepts with Java Chapter 3: Operating-System Structures System Components Operating System.
CS-3013 & CS-502, Summer 2006 Virtual Machine Systems1 CS-502 Operating Systems Slides excerpted from Silbershatz, Ch. 2.
1/21/2008CSCI 315 Operating Systems Design1 Operating System Structures Notice: The slides for this lecture have been largely based on those accompanying.
Chapter 2: Operating-System Structures
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Operating System Structure. Announcements Make sure you are registered for CS 415 First CS 415 project is up –Initial design documents due next Friday,
1/28/2004CSCI 315 Operating Systems Design1 Operating System Structures & Processes Notice: The slides for this lecture have been largely based on those.
1/26/2004CSCI 315 Operating Systems Design1 Operating System Structures Notice: The slides for this lecture have been largely based on those accompanying.
Common System Components
Os31 Chapter 3 Operating-System Structures. os32 Outlines System Components Operating System Services System Calls System Programs System Structure Virtual.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 2: Operating-System Structures Modified from the text book.
Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System.
Abhinav Kamra Computer Science, Columbia University 3.1 Operating System Concepts Silberschatz, Galvin and Gagne  2002 Chapter 3: Operating-System Structures.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 2: Operating-System Structures.
System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation.
Prof. Hsien-Hsin Sean Lee
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Silberschatz, Galvin and Gagne  Applied Operating System Concepts Chapter 3: Operating-System Structures System Components OS Services System.
Chapter 2: Operating-System Structures. 2.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 14, 2005 Operating System.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 2: Operating-System Structures.
Introduction to Operating Systems Chapter 1. cs431 -cotter2 Lecture Objectives Understand the relationship between computing hardware, operating system,
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 6 System Calls OS System.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 7 OS System Structure.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 2: Operating-System Structures.
Silberschatz and Galvin  Operating System Concepts Module 3: Operating-System Structures System Components Operating System Services System Calls.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
CE Operating Systems Lecture 3 Overview of OS functions and structure.
3.1 Silberschatz, Galvin and Gagne ©2003 Operating System Concepts with Java Chapter 3: Operating-System Structures System Components Operating System.
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Silberschatz, Galvin, and Gagne  Applied Operating System Concepts Module 3: Operating-System Structures System Components Operating System Services.
3.1 Operating System Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual.
Processes Introduction to Operating Systems: Module 3.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Operating Systems Structure what is the organizational principle?
1 CSE Department MAITSandeep Tayal Operating-System Structures System Components Operating System Services System Calls System Programs System Structure.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 3 Operating-System Structures Slide 1 Chapter 3 Operating-System Structures.
Operating-System Structures
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
CENG334 Introduction to Operating Systems 1 Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
2.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition System Programs (p73) System programs provide a convenient environment.
Virtual Machines. A virtual machine takes the layered approach to its logical conclusion. It treats hardware and the operating system kernel as though.
Silberschatz, Galvin, and Gagne  Applied Operating System Concepts Module 3: Operating-System Structures System Components Operating System Services.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
1.2 Operating System Structure. 1. Monolithic System The earliest and most common OS architecture. Every component of OS contained in the kernel and can.
Module 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System.
Chapter 3: Operating-System Structures
Computer System Structures
Computer System Structures
OPERATING SYSTEM CONCEPTS AND PRACTISE
Chapter 2: Operating-System Structures
Module 3: Operating-System Structures
Operating System Structures
Operating System Structure
Lecture 4: Operating System Structures
Operating System Structure
1. 2 VIRTUAL MACHINES By: Satya Prasanna Mallick Reg.No
Virtual Machines.
Chapter 2: System Structures
Chapter 3: Operating-System Structures
Chapter 1 Introduction to Operating System Part 5
Outline Chapter 2 (cont) OS Design OS structure
Chapter 2: Operating-System Structures
System calls….. C-program->POSIX call
Presentation transcript:

A. Frank - P. Weisberg Operating Systems Structure of Operating Systems

2 A. Frank - P. Weisberg Operating Systems Structures Structure/Organization/Layout of OSs: 1.Monolithic (one unstructured program) 2.Layered 3.Microkernel 4.Virtual Machines The role of Virtualization

3 A. Frank - P. Weisberg Monolithic Operating System

4 A. Frank - P. Weisberg Monolithic OS – basic structure Application programs that invokes the requested system services. A set of system services that carry out the operating system procedures/calls. A set of utility procedures that help the system services.

5 A. Frank - P. Weisberg MS-DOS System Structure MS-DOS – written to provide the most functionality in the least space: –not divided into modules (monolithic). –Although MS-DOS has some structure, its interfaces and levels of functionality are not well separated.

6 A. Frank - P. Weisberg MS-DOS Layer Structure

7 A. Frank - P. Weisberg UNIX System Structure UNIX – limited by hardware functionality, the original UNIX OS had limited structuring. The UNIX OS consists of two separable parts: 1.Systems Programs: 2.The Kernel: –Consists of everything below the system-call interface and above the physical hardware. –Provides the file system, CPU scheduling, memory management, and other operating-system functions; a large number of functions for one level.

8 A. Frank - P. Weisberg Traditional UNIX System Structure

9 A. Frank - P. Weisberg Traditional UNIX Kernel

10 LINUX Kernel Components A. Frank - P. Weisberg

11 A. Frank - P. Weisberg 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.

12 A. Frank - P. Weisberg Layered Operating System

13 A. Frank - P. Weisberg An Operating System Layer

14 A. Frank - P. Weisberg General OS Layers

15 A. Frank - P. Weisberg Operating System Layers

16 A. Frank - P. Weisberg Structure of the THE operating system

17 A. Frank - P. Weisberg Older Windows System Layers

18 A. Frank - P. Weisberg OS/2 Layer Structure

19 A. Frank - P. Weisberg Microkernel System Structure (1) Move as much functionality as possible from the kernel into “user” space. Only a few essential functions in the kernel: –primitive memory management (address space) –I/O and interrupt management –Inter-Process Communication (IPC) –basic scheduling Other OS services are provided by processes running in user mode (vertical servers): –device drivers, file system, virtual memory…

20 A. Frank - P. Weisberg Layered vs. Microkernel Architecture

21 A. Frank - P. Weisberg Microkernel System Structure (2) Communication takes place between user modules using message passing. More flexibility, extensibility, portability and reliability. But performance overhead caused by replacing service calls with message exchanges between processes.

22 A. Frank - P. Weisberg Microkernel Operating System

23 A. Frank - P. Weisberg Benefits of a Microkernel Organization (1) Extensibility/Reliability –easier to extend a microkernel –easier to port the operating system to new architectures –more reliable (less code is running in kernel mode) –more secure –small microkernel can be rigorously tested. Portability –changes needed to port the system to a new processor is done in the microkernel, not in the other services.

24 A. Frank - P. Weisberg Benefits of Microkernel Organization (2) Distributed system support –message are sent without knowing what the target machine is. Object-oriented operating system –components are objects with clearly defined interfaces that can be interconnected to form software.

25 A. Frank - P. Weisberg Mach 3 Microkernel Structure

26 A. Frank - P. Weisberg Mac OS X Structure

27 A. Frank - P. Weisberg Structure of the MINIX 3 system

28 A. Frank - P. Weisberg Windows NT Client-Server Structure

29 A. Frank - P. Weisberg Windows NT 4.0 Architecture

30 A. Frank - P. Weisberg Windows XP Architecture

31 Windows 7.0 Architecture A. Frank - P. Weisberg

32 A. Frank - P. Weisberg The Neutrino Microkernel

33 A. Frank - P. Weisberg Kernel Modules Most modern operating systems implement kernel modules: –Uses object-oriented approach. –Each core component is separate. –Each talks to the others over known interfaces. –Each is loadable as needed within the kernel. Overall, similar to layers but with more flexibility.

34 A. Frank - P. Weisberg Solaris Modular Approach

35 A. Frank - P. Weisberg Virtual Machines (1) A Virtual Machine (VM) takes the layered and microkernel approach to its logical conclusion. It treats hardware and the operating system kernel as though they were all hardware. A virtual machine provides an interface identical to the underlying bare hardware. The operating system host creates the illusion that a process has its own processor and (virtual memory). Each guest provided with a (virtual) copy of underlying computer.

36 A. Frank - P. Weisberg Virtual Machines (2) The resources of the physical computer are shared to create the virtual machines: –CPU scheduling can create the appearance that users have their own processor. –Spooling and a file system can provide virtual card readers and virtual line printers. –A normal user time-sharing terminal serves as the virtual machine operator’s console.

37 A. Frank - P. Weisberg on Bare Machine Implementation VM Non-virtual Machine Virtual Machine

38 VM Implementation on Host OS A. Frank - P. Weisberg

39 A. Frank - P. Weisberg Advantages/Disadvantages of VMs The VM concept provides complete protection of system resources since each virtual machine is isolated from all other virtual machines. This isolation permits no direct sharing of resources. A VM system is a perfect vehicle for OS research and development. System development is done on the virtual machine, instead of on a physical machine and so does not disrupt normal system operation. The VM concept is difficult to implement due to the effort required to provide an exact duplicate to the underlying machine.

40 A. Frank - P. Weisberg Virtual Machines History and Benefits First appeared commercially in IBM mainframes in Fundamentally, multiple protected execution environments (different operating systems) can share the same hardware. Protect from each other. Some sharing of file can be permitted, controlled. Commutate with each other, other physical systems via networking. Useful for development and testing. Consolidation of many low-resource use systems onto fewer busier systems. “Open Virtual Machine Format”, standard format of VMs, allows a VM to run within many different VM (host) platforms.

41 A. Frank - P. Weisberg Testing a new Operating System

42 A. Frank - P. Weisberg Integrating two Operating Systems

43 A. Frank - P. Weisberg The Role of Virtualization (a)General organization between a program, interface, and system. (b)General organization of virtualizing system A on top of system B.

44 A. Frank - P. Weisberg Architectures of Virtual Machines (1) There are interfaces at different levels. An interface between the hardware and software, consisting of machine instructions –that can be invoked by any program. An interface between the hardware and software, consisting of machine instructions –that can be invoked only by privileged programs, such as an operating system.

45 A. Frank - P. Weisberg Architectures of Virtual Machines (2) An interface consisting of system calls as offered by an operating system. An interface consisting of library calls: –generally forming what is known as an Application Programming Interface (API). –In many cases, the aforementioned system calls are hidden by an API.

46 A. Frank - P. Weisberg Architectures of Virtual Machines (3) Various interfaces offered by computer systems

47 A. Frank - P. Weisberg Process Virtual Machine (a) A process virtual machine, with multiple instances of (application, runtime) combinations.

48 A. Frank - P. Weisberg Java Virtual Machine Compiled Java programs are platform-neutral bytecodes executed by a Java Virtual Machine (JVM). JVM consists of: - class loader - class verifier - runtime interpreter Just-In-Time (JIT) compilers increase performance.

49 A. Frank - P. Weisberg The Java Virtual Machine

50 A. Frank - P. Weisberg Hypervisor/VMM (Virtual Machine Monitor) (b) A virtual machine monitor, with multiple instances of (applications, operating system) combinations.

51 A. Frank - P. Weisberg Process and System Virtual Machines

52 A. Frank - P. Weisberg Types of Hypervisors (a) A type 1 hypervisor. (b) A type 2 hypervisor

53 A. Frank - P. Weisberg VM/370 with CMSs

54 A. Frank - P. Weisberg VMware Architecture

55 A. Frank - P. Weisberg Para-Virtualization Presents guest with system similar but not identical to hardware. Guest must be modified to run on specialized para-virtualized hardware. Guest can be an OS, or in the case of Solaris 10 applications running in containers.

56 A. Frank - P. Weisberg Solaris 10 with Two Containers