10/26/2009. Last Week

Size: px
Start display at page:

Download "10/26/2009. Last Week"

Transcription

1 Last Week Logic gates are built out of transistors There are many different logic gates NAND is functionally complete Digital circuits process data using gates Half and full adder 1

2 This week Software Operating systems Kernels Shells 2

3 Programs Programs tell the computer what to do Very earliest computers had fixed programs Program was part of computer like e.g. a digital calculator Programming involved physical redesign Stored programs Since Manchester Baby (1948) Program is data Program can now be processed by computer Programmer can easily change it Computer can change its own programs 3

4 Hardware & Software Hardware: physical parts of the computer e.g. processor, RAM, mass storage to improve you replace Software: programs stored on computer e.g. operating system, browser, to improve you can update Firmware Computer program run on non-cpu hardware Can be updated by software Examples BIOS (Basic Input/Output System) controls bootup of PC Optical drive (e.g. DVD) controller, can be updated as technology evolves Halfway between software and hardware 4

5 Software System software Basic operations of computer Operating system: manages all activity Utility software: supports routine tasks e.g. defrag, virus scan, compression,... Application software: supports users needs e.g. web browser, word processor 5

6 Operating Systems Software that manages activities and resources of computer Windows, Linux, OS X,... Allows user to start programs Environment for programs to run Kernel surrounded by shell Operating systems What is an operating system? It is a program that manages all other programs. These other programs or applications make requests from the operating system (ex. Open program). PC Operating systems DOS Windows 3.1, 95, 98, NT, 2000,ME, XP, Vista Linux Mac Operating systems OS 8.6, 9.0, 9.1, X.2, X.4 6

7 Why Study Operating Systems? Most likely you won't write an OS, so why study them? Primary intersection point: It draws on many CS areas - software engineering, computer architecture, data structures, networking, algorithms. Learn programming techniques: One can apply data structures, conflict resolution, concurrency issues, resource management, etc., used in OS to other areas. "Grungy" things sometimes do require modifications to OS. You can't do this if you don't understand them! Curiosity look under the hood. What is an Operating System? An Operating System (OS) is a program that controls the execution of computer programs and act as the interface between the user and the hardware. An OS functions as: A resource manager It manages and allocates resources such that the computer hardware can be used in an efficient manner. Examples of resources: processes, CPU(s), memory, file system, networking, etc. A virtual machine: OS hides the details of the underlying hardware OS provides a common API to applications and services. An OS makes the machine convenient and efficient to use. 7

8 History of Operating Systems. Once upon a time Human Computer History of Operating Systems (cont) First generation vacuum tubes, plug boards ENIAC (mid s) Just part of it!! Single program execution Why? Hardwire programming Programming slow, not offline! Plug board and punch cards. No programming language. Programmer spent quite a lot time to find the real Bug. 8

9 History of Operating Systems (cont) Second generation transistors, batch systems. Early batch system (overlapped CPU & I/O operations) Buffer slow I/O onto fast tape drives connected to CPU, replicate I/O devices. Spool data to disk. Programming languages: Fortran or assembler (on punch cards!). Two main applications: Scientific. Data processing. History of Operating Systems (cont) Third generation IBM 360 series (mid- 1960s) Multi-programming systems: Run several programs at the same time. Spooling as jobs finished. New problems: Response time. Thrashing. File-systems. 9

10 History of Operating Systems (cont) Interactive timesharing systems: Lots of cheap terminals and one computer All users interact with the system at once Debugging is much easier Disks are cheap so put programs and data online 1 punch card = 100 bytes New problems: Need pre-emptive scheduling to maintain adequate response time Need to avoid thrashing (swapping programs in and out of memory too often) Need to provide adequate security measures UNIX developed at Bell Labs (Thompson, Ritchie) History of Operating Systems (cont) Fourth generation 1980 present Personal computing CPUs are cheap enough for everyone, yet powerful enough to be useful. There can be only one IBM PC The only real competitor left vs. IBM 8086 SUPERBOWL 10

