Operating-System Structures

Similar documents
Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures. Chapter 2: Operating-System Structures. Objectives. Operating System Services

Objectives. Chapter 2: Operating-System Structures. 2.1 Operating System Services

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures

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

Chapter 2: Operating-System

Chapter 2. Operating-System Structures

Operating-System Structures

Often, more information is required when designing system call Information varies according to OS and types of system call

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

Chapter 3: Operating-System Structures

Chapter 2: System Structures

Chapter 3: Operating-System Structures

CS307: Operating Systems

Operating-System Structures

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

Module 3: Operating-System Structures. Common System Components

Chapter 2: Operating-System Structures

What are some common categories of system calls? What are common ways of structuring an OS? What are the principles behind OS design and

Module 3: Operating-System Structures

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

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

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services

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

Lecture 2 Operating System Structures (chapter 2)

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

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

Operating System Structure

Chapter 3: Operating-System Structures

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

Operating Systems. Designed and Presented by Dr. Ayman Elshenawy Elsefy

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

Chapter 2. Operating System Structures

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

Chapter 2 Operating-System Structures

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

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

The Slide does not contain all the information and cannot be treated as a study material for Operating System. Please refer the text book for exams.

Four Components of a Computer System

Introduction to Operating Systems (Part III)

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

Lecture 2 - Fundamental Concepts

Chapter 2: System Structures

CS420: Operating Systems. OS Services & System Calls

CSE 4/521 Introduction to Operating Systems

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!

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

OPERATING SYSTEMS. Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne

Operating System Architecture. CS3026 Operating Systems Lecture 03

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

Full file at

Operating-System Structures

Chapter 2: OS Structures

Module 1 Introduction/OS Overview

Chapter 2 Operating System Structures

OPERATING SYSTEMS UNIT - 1

UNIT 2. OPERATING SYSTEM STRUCTURES

