EEE 435 Principles of Operating Systems

Similar documents
Operating Systems, Fall

Master level: Operating systems, distributed systems, networking,

Kernel Types Simple OS Examples System Calls. Operating Systems. Autumn CS4023

OS concepts and structure. q OS components & interconnects q Structuring OSs q Next time: Processes

Andrew S. Tanenbaum, Operating Systems, Design and Implementation, (Second Edition), Prentice Hall.

Operating Systems CS3502 Spring 2018

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Tutorial on Memory Management, Deadlock and Operating System Types

Topics. Operating System. What is an Operating System? Let s Get Started! What is an Operating System? Where in the Book are we?

Operating System Structure

Introduction to OS. Introduction MOS Mahmoud El-Gayyar. Mahmoud El-Gayyar / Introduction to OS 1

Topics. Operating System I. What is an Operating System? Let s Get Started! What is an Operating System? OS History.

Chapter 1 Introduction

CSC Operating Systems Spring Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. January 17 th, 2007.

Announcements. Operating System Structure. Roadmap. Operating System Structure. Multitasking Example. Tevfik Ko!ar

CS 550 Operating Systems Spring Operating Systems Overview

Four Components of a Computer System

Introduction: Context Switch

CSC 453 Operating Systems

Operating-System Structures

An Operating System History of Operating Systems. Operating Systems. Autumn CS4023

Operating systems Architecture

Unit 2 : Computer and Operating System Structure

System Call. Preview. System Call. System Call. System Call 9/7/2018

Process Description and Control

OPERATING SYSTEMS UNIT - 1

Last class: OS and Architecture. OS and Computer Architecture

Last class: OS and Architecture. Chapter 3: Operating-System Structures. OS and Computer Architecture. Common System Components

Operating System Services

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter

OS and Computer Architecture. Chapter 3: Operating-System Structures. Common System Components. Process Management

OS Design Approaches. Roadmap. OS Design Approaches. Tevfik Koşar. Operating System Design and Implementation

Operating Systems: Internals and Design Principles. Chapter 2 Operating System Overview Seventh Edition By William Stallings

Operating System. Operating System Overview. Structure of a Computer System. Structure of a Computer System. Structure of a Computer System

OPERATING SYSTEMS. After A.S.Tanenbaum, Modern Operating Systems, 3rd edition. Uses content with permission from Assoc. Prof. Florin Fortis, PhD

Operating System. Operating Systems Structure Chapter 2. Services Provided by the OS. Evolution of an Operating System

Spring It takes a really bad school to ruin a good student and a really fantastic school to rescue a bad student. Dennis J.

Chapter 2: Operating-System Structures. Operating System Concepts 8 th Edition

Introduction to OS (cs1550)

Module 1 Introduction/OS Overview

Overview of the OS. CS 450 : Operating Systems Michael Saelee

Lecture 2 - Fundamental Concepts

Real Time and Embedded Systems. by Dr. Lesley Shannon Course Website:

ELEC 377 Operating Systems. Week 1 Class 2

Roadmap. Tevfik Koşar. CSE 421/521 - Operating Systems Fall Lecture - II OS Structures. University at Buffalo. OS Design and Implementation

OS Design Approaches. Roadmap. System Calls. Tevfik Koşar. Operating System Design and Implementation. CSE 421/521 - Operating Systems Fall 2013

COS 318: Operating Systems

Reserves time on a paper sign-up sheet. Programmer runs his own program. Relays or vacuum tube hardware. Plug board or punch card input.

Chapter 2 Operating-System Structures

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on

Chapter 2: Operating-System Structures. Operating System Concepts Essentials 8 th Edition

Operating Systems. Operating System Structure. Lecture 2 Michael O Boyle

Principles of Operating Systems CS 446/646

Chapter 2: Operating-System

CSC Operating Systems Fall Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. August 27 th, 2009.

C03c: Linkers and Loaders

Announcements. Computer System Organization. Roadmap. Major OS Components. Processes. Tevfik Ko!ar. CSC Operating Systems Fall 2009

OPERATING SYSTEMS: Lesson 1: Introduction to Operating Systems

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

Chapter 3: Operating-System Structures

Operating Systems Course Overview

Operating Systems ( )

Chapter 3: Operating-System Structures

Operating Systems ( )

CPSC 341 OS & Networks. Introduction. Dr. Yingwu Zhu

Operating Systems ( )

Chapter 2: Operating-System Structures

! Software ( kernel ) that runs at all times. ! OS performs two unrelated functions: Maria Hybinette, UGA. user! 1! Maria Hybinette, UGA. user! n!

Chapter 2: Operating-System Structures

Chapter 1: Introduction

TDDI04, K. Arvidsson, IDA, Linköpings universitet Operating System Structures. Operating System Structures Overview. Operating System Services

CONSTRUCTION OF A HIGHLY DEPENDABLE OPERATING SYSTEM

Lecture 2 Operating System Structures (chapter 2)

Overview of Unix / Linux operating systems

Introduction to Operating System

Operating System. Operating System Overview. Layers of Computer System. Operating System Objectives. Services Provided by the Operating System

Operating System Overview. Operating System

Some popular Operating Systems include Linux Operating System, Windows Operating System, VMS, OS/400, AIX, z/os, etc.

Operating System Kernels

Unix API Books. Linux Kernel Books. Assignments and Exams. Grading for CSC 256. Operating Systems 8/31/2018. CSC 256/456 Fall

2/14/2012. Using a layered approach, the operating system is divided into N levels or layers. Also view as a stack of services

Operating Systems. I. Introduction. Eurecom

CSC Operating Systems Fall Lecture - I Introduction. Tevfik Ko!ar. Louisiana State University. August 25 th, Contact Information