11 OS s: The Bad News... Modern operating system are: Enormous: Linux v2.6 approx. 5.9 million lines of code (128MB RAM) Win approx. 35 million lines of code (64MB RAM) WinXP approx. 40 million lines of code (128MB RAM) Win2003 approx 50 million lines of code (256MB RAM) Complex: Poorly understood too large for one person to comprehend. (Always) full of bugs and (often) unreliable. Dependent on hardware in strange ways (makes porting difficult). Commercial-Released O/S A commercial-release operating systems is any operating system which has all of the following attributes: It costs money, typically more than $50 Source code for the system is not available There are strict limits as to how the system may be copied. Consequently, Windows, MacOS, DEC Ultrix, Solaris, OS/2, and other similar platforms are commercial operating systems. 11

12 The problems The needs of the computer user have to be balanced with the companies need for profit. Here is some of the issues: Slow release pattern High cost Tech Support? Lack of source code availability Planned obsolescence of hardware Crash-prone 12

13 Windows Hybrid kernel (NT) System libraries: C:\windows\system32\ Shells: cmd.exe (CL) and explorer.exe (GUI) System tools: cmd.exe 13

14 The Unix Operating System The UNIX operating system was designed to let a number of programmers access the computer at the same time and share its resources. Bell Laboratories created the UNIX OS in There goals were to design an operating system to satisfy the following objectives: Simple and elegant Written in a high level language rather than assembly language (It is written in C) Allow re-use of code The Unix Structure Structure: Kernel and shell kernel (in assembly language, small) shell (in C). The benefit of this structure is that UNIX is highly customizable and new features are relatively simple to add. 14

15 What is UNIX? 29 The Unix Kernel This is the heart of the UNIX Operating System. The kernel is at the core of each UNIX system and is loaded in whenever the system is started up The kernel creates the same virtual machine 30 15

16 The Unix Kernel It performs the tasks that create and maintain the UNIX environment managing the entire resources of the system. It: Manages the machine's memory Schedules the work done by the CPU Organizes the transfer of data from one part of the machine to another Accepts instructions from the shell and carries them out Enforces access permissions Keeps track of the disks, tapes, printers, terminals, communication lines etc attached to the computer. You do not need to know anything about the kernel in order to use a UNIX system 31 The Kernel Core of the operating system Coordinates activity of CPU, memory & I/O Provides basic services to other software Open a file Create a directory Connect to network host... 16

17 Parts of the Kernel File manager Where files are stored, and free space Which users allowed access Device drivers Communicate with attached I/O devices Memory manager Assign RAM space to individual tasks Paging: when RAM is full it can overflow onto hard disk Kernels In Action Optimised for different applications Space: embedded devices (PalmOS) Reliability: no-access environments (VxWorks) Real-time response: guidance systems (QNX) Scalability: mainframes (z/os) 17

18 Kernel Design Monolithic: a single kernel does all the work Microkernel: a simple kernel delegates services to many servers Hybrid: core services in kernel + some servers The Shell Interface between user and kernel Command-line shell GUI (Graphical User Interface) shell 18

19 The Shell The Shell is a program that provides an interpreter and interface between the user and the UNIX Operating System. Upon login the user is placed in their own shell which prompts for and reads commands. The commands are translated and passed on to the kernel for execution and the results are then displayed at the terminal. Input can be via the keyboard or read from file. Files containing commands may be created, allowing users to build their own commands. In this manner, users may tailor UNIX to their individual requirements and style. 37 The Shell Standard Shell features: Create an environment that meets your needs Write shell scripts Define command aliases Manipulate the command history Edit the command line Some shells provide more facilities than others 38 19

20 The Shell There are several shells available for Unix; You can use any one of these shells if they are available on your system. You can switch between the different shells once you have found out if they are available. Bourne shell (sh). C shell (csh). TC shell (tcsh). Korn shell (ksh). Bourne Again SHell (bash). 39 Operating Environment What is common to (most) installations of OS OS kernel System libraries Common functionality for applications One or more shells for user interaction Utility software, for easy access to OS services 20