Architectural Support for Operating Systems. Jinkyu Jeong ( Computer Systems Laboratory Sungkyunkwan University

Operating- System Structures

Operating System Services

Roadmap. Tevfik Ko!ar. CSC Operating Systems Spring Lecture - III Processes. Louisiana State University. Virtual Machines Processes

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

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

OPERATING SYSTEMS Lecture Notes. Prepared by K.Rohini, Assistant Professor, CSE Department, GVPCEW.

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

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

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

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

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

NON SCHOLAE, SED VITAE

CS 390 Chapter 2 Homework Solutions

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

EECS 3221 Operating System Fundamentals

EECS 3221 Operating System Fundamentals

OS Structures. ICS332 Operating Systems

Operating System Review

CS370 Operating Systems

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

OPERATING SYSTEMS: Lesson 1: Introduction to Operating Systems

What we saw. Desarrollo de Aplicaciones en Red. 1. OS Design. 2. Service description. 1.1 Operating System Service (1)

Chapter 4: Threads. Operating System Concepts. Silberschatz, Galvin and Gagne

Process Description and Control

OPERATING SYSTEM. Chapter 4: Threads

I.-C. Lin, Assistant Professor. Textbook: Operating System Concepts 8ed CHAPTER 4: MULTITHREADED PROGRAMMING

Chapter 4: Multithreaded Programming. Operating System Concepts 8 th Edition,

Chapter 4: Threads. Overview Multithreading Models Thread Libraries Threading Issues Operating System Examples Windows XP Threads Linux Threads

CSE Opera+ng System Principles

Operating System Structure

Outline. Threads. Single and Multithreaded Processes. Benefits of Threads. Eike Ritter 1. Modified: October 16, 2012

Chapter 4: Threads. Chapter 4: Threads

Fall 2015 COMP Operating Systems. Lab #3

PG-TRB COMPUTER INSTRUCTOR OPERATING SYSTEMS

Operating System Structure

Introduction to PC Operating Systems

Transcription:

Operating-System Structures Chapter 2

Operating System Services One set provides functions that are helpful to the user: User interface Program execution I/O operations File-system manipulation Communications Error detection

Operating System Services (Cont.) Another set exists for ensuring the efficient operation of the system itself via resource sharing Resource allocation Accounting Protection and security

System Programs Provide a convenient environment for program development and execution Most users view of the operation system is defined by system programs, not the actual system calls File management - Create, delete, copy, rename, print, dump, list, and generally manipulate files and directories Status information

System Programs (cont.) File modification Programming-language support Program loading and Communications

System Calls Programming interface to the services provided by the OS Typically written in a high-level language (C or C++) Mostly accessed by programs via a highlevel Application Program Interface (API) rather than direct system call use Win32, POSIX, and Java API Why use APIs rather than system calls?

Example of System Calls System call sequence to copy the contents of one file to another file

Example of Standard API Consider the the Java read()

System Call Implementation Typically, a number associated with each system call The system call interface invokes intended system call in OS kernel and returns status of the system call and any return values The caller need know nothing about how the system call is implemented

API System Call OS Relationship

Standard C Library Example C program invoking printf() library call, which calls write() system call

System Call Parameter Passing Three general methods used to pass parameters to the OS Simplest: pass the parameters in registers Parameters stored in a block, or table, in memory, and address of block passed as a parameter in a register (Linux & Solaris) Parameters placed, or pushed, onto the stack by the program and popped off the stack by the operating system Block and stack methods do not limit the number or length of parameters being passed

Types of System Calls Process control File management Device management Information maintenance Communications

Operating System Design and Implementation some approaches have proven successful Internal structure can vary widely Start by defining goals and specifications Affected by choice of hardware, type of system

Operating System Design and Implementation (Cont.) User goals and System goals User goals operating system should be convenient to use, easy to learn, reliable, safe, and fast System goals operating system should be easy to design, implement and maintain, as well as flexible, reliable, error-free, and efficient

Operating System Design and Implementation (Cont.) Important principles to separate Policy: What will be done? Mechanism: How to do it? Mechanisms determine how to do something, policies decide what will be done The separation of policy from mechanism allows maximum flexibility if policy decisions are to be changed later

Simple Structure (no structure) Monolithical systems Unstructured Supervisor call changes from user mode into kernel mode App OS procedures App System services User Mode Kernel Mode Hardware

MS-DOS Structure

Layered Approach With modularity, layers are selected such that each uses functions (operations) and services of only lower-level layers Application Program Application Program Application Program User Mode System Services Kernel Mode File System Memory and I/O Device Management Processor Scheduling Hardware

Layered Operating System

Structure of the THE operating system

UNIX System Structure

Microkernel System Structure Moves as much from the kernel into user space Communication takes place between user modules using message passing

Microkernel System Structure (cont.) Benefits: 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 Determents: Performance overhead of user space to kernel space communication

Microkernel System Structure (cont.)

Mac OS X Structure

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 flexible

Solaris Modular Approach

Virtual Machines A virtual machine 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

Virtual Machines (Cont.) The operating system creates the illusion of multiple environments, each executing on its own processor with its own (virtual) memory

Virtual Machines (Cont.) Non-virtual Machine Virtual Machine

Virtual Machines (Cont.) provides complete protection of system resources. This isolation, however, permits no direct sharing of resources perfect vehicle for operating-systems research and development difficult to implement due to the effort required to provide an exact duplicate to the underlying machine

VMware Architecture

Hybrid approaches Windows xp linux

Windows xp

Linux

Operating System Generation Operating systems are designed to run on any of a class of machines; the system must be configured for each specific computer site SYSGEN program obtains information concerning the specific configuration of the hardware system Booting starting a computer by loading the kernel Bootstrap program code stored in ROM that is able to locate the kernel, load it into memory, and start its execution

System Boot Operating system must be made available to hardware so hardware can start it Small piece of code bootstrap loader, locates the kernel, loads it into memory, and starts it Sometimes two-step process where boot block at fixed location loads bootstrap loader When power initialized on system, execution starts at a fixed memory location Firmware used to hold initial boot code