Operating Systems ( )

Size: px
Start display at page:

Download "Operating Systems ( )"

Transcription

1 Operating Systems ( ) Meni Adler Office: Alon, 211 Office hours: Wed.. Danny Hendler Office: Alon, 218 Office hours: 11:30-13:30 Amnon Meisels Office: Alon, 206 Office hours: Wed Lecturers: Meni Adler, Danny Hendler and Amnon Meisels TAs: Vadim Levit, Ehud Barnea, Matan Drori, Yeri Sofer and Dan Brownstein (Zohar Komarovski & Tomer Sidi) Course site: 1

2 Assignments and grade structure Assignment Programming Programming Midterm Final Subject Scheduling + Synchronization Memory Management + Files Processes, scheduling, synchronization, memory (TBD) All Weight 15% 15% 15% 55% Assignments and exams are mandatory Must pass final exam 2

3 Textbooks A. Tanenbaum: Modern Operating Systems, Prentice-Hall, 3 rd Edition, 2008 A. Silbetschatz et al.: Operating System Concepts (9th ed.), Addison Wesley, 2012 G. Nutt: Operating Systems (a modern perspective) (3rd ed.), Addison Wesley, 2003 W. Stallings: Operating Systems (6th ed.), Prentice-Hall, 2009 Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 3