21 The Main Features of UNIX The features: Multitasking capability, Multi-user capability, Portability Security Most computers hosting WWW sites use UNIX (or Linux) as their operating system WHY? 21

22 Reasons for its Popularity Only a very small amount of code in UNIX is written in assembly language, making it easier for a computer vendor to get UNIX running on their system. The user benefit is that UNIX runs on a wide variety of computer systems. The application program interface allows many different types of applications to be easily implemented under UNIX without writing assembly language. These applications are relatively portable across multiple vendor hardware platforms. Reasons for its Popularity Third party software vendors can save costs by supporting a single UNIX version of their software rather than four completely different vendor specific versions requiring four times the maintenance. Vendor-independent networking allows users to easily network multiple systems from many different vendors. 22

23 Free Operating Systems Linux (including Red Hat Official Linux, though that is a borderline case) and FreeBSD are free operating systems. They are often available for the cost of the media ($2 to $5), The source code is available, often included with the main distribution; There are few limits to redistributing the system. 23

24 Linux Monolithic kernel, Unix-like System libraries, e.g. /lib/ Shells: POSIX shells (e.g. bash) and desktop environments (e.g. GNOME) System tools: GNU The Linux Operating System As UNIX spread, many people wanted to adapt it for their own needs. In 1987 Professor Andrew S. Tanenbaum invented Minix, an open-source OS that cloned UNIX. A young computer student in Finland named Linus Torvalds became intrigued by the possibilities of MINIX In 1991, he posted a note in the MINIX newsgroup that he had started work on a free operating system and asked his fellow programmers to help Over the next few years, developers for this new OS, dubbed Linux (a mix of Linus and UNIX) swelled from the hundreds to the thousands. 24

25 Linux Operating System Characteristics Unix like Open source (software that can be freely shared with no one person owning the code) requires less system resources to operate smoothly in its native form, Linux has a command line interface xwindows interface The fact that Linux is being constantly updated and refined with the latest technologies ensures that it is reliable and secure Reasons for its Popularity Linux is Network-friendly more networks set up in homes as costs for basic computer hardware and networking equipment continue to fall. Linux is capable of acting as client and/or server to any of the popular operating systems in use today Linux is Multi-user Built on the Unix design philosophy Linux is Open Gives the ability to write kernel extensions and drivers as needed Linux is Reliable and Backwards-Compatible Linux is "Free" 25

26 OS X Hybrid kernel (XNU), Unix varient Core OS is Darwin, based on BSD System libraries: /usr/lib/ Shells: POSIX shells, e.g. Bash Desktop GUI (Aqua, Finder) built on top of OS 26

27 OS X for Mac The kernel for the OS X, was created in conjunction with Apple's own engineers and computer scientists from Carnegie-Mellon and the University of California at Berkley. Apple has decided to embrace aspects of open source code creation (While Microsoft is well known for maintaining an airtight lid on its Windows source code, ). Benefits: encourage developers to submit modifications and enhancements. programmers will be able to customise Mac OS X to meet their specific needs. whole host of Macintosh products from Apple and third parties that incorporate its exciting new technologies, new networking standards lets you automatically create a network of applications, printers and other peripheral devices without having to manually configure drivers or settings. 27

28 IBM OS/2 and OS/2 WARP OS/2 was developed by Microsoft and IBM, but was later abandoned by Microsoft when it developed its own Windows operating system The "revolutionary" version was OS/2 warp 3, produced in 1994 Although it often has been declared extinct, OS/2 is still used among financial institutions and also has a small but enthusiastic group of desktop users. More Recent Development in OS Parallel Operating Systems. Distributed Operating Systems. Clustered Operating Systems. Real time Operating Systems. Embedded Operating Systems. 28

29 OS Components Operating Systems Multiuser: several users on same OS Multitasking: each running several programs But a processor can only do one thing at a time! Multiprogramming: allocates time slices of a single processor to task Load balancing: allocates tasks among multiple processors 29

30 Computer Platforms War PC (most of the market share) competitive open mass market, drives price down varying quality lower cost speedy software developments and high availability Apple Macintosh (small part of the market share) strict licensing/approval of third party products higher cost can be higher quality specialist applications - example: audio, graphics CPU I.E. Central Processing Unit The brain of the computer. All incoming events and commands are interpreted here. Instructions or calculations are carried out and the results of these are output. This is what happens when you type something and it subsequently appears on the screen. Each processor in the CPU is measured by how fast it oscillates (spins). If a processor has a speed of 500 million instructions per second (500 million oscillations), its speed is 500MHz Examples of processors: Pentium and PowerPC 30

31 CPU Protection 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. User mode execution done on behalf of a user. Monitor mode (also kernel mode or system mode) execution done on behalf of operating system. CPU Protection (cont) Mode bit added to computer hardware to indicate the current mode: kernel (0) or user (1). When an interrupt or fault occurs hardware switches to kernel mode. Interrupt/fault kernel user set user mode Privileged instructions can be issued only in monitor mode. 31

32 Memory Structure Typical memory hierarchy numbers shown are rough approximations Memory Protection One base-limit pair and two base-limit pairs 32

33 I/O Devices I/O devices and the CPU can execute either synchronously or asynchronously. Each device controller is in charge of a particular device type. Each device controller has a local buffer. CPU moves data from/to main memory to/from local buffers. I/O is from the device to local buffer of controller. Device controller informs CPU that it has finished its operation by causing an interrupt. I/O Devices 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). 33

34 OS Interfaces (Shell, API) Command interpreter: Interface between OS and your fingers (or mouth or toes!) Commands to manipulate files, run and kill programs, access remote machines, change protections on files, etc. Some OS s have built-in command interfaces, some allow an interface to be plugged in Unix: shell (csh, tcsh, bash, ash, zsh, ) System calls - Programmer Interface System calls are the programmer s interface to the operating system In modern systems, generally available from a high-level language such as C Examples: fopen(), ioctl() (see MOS Fig 1.18 for more systems calls) Previously: Most of OS was written in assembly and system calls were made from assembly language 34

35 OS Structure Or Not? Simplest system structure: little or none Example: MS-DOS Written to squeeze the most out of limited hardware Small, some structure, but programmer is free to go around whatever structure is present anyway Monolithic kernel vs. Micro-kernel Monolithic approach: OS provides: File system, Scheduling, Device management, and etc. Components are separated by discipline and hacking requires care. For example, the traditional Unix has two layers. - Systems programs, user programs. Micro-kernel approach: Make kernel very small (provides only a limited amount of the total OS functionality, like interprocess communication & basic H/W control). Plug in virtual memory system, file system, etc. Gives encapsulation w/o strict layering. 35

36 Virtual Machines Virtual machine: fancy software which exports an interface that looks like a particular type of machine Can create illusions of multiple computer systems, which can be like the physical hardware or completely different! Sometimes a VM environment actually produces a virtual machine that's faster than the real thing on the same hardware! Example: VDM's under OS/2 (virtual dos machines) How can this be? The Java Virtual Machine Java achieves (relative) platformindependence through the JVM (Java Virtual Machine) JVM (java) is implemented for each target platform Java compiler (javac) emits bytecode (as *.class files) rather than architecturespecific machine code JVM interprets the bytecode 36

37 The Java Virtual Machine, Cont. Problem: Speed! Java code typically executes more slowly than equivalent C or C++ code Solutions (more like workaround!) JIT (Just In Time) compiler, which compiles the bytecode into native machine code immediately before execution AOT (Ahead of Time) compiler, which compiles the bytecode into native machine code. Interesting issue: caching Summary Stored program concept: program is data Software & hardware (& firmware) OS = Kernel + Shell Kernels designed for different applications Monolithic, microkernel and hybrid kernels GUI & command-line shells Reading: Brookshear 3 37

Topics. 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 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 information

Chapter 2: Operating-System Structures

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

More information

Chapter 2: System Structures

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

More information

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

Operating-System Structures

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

More information

Chapter 2. Operating-System Structures

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

More information

Chapter 2: Operating-System Structures

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

More information

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

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

More information

Chapter 2: Operating-System Structures

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

More information

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

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

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

More information

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

Chapter 2: Operating-System

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

More information

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

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

More information

Chapter 2: Operating-System Structures

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

More information

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

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

More information

Operating Systems CS3502 Spring 2018

Operating Systems CS3502 Spring 2018 Operating Systems CS3502 Spring 2018 Presented by Dr. Guoliang Liu Department of Computer Science College of Computing and Software Engineering Kennesaw State University Computer Systems See Appendix G

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

Chapter 2: Operating-System Structures

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

More information

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

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

More information

CPS221 Lecture: Operating System Functions

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

More information

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

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

Overview of Unix / Linux operating systems

Overview of Unix / Linux operating systems Overview of Unix / Linux operating systems Mohammad S. Hasan Staffordshire University, UK Overview of Unix / Linux operating systems Slide 1 Lecture Outline History and development of Unix / Linux Early

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

CS420: Operating Systems. OS Services & System Calls

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

More information

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

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

More information

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

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

More information

CS307: Operating Systems

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

More information

Introduction to Computer Systems and Operating Systems

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

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

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

An Operating System History of Operating Systems. Operating Systems. Autumn CS4023 Operating Systems Autumn 2017-2018 Outline 1 2 What is an Operating System? From the user s point of view an OS is: A program that acts as an intermediary between a user of a computer and the computer

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

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

CS Operating Systems (OS) Introduction. Lecture 2 Sept 12, 2018

CS Operating Systems (OS) Introduction. Lecture 2 Sept 12, 2018 CS 3305 Operating Systems (OS) Introduction Lecture 2 Sept 12, 2018 Operating System (OS) What is an Operating Systems (OS)? The software layer between user applications and hardware Manages / Optimizes

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

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

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

More information

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

CPS221 Lecture: Operating System Functions

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

More information

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

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

More information

Systems Programming. The Unix/Linux Operating System

Systems Programming. The Unix/Linux Operating System Systems Programming The Unix/Linux Operating System 1 What is UNIX? A modern computer operating system Operating system: a program that acts as an intermediary between a user of the computer and the computer

More information

CS 153 Design of Operating Systems

CS 153 Design of Operating Systems CS 153 Design of Operating Systems Winter 19 Lecture 2: Historical perspective Instructor: Nael Abu-Ghazaleh Last time What is an OS? What roles does it play? Today: Historic evolution of Operating Systems

More information

Types and Functions of Win Operating Systems

Types and Functions of Win Operating Systems LEC. 2 College of Information Technology / Software Department.. Computer Skills I / First Class / First Semester 2017-2018 Types and Functions of Win Operating Systems What is an Operating System (O.S.)?

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

Operating System Concepts Rab Nawaz Khan Jadoon

Operating System Concepts Rab Nawaz Khan Jadoon Operating System Concepts Rab Nawaz Khan Jadoon DCS COMSATS Institute of Information Technology Lecturer COMSATS Lahore Pakistan Operating System Concepts Operating System Operating System It is a system

More information

Fundamental Concepts and History

Fundamental Concepts and History Fundamental Concepts and History Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr Topics Covered I. Fundamental Concepts II. Evolution of OS 2 Key Concepts

More information

Module 1 Introduction/OS Overview

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

More information

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

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

More information

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

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

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

More information

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

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

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

More information

Chapter 14 Operating Systems

Chapter 14 Operating Systems Chapter 14 Systems Ref Page Slide 1/54 Learning Objectives In this chapter you will learn about: Definition and need for operating Main functions of an operating Commonly used mechanisms for: Process management

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

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

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

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

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

Introduction To Operating System

Introduction To Operating System 1 Introduction To Operating System What is Operating System? An operating system is a program that controls the execution of application and acts as an interface between the user of a computer and the

More information

CS 390 Chapter 2 Homework Solutions

CS 390 Chapter 2 Homework Solutions CS 390 Chapter 2 Homework Solutions 2.1 What is the purpose of... System calls are used by user-level programs to request a service from the operating system. 2.5 What is the purpose of... The purpose

More information

Computer Science 4500 Operating Systems. Welcome! In This Module. Module 1 Introduction, Overview and History

Computer Science 4500 Operating Systems. Welcome! In This Module. Module 1 Introduction, Overview and History Computer Science 4500 Operating Systems Module 1 Introduction, Overview and History Updated: January 13, 2015 2008 Stanley A. Wileman, Jr. Operating Systems Slide 1 Welcome! Welcome to Operating Systems.

More information

Chapter 2 Operating-System Structures

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

More information

TYPES OF OPERATING SYSTEMS. Dimple Juneja

TYPES OF OPERATING SYSTEMS. Dimple Juneja TYPES OF OPERATING SYSTEMS Outline Operating Systems Multiprogramming Systems Time-sharing Systems Multitasking Systems Operating System Architectures OS: A Usual View What is an operating system? An interface

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

Operating Systems. I. Introduction. Eurecom

Operating Systems. I. Introduction. Eurecom Operating Systems I. Introduction Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/os/ @OS Eurecom Outline 2/42 Fall 2018 Institut Mines-Telecom Operating

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

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

Chapter 1: Introduction Operating Systems MSc. Ivan A. Escobar

Chapter 1: Introduction Operating Systems MSc. Ivan A. Escobar Chapter 1: Introduction Operating Systems MSc. Ivan A. Escobar What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. Operating system

More information

Chapter 14 Operating Systems

Chapter 14 Operating Systems Chapter 14 Operating Systems Ref Page Slide 1/54 Learning Objectives In this chapter you will learn about: Definition and need for operating system Main functions of an operating system Commonly used mechanisms

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

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

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

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

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

Chapter 2: System Structures

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

More information

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

Operating Systems. Operating Systems

Operating Systems. Operating Systems The operating system defines our computing experience. It is the first software we see when we turn on the computer, and the last software we see when the computer is turned off. It's the software that

More information

Principles of Operating Systems CS 446/646

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

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

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

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

OS - Introduction Ezio Bartocci Institute for Computer Engineering

OS - Introduction Ezio Bartocci Institute for Computer Engineering TECHNISCHE UNIVERSITÄT WIEN Fakultät für Informatik Cyber-Physical Systems Group OS - Introduction Ezio Bartocci Institute for Computer Engineering ezio.bartocci@tuwien.ac.at Operative System What is it?

More information

31268_WEB SYSTEMS LECTURE 1. Operating Systems Part 1

31268_WEB SYSTEMS LECTURE 1. Operating Systems Part 1 31268_WEB SYSTEMS LECTURE 1 Operating Systems Part 1 What is an operating system? - A piece of software that sits between all programs and the computer s hardware - Manages computer - Runs programs - Interface

More information

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

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

More information

CS370 Operating Systems

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

More information

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

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

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

More information

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

OPERATING SYSTEMS & UTILITY PROGRAMS

OPERATING SYSTEMS & UTILITY PROGRAMS OPERATING SYSTEMS & UTILITY PROGRAMS System Software System software consists of the programs that control the operations of the computer and its devices. Functions that system software performs include:

More information

Chapter 1: Introduction

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

Introduction to Linux Overview and Some History

Introduction to Linux Overview and Some History Introduction to Linux Overview and Some History Computational Science and Engineering North Carolina A&T State University Instructor: Dr. K. M. Flurchick Email: kmflurch@ncat.edu Operating Systems and

More information

Lecture 1 Introduction (Chapter 1 of Textbook)

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

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

OS structure. Process management. Major OS components. CSE 451: Operating Systems Spring Module 3 Operating System Components and Structure CSE 451: Operating Systems Spring 2012 Module 3 Operating System Components and Structure Ed Lazowska lazowska@cs.washington.edu Allen Center 570 The OS sits between application programs and the it mediates

More information

Instruction Cycle. Computer-System Architecture. Computer-System Operation. Common Functions of Interrupts. Chapter 2: Computer-System Structures

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

Chapter 3: Operating-System Structures

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

More information

Operating System Structure

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

More information