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

Size: px
Start display at page:

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

Transcription

1 TDDI04 Concurrent Programming, Operating Systems, and Real-time Operating Systems Operating System Structures [SGG7] Chapter 2 Copyright Notice: The lecture notes are mainly based on Silberschatz s, Galvin s and Gagne s book ( Operating System Concepts, 7th ed., Wiley, 2005). No part of the lecture notes may be reproduced in any form, due to the copyrights reserved by Wiley. These lecture notes should only be used for internal teaching purposes at the Linköping University. Acknowledgment: The lecture notes are originally compiled by C. Kessler, IDA. Klas Arvidsson, IDA, Linköpings universitet. Operating System Structures Overview Operating System Services User Operating System Interface System Calls System Programs Operating System Structure Layered Approach Microkernels Modules Virtual Machines Operating System Generation System Boot TDDI04, K. Arvidsson, IDA, Linköpings universitet. 3.2 Operating System Services Operating System Services (Cont.) Provide functions for the user or for the system itself. Functions that are helpful to the user or user program: User interface > Command-Line Interface > Graphics User Interface (GUI) > Batch Program execution load a program into memory, run it, terminate it. I/O operations A running program may require I/O to/from a file or an I/O device. File-system manipulation read and write files and directories, create and delete them, search them, list file information, permission management. TDDI04, K. Arvidsson, IDA, Linköpings universitet More functions that are helpful to the user: Communications Processes may exchange information, on the same computer or between computers over a network > Communications may be via shared memory or through message passing (packets moved by the OS) Error detection > Errors may occur in the CPU and memory hardware, in I/O devices, in user program > OS should take the appropriate action to ensure correct and consistent computing > Debugging facilities TDDI04, K. Arvidsson, IDA, Linköpings universitet. 3.4 Operating System Services (Cont.) User Operating System Interface (1) OS functions supporting the efficient operation of the system itself: Resource allocation When multiple users or multiple jobs are running concurrently, resources must be allocated to each of them > Types of resources: CPU time, main memory, file storage, I/O dev. Accounting > keep track of which users use how much and what kind of resources Protection and security > In multiuser or networked computer system, control use of stored information; concurrent processes should not interfere with each other > Protection: ensure that all access to system resources is controlled > Security of the system from outsiders requires user authentication, defending external I/O devices from invalid access attempts TDDI04, K. Arvidsson, IDA, Linköpings universitet. 3.5 > A chain is only as strong as its weakest link. Command Line Interpreter (CLI) allows direct command entry Sometimes implemented in the kernel, sometimes by a system program Sometimes multiple flavors implemented shells Primarily fetches a command from user and executes it > built-in commands or > just names of programs ( -> extendible) Unix example (csh): rm file.txt TDDI04, K. Arvidsson, IDA, Linköpings universitet

2 User Operating System Interface (2) Graphical User Interface (GUI): user-friendly desktop metaphor Icons represent files, programs, actions, etc Folders represent directories Menus (pulldown / popup) show available commands Various mouse button clicks over objects in the interface cause various actions (e.g., provide information, show options, execute function, open directory) Invented at Xerox PARC System Calls Overview System call mechanism System call API Passing parameters Types of system calls Many systems now include both CLI and GUI interfaces Microsoft Windows is GUI with CLI command shell Apple Mac OS X as Aqua GUI interface with UNIX kernel underneath and shells available Solaris is CLI with optional GUI interfaces (CDE, Java Desktop, KDE) TDDI04, K. Arvidsson, IDA, Linköpings universitet. 3.7 TDDI04, K. Arvidsson, IDA, Linköpings universitet. 3.8 Recall: Dual-Mode Operation Sharing system resources requires the operating system to ensure that an incorrect program cannot cause other programs to execute incorrectly. Hardware support (mode bit) to differentiate between at least two modes of operations. User mode Execution done on behalf of a user Access only to memory addresses owned by the process Kernel mode (also supervisor mode or system mode) Execution done on behalf of operating system. Privileged instructions instructions that may be harmful, e.g., system login, set priorities, system halt, etc. Unrestricted memory access TDDI04, K. Arvidsson, IDA, Linköpings universitet. 3.9 Dual-Mode Operation (Cont.) When an interrupt or fault occurs, hardware switches to kernel mode. System calls call OS service kernel Interrupt/fault set user mode user TDDI04, K. Arvidsson, IDA, Linköpings universitet Example of System Calls System call sequence to copy contents of one file to another System Call API 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 high-level Application Program Interface (API) rather than direct system call use Three most common APIs are Win32 API for Windows, POSIX API for POSIX-based systems (including virtually all versions of UNIX, Linux, Mac OS X) Java API for the Java virtual machine (JVM) Remark: the system-call names used here and in the book are generic. TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet

3 Example of a System Call API ReadFile() function in Win32 API (function for reading from a file) Parameters passed to ReadFile(): file the file to be read buffer a buffer where the data will be read into and written from bytestoread the number of bytes to be read into the buffer bytesread the number of bytes read during the last read ovl indicates if overlapped I/O is being used System Call API Implementation System call implementation is hardware-specific, e.g. special trap instruction with a system call number passed in a register, indexing the interrupt vector (branch table) System call interface (usually, in C) invokes the intended system call in OS kernel and returns status of the system call and any return values Advantage: Caller does not need to know anything about how the system call is implemented Most details of OS interface hidden from programmer by API TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet System Call API OS Relationship Standard C Library Example C program invoking printf(), which calls write() system call TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet System Call Parameter Passing System Call Parameter Passing via Block Three general methods used to pass parameters to syscalls: Simplest: pass the parameters in registers > but number of parameter registers is limited Parameters stored in a block in memory, and address of block passed as a parameter in a register > This approach taken by Linux and Solaris Parameters 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 TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet

4 Types of System Calls Process control load, execute, end, abort, create, terminate, wait... memory allocation and deallocation File management open, close, create, delete, read, write, get/set attributes... Device management request / release device, read, write,... Information maintenance get / set time, date, system data, process / file attributes Communications create / delete connection, send, receive,... Solaris 10 dtrace Following System Call dtrace: dynamic tracing facility instrument the code to collect diagnostic information during runtime, e.g. entry/exit of functions U = User mode K = Kernel mode TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet FreeBSD Running Multiple Programs For each new user, the kernel starts a new shell process in a fresh memory area with the fork() system call. For each program started, the shell starts a new process in a fresh memory area with the fork() system call System Programs provide a convenient environment for program development and execution. File management Status information File modification Programming language support: Compilers, assemblers, debuggers... Program loading and execution Communications: Message passing, , web browser,... Some of them are simply user interfaces to system calls; others are considerably more complex Most users view of the operation system is defined by system programs, not the actual system calls TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet Operating System Design and Implementation Design and implementation of OS: No silver bullet, but some approaches have proven successful Internal structure of different OS can vary widely Start by defining goals and specifications Affected by choice of hardware, type of system User goals versus System goals User goals OS should be convenient to use, easy to learn, reliable, safe, and fast System goals OS should be easy to design, implement, and maintain, as well as flexible, reliable, error-free, and efficient Operating System Structure How to manage OS complexity? Divide-and-conquer! Decompose into smaller components with well-defined interfaces and dependences Layered Approach Microkernels Modules Virtual Machines TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet

5 Simple Structure Layered Approach MS-DOS written to provide the most functionality in the least space Not divided into modules Although MS-DOS has some structure, its interfaces and levels of functionality are not well separated 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. Modularity: Design layers s.t. each uses functions and services of only lower-level layers. new operations existing operations.. hidden operations. layer M layer M 1 TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet UNIX System Structure: 2 Layers THE OS: 6 Layers A layered design was first used in the THE operating system [Dijkstra 68, Technische Hogeschool at Eindhoven, NL] layer 5: layer 4: layer 3: layer 2: layer 1: layer 0: user programs buffering for input and output operator-console device driver memory management CPU scheduling hardware TDDI04, K. Arvidsson, IDA, Linköpings universitet see SGG7 Ch. 23.4, p. 847 TDDI04, K. Arvidsson, IDA, Linköpings universitet Microkernel System Structure Lean kernel : Moves as much service functionality as possible from the kernel into user space Communication takes place between user modules using message passing Example: Mach kernel, used e.g. in Tru64 Unix or Mac OS-X 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 Detriments: Performance overhead of user space to kernel space communication TDDI04, K. Arvidsson, IDA, Linköpings universitet Modules Most modern operating systems implement kernel modules Component-based approach: Each core component is separate Each talks to the others over known interfaces Each is loadable as needed within the kernel Example: Solaris loadable kernel modules Overall, similar to layers but more flexible TDDI04, K. Arvidsson, IDA, Linköpings universitet