Chapter 2: System Structures. Operating System Concepts 9 th Edition

Roadmap. Tevfik Ko!ar. CSC Operating Systems Fall Lecture - VII CPU Scheduling - II. Louisiana State University

Roadmap. Multilevel Queue Scheduling. Multilevel Queue. Example of Multilevel Feedback Queue. Multilevel Feedback Queue. Tevfik Ko!

Chapter 2: Operating-System Structures

Chapter 2 Operating System Overview

Operating System: Chap2 OS Structure. National Tsing-Hua University 2016, Fall Semester

Operating Systems. Antônio Augusto Fröhlich LISHA/UFSC. December 20, 2008

Operating Systems Overview. Chapter 2

Operating Systems Overview. Chapter 2

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

OS structure. Process management. Major OS components. CSE 451: Operating Systems Spring Module 3 Operating System Components and Structure

CS450/550 Operating Systems

Operating System Architecture. CS3026 Operating Systems Lecture 03

Chapter 2. Operating-System Structures

Operating-System Structures

NETW3005 Operating Systems Lecture 1: Introduction and history of O/Ss

4 Lecture: Operating System Structures

Transcription:

EEE 435 Principles of Operating Systems Operating System Structure (Modern Operating Systems 1.7)

Outline Operating System Structure Monolithic Systems Layered Systems Virtual Machines Exokernels Client-Server model Linux Structure Summary of Chapter One 2

OS Structure To this point our examination of operating systems has been from the point of view of the programmer Concerned mainly with interfaces How are operating systems structured? Monolithic Layered Virtual Machines Exokernels Client-Server Model Linux 3

Monolithic Systems In this organization, OSs are nothing more than a collection of functions to provide services to the programmer Another name for this? A BIG mess! The OS is basically a collection of functions, compiled and linked together, each of which can see and call each other Information hiding is unknown to this beast 4

Systèmes Monolithiques Source: wikipedia.org

Monolithic Systems Is some structure implied by the way such an OS would operate? A main program that invokes the requested service procedure A set of service procedures that carry out the system calls A set of utility procedures that help the service procedures 6

Layered Systems Each layer in a layered system provides services to the layer above it and requests services from the layer below Example: the THE operating system 7

Layered Systems The THE system was essentially a design aid since there was no enforcement of separation of layers Only one object file No hardware support to force the use of the design Future systems added hardware to keep processes in their own memory space required the use of TRAPs to call functions from a lower layer 8

Layered Systems (MULTICS) Where the word Kernel comes from Multiplex Information and Computing Service 9

Virtual Machines What are the two functions of an OS? Resource management Provide extended machine (an interface) Virtual machines separate these ideas and simply focus on sharing the resources An entire virtual copy of the underlying hardware is provided to the upper layers. Example: VM/370 10

Recall Abstract Vision of an OS Applications API Interface The programmer uses applications such as compilers to write other applications so he must understand the interface (API) to call the OS). He is also a user of the OS (think roles in OO). Operating System Hardware Users normally use programs or applications that run on an OS and use the OS through an interface shells and/or widgets 11

Virtual Machines Advantages: each virtual machine can run any operating system that can run on the bare hardware! separating virtual machine and multiprogramming makes each easier to maintain Disadvantage: multiple layers of TRAPS 12

JAVA Abstract Vision of an OS Applications API Interface JVM Operating System Hardware 13

Exokernels The Exokernel provides a number of virtual machines above the hardware Unlike pure Virtual Machines, Exokernels provide only a subset of the underlying hardware to each VM: Memory Disk blocks Physical partitioning of the machine Advantage: easier to manage Disadvantage: resources potentially wasted 14

Client-Server Model What is one of the main problems with Operating Systems? Their huge size! The less in the kernel, the easier the OS is to maintain and improve Very small kernel referred to as a microkernel If more of the OS is moved out of the kernel, then it must reside in user space. How do user processes use these functions? 15

Client-Server Model The kernel is now a messaging service between various servers Each service is segmented and manageable A crash of one server won t crash the whole kernel Adaptable to distributed systems 16

Model Client-Serveur

Linux Linus Torvalds at the time college student wrote original Linux. Evolved from MINIX which was developed as a teaching aid by Tanenbaum the same author as the text used in this course. Linux evolved away from MINIX due to licence agreement. Linux is API compliant with UNIX (Posix) 18

Structure of Linux Linux is a monolithic kernel; that is, the Linux kernel executes in a single address space. Runs entirely in kernel mode. In some other aspects, it borrows some of the niceties of microkernels Modular design as explained before a structure emerges from the design of the monolithic structure It can preempt itself! Can dynamically load separate kernel modules So Linux avoids message communication delays of microkernels with function calls. 19

Summary of Chapter 1 Where are we now? We have seen an overview of the concepts which we will explore in more detail for the rest of the course Views of an operating system Operating system types (mainframe, etc) Review of computer hardware (processors, memory, I/O, Buses, etc) Operating system concepts (processes, deadlocks...) System Calls Operating system structure 20

Quiz Time! Surprise...actual quiz! (no marks though...) 1) Why is a process table needed in a timesharing system? Is it needed in a computer system where only one process exists, that process taking over the entire machine until finished? 2) To a programmer, a system call looks like any other call to a library procedure. Is it important that the programmer know which library procedures result in system calls? 21

Quiz Time! 3) Which of the following instructions should be allowed only in kernel mode: a) Disable all interrupts b) Read the time-of-day clock c) Set the time-of-day clock d) Change the memory map 4) On early computers, every byte of data read/written was handled directly by the CPU (ie: no DMA). What implications does this have on multitasking? 22

Quiz Time! 5) What is the difference between a TRAP and an interrupt? 23

Next Class Processes 24