4 Syllabus 1. Introduction - History; Views; Concepts; Structure 2. Process Management - Processes; State + Resources; Threads; Unix implementation of Processes 3. Scheduling Paradigms; Unix; Modeling 4. Synchronization - Synchronization primitives and their equivalence; Deadlocks 5. Memory Management - Virtual memory; Page replacement algorithms; Segmentation 6. File Systems - Implementation; Directory and space management; Unix file system; Distributed file systems (NFS) 7. Distributed Synchronization (if there's time) Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 4

5 Introduction: outline What is an operating system? Some history OS concepts OS structure Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 5

6 Layered Hardware-Software Machine Model Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 6

7 Computer-System Architecture Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 7

8 What is an Operating System? An operating system is: 1. An Extended Machine 2. A Resource manager Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 8

9 Operating Systems as extended Machines The problems: Bare machine has complex structure o Processors o Many difficult-to-program devices Primitive Instruction Set Different for Different Machines OS provides: Abstraction! Simple, easier to use interface (machine-independent) Hiding of unnecessary details Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 9

10 OS abstraction example: read from disk Read file data from disk (simplified) Read linear sector 17,403 from disk 2 Convert linear sector number to: cylinder, sector, head (may be complicated outer cylinders have more sectors, bad sectors remapped, etc.) Move disk arm to requested cylinder Wait for proper sector to appear OS abstraction return-code = read(fd, buff, nbytes) Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 10

11 UNIX high-level architecture User Interface Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 11

12 Operating Systems as Resource Managers Multiple resources o Processors; Memory o Disks; Tapes; Printers o Network interfaces; Terminals Controlled allocation of Resources among: o Groups, Users; Processes, Threads, Means of control: sharing/multiplexing/scheduling, monitoring, protection, report/payment Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 12

13 Introduction: outline What is an operating system? Some history OS concepts OS structure Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 13

14 History of Operating Systems First generation o vacuum tubes, plug boards user plugs-in program Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 14

15 The first computers Electronic Numerical Integrator And Computer (ENIAC) Mathematical Analyzer, Numeric Integrator And Computer(MANIAC) Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 15

16 History of Operating Systems (cont d) Second generation o transistors, batch systems multiple programs on Disk Third generation o ICs and multiprogramming - user interaction (time-sharing) Fourth generation 1980 present o personal computers graphic user-interface o Networks file & computing services o Web-computing, Handheld devices, Cellular phones, Cloud computing Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 16

17 How Bill Gates became rich 1974: Intel releases the 8080 processor, needs an OS Please! develop an OS CP/M OS Gary Kildall Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 17

18 How Bill Gates became rich (cont d) 1974: Intel releases the 8080 processor, needs an OS CP/M OS Can you grant me CP/M rights? Sure! Gary Kildall Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 18

19 How Bill Gates became rich (cont d) 1980: IBM designs IMB PC, needs an OS Can you find an OS for our PC? Please meet IBM, they need an OS Gary Kildall Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 19

20 How Bill Gates became rich (cont d) 1980: IBM designs IMB PC, needs an OS Kildall too busy. Please develop an OS! I de like to buy the DOS OS Sure, it s yours for $75,000 Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 20

21 How Bill Gates became rich (cont d) 1980: IBM designs IMB PC, needs an OS May I retain the rights for MS- DOS? Sure, why not!! Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 21

22 How Bill Gates became rich (cont d) Well, this is 20:20 hind vision Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 22

23 Introduction: outline What is an operating system? Some history OS concepts OS structure Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 23

24 OS Key Functions Process management o process creation; deletion; suspension/preemption o process synchronization; communication; scheduling Main-memory management o Manage used parts and their current users o Select processes to load from secondary storage o Allocate memory to running processes Secondary storage management o Free-space management o Storage allocation Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 24

25 OS Key Functions (cont d) File system management o File + directory - creation; deletion o File manipulation primitives o Mapping files onto secondary storage I/O system management o General device-driver interface o Drivers for specific hardware devices Protection system o Distinguish between authorized and unauthorized usage o Provide means of enforcement Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 25

26 Processes - a key concept Resource container for program in execution Timesharing, process suspension/preemption Process Table Process Groups Signals Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 26

27 Why do we need multiple processes? Single application: We want things to happen concurrently (E.g.: paging and typing in a text editor) Multiple applications: processes running in the background (e.g., Anti Virus) Multiple users: The departmental computer; all types of Servers Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 27

28 Multiprogramming: how is it done? CPU much faster than I/O o Computation/communication overlap Memory large enough requires memory protection! Scheduler which manages flow of jobs in and out and shares CPU between jobs requires Timer Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 28

29 Process trees A process tree A created two child processes, B and C B created three child processes, D, E, and F Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 29

30 Inter-Process Communication (IPC) Two processes communicating via a pipe Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 30

31 Files: non volatile data File types and operations on files Directories - hierarchical structure Working directories Root directory Students Faculty Amnon Gil Roni Or Papers Progs G rants Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 31

32 Files: non volatile data (cont d) Protection and Security Unix - user; group; other (rwx bits) File descriptors (handles) I/O as a special file Block & Character special files Standard input; output; error Pipes Links Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 32

33 I/O is performed in kernel mode All I/O instructions are privileged instructions I/O devices and CPU can execute concurrently CPU moves data between main memory and device controllers' buffers (done by device drivers) Device controllers interrupt upon completion Interrupts or Traps enable mode switching Operating systems are interrupt-driven Traps/signals: software interrupts Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 33

34 Interrupts and the fetch-decode-execute loop Do forever{ IR = memory[pc]; execute(ir); PC++; If(Interrupt_Request) { memory[0] = PC; PC = memory[1] } } An interrupt is an asynchronous event The kernel interrupt handling routine may use a disable_interrupts instruction to avoid losing data while processing an interrupt request Interrupt handler is typically called indirectly via the interrupt vector Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 34

35 Synchronous vs. Asynchronous I/O execute Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 35

36 Steps in Making a System Call There are 11 steps in making the system call: read (fd, buffer, nbytes) Is this call Synchronous or Asynchronous? Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 36

37 System Calls processes files directories miscellaneous Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 37

38 The Shell Command Language sort < file1 > file2 cat file1 sort lpr The Shell is a process which executes its commands as offspring processes Processes may call shell commands by using the system system call Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 38

39 Shell structure Parent & child A stripped-down shell: while (TRUE) { /* repeat forever */ type_prompt( ); /* display prompt */ read_command (command, parameters) /* input from terminal */ } if (fork() > 0) { /* fork off child process */ /* Parent code */ wait(); /* wait for child to exit */ } else { /* Child code */ execvp (command, parameters); /* execute command */ } Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 39

40 Linux Shell initialization The init program (process 1) runs getty on all ports Upon detecting a terminal, getty runs login Typing in a user name and a password login checks the passwd file and if correct runs a shell the one specified in the UID entry The shell is run with that user ID environment parameters Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 40

41 Running user commands User types: grep some_word file_name Shell parses the command, inserts the strings grep, some_word, file_name into argv and their number to argc Next, the shell uses fork() to create a process (same user ID) Now, it takes the executable name grep and the arguments, all from argv, and uses execvp() (or a similar system call) to run the grep executable On foreground execution, the shell would use the wait() system call and continue its session only after the child process terminates Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 41

42 UNIX Utility Programs A few of the more common UNIX utility programs required by POSIX Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 42

43 Introduction: outline What is an operating system? Some history OS concepts )חומר העשרה ) structure OS Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 43

44 Operating system structure 1. Monolithic systems 2. Virtual machines 3. Client-server model Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 44

45 Monolithic systems Monolithic systems have little structure Main procedure for invoking OS service Service Routines Utility procedures Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 45

46 Monolithic systems Service routines are system calls Utility procedures serve multiple service routines All compiled into a single system Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 46

47 Virtual Machines Provide an interface identical to the underlying bare machine VM monitor creates multiple VMs, each executing on its own (virtual) processor and its own (virtual) memory Virtual machines provide complete protection of system resources - even separate resources Difficult to implement, due to the effort required to provide an exact duplicate of the underlying machine Well-known examples: o MS-DOS on top of Windows o JVM o VMWare Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 47

48 Virtual Machines: IBM 370 CMS CMS CMS VM/370 user kernel 370 bare hardware CMS: Conversational Monitor System, a single user OS Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 48

49 Virtual Machines (cont d) Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 49

50 Modern virtual machines Different legacy servers run on different OS Host sharing for web servers Use multiple operating systems on a single machine Security through isolation Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 50

51 Microkernels Small number of lines of code mostly in C Catching interrupts and switching processes in Assembly C code manages and schedules processes, interprocess communication, i/o interaction Offers few (~40) system calls for the rest of OS Device drivers (Disk, Network, ) in user mode Upper level contains Servers File, Process.. Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 51

52 Client-Server Model Client Process Client Process File Server Memory Server (Micro)Kernel Machine1 Machine2 Machine3 Machine4 Client File Server Process Server Kernel Kernel Kernel Kernel Network Distributed System Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 52

53 Client/server architecture: Mechanism vs. Policy Simple Kernel - modularity; minimal privileged operation Servers for files, memory, etc. - distribution; user mode operation good for distributed systems Mechanism in kernel - how to do things.. Policy outside - decide what to do; can be changed later.. Critical servers in kernel i/o disk server & the Scheduler who serves who. Operating Systems, 2014, Meni Adler, Danny Hendler & Amnon Meisels 53

Operating Systems ( )

Operating Systems ( ) Operating Systems (202-1-3031) Meni Adler Office: Alon, 109 meni.adler@gmail.com Office hours: Tuesdays, 08:00-10:00 Danny Hendler Office: Alon, 218 hendlerd@cs.bgu.ac.il Office hours: Tuesdays, 11:00-13:00

More information

Operating Systems ( )

Operating Systems ( ) Operating Systems (202-1-3031) Danny Hendler Office: Alon, 218 hendlerd@cs.bgu.ac.il Office hours: Wednesday, 11:00-13:00 Amnon Meisels Office: 206 build., 37 am@cs.bgu.ac.il Office hours: Sun. & Thur.,

More information

Operating Systems ( )

Operating Systems ( ) Operating Systems (202-1-3031) Itai Dinur Office: Alon, 224 dinuri@cs.bgu.ac.il Office hours: Wednesday, 16:00-18:00 Danny Hendler Office: Alon, 218 hendlerd@cs.bgu.ac.il Office hours: Wednesday, 13:00-15:00

More information

Operating Systems CS 571

Operating Systems CS 571 Operating Systems CS 571 Prof. Sanjeev Setia Fall 2003 1 Prerequisites Overview Computer Architecture (CS 365) Data structures and programming (CS 310) (C++/C/Java progamming) Textbooks Modern Operating

More information

CS450/550 Operating Systems

CS450/550 Operating Systems CS450/550 Operating Systems Lecture 1 Introductions to OS and Unix Palden Lama Department of Computer Science CS450/550 P&T.1 Chapter 1: Introduction 1.1 What is an operating system 1.2 History of operating

More information

When we start? 10/24/2013 Operating Systems, Beykent University 1

When we start? 10/24/2013 Operating Systems, Beykent University 1 When we start? 10/24/2013 Operating Systems, Beykent University 1 Early Systems 10/24/2013 Operating Systems, Beykent University 2 Second Generation 10/24/2013 Operating Systems, Beykent University 3 Third

More information

Operating Systems, Fall

Operating Systems, Fall Material Operating Systems Fall 2008 Course book: A.S. Tanenbaum, Modern Operating Systems, 3rd. ed.,, Prentice-Hall, 2007 Any other large OS book, f.e. Stallings, Silbershatz, or Deitel, should be feasible

More information

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

Andrew S. Tanenbaum, Operating Systems, Design and Implementation, (Second Edition), Prentice Hall. Chapter 1 Introduction and Fundamental Concepts OPERATING SYSTEMS Design and Implementation Instructor: Hadi Salimi Computer Engineering Department IRAN University of Science and Technology hsalimi@iust.ac.ir

More information

Master level: Operating systems, distributed systems, networking,

Master level: Operating systems, distributed systems, networking, Operating Systems Fall 2008 Tiina Niklander Distributed Systems and Networking specialization area Distributed Systems and Networking Interoperable Distributed Networking Operating system Hardware Interoperable

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

Computer System Overview

Computer System Overview Computer System Overview Introduction A computer system consists of hardware system programs application programs 2 Operating System Provides a set of services to system users (collection of service programs)

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

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

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

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

ESE 333 Real-Time Operating Systems 2 What is an operating system? Two views: 1. Top-down view: Extended machine ffl Covers the details of the hardwar

ESE 333 Real-Time Operating Systems 2 What is an operating system? Two views: 1. Top-down view: Extended machine ffl Covers the details of the hardwar 1 A computer system consists of: ffl Hardware Physical devices Λ Processors Λ Memory Λ I/O devices Microprogramming Machine language (instruction set) ffl Software System programs Λ Operating system Λ

More information

CMPS 111: Introduction to Operating Systems

CMPS 111: Introduction to Operating Systems CMPS 111: Introduction to Operating Systems Professor Scott A. Brandt sbrandt @cs.ucsc.edu http://ww w.cse.ucsc.edu/~sbrandt/111 Chapter 1 Class outline Introduction, concepts, review & historical perspective

More information

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

Reserves time on a paper sign-up sheet. Programmer runs his own program. Relays or vacuum tube hardware. Plug board or punch card input. Introduction & Ch1 Two Roles of an Operating System Extended Machine or virtual machine Device drivers, Processes, File systems, Networking protocols. Resource Manager Allocates and enforces Memory, Disk

More information

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

System Call. Preview. System Call. System Call. System Call 9/7/2018 Preview Operating System Structure Monolithic Layered System Microkernel Virtual Machine Process Management Process Models Process Creation Process Termination Process State Process Implementation Operating

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

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

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

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

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

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

Process Description and Control

Process Description and Control Process Description and Control 1 Process:the concept Process = a program in execution Example processes: OS kernel OS shell Program executing after compilation www-browser Process management by OS : Allocate

More information

Introduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Introduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Introduction to Operating Systems Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics What is OS? History of OS 2 What is OS? (1) Application

More information

Unit 2 : Computer and Operating System Structure

Unit 2 : Computer and Operating System Structure Unit 2 : Computer and Operating System Structure Lesson 1 : Interrupts and I/O Structure 1.1. Learning Objectives On completion of this lesson you will know : what interrupt is the causes of occurring

More information

ELEC 377 Operating Systems. Week 1 Class 2

ELEC 377 Operating Systems. Week 1 Class 2 Operating Systems Week 1 Class 2 Labs vs. Assignments The only work to turn in are the labs. In some of the handouts I refer to the labs as assignments. There are no assignments separate from the labs.

More information

CSC 453 Operating Systems

CSC 453 Operating Systems CSC 453 Operating Systems Lecture 3: Operating-System Structures Operating System Components Operating systems are large and complex - the only way to manage such a project is to divide it into smaller

More information

Operating Systems Overview. Chapter 2

Operating Systems Overview. Chapter 2 Operating Systems Overview Chapter 2 Operating System A program that controls the execution of application programs An interface between the user and hardware Masks the details of the hardware Layers and

More information

Introduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Introduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Introduction to Operating Systems Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Why OS? 2 What is an OS? Software that converts hardware into

More information

W4118: OS Overview. Junfeng Yang

W4118: OS Overview. Junfeng Yang W4118: OS Overview Junfeng Yang References: Modern Operating Systems (3 rd edition), Operating Systems Concepts (8 th edition), previous W4118, and OS at MIT, Stanford, and UWisc Outline OS definitions

More information

Introduction and Overview

Introduction and Overview Introduction and Overview Instructor: Adam C. Champion, Ph.D. CSE 2431: Introduction to Operating Systems Reading: Chapters 1 2, [OSC] (except Sections 2.8.3 2.9) 1 Outline Course Information What is an

More information

CS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017

CS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017 CS 471 Operating Systems Yue Cheng George Mason University Fall 2017 Introduction o Instructor of Section 002 Dr. Yue Cheng (web: cs.gmu.edu/~yuecheng) Email: yuecheng@gmu.edu Office: 5324 Engineering

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

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

Unix API Books. Linux Kernel Books. Assignments and Exams. Grading for CSC 256. Operating Systems 8/31/2018. CSC 256/456 Fall Prerequisites CSC 2/456: Operating s CSC 252 or equivalent C/C++ programming experience on Unix systems Instructor: Sandhya Dwarkadas TAs: Zhuojia Shen, Mohsen Mohammadi 8/31/2018 CSC 2/456 1 2 Meaning

More information

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

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter Lecture Topics Today: Operating System Overview (Stallings, chapter 2.1-2.4, 2.8-2.10) Next: Processes (Stallings, chapter 3.1-3.6) 1 Announcements Consulting hours posted Self-Study Exercise #3 posted

More information

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

CSC Operating Systems Fall Lecture - I Introduction. Tevfik Ko!ar. Louisiana State University. August 25 th, Contact Information CSC 4103 - Operating Systems Fall 2009 Lecture - I Introduction Tevfik Ko!ar Louisiana State University August 25 th, 2009 1 Contact Information Instructor: Prof. Tevfik Kosar Office: 292 Coates (also

More information

EEE 435 Principles of Operating Systems

EEE 435 Principles of Operating Systems 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

More information

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

CPSC 341 OS & Networks. Introduction. Dr. Yingwu Zhu CPSC 341 OS & Networks Introduction Dr. Yingwu Zhu What to learn? Concepts Processes, threads, multi-processing, multithreading, synchronization, deadlocks, CPU scheduling, networks, security Practice:

More information

Introduction. Operating Systems. Introduction. Introduction. Introduction

Introduction. Operating Systems. Introduction. Introduction. Introduction Operating Systems User OS Kernel & Device Drivers Interface Programs Instructor Brian Mitchell - Brian bmitchel@mcs.drexel.edu www.mcs.drexel.edu/~bmitchel TA - To Be Announced Course Information MCS720

More information

Processes and More. CSCI 315 Operating Systems Design Department of Computer Science

Processes and More. CSCI 315 Operating Systems Design Department of Computer Science Processes and More CSCI 315 Operating Systems Design Department of Computer Science Notice: The slides for this lecture have been largely based on those accompanying the textbook Operating Systems Concepts,

More information

Operating Systems. Hadi Salimi Computer Engineering Department Iran University of Science and Technology Tehran, Iran

Operating Systems. Hadi Salimi Computer Engineering Department Iran University of Science and Technology Tehran, Iran Operating Systems Hadi Salimi Computer Engineering Department Iran University of Science and Technology Tehran, Iran hsalimi@iust.ac.ir Spring 2009 Course motivation and goals Programming g computer hardware

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 Overview. Chapter 2

Operating System Overview. Chapter 2 Operating System Overview Chapter 2 1 Operating System A program that controls the execution of application programs An interface between applications and hardware 2 Operating System Objectives Convenience

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

CS30002: Operating Systems. Arobinda Gupta Spring 2017

CS30002: Operating Systems. Arobinda Gupta Spring 2017 CS30002: Operating Systems Arobinda Gupta Spring 2017 General Information Textbook: Operating System Concepts, 8 th or 9 th Ed, by Silberschatz, Galvin, and Gagne I will use materials from other books

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

Today. Operating System Evolution. CSCI 4061 Introduction to Operating Systems. Gen 1: Mono-programming ( ) OS Evolution Unix Overview

Today. Operating System Evolution. CSCI 4061 Introduction to Operating Systems. Gen 1: Mono-programming ( ) OS Evolution Unix Overview Today CSCI 4061 Introduction to s Instructor: Abhishek Chandra OS Evolution Unix Overview Unix Structure Shells and Utilities Calls and APIs 2 Evolution How did the OS evolve? Generation 1: Mono-programming

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 System Components Operating System Services System Calls System Programs System Structure System Design and Implementation System Generation 1 Common System Components Process

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 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

Announcement. Exercise #2 will be out today. Due date is next Monday

Announcement. Exercise #2 will be out today. Due date is next Monday Announcement Exercise #2 will be out today Due date is next Monday Major OS Developments 2 Evolution of Operating Systems Generations include: Serial Processing Simple Batch Systems Multiprogrammed Batch

More information

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

Operating System. Operating System Overview. Structure of a Computer System. Structure of a Computer System. Structure of a Computer System Overview Chapter 1.5 1.9 A program that controls execution of applications The resource manager An interface between applications and hardware The extended machine 1 2 Structure of a Computer System Structure

More information

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

Operating System. Operating Systems Structure Chapter 2. Services Provided by the OS. Evolution of an Operating System Operating System Operating Systems Structure Chapter 2 1 Is a control program that controls the execution of application programs OS must relinquish control to user programs and regain it safely and efficiently

More information

Mon Sep 17, 2007 Lecture 3: Process Management

Mon Sep 17, 2007 Lecture 3: Process Management Mon Sep 17, 2007 Lecture 3: Process Management September 19, 2007 1 Review OS mediates between hardware and user software QUIZ: Q: Name three layers of a computer system where the OS is one of these layers.

More information

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

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

More information

Operating- System Structures

Operating- System Structures Operating- System Structures 2 CHAPTER Practice Exercises 2.1 What is the purpose of system calls? Answer: System calls allow user-level processes to request services of the operating system. 2.2 What

More information

Introduction to Operating Systems

Introduction to Operating Systems Introduction to Operating Systems Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu EEE3052: Introduction to Operating Systems, Fall 2017, Jinkyu Jeong

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

COURSE OVERVIEW & OPERATING SYSTEMS CONCEPT Operating Systems Design Euiseong Seo

COURSE OVERVIEW & OPERATING SYSTEMS CONCEPT Operating Systems Design Euiseong Seo COURSE OVERVIEW & OPERATING SYSTEMS CONCEPT 2017 Operating Systems Design Euiseong Seo (euiseong@skku.edu) Overview What this course is about How you study this course Why you have to take this course

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

Today. Operating System Evolution. CSCI 4061 Introduction to Operating Systems. Gen 1: Mono-programming ( ) OS Evolution Unix Overview

Today. Operating System Evolution. CSCI 4061 Introduction to Operating Systems. Gen 1: Mono-programming ( ) OS Evolution Unix Overview Today CSCI 4061 Introduction to s Instructor: Abhishek Chandra OS Evolution Unix Overview Unix Structure Shells and Utilities Calls and APIs 2 Evolution How did the OS evolve? Dependent on hardware and

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

Operating Systems. studykorner.org

Operating Systems. studykorner.org Operating Systems Outlines What are Operating Systems? All components Description, Types of Operating Systems Multi programming systems, Time sharing systems, Parallel systems, Real Time systems, Distributed

More information

Chapter 1: Introduction

Chapter 1: Introduction Chapter 1: Introduction Chapter 1: Introduction What Operating Systems Do Computer-System Organization Computer-System Architecture Operating-System Structure Operating-System Operations Process Management

More information

Processes. Process Management Chapter 3. When does a process gets created? When does a process gets terminated?

Processes. Process Management Chapter 3. When does a process gets created? When does a process gets terminated? Processes Process Management Chapter 3 1 A process is a program in a state of execution (created but not terminated) Program is a passive entity one on your disk (survivor.class, kelly.out, ) Process is

More information

OPERATING SYSTEMS: Lesson 1: Introduction to Operating Systems

OPERATING SYSTEMS: Lesson 1: Introduction to Operating Systems OPERATING SYSTEMS: Lesson 1: Introduction to Jesús Carretero Pérez David Expósito Singh José Daniel García Sánchez Francisco Javier García Blas Florin Isaila 1 Why study? a) OS, and its internals, largely

More information

Jan 20, 2005 Lecture 2: Multiprogramming OS

Jan 20, 2005 Lecture 2: Multiprogramming OS Jan 20, 2005 Lecture 2: Multiprogramming OS February 17, 2005 1 Review OS mediates between hardware and user software QUIZ: Q: What is the most important function in an OS? A: To support multiprogramming

More information

INTRODUCTION TO OPERATING SYSTEMS. Jo, Heeseung

INTRODUCTION TO OPERATING SYSTEMS. Jo, Heeseung INTRODUCTION TO OPERATING SYSTEMS Jo, Heeseung TODAY'S TOPICS What is OS? History of OS 2 OPERATING SYSTEM? Computer systems internals 3 WHY DO WE LEARN OS? To graduate? To make a better OS or system Functionality

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

Chapter 1 Introduction

Chapter 1 Introduction MODERN OPERATING SYSTEMS Third Edition ANDREW S. TANENBAUM Chapter 1 Introduction What Is An Operating System (1) A modern computer consists of: One or more processors Main memory Disks Printers Various

More information

7/20/2008. What Operating Systems Do Computer-System Organization

7/20/2008. What Operating Systems Do Computer-System Organization Introduction to Operating Systems Introduction What Operating Systems Do Computer-System Organization Computer-System Architecture Operating-System Structure Operating-System Operations Process Management

More information

Course Syllabus. Operating Systems, Spring 2016, Meni Adler, Danny Hendler & Amnon Meisels

Course Syllabus. Operating Systems, Spring 2016, Meni Adler, Danny Hendler & Amnon Meisels Course Syllabus 1. Introduction - History; Views; Concepts; Structure 2. Process Management - Processes; State + Resources; Threads; Unix implementation of Processes 3. Scheduling Paradigms; Unix; Modeling

More information

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

Operating System. Operating System Overview. Layers of Computer System. Operating System Objectives. Services Provided by the Operating System Operating System Operating System Overview Chapter 2 A program that controls the execution of application programs An interface between applications and hardware 1 2 Operating System Objectives Layers

More information

Operating System Overview. Operating System

Operating System Overview. Operating System Operating System Overview Chapter 2 1 Operating System A program that controls the execution of application programs An interface between applications and hardware 2 1 Operating System Objectives Convenience

More information

Introduction to Operating Systems. Jo, Heeseung

Introduction to Operating Systems. Jo, Heeseung Introduction to Operating Systems Jo, Heeseung Today's Topics What is OS? History of OS 2 Operating System? Computer systems internals 3 Why do we learn OS? To graduate? To make a better OS or system Functionality

More information

Misc. Third Generation Batch Multiprogramming. Fourth Generation Time Sharing. Last Time Evolution of OSs

Misc. Third Generation Batch Multiprogramming. Fourth Generation Time Sharing. Last Time Evolution of OSs Third Generation Batch Multiprogramming Misc. Problem: but I/O still expensive; can happen in middle of job Idea: have a pool of ready jobs in memory, switch to one when another needs I/O When one job

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

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

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

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

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

Operating Systems : Overview

Operating Systems : Overview Operating Systems : Overview Bina Ramamurthy CSE421 8/29/2006 B.Ramamurthy 1 Topics for discussion What will you learn in this course? (goals) What is an Operating System (OS)? Evolution of OS Important

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2016 Lecture 2 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 2 System I/O System I/O (Chap 13) Central

More information

CISC2200 Threads Spring 2015

CISC2200 Threads Spring 2015 CISC2200 Threads Spring 2015 Process We learn the concept of process A program in execution A process owns some resources A process executes a program => execution state, PC, We learn that bash creates

More information

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

TDDI04, K. Arvidsson, IDA, Linköpings universitet Operating System Structures. Operating System Structures Overview. Operating System Services 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

More information

Process Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey

Process Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey CSC400 - Operating Systems 3. Process Concepts J. Sumey Overview Concurrency Processes & Process States Process Accounting Interrupts & Interrupt Processing Interprocess Communication CSC400 - Process

More information

CSC 256/456: Operating Systems. Introduction. John Criswell! University of Rochester

CSC 256/456: Operating Systems. Introduction. John Criswell! University of Rochester CSC 256/456: Operating Systems Introduction John Criswell! University of Rochester 1 Logistics 2 Course Instructors Instructor TA Name: John Criswell! Email: criswell@cs! Office: CSB 717! Office Hours:

More information

Operating Systems (2INC0) 2018/19. Introduction (01) Dr. Tanir Ozcelebi. Courtesy of Prof. Dr. Johan Lukkien. System Architecture and Networking Group

Operating Systems (2INC0) 2018/19. Introduction (01) Dr. Tanir Ozcelebi. Courtesy of Prof. Dr. Johan Lukkien. System Architecture and Networking Group Operating Systems (2INC0) 20/19 Introduction (01) Dr. Courtesy of Prof. Dr. Johan Lukkien System Architecture and Networking Group Course Overview Introduction to operating systems Processes, threads and

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

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

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

More information