6 Virtual Machines Virtual Machines (Cont.) A virtual machine provides an interface identical to the underlying bare hardware. Example: Multitasking OS creates the illusion that each process executes on its own (virtual) processor with its own (virtual) memory. A virtual machine takes the layered approach to its logical conclusion: It treats hardware and the operating system kernel as though they were all hardware. Virtual machine implementation intercepts operations and interprets them. The virtual machines share the resources of the physical computer: CPU scheduling: create illusion that users have their own processor Virtual disks with virtual file systems on physical disk / file system A normal user time-sharing terminal serves as the virtual machine operator s console Can run multiple and different OS s on the same physical computer Examples: VMware, Xen TDDI04, K. Arvidsson, IDA, Linköpings universitet Non-virtual Machine (a) Nonvirtual machine Virtual Machine (b) virtual machine TDDI04, K. Arvidsson, IDA, Linköpings universitet Virtual Machines Advantages, Drawbacks VMware Architecture Complete protection of system resources since each virtual machine is isolated from all other virtual machines. however, permits no direct sharing of resources. Perfect vehicle for operating-systems research and development (and teaching ;-). System development is done on the virtual machine, instead of on a physical machine and so does not disrupt normal system operation. Example: PINTOS, NACHOS Portability across multiple platforms (host OS, hardware) Example: Java Virtual Machine (JVM) (Nowadays very popular also in computer architecture: e.g., TransMeta Crusoe processor emulates IA-32 on VLIW) Difficult to implement to provide an exact duplicate to the underlying machine See also: IEEE Computer May 2005 special issue on Virtual Machines TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet The Java Virtual Machine Operating System Generation Operating systems are designed to run on any of a class of machines... but the system must be configured for each specific computer site: CPU type, memory sizes, devices, performance parameters (e.g. scheduling algorithm),... SYSGEN program obtains information concerning the specific configuration of the hardware system TDDI04, K. Arvidsson, IDA, Linköpings universitet TDDI04, K. Arvidsson, IDA, Linköpings universitet

7 Booting Booting = starting up a computer by loading the kernel Bootstrap loader: The initial program executed when system is powered up code stored in ROM at address where execution starts locates the kernel, loads it into memory, and start its execution initializes the system > CPU registers, device controllers, memory contents... Once the OS is loaded, the OS starts executing the first process (e.g., init) and then waits for some event to occur (interrupt). TDDI04, K. Arvidsson, IDA, Linköpings universitet Operating System Structures Summary Operating System Services User Operating System Interface System Calls System Programs Operating System Structure Layered Approach Microkernels Modules Virtual Machines Operating System Generation System Boot TDDI04, K. Arvidsson, IDA, Linköpings universitet

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls (important!) Types of System Calls (important!) System

More information

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

Chapter 2: Operating-System Structures. Chapter 2: Operating-System Structures. Objectives. Operating System Services Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

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

Chapter 2: Operating-System Structures. Operating System Concepts Essentials 8 th Edition Chapter 2: Operating-System Structures Operating System Concepts Essentials 8 th Edition Silberschatz, Galvin and Gagne 2011 Chapter 2: Operating-System Structures Operating System Services User Operating

More information

Chapter 2: Operating-System

Chapter 2: Operating-System Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services! User Operating System Interface! System Calls! Types of System Calls! System Programs! Operating

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures 2.1 Silberschatz, Galvin and Gagne 2009 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2009 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

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

Objectives. Chapter 2: Operating-System Structures. 2.1 Operating System Services Objectives Chapter 2: Operating-System Structures To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Chapter 2: System Structures

Chapter 2: System Structures Chapter 2: System Structures Chapter 2: System Structures 2.1 Operating-System Services 2.2 User and Operating-System Interface 2.3 System Calls 2.4 Types of System Calls 2.5 System Programs 2.6 Operating-System

More information

CS307: Operating Systems

CS307: Operating Systems CS307: Operating Systems Chentao Wu 吴晨涛 Associate Professor Dept. of Computer Science and Engineering Shanghai Jiao Tong University SEIEE Building 3-513 wuct@cs.sjtu.edu.cn Download Lectures ftp://public.sjtu.edu.cn

More information

CS420: Operating Systems. OS Services & System Calls

CS420: Operating Systems. OS Services & System Calls OS Services & System Calls James Moscola Department of Engineering & Computer Science York College of Pennsylvania Based on Operating System Concepts, 9th Edition by Silberschatz, Galvin, Gagne Operating

More information

Operating-System Structures

Operating-System Structures Recap Chapter 2: Operating-System Structures Presented By: Dr. El-Sayed M. El-Alfy Note: Most of the slides are compiled from the textbook and its complementary resources From: OS by Tanenbaum, 2008 March

More information

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

Chapter 2: System Structures. Operating System Concepts 9 th Edition Chapter 2: System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs

More information

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

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

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

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on Chapter 2: Operating-System Structures Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Objectives To describe the services an operating system provides to users, processes, and

More information

Lecture 2 Operating System Structures (chapter 2)

Lecture 2 Operating System Structures (chapter 2) Bilkent University Department of Computer Engineering CS342 Operating Systems Lecture 2 Operating System Structures (chapter 2) Dr. İbrahim Körpeoğlu http://www.cs.bilkent.edu.tr/~korpe 1 References The

More information

Operating-System Structures

Operating-System Structures 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

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

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

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed. CHAPTER 2: SYSTEM STRUCTURES By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Operating System Services

Operating System Services CSE325 Principles of Operating Systems Operating System Services David Duggan dduggan@sandia.gov January 22, 2013 Reading Assignment 3 Chapter 3, due 01/29 1/23/13 CSE325 - OS Services 2 What Categories

More information

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

Chapter 2: System Structures. Operating System Concepts 9 th Edition Chapter 2: System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs

More information

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

Operating Systems. Designed and Presented by Dr. Ayman Elshenawy Elsefy Operating Systems Designed and Presented by Dr. Ayman Elshenawy Elsefy Dept. of Systems & Computer Eng.. AL-AZHAR University Website : eaymanelshenawy.wordpress.com Email : eaymanelshenawy@yahoo.com Reference

More information

Chapter 2. Operating System Structures

Chapter 2. Operating System Structures Chapter 2 Operating System Structures Contents Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System Design and Implementation Operating

More information

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

Chapter 2: Operating-System Structures. Operating System Concepts 8 th Edition Chapter 2: Operating-System Structures Operating System Concepts 8 th Edition Silberschatz, Galvin and Gagne 2009 Chapter 2: Operating-System Structures Different Services of Operating System. System Calls-

More information

NON SCHOLAE, SED VITAE

NON SCHOLAE, SED VITAE TDIU11 Operating systems Operating System Structures and Machines [SGG7/8] Chapter 2.7-2.8 [SGG9] Chapter 2.7, 1.11.6 Copyright Notice: The lecture notes are modifications of the slides accompanying the

More information

Chapter 2: System Structures

Chapter 2: System Structures Chapter 2: Operating System Structures Operating System Services System Calls Chapter 2: System Structures System Programs Operating System Design and Implementation Operating System Structure Virtual

More information

Lecture 2 - Fundamental Concepts

Lecture 2 - Fundamental Concepts Lecture 2 - Fundamental Concepts Instructor : Bibhas Ghoshal (bibhas.ghoshal@iiita.ac.in) Autumn Semester, 2015 Bibhas Ghoshal IOSY 332C & IOPS 332C: OS Autumn Semester, 2015 1 / 43 Lecture Outline Operating

More information

Chapter 3: Operating-System Structures

Chapter 3: Operating-System Structures Chapter 3: Operating-System Structures System Components Operating System Services System Calls POSIX System Programs System Structure Virtual Machines System Design and Implementation System Generation

More information

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

Operating System Services. User Services. System Operation Services. User Operating System Interface - CLI. A View of Operating System Services Operating System Services One set of services for users The other set of services for system operations Operating Systems Structures Notice: This set of slides is based on the notes by Professor Perrone

More information

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

Operating System: Chap2 OS Structure. National Tsing-Hua University 2016, Fall Semester Operating System: Chap2 OS Structure National Tsing-Hua University 2016, Fall Semester Outline OS Services OS-Application Interface OS Structure Chapter2 OS-Structure Operating System Concepts NTHU LSA

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2016 Lecture 5 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 User Operating System Interface - CLI CLI

More information

Chapter 3: Operating-System Structures

Chapter 3: Operating-System Structures Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1

More information

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

Often, more information is required when designing system call Information varies according to OS and types of system call System Call Parameter Passing Often, more information is required when designing system call Information varies according to OS and types of system call Three general methods used to pass parameters to

More information

Chapter 2 Operating System Structures

Chapter 2 Operating System Structures Chapter 2 Operating System Structures Operating System Concepts 8 th Edition, Silberschatz, Galvin and Gagne 2009 / Enhancements by Alan Today s Objectives To describe the services an operating system

More information

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

OS and Computer Architecture. Chapter 3: Operating-System Structures. Common System Components. Process Management Last class: OS and Architecture OS and Computer Architecture OS Service Protection Interrupts System Calls IO Scheduling Synchronization Virtual Memory Hardware Support Kernel/User Mode Protected Instructions

More information

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.

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. 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. Operating System Services User Operating System Interface

More information

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

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

More information

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

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 4, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts

More information

Chap2: Operating-System Structures

Chap2: Operating-System Structures Chap2: Operating-System Structures Objectives: services OS provides to users, processes, and other systems structuring an operating system how operating systems are designed and customized and how they

More information

Last class: OS and Architecture. OS and Computer Architecture

Last class: OS and Architecture. OS and Computer Architecture Last class: OS and Architecture OS and Computer Architecture OS Service Protection Interrupts System Calls IO Scheduling Synchronization Virtual Memory Hardware Support Kernel/User Mode Protected Instructions

More information

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

Last class: OS and Architecture. Chapter 3: Operating-System Structures. OS and Computer Architecture. Common System Components Last class: OS and Architecture Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation

More information

Module 3: Operating-System Structures

Module 3: Operating-System Structures Module 3: Operating-System Structures System Components Operating-System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation Operating

More information

Chapter 2 Operating-System Structures

Chapter 2 Operating-System Structures This chapter will discuss the following concepts: 2.1 Operating System Services 2.2 User Operating System Interface 2.3 System Calls 2.4 System Programs 2.5 Operating System Design and Implementation 2.6

More information

Operating-System Structures

Operating-System Structures Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1 Sana a University,

More information

Four Components of a Computer System

Four Components of a Computer System Four Components of a Computer System Operating System Concepts Essentials 2nd Edition 1.1 Silberschatz, Galvin and Gagne 2013 Operating System Definition OS is a resource allocator Manages all resources

More information

Module 1 Introduction/OS Overview

Module 1 Introduction/OS Overview Module 1 Introduction/OS Overview Reading: Chapter 1 and 2 (Silberchatz) Objective: Quick overview of computer system organization the processor (CPU), memory, and input/output, architecture and general

More information

Chapter 3: Operating-System Structures

Chapter 3: Operating-System Structures 1 Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1

More information

TDDB68 Concurrent Programming and Operating Systems. Lecture 1: Introduction, interrupts and system calls

TDDB68 Concurrent Programming and Operating Systems. Lecture 1: Introduction, interrupts and system calls TDDB68 Concurrent Programming and Operating Systems Lecture 1: Introduction, interrupts and system calls Mikael Asplund, Senior Lecturer Real-time Systems Laboratory Department of Computer and Information

More information

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

Kernel Types Simple OS Examples System Calls. Operating Systems. Autumn CS4023 Operating Systems Autumn 2017-2018 Outline 1 2 3 Types of 2.4, SGG The OS Kernel The kernel is the central component of an OS It has complete control over everything that occurs in the system Kernel overview

More information

Module 3: Operating-System Structures. Common System Components

Module 3: Operating-System Structures. Common System Components Module 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation 3.1 Common

More information

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

Roadmap. Tevfik Ko!ar. CSC Operating Systems Fall Lecture - VII CPU Scheduling - II. Louisiana State University CSC 4103 - Operating Systems Fall 2009 Lecture - VII CPU Scheduling - II Tevfik Ko!ar Louisiana State University September 14 th, 2009 1 Roadmap Multilevel Feedback Queues Estimating CPU bursts Project

More information

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

Roadmap. Multilevel Queue Scheduling. Multilevel Queue. Example of Multilevel Feedback Queue. Multilevel Feedback Queue. Tevfik Ko! CSC 4103 - Operating Systems Fall 2009 Lecture - VII CPU Scheduling - II Roadmap Multilevel Feedback Queues Estimating CPU bursts Project Discussion System Calls Virtual Machines Tevfik Ko!ar Louisiana

More information

CSE 4/521 Introduction to Operating Systems

CSE 4/521 Introduction to Operating Systems CSE 4/521 Introduction to Operating Systems Lecture 3 Operating Systems Structures (Operating-System Services, User and Operating-System Interface, System Calls, Types of System Calls, System Programs,

More information

Chapter 2: OS Structures

Chapter 2: OS Structures Chapter 2: OS Structures OS Structures 1 Operating System Services (1) One set of operating-system services provides functions that are helpful to the user (or user processes): User interface - almost

More information

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

OPERATING SYSTEMS Lecture Notes. Prepared by K.Rohini, Assistant Professor, CSE Department, GVPCEW. OPERATING SYSTEMS Lecture Notes Prepared by K.Rohini, Assistant Professor, CSE Department, GVPCEW. UNIT-I Computer System and Operating System Overview: Overview of computer operating systems, operating

More information

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

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edit9on Chapter 2: Operating-System Structures Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures 1. Operating System Services 2. User Operating System

More information

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

OPERATING SYSTEMS. Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne OPERATING SYSTEMS Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne OVERVIEW An operating system is a program that manages the

More information

Processes and Threads

Processes and Threads TDDI04 Concurrent Programming, Operating Systems, and Real-time Operating Systems Processes and Threads [SGG7] Chapters 3 and 4 Copyright Notice: The lecture notes are mainly based on Silberschatz s, Galvin

More information

OPERATING SYSTEMS UNIT - 1

OPERATING SYSTEMS UNIT - 1 OPERATING SYSTEMS UNIT - 1 Syllabus UNIT I FUNDAMENTALS Introduction: Mainframe systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered Systems Real Time Systems Handheld Systems -

More information

Introduction to PC Operating Systems

Introduction to PC Operating Systems Introduction to PC Operating Systems Operating System Concepts 8th Edition Written by: Abraham Silberschatz, Peter Baer Galvin and Greg Gagne John Wiley & Sons, Inc. ISBN: 978-0-470-12872-5 Chapter 2 Operating-System

More information

UNIT 2. OPERATING SYSTEM STRUCTURES

UNIT 2. OPERATING SYSTEM STRUCTURES This document can be downloaded from www.chetanahegde.in with most recent updates. 1 UNIT 2. OPERATING SYSTEM STRUCTURES 2.1 INTRODUCTION An OS provides the environment within which the programs are executed.

More information

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

CSC Operating Systems Spring Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. January 17 th, 2007. CSC 4103 - Operating Systems Spring 2008 Lecture - II OS Structures Tevfik Ko!ar Louisiana State University January 17 th, 2007 1 Announcements Teaching Assistant: Asim Shrestrah Email: ashres1@lsu.edu

More information

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

Announcements. Operating System Structure. Roadmap. Operating System Structure. Multitasking Example. Tevfik Ko!ar CSC 4103 - Operating Systems Spring 2008 Lecture - II OS Structures Tevfik Ko!ar Teaching Assistant: Asim Shrestrah Email: ashres1@lsu.edu Announcements All of you should be now in the class mailing list.

More information

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

Architectural Support for Operating Systems. Jinkyu Jeong ( Computer Systems Laboratory Sungkyunkwan University Architectural Support for Operating Systems Jinkyu Jeong ( jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics Basic services of OS Basic computer system

More information

Operating System Review

Operating System Review COP 4225 Advanced Unix Programming Operating System Review Chi Zhang czhang@cs.fiu.edu 1 About the Course Prerequisite: COP 4610 Concepts and Principles Programming System Calls Advanced Topics Internals,

More information

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

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto Ricardo Rocha Department of Computer Science Faculty of Sciences University of Porto Slides based on the book Operating System Concepts, 9th Edition, Abraham Silberschatz, Peter B. Galvin and Greg Gagne,

More information

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

Roadmap. Tevfik Ko!ar. CSC Operating Systems Spring Lecture - III Processes. Louisiana State University. Virtual Machines Processes CSC 4103 - Operating Systems Spring 2008 Lecture - III Processes Tevfik Ko!ar Louisiana State University January 22 nd, 2008 1 Roadmap Virtual Machines Processes Basic Concepts Context Switching Process

More information

Operating System Structure

Operating System Structure CSE325 Principles of Operating Systems Operating System Structure David Duggan dduggan@sandia.gov January 24, 2013 A View of Operating System Services 1/24/13 CSE325 - OS Structure 2 Operating System Design

More information

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

What we saw. Desarrollo de Aplicaciones en Red. 1. OS Design. 2. Service description. 1.1 Operating System Service (1) What we saw Desarrollo de Aplicaciones en Red José Rafael Rojano Cáceres http://www.uv.mx/rrojano Distributed system: Collection of independent computers that for the user works like if it where one CPU.

More information

Full file at

Full file at Import Settings: Base Settings: Brownstone Default Highest Answer Letter: D Multiple Keywords in Same Paragraph: No Chapter: Chapter 2 Multiple Choice 1. A is an example of a systems program. A) command

More information

Operating System Concepts Ch. 2: Operating System Structures

Operating System Concepts Ch. 2: Operating System Structures Operating System Concepts Ch. 2: Operating System Structures Silberschatz, Galvin & Gagne Content This chapter goes into more detail on the structure of Operating Systems. - Organization of the different

More information

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

Operating Systems. Operating System Structure. Lecture 2 Michael O Boyle Operating Systems Operating System Structure Lecture 2 Michael O Boyle 1 Overview Architecture impact User operating interaction User vs kernel Syscall Operating System structure Layers Examples 2 Lower-level

More information

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

! Software ( kernel ) that runs at all times. ! OS performs two unrelated functions: Maria Hybinette, UGA. user! 1! Maria Hybinette, UGA. user! n! Review: What is An Operating System?! Software ( ) that runs at all times CSCI 6730 / 4730 Operating Systems Structures & System Design» Really, the part of the that runs in (or need to).» But note - there

More information

CPS221 Lecture: Operating System Functions

CPS221 Lecture: Operating System Functions CPS221 Lecture: Operating System Functions Objectives 1. To overview key hardware concepts 2. To introduce the process concept 3. To discuss the various kinds of functionality of the OS last revised 8/25/11

More information

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

Roadmap. Tevfik Koşar. CSE 421/521 - Operating Systems Fall Lecture - II OS Structures. University at Buffalo. OS Design and Implementation CSE 421/521 - Operating Systems Fall 2013 Lecture - II OS Structures Tevfik Koşar University at Buffalo August 29 th, 2013 1 Roadmap OS Design and Implementation Different Design Approaches Major OS Components!

More information

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

OS Design Approaches. Roadmap. System Calls. Tevfik Koşar. Operating System Design and Implementation. CSE 421/521 - Operating Systems Fall 2013 CSE 421/521 - Operating Systems Fall 2013 Lecture - II OS Structures Roadmap OS Design and Implementation Different Design Approaches Major OS Components!! Memory management! CPU Scheduling! I/O Management

More information

Operating System Architecture. CS3026 Operating Systems Lecture 03

Operating System Architecture. CS3026 Operating Systems Lecture 03 Operating System Architecture CS3026 Operating Systems Lecture 03 The Role of an Operating System Service provider Provide a set of services to system users Resource allocator Exploit the hardware resources

More information

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

CSC Operating Systems Fall Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. August 27 th, 2009. CSC 4103 - Operating Systems Fall 2009 Lecture - II OS Structures Tevfik Ko!ar Louisiana State University August 27 th, 2009 1 Announcements TA Changed. New TA: Praveenkumar Kondikoppa Email: pkondi1@lsu.edu

More information

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

Announcements. Computer System Organization. Roadmap. Major OS Components. Processes. Tevfik Ko!ar. CSC Operating Systems Fall 2009 CSC 4103 - Operating Systems Fall 2009 Lecture - II OS Structures Tevfik Ko!ar TA Changed. New TA: Praveenkumar Kondikoppa Email: pkondi1@lsu.edu Announcements All of you should be now in the class mailing

More information

Operating-System Structures

Operating-System Structures Operating-System Structures System Components Operating System Services System Calls System Programs System Structure System Design and Implementation System Generation 1 Common System Components Process

More information

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

OS Design Approaches. Roadmap. OS Design Approaches. Tevfik Koşar. Operating System Design and Implementation CSE 421/521 - Operating Systems Fall 2012 Lecture - II OS Structures Roadmap OS Design and Implementation Different Design Approaches Major OS Components!! Memory management! CPU Scheduling! I/O Management

More information

Introduction to Operating Systems (Part III)

Introduction to Operating Systems (Part III) Introduction to Operating Systems (Part III) Amir H. Payberah amir@sics.se Amirkabir University of Technology (Tehran Polytechnic) Amir H. Payberah (Tehran Polytechnic) Introduction 1393/6/29 1 / 43 Operating

More information

OS Structures. ICS332 Operating Systems

OS Structures. ICS332 Operating Systems OS Structures ICS332 Operating Systems OS Services and Features OS Services and Features Helpful to users Better efficiency/operation OS Services Load and run a program Allow a program to end in multiple

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Operating System Structure

Operating System Structure Operating System Structure Heechul Yun Disclaimer: some slides are adopted from the book authors slides with permission Recap: Memory Hierarchy Fast, Expensive Slow, Inexpensive 2 Recap Architectural support

More information

CPS221 Lecture: Operating System Functions

CPS221 Lecture: Operating System Functions CPS221 Lecture: Operating System Functions Objectives last revised 6/23/10 1. To overview key hardware concepts 2. To iintroduce the process concept 3. To discuss the various kinds of functionality of

More information

EECS 3221 Operating System Fundamentals

EECS 3221 Operating System Fundamentals EECS 3221 Operating System Fundamentals Instructor: Prof. Hui Jiang Email: hj@cse.yorku.ca Web: http://www.eecs.yorku.ca/course/3221 General Info 3 lecture hours each week 2 assignments (2*5%=10%) 1 project

More information

EECS 3221 Operating System Fundamentals

EECS 3221 Operating System Fundamentals General Info EECS 3221 Operating System Fundamentals Instructor: Prof. Hui Jiang Email: hj@cse.yorku.ca Web: http://www.eecs.yorku.ca/course/3221 3 lecture hours each week 2 assignments (2*5%=10%) 1 project

More information

Operating System Structure

Operating System Structure Operating System Structure Heechul Yun Disclaimer: some slides are adopted from the book authors slides with permission Recap OS needs to understand architecture Hardware (CPU, memory, disk) trends and

More information

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

OS concepts and structure. q OS components & interconnects q Structuring OSs q Next time: Processes OS concepts and structure q OS components & interconnects q Structuring OSs q Next time: Processes OS Views Perspectives, OS as the services it provides its components and interactions Services to Users

More information

CSE Opera+ng System Principles

CSE Opera+ng System Principles CSE 30341 Opera+ng System Principles Lecture 3 Systems Structure Project 1 Intro CSE 30341 Opera+ng System Principles 2 1 Recap Last Lecture I/O Structure (I/O Interface, DMA) Storage and Memory Hierarchy

More information

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

Spring It takes a really bad school to ruin a good student and a really fantastic school to rescue a bad student. Dennis J. Operating Systems * *Throughout the course we will use overheads that were adapted from those distributed from the textbook website. Slides are from the book authors, modified and selected by Jean Mayo,

More information

Computer System Architecture. CMPT 300 Operating Systems I. Summer Segment 3: Computer System Architecture. Melissa O Neill

Computer System Architecture. CMPT 300 Operating Systems I. Summer Segment 3: Computer System Architecture. Melissa O Neill CMPT 300 Operating Systems I Computer System Architecture Summer 1999 disk disk printer tape drives on-line Segment 3: Computer System Architecture CPU disk controller printer controller tape-drive controller

More information

Chapter 4: Threads. Chapter 4: Threads. Overview Multicore Programming Multithreading Models Thread Libraries Implicit Threading Threading Issues

Chapter 4: Threads. Chapter 4: Threads. Overview Multicore Programming Multithreading Models Thread Libraries Implicit Threading Threading Issues Chapter 4: Threads Silberschatz, Galvin and Gagne 2013 Chapter 4: Threads Overview Multicore Programming Multithreading Models Thread Libraries Implicit Threading Threading Issues 4.2 Silberschatz, Galvin

More information

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

Chapter 4: Multithreaded Programming. Operating System Concepts 8 th Edition, Chapter 4: Multithreaded Programming, Silberschatz, Galvin and Gagne 2009 Chapter 4: Multithreaded Programming Overview Multithreading Models Thread Libraries Threading Issues 4.2 Silberschatz, Galvin

More information

Memory Management. Contents: Memory Management. How to generate code? Background

Memory Management. Contents: Memory Management. How to generate code? Background TDIU11 Operating systems Contents: Memory Management Memory Management [SGG7/8/9] Chapter 8 Background Relocation Dynamic loading and linking Swapping Contiguous Allocation Paging Segmentation Copyright

More information

Virtual Memory. Overview: Virtual Memory. Virtual address space of a process. Virtual Memory. Demand Paging

Virtual Memory. Overview: Virtual Memory. Virtual address space of a process. Virtual Memory. Demand Paging TDDB68 Concurrent programming and operating systems Overview: Virtual Memory Virtual Memory [SGG7/8] Chapter 9 Background Demand Paging Page Replacement Allocation of Frames Thrashing and Data Access Locality

More information

Overview of Operating Systems

Overview of Operating Systems Lecture Outline Overview of Operating Systems Instructor: Dr. Tongping Liu Thank Dr. Dakai Zhu and Dr. Palden Lama for providing their slides. 1 2 Lecture Outline Von Neumann Architecture 3 This describes

More information

Introduction. TDDI04, K. Arvidsson, IDA, Linköpings universitet Contents. What is an Operating System (OS)?

Introduction. TDDI04, K. Arvidsson, IDA, Linköpings universitet Contents. What is an Operating System (OS)? TDDI04 Concurrent Programming, Operating Systems, and Real-time Operating Systems Introduction Copyright Notice: The lecture notes are mainly based on Silberschatz s, Galvin s and Gagne s book ( Operating

More information