Operating Systems Part M10 Introduction to OS, SW Interrupts, Supervisory Call. Florina Ciorba 16/23 October 2015
|
|
- Beverley McDowell
- 6 years ago
- Views:
Transcription
1 Operating Systems Part M10 Introduction to OS, SW Interrupts, Supervisory Call Florina Ciorba 16/23 October 2015
2 Today s Overview Introduction to Operating Systems, earlier Operating Systems see 5 th Operating System Concepts (OSC) slides ( Dinosaur Book ) Additions OS Gallery, Multics, JAVA-OS, Plan9, Minix 3.0 Protected CPU commands, CPU modes, system calls see 5 th OSC slides ( Dinosaur Book ) , 2.19, 3.14 Software interrupts, exceptions, traps, and the supervisory calls (SVC) Operating Systems Concepts 3
3 Monolithic Kernels vs Microkernels Microkernels: OS services treated as user processes Claim: Modularity (not necessarily small size) Representatives: MACH, CHORUS, Amoeba, Minix, QNX, and others Operating Systems Concepts 4
4 Early Operating Systems Operating Systems Concepts, 5 th Edition Slide set M10-b Slides Operating Systems Concepts 5
5 Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming Batched Systems Time-Sharing Systems Personal-Computer Systems Parallel Systems Distributed Systems Real-Time Systems Operating System Concepts 1.1 Silberschatz and Galvin c 1998 What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. Operating system goals: Execute user programs and make solving user problems easier. Make the computer system convenient to use. Use the computer hardware in an efficient manner. Operating System Concepts 1.2 Silberschatz and Galvin c 1998
6 Computer System Components 1. Hardware provides basic computing resources (CPU, memory, I/O devices). 2. Operating system controls and coordinates the use of the hardware among the various application programs for the various users. 3. Applications programs define the ways in which the system resources are used to solve the computing problems of the users (compilers, database systems, video games, business programs). 4. Users (people, machines, other computers). Operating System Concepts 1.3 Silberschatz and Galvin c 1998 Abstract View of System Components user 1 user 2 user 3... user n compiler assembler text editor... database system system and application programs operating system computer hardware Operating System Concepts 1.4 Silberschatz and Galvin c 1998
7 Operating System Definitions Resource allocator manages and allocates resources. Control program controls the execution of user programs and operation of I/O devices. Kernel the one program running at all times (all else being application programs). Operating System Concepts 1.5 Silberschatz and Galvin c 1998 Early Systems Bare machine (early 1950s) Structure Large machines run from console Single user system Programmer/User as operator Paper tape or punched cards Early Software Assemblers, compilers Linkers, loaders Libraries of common subroutines Device drivers Secure Inefficient use of expensive resources Low CPU utilization Significant amount of setup time Operating System Concepts 1.6 Silberschatz and Galvin c 1998
8 Simple Batch Systems Hire an operator User operator Add a card reader Reduce setup time by batching similar jobs Automatic job sequencing automatically transfers control from one job to another. First rudimentary operating system. Resident monitor initial control in monitor control transfers to job when job completes control transfers back to monitor Operating System Concepts 1.7 Silberschatz and Galvin c 1998 Simple Batch Systems (Cont.) Problems 1. How does the monitor know about the nature of the job (e.g., Fortran versus Assembly) or which program to execute? 2. How does the monitor distinguish (a) job from job? (b) data from program? Solution Introduce control cards Operating System Concepts 1.8 Silberschatz and Galvin c 1998
9 Control Cards Special cards that tell the resident monitor which programs to run. $JOB $FTN $RUN $DATA $END Special characters distinguish control cards from data or program cards: $ in column 1 // in column 1 and in column 1 Operating System Concepts 1.9 Silberschatz and Galvin c 1998 Control Cards (Cont.) Parts of resident monitor Control card interpreter responsible for reading and carrying out instructions on the cards. Loader loads systems programs and applications programs into memory. Device drivers know special characteristics and properties for each of the system s I/O devices. Problem: Slow Performance I/O and CPU could not overlap; card reader very slow. Solution: Off-line operation speed up computation by loading jobs into memory from tapes and card reading and line printing done off-line. Operating System Concepts 1.10 Silberschatz and Galvin c 1998
10 Off-Line Operation card reader printer satellite processor system tapes main computer Operating System Concepts 1.11 Silberschatz and Galvin c 1998 Off-Line Operation (Cont.) Advantage main computer not constrained by the speed of the card readers and line printers, but only by the speed of faster magnetic tape units. No changes need to be made to the application programs to change from direct to off-line I/O operation. Real gain possibility of using multiple reader-to-tape and tape-to-printer systems for one CPU. Operating System Concepts 1.12 Silberschatz and Galvin c 1998
11 Spooling disk I/O CPU on-line card reader line printer Overlap I/O of one job with computation of another job. While executing one job, the OS: reads next job from card reader into a storage area on the disk (job queue). outputs printout of previous job from disk to printer. Job pool data structure that allows the OS to select which job to run next in order to increase CPU utilization. Operating System Concepts 1.13 Silberschatz and Galvin c 1998 Multiprogrammed Batch Systems Several jobs are kept in main memory at the same time, and the CPU is multiplexed among them. OS u1 u2 u3 u4 u1 L read () L+1 u2 CPU OS SIO scheduler I/O M block scheduler R R+1 interrupt scheduler Operating System Concepts 1.14 Silberschatz and Galvin c 1998
12 OS Features Needed for Multiprogramming I/O routine supplied by the system. Memory management the system must allocate the memory to several jobs. CPU scheduling the system must choose among several jobs ready to run. Allocation of devices. Operating System Concepts 1.15 Silberschatz and Galvin c 1998 Time-Sharing Systems Interactive Computing The CPU is multiplexed among several jobs that are kept in memory and on disk (the CPU is allocated to a job only if the job is in memory). A job is swapped in and out of memory to the disk. On-line communication between the user and the system is provided; when the operating system finishes the execution of one command, it seeks the next control statement not from a card reader, but rather from the user s keyboard. On-line file system must be available for users to access data and code. Operating System Concepts 1.16 Silberschatz and Galvin c 1998
13 Personal-Computer Systems Personal computers computer system dedicated to a single user. I/O devices keyboards, mice, display screens, small printers. User convenience and responsiveness. Can adopt technology developed for larger operating systems; often individuals have sole use of computer and do not need advanced CPU utilization or protection features. Operating System Concepts 1.17 Silberschatz and Galvin c 1998 Parallel Systems Multiprocessor systems with more than one CPU in close communication. Tightly coupled system processors share memory and a clock; communication usually takes place through the shared memory. Advantages of parallel systems: Increased throughput Economical Increased reliability graceful degradation fail-soft systems Operating System Concepts 1.18 Silberschatz and Galvin c 1998
14 Parallel Systems (Cont.) Symmetric multiprocessing Each processor runs an identical copy of the operating system. Many processes can run at once without performance deterioration. Asymmetric multiprocessing Each processor is assigned a specific task; master processor schedules and allocates work to slave processors. More common in extremely large systems. Operating System Concepts 1.19 Silberschatz and Galvin c 1998 Distributed Systems Distribute the computation among several physical processors. Loosely coupled system each processor has its own local memory; processors communicate with one another through various communication lines, such as high-speed buses or telephone lines. Advantages of distributed systems: Resource sharing Computation speed up load sharing Reliability Communication Operating System Concepts 1.20 Silberschatz and Galvin c 1998
15 Real-Time Systems Often used as a control device in a dedicated application such as controlling scientific experiments, medical imaging systems, industrial control systems, and some display systems. Well-defined fixed-time constraints. Hard real-time system. Secondary storage limited or absent; data stored in short-term memory, or read-only memory (ROM). Conflicts with time-sharing systems; not supported by general-purpose operating systems. Soft real-time system. Limited utility in industrial control or robotics. Useful in applications (multimedia, virtual reality) requiring advanced operating-system features. Operating System Concepts 1.21 Silberschatz and Galvin c 1998
16 Online Documentation on Operating Systems Examples: Multics Important project for historical reference, influence on UNIX - Concept of protection rings (see next slide) JavaOS (see slide after the next) Java VM can directly run on hardware => Additional services are made available without underlying OS Operating Systems Concepts 17
17 Multics Protection Rings Privileged system core Rings: decreasing privilege order Processes in outer rings call services from inner rings Operating Systems Concepts 18
18 JavaOS Structure Remark: JavaOS (released 1996) is discontinued since There are other projects, e.g., to write a full OS in Java (JNode, JOS, JX), but as far as I know, they have no relevance and little interest. Operating Systems Concepts 19
19 A couple of other (randomly selected?) OS Plan9: - Since 1990 designed as the successor of UNIX - Open source since Interesting concepts (local namespaces, everything is a single file ) - UNIX good enough despite its age (few urgent reasons to change) Minix3: - A research project since Famous exchange between Prof Andrew Tanenbaum and Linus Torwalds - Current version 3.3 (September 2014) Each has a kernel size between 15-25,000 lines of code. This ends the introduction to OS. Now transition to implementation. Operating Systems Concepts 20
20 Protected CPU Commands, CPU Modes, System Calls Operating Systems Concepts, 5 th Edition Slide set M10-c Slides , 2.19, and 3.14 Operating Systems Concepts 21
21 Hardware Protection Dual-Mode Operation I/O Protection Memory Protection CPU Protection Operating System Concepts 2.11 Silberschatz and Galvin c 1998 Dual-Mode Operation Sharing system resources requires operating system to ensure that an incorrect program cannot cause other programs to execute incorrectly. Provide hardware support to differentiate between at least two modes of operations. 1. User mode execution done on behalf of a user. 2. Monitor mode (also supervisor mode or system mode) execution done on behalf of operating system. Operating System Concepts 2.12 Silberschatz and Galvin c 1998
22 Dual-Mode Operation (Cont.) Mode bit added to computer hardware to indicate the current mode: monitor (0) or user (1). When an interrupt or fault occurs hardware switches to monitor mode interrupt/fault monitor user set user mode Privileged instructions can be issued only in monitor mode. Operating System Concepts 2.13 Silberschatz and Galvin c 1998 I/O Protection All I/O instructions are privileged instructions. Must ensure that a user program could never gain control of the computer in monitor mode (i.e., a user program that, as part of its execution, stores a new address in the interrupt vector). Operating System Concepts 2.14 Silberschatz and Galvin c 1998
23 Memory Protection Must provide memory protection at least for the interrupt vector and the interrupt service routines. In order to have memory protection, add two registers that determine the range of legal addresses a program may access: base register holds the smallest legal physical memory address. limit register contains the size of the range. Memory outside the defined range is protected. Operating System Concepts 2.15 Silberschatz and Galvin c 1998 Example of Memory Protection 0 monitor job job 2 base register job 3 limit register job 4 Operating System Concepts 2.16 Silberschatz and Galvin c 1998
24 Protection Hardware base base + limit CPU address yes yes < no no trap to operating system monitor addressing error memory When executing in monitor mode, the operating system has unrestricted access to both monitor and users memory. The load instructions for the base and limit registers are privileged instructions. Operating System Concepts 2.17 Silberschatz and Galvin c 1998 General-System Architecture Given that I/O instructions are privileged, how does the user program perform I/O? System call the method used by a process to request action by the operating system. Usually takes the form of a trap to a specific location in the interrupt vector. Control passes through the interrupt vector to a service routine in the OS, and the mode bit is set to monitor mode. The monitor verifies that the parameters are correct and legal, executes the request, and returns control to the instruction following the system call. Operating System Concepts 2.19 Silberschatz and Galvin c 1998
25 System Calls System calls provide the interface between a running program and the operating system. Generally available as assembly-language instructions. Languages defined to replace assembly language for systems programming allow system calls to be made directly (e.g., C, Bliss, PL/360). Three general methods are used to pass parameters between a running program and the operating system: Pass parameters in registers. Store the parameters in a table in memory, and the table address is passed as a parameter in a register. Push (store) the parameters onto the stack by the program, and pop off the stack by the operating system. Operating System Concepts 3.14 Silberschatz and Galvin c 1998
26 Exceptions The interrupt mechanism for CPU non maskable interrupts and exceptions conditions utilize Division by zero Invalid memory access (range, alignment ) Invalid opcode Double fault Known as Exceptions, traps, or software interrupts Operating Systems Concepts 27
27 Exceptions (continuation I) Handling Each exception (fault/trap/abort) is assigned an (interrupt) number Table of interrupt vectors When an exception is raised - Call corresponding interrupt handler Handlers Save contents of most registers in the Kernel Mode stack (coded in asm). Handle the exception by means of a high-level C function. Exit from the handler by means of the ret_from_exception( ) function. Operating Systems Concepts 28
28 Exceptions (continuation II) Difference between exceptions and interrupts (hardware and software interrupts) Exceptions are synchronous - The event is linked to a specific point in the code - UNIX signal Interrupts are asynchronous - The event can arrive while any part of the code executes - No UNIX signal Exceptions are processed identically, with a different goal: to correct the action of the faulty program. Operating Systems Concepts 29
29 Interrupts Table of interrupt vectors Vector range Use 0-19 NMI and exceptions Intel-reserved External interrupts 128 Programmed exception for system calls External interrupts 239 Local APIC timer interrupt 240 Local APIC thermal interrupt Reserved by Linux for future use Interprocessor interrupts 254 Local APIC error interrupt 255 Local APIC spurious interrupts Operating Systems Concepts 30
30 System Calls User space (unprivilegierter Modus) Kernel space (privilegierter Modus) Trap Library für OS Dienste Trap System calls, supervisory calls Can be directly achieved in the program (asm), often available within a library (C bindings) Operating Systems Concepts 31
31 Supervisory Calls (SVC) An SVC is a HW instruction used to cause an interrupt to request a service directly from the OS via an SVC routine. Processing of an exception goes hand in hand with a CPU mode change. Exception handler requires extended access rights (similar to interrupts) Mode change from software interrupts is used for OS calls Flow Load register with parameters, including OS services (syscall-nr *) Trigger an SVC (trap), e.g., 128 (0x80) for Linux and Intel Read results from the register. * See /usr/src/kernels/linux /include/asm-i386/unistd.h Operating Systems Concepts 32
32 States of a (Unix) Process new schedule() exit() ready wakeup() (durch einen anderen Prozess) preempt waiting running sleep_on() Blocking SVC: changes state from running waiting Operating Systems Concepts 33
33 Blocking System Calls Assumption: System call for reading data is issued, yet the I/O device is not ready Calling process must suspend itself Actions taken by the processes - Check whether resource (result) is ready, - If not: leave a note that it is interested in the resource (result), - CPU is given to another process or the process itself goes to sleep, - When reactivated: Check resource (result) again. In UNIX: If a resource becomes available (anew), ALL processes that were waiting on it are reactivated. All processes must check resource again: first one to complete the check wins. Operating Systems Concepts 34
34 Pseudo-Code for Blocking in Kernel for(;;) { if (resource_is_ready()) break; } request_the_resource(); sleep_on(resource_condition); /* block */ /* continue and use the resource... */ See Linux files: /usr/src/linux-source-2.x.y/kernel/sched*.c See also later: the Monitor concept Operating Systems Concepts 35
35 Implementation of sleep_on (Linux 2.2.x) sleep_on(struct wait_queue **p, int state) { unsigned long flags; struct wait_queue wait = { current, NULL }; if (!p) return; // process already sleeps if (current == task[0]) panic("task[0] trying to sleep"); current->state = state; add_wait_queue(p, &wait); save_flags(flags); sti(); // set the IF flag of the eflags ctrl reg schedule(); remove_wait_queue(p, &wait); restore_flags(flags); } Operating Systems Concepts 36
36 Implementation of wake_up (Linux 2.2.x) void wake_up(struct wait_queue **q) { struct wait_queue *tmp; struct task_struct *p; if (!q!(tmp = *q)) return; do { if ((p = tmp->task)!= NULL) { if ((p->state == TASK_UNINTERRUPTIBLE) (p->state == TASK_INTERRUPTIBLE)) p->state = TASK_RUNNING; } tmp = tmp->next; } while (tmp!= *q); } Operating Systems Concepts 37
37 Implementation of schedule (Linux 2.2.x) asmlinkage void schedule(void) { int c; struct task_struct *p, *next; sti(); /* Here additional code for UNIX signals handling */ c = -1; for (next = p = &init_task;;) { if ((p = p->next_task) == &init_task) break; if (p->state == TASK_RUNNING && p->counter > c) c = p->counter, next = p; } /*... Continued on next slide... */ Operating Systems Concepts 38
38 Implementation of schedule (continuation) /*... Continued from previous Slide... */ } if (!c) { for_each_task(p) /* this is a Macro! */ p->counter = (p->counter >> 1) + p->priority; } switch_to(next); /* and this hides assembly code */ Explanations of new Linux version can be found, for instance in /usr/src/linux-source /documentation/scheduler/ Operating Systems Concepts 39
39 Observations Regarding Earlier Linux Versions An increasing number of macros to increase portability. Example: sleep_on() in Linux void sleep_on(wait_queue_head_t *q) { SLEEP_ON_VAR current->state = TASK_UNINTERRUPTIBLE; SLEEP_ON_HEAD schedule(); SLEEP_ON_TAIL } Kernel reading becomes more difficult, many indirections. sched.c in 2.4.x has more than 100 LOC, while in more than 11,000 LOC! Latest stable Linux kernel version: Operating Systems Concepts 40
Module 1: Introduction
Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming Batched Systems Time-Sharing Systems Personal-Computer Systems Parallel Systems Distributed Systems Real-Time Systems
More informationModule 1: Introduction. What is an Operating System?
Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming Batched Systems Time-Sharing Systems Personal-Computer Systems Parallel Systems Distributed Systems Real-Time Systems
More informationModule 1: Introduction
Module 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming Batched Systems Time-Sharing Systems Personal-Computer Systems Parallel Systems Distributed Systems Real -Time
More informationChapter 1: Introduction
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real -Time Systems Handheld Systems Computing Environments
More informationChapter 1: Introduction
Chapter 1: Introduction What is an operating system? Simple Batch Systems Multiprogramming Batched Systems Time-Sharing Systems Personal-Computer Systems Parallel Systems Distributed Systems Real -Time
More informationOPERATING 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 informationOperating Systems Fundamentals. What is an Operating System? Focus. Computer System Components. Chapter 1: Introduction
Operating Systems Fundamentals Overview of Operating Systems Ahmed Tawfik Modern Operating Systems are increasingly complex Operating System Millions of Lines of Code DOS 0.015 Windows 95 11 Windows 98
More informationIntroduction. What is an Operating System? A Modern Computer System. Computer System Components. What is an Operating System?
Introduction CSCI 315 Operating Systems Design Department of Computer Science What is an Operating System? A Modern Computer System Computer System Components Disks... Mouse Keyboard Printer 1. Hardware
More informationOperating System: an Overview. Lucia Dwi Krisnawati, MA
Operating System: an Overview Lucia Dwi Krisnawati, MA What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. Operating system goals:
More informationECE397A Operating Systems. Chapter 1: Introduction
ECE397A Operating Systems Welcome! Instructor: Professor Csaba Andras Moritz Class webpage: http://www.ecs.umass.edu/ece/andras/courses/ece397 Instructors webpage: http://www.ecs.umass.edu/ece/andras 3
More informationOperating 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 informationChapter 1: Introduction. What is an Operating System? Overview Course (contd.) How do I spend my time? Computer System Components
ECE397A Operating Systems Overview Chapter 1: Introduction Welcome! Instructor: Professor Csaba Andras Moritz, andras@ecs.umass.edu Class webpage: http://www.ecs.umass.edu/ece/andras/courses/ece397_s2005
More informationCS370 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 informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2018 Lecture 2 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 2 What is an Operating System? What is
More informationIntroduction to Operating Systems
Introduction to Operating Systems B. Ramamurthy (adapted from C. Egert s and W. Stallings slides) 1/25/02 CSE421, Spring 2002 1 Introduction A computer system consists of hardware system programs application
More informationOperating Systems. Introduction & Overview. Outline for today s lecture. Administrivia. ITS 225: Operating Systems. Lecture 1
ITS 225: Operating Systems Operating Systems Lecture 1 Introduction & Overview Jan 15, 2004 Dr. Matthew Dailey Information Technology Program Sirindhorn International Institute of Technology Thammasat
More informationTo provide a grand tour of the major operating systems components To provide coverage of basic computer system organization
Introduction What Operating Systems Do Computer-System Organization Computer-System Architecture Operating-System Structure Operating-System Operations Process Management Memory Management Storage Management
More informationCSC 453 Operating Systems
CSC 453 Operating Systems Lecture 1: An Introduction What Is an Operating System? An operating system is the software that serves as an interface between the user (or his/her software applications) and
More informationModule 2: Computer-System Structures. Computer-System Architecture
Module 2: Computer-System Structures Computer-System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection General System Architecture Operating System Concepts 2.1 Silberschatz
More informationRicardo 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 informationIntroduction. 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 informationChapter 1: Introduction
Chapter 1: Introduction Silberschatz, Galvin and Gagne 2009 Chapter 1: Introduction What Operating Systems Do Computer-System Organization Computer-System Architecture Operating-System Structure Operating-System
More informationLecture 1 Introduction (Chapter 1 of Textbook)
Bilkent University Department of Computer Engineering CS342 Operating Systems Lecture 1 Introduction (Chapter 1 of Textbook) Dr. İbrahim Körpeoğlu http://www.cs.bilkent.edu.tr/~korpe 1 References The slides
More informationIntroduction to Computer Systems and Operating Systems
Introduction to Computer Systems and Operating Systems Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr Topics Covered 1. Computer History 2. Computer System
More informationOperating Systems. Computer Science & Information Technology (CS) Rank under AIR 100
GATE- 2016-17 Postal Correspondence 1 Operating Systems Computer Science & Information Technology (CS) 20 Rank under AIR 100 Postal Correspondence Examination Oriented Theory, Practice Set Key concepts,
More informationModule 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 informationFour 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 informationCourse Details. Operating Systems with C/C++ Course Details. What is an Operating System?
Lecture Course in Autumn Term 2013 University of Birmingham Lecture notes and resources: http://www.cs.bham.ac.uk/ exr/teaching/lectures/opsys/13_14 closed facebook group: UoBOperatingSystems anyone registered
More informationLecture 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 informationOperating Systems. Lecture Course in Autumn Term 2015 University of Birmingham. Eike Ritter. September 22, 2015
Lecture Course in Autumn Term 2015 University of Birmingham September 22, 2015 Course Details Overview Course Details What is an Operating System? OS Definition and Structure Lecture notes and resources:
More informationCS30002: 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 informationOperating 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 informationPart I Overview Chapter 1: Introduction
Part I Overview Chapter 1: Introduction Fall 2010 1 What is an Operating System? A computer system can be roughly divided into the hardware, the operating system, the application i programs, and dthe users.
More informationOS 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 informationOverview 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 informationEuropean University of Lefke. Instructor: Dr. Arif SARI
European University of Lefke CIS 105 Operating Systems Instructor: Dr. Arif SARI Email: asari@eul.edu.tr Introduction 1.1 Silberschatz, Galvin and Gagne 2009 Chapter 1: Introduction, Silberschatz, Galvin
More informationChapter 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 informationLast 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 informationLast 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 informationTDDI04, 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 informationIntroduction to OS (cs1550)
Introduction to OS (cs1550) Why take this class? Why with Mosse? it s mandatory it s a great class it s a great prof it s easy (NOT!!!! do not fool thyself!) it s good for you Life is not life anymore
More informationUnit 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 informationInstruction Cycle. Computer-System Architecture. Computer-System Operation. Common Functions of Interrupts. Chapter 2: Computer-System Structures
Summary Operating Systems evolved through stages Resident monitors Multiprogrammed batch systems Time-shared multiuser systems Desktop systems Specialized operating systems (real-time, handheld, parallel
More informationTopics. Operating System I. What is an Operating System? Let s Get Started! What is an Operating System? OS History.
Topics Operating System I What is an OS? OS History OS Concepts OS Structures Introduction Let s Get Started! What is an Operating System? What are some OSes you know? Pick an OS you know: What are some
More informationComputer-System Architecture (cont.) Symmetrically Constructed Clusters (cont.) Advantages: 1. Greater computational power by running applications
Computer-System Architecture (cont.) Symmetrically Constructed Clusters (cont.) Advantages: 1. Greater computational power by running applications concurrently on all computers in the cluster. Disadvantages:
More informationChapter 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 informationOPERATING 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 informationChapter 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 informationOften, 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 informationUNIT I OPERATING SYSTEMS OVERVIEW
UNIT I OPERATING SYSTEMS OVERVIEW Computer System Overview-Basic Elements, Instruction Execution, Interrupts, Memory Hierarchy, Cache Memory, Direct Memory Access, Multiprocessor and Multicore Organization.
More informationChapter 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 informationModule 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 informationEECS 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 informationEECS 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 informationOperating Systems Course 2 nd semester 2016/2017 Chapter 1: Introduction
Operating Systems Course 2 nd semester 2016/2017 Chapter 1: Introduction Lecturer: Eng. Mohamed B. Abubaker Note: Adapted from the resources of textbox Operating System Concepts, 9 th edition What is an
More informationTopics. Operating System. What is an Operating System? Let s Get Started! What is an Operating System? Where in the Book are we?
Topics Operating System What is an OS? OS History OS Concepts OS Structures Introduction Let s Get Started! What is an Operating System? What are some OSes you know? Guess if you are not sure Pick an OS
More informationTimers 1 / 46. Jiffies. Potent and Evil Magic
Timers 1 / 46 Jiffies Each timer tick, a variable called jiffies is incremented It is thus (roughly) the number of HZ since system boot A 32-bit counter incremented at 1000 Hz wraps around in about 50
More informationCOS 318: Operating Systems
COS 318: Operating Systems OS Structures and System Calls Prof. Margaret Martonosi Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall11/cos318/ Outline Protection
More information1. Operating System Concepts
1. Operating System Concepts 1.1 What is an operating system? Operating systems are an essential part of any computer system. An operating system (OS) is software, which acts as an intermediary between
More informationOperating 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 informationChapter 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 informationCourse Content. 07-Feb-17 Faculty of Computer Science & Engineering 1 BK TP.HCM
Course Content Course Overview Process Concepts Processes Scheduling Processes Synchronization Deadlocks & Problems solving Real Memory Virtual Memory I/O Management Files system Some modern OS Examples
More information! 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 informationCS6401- Operating System QUESTION BANK UNIT-I
Part-A 1. What is an Operating system? QUESTION BANK UNIT-I An operating system is a program that manages the computer hardware. It also provides a basis for application programs and act as an intermediary
More informationOperating 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 informationOPERATING SYSTEMS OVERVIEW
OPERATING SYSTEMS OVERVIEW Contents O.S.Functions The Evolution of O.S. Characteristics of O.S. Basic hardware elements Contents USER 1 USER 2 USER 3 USER n O.S.Components System calls O.S.Structure compiler
More informationLecture 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 informationChapter 1: Introduction. Operating System Concepts 9 th Edit9on
Chapter 1: Introduction Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Objectives To describe the basic organization of computer systems To provide a grand tour of the major
More informationOverview of Operating Systems
Lecture Outline Overview of Operating Systems Instructor: Dr. Tongping Liu Operating System: what is it? Evolution of Computer Systems and OS Concepts Different types/variations of Systems/OS Ø Parallel/distributed/real-time/embedded
More information7/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 informationOperating Systems 2010/2011
Operating Systems 2010/2011 Input/Output Systems part 1 (ch13) Shudong Chen 1 Objectives Discuss the principles of I/O hardware and its complexity Explore the structure of an operating system s I/O subsystem
More informationNETW3005 Operating Systems Lecture 1: Introduction and history of O/Ss
NETW3005 Operating Systems Lecture 1: Introduction and history of O/Ss General The Computer Architecture section SFDV2005 is now complete, and today we begin on NETW3005 Operating Systems. Lecturers: Give
More informationProcess 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 informationDM510 Operating Systems. Jacob Aae Mikkelsen
DM510 Operating Systems Jacob Aae Mikkelsen DM510 2014 DM510 Course Introduction Teacher: Jacob Aae Mikkelsen ( jamik@imada.sdu.dk ) Teaching Assistant: Daniel Fentz Johansen ( dfjohansen@gmail.com ) Course
More informationSome popular Operating Systems include Linux Operating System, Windows Operating System, VMS, OS/400, AIX, z/os, etc.
An Operating System (OS) is an interface between computer user and computer hardware. An operating system is software which performs all the basic tasks like file management, memory management, process
More informationCOSC243 Part 2: Operating Systems
COSC243 Part 2: Operating Systems Lecture 14: Introduction, and history of operating systems Zhiyi Huang Dept. of Computer Science, University of Otago Zhiyi Huang (Otago) COSC243 Lecture 14 1 / 27 General
More informationChapter 1: Introduction. Operating System Concepts 9 th Edit9on
Chapter 1: Introduction Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Chapter 1: Introduction 1. What Operating Systems Do 2. Computer-System Organization 3. Computer-System
More informationChapter 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 informationLast 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 informationCSC 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 informationChapter 9: Virtual-Memory
Chapter 9: Virtual-Memory Management Chapter 9: Virtual-Memory Management Background Demand Paging Page Replacement Allocation of Frames Thrashing Other Considerations Silberschatz, Galvin and Gagne 2013
More informationSystems Programming and Computer Architecture ( ) Timothy Roscoe
Systems Group Department of Computer Science ETH Zürich Systems Programming and Computer Architecture (252-0061-00) Timothy Roscoe Herbstsemester 2016 AS 2016 Exceptions 1 17: Exceptions Computer Architecture
More informationCPSC 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 informationReserves 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 informationIntroduction to Operating System
Introduction to Operating System An operating system is a program which manages all the computer hardware. It provides the base for application program and acts as an intermediary between a user and the
More informationComputer-System Architecture
Chapter 2: Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection General System Architecture 2.1 Computer-System Architecture 2.2 1
More informationComputer-System Architecture. Common Functions of Interrupts. Computer-System Operation. Interrupt Handling. Chapter 2: Computer-System Structures
Chapter 2: Computer-System Structures Computer-System Architecture Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection General System Architecture 2.1 2.2 Computer-System
More informationby I.-C. Lin, Dept. CS, NCTU. Textbook: Operating System Concepts 8ed CHAPTER 13: I/O SYSTEMS
by I.-C. Lin, Dept. CS, NCTU. Textbook: Operating System Concepts 8ed CHAPTER 13: I/O SYSTEMS Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem Transforming I/O Requests
More informationRoadmap. 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 informationRoadmap. 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 informationArchitectural Support for Operating Systems
Architectural Support for Operating Systems (Chapter 2) CS 4410 Operating Systems [R. Agarwal, L. Alvisi, A. Bracy, M. George, E. Sirer, R. Van Renesse] Let s start at the very beginning 2 A Short History
More informationOperating System For Computer Science & Information Technology By www.thegateacademy.com Syllabus Syllabus for Operating System Processes, Threads, Inter Process Communication, Concurrency and Synchronization,
More informationOPERATING SYSTEM. Functions of Operating System:
OPERATING SYSTEM Introduction: An operating system (commonly abbreviated to either OS or O/S) is an interface between hardware and user. OS is responsible for the management and coordination of activities
More informationAndrew 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 informationOperating 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 informationComputer 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 informationIntroduction 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 informationOperating 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 informationPrinciples of Operating Systems CS 446/646
Principles of Operating Systems CS 446/646 1. Introduction to Operating Systems a. Role of an O/S b. O/S History and Features Serial processing Simple batch systems Multiprogrammed batch systems Time-sharing
More informationUNIT 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