Chapter 6. An Introduction to System Software and Virtual Machines. INVITATION TO Computer Science

Size: px
Start display at page:

Download "Chapter 6. An Introduction to System Software and Virtual Machines. INVITATION TO Computer Science"

Transcription

1 Chapter 6 An Introduction to System Software and Virtual Machines INVITATION TO Computer Science 1

2 Objectives After studying this chapter, students will be able to: Describe the main categories of system tasks Compare the virtual machine created for the user by system software with the naked machine Explain the benefits of writing system software in assembly language, rather than machine language Read and write short assembly language programs Describe how an assembler translates assembly language programs into machine instructions Invitation to Computer Science, 6th Edition 2

3 Objectives (continued) After studying this chapter, students will be able to: List five key tasks of an operating system, and explain what each is and why it is critical to modern systems Describe the different generations of operating systems, what the features of each generation were, and how each generation solved a drawback of the previous generation Invitation to Computer Science, 6th Edition 3

4 Introduction A naked machine has no tools or programs to help the user Write instructions in binary Write data in binary Load instructions into memory one cell at a time Initiate program run Too difficult for humans to do We must build an interface to hide the details and make the computer easier to build Invitation to Computer Science, 6th Edition 4

5 System Software System software is a collection of programs to manage resources of the computer serve as intermediary between user and hardware System software creates a virtual machine (or virtual environment) that user sees Invitation to Computer Science, 6th Edition 5

6 System Software (continued) Operating system: central system software Communicates with users Starts up other system software and applications as needed Graphical user interface (GUI), often pronounced gooey visual interface to operating system (or other system software/applications) I/O systems: communicate with various devices Invitation to Computer Science, 6th Edition 6

7 System Software (continued) Language services: support high level languages Memory managers: allocate memory to programs Information managers: organize mass storage Scheduler: manage programs waiting to run Utilities: tools, including program librariesi Invitation to Computer Science, 6th Edition 7

8 System Software (continued) Naked machine: 1. Write program in binary 2. Load instructions one-by- one into memory 3. Insert start into memory address 0 and push go button 4. Read results from memory one-by-one, in binary Virtual machine: 1. Write program using text editor in high-level language 2. Save program to folder 3. Use translator t to convert to binary 4. Use scheduler to load and run 5. Use I/O system to print results Invitation to Computer Science, 6th Edition 8

9 Assemblers and Assembly Language Assembly language Instructions map one-to-one to machine language Symbolic op codes (not binary) Symbolic addresses for instructions and data Pseudo-ops for data generation and more (data in human-friendly terms) Assembly = a low-level l l programming language Java, C, Python = high-level programming languages Invitation to Computer Science, 6th Edition 9

10 Invitation to Computer Science, 6th Edition 10

11 Assemblers and Assembly Language (continued) Assembly language process: Source program, in assembly language Translated by the assembler to Object program, in machine language Loader places in memory Hardware runs Invitation to Computer Science, 6th Edition 11

12 Invitation to Computer Science, 6th Edition 12

13 Assemblers and Assembly Language (continued) Example Assembly language: NEXTSTEP: LOAD X -- Put X into reg. R label: opcode address field -- comment Label is optional name for this instruction s s location Op code mnemonic and address field translate to machine language Comments are ignored by assembler, just for human use Invitation to Computer Science, 6th Edition 13

14 Invitation to Computer Science, 6th Edition 14

15 Assemblers and Assembly Language (continued) Advantages over machine code: Clarity, readability, and maintainability Can be placed at different locations in memory Pseudo-op: commands in the program directed to the assembler, not converted to machine instructions.begin and.end to mark where instructions are.data to mark memory location as holding data: COUNTER:.DATA 0 X:.DATA 12 Invitation to Computer Science, 6th Edition 15

16 Invitation to Computer Science, 6th Edition 16

17 Assemblers and Assembly Language (continued) Simple examples: x = y + 3 input a and b while a < b do print a a = a 2 LOAD Y ADD THREE STORE X -- Data comes after.end X:.DATA 0 -- X is initially 0 Y:.DATA 5 Y is initially 5 THREE:.DATA 3 The constant 3 IN A IN B LOOP1: LOAD A A:.DATA 0 COMPARE B B:.DATA 0 JUMPLT LOOP1END TWO:.DATA 2 JUMPEQ LOOP1END OUT A LOAD A SUBTRACT TWO STORE A JUMP LOOP1 LOOP1END: Invitation to Computer Science, 6th Edition 17

18 Invitation to Computer Science, 6th Edition 18

19 19

20 Assemblers and Assembly Language Translation and loading: (continued) Assembler translates to machine language Convert symbolic op codes to binary equivalents Convert symbolic labels to memory addresses Perform pseudo-op actions Write object file containing machine instructions Loader gets program ready to run Places instructions in memory Triggers the hardware to run the program Invitation to Computer Science, 6th Edition 20

21 Assemblers and Assembly Language (continued) Converting symbolic op codes to binary ones Assembler maintains a table Assembler looks up symbolic op codes in the table and substitutes the binary analogue Use binary search to optimize table lookups 21

22 Assemblers and Assembly Language (continued) Converting symbolic labels to memory addresses Assembler needs two passes looks over assembly code two times First pass: Keep a count of how many instructions from the start Collect symbolic labels and add to symbol table along with location counter Invitation to Computer Science, 6th Edition 22

23 Invitation to Computer Science, 6th Edition 23

24 24

25 Assemblers and Assembly Language Second pass: (continued) Look up and replace op codes Substitute label references with location from symbol table Set up.data pseudo-ops with location and binary value Write instructions to object file Invitation to Computer Science, 6th Edition 25

26 26

27 Invitation to Computer Science, 6th Edition 27

28 Problem 5 on page 328 Exercises Problem 7 on page 328 Problem 9 (a) and (c) on page 328 Solutions are posted in your D2L account. Invitation to Computer Science, 6th Edition 28

29 Homework Assignments Part 1 Problem 4 on page 328 Problem 9 (b), (d) and (e) on page 328 Problem 15 on page 329 Part 2: Lab programming Invitation to Computer Science, 6th Edition 29

30 Operating Systems System commands: user instructions about what the computer should do Demonstrate system commands of the DOS system: type help in the command line. Invitation to Computer Science, 6th Edition 30

31 Operating Systems (continued) User interface: user communicates with operating system Operating system as receptionist and dispatcher User command system software scheduled and run repeat Text-based: System commands typed at a prompt in a terminal Command language must be learned GUI-based: System commands by visual/mouse interface Invitation to Computer Science, 6th Edition 31

32 32

33 Invitation to Computer Science, 6th Edition 33

34 Operating Systems (continued) System security and protection: permit only authorized access to resources Operating system as security guard Access protected by usernames and passwords Superusers have more privileges Encrypt data to increase security Folders and files have authorization lists: read a file, add new information to a file, change existing information, delete a file Invitation to Computer Science, 6th Edition 34

35 Invitation to Computer Science, 6th Edition 35

36 Operating Systems (continued) Efficient allocation of resources: keep CPU busy and all programs making progress Operating system as traffic cop Multiple programs active at one time Every yprogram is in one of three states: Running: program currently using the CPU Waiting: programs waiting for I/O operations to complete Ready: programs ready for a turn on CPU Keep a queue of ready programs and share Invitation to Computer Science, 6th Edition 36

37 Operating Systems (continued) Example of sharing CPU: Waiting Ready Running B A C A makes I/O request Waiting Ready Running A C B A finishes with I/O Waiting Ready Running C B A Invitation to Computer Science, 6th Edition 37

38 Operating Systems (continued) Safe use of resources: ensure that computer doesn t get stuck in deadlock Multiple programs requesting access to resources Deadlock occurs when all programs have some resources, and are waiting for resources held by others Deadlock prevention: if you can t get all resources, release all you have and try again later Deadlock recovery: if no acknowledgement, send message again Invitation to Computer Science, 6th Edition 38

39 Deadlock Invitation to Computer Science, 6th Edition 39

40 Operating Systems (continued) Historical development of operating systems First generation: nearly naked computer Programmer hand-loaded programs Second generation: batch operating system Programmers gave programs to operators Operators collects a batch of programs Used I/O computer to translate programs to tape Ran programs as a group Used I/O computer to translate output to text/paper Job control language: instructions to OS Invitation to Computer Science, 6th Edition 40

41

42

43 Operating Systems (continued) Third generation: multiprogrammed operating systems Multiple programs loaded at once Switch between programs when I/O happens Computer security now required! Privileged operations only available to administrator Bound memory a program can legitimately access Invitation to Computer Science, 6th Edition 43

44 Operating Systems (continued) Time-sharing system (also third generation) Multiprogrammed, but users are on system interactively Users need illusion of sole access Allocate run time in time slices. Each program runs until I/O OR time runs out Invitation to Computer Science, 6th Edition 44

45 Invitation to Computer Science, 6th Edition 45

46 Operating Systems (continued) Fourth generation: network operating system Operating system supports all the same local services Also supports services that access resources that are available over a network Shared printer Servers: , data, web Connections to Internet Real-time operating system or embedded system are special-purpose computers in other equipment Invitation to Computer Science, 6th Edition 46

47 Invitation to Computer Science, 6th Edition 47

48 Invitation to Computer Science, 6th Edition 48

49 Operating Systems (continued) Fifth generation, the near future Multimedia interfaces (integrate images, speech, video seamlessly) Parallel processing system, to perform multimedia and to permit larger scale tasks Distributed ib t computing environment, users don t know where resources are stored Cloud computing Invitation to Computer Science, 6th Edition 49

50 Invitation to Computer Science, 6th Edition 50

51

52 Review of Assembly Language Review previous slides on assembly language Problem 10 on page 329 Problem 16 on page 329 Solutions are posted in your D2L account. Invitation to Computer Science, 6th Edition 52

53 Summary System software creates a virtual machine that is easy for users to use Assemblers and loaders are system software: translate human-friendly programs to machine language Assembly language uses symbolic names, symbolic op codes, and pseudo-ops to describe algorithms Assembler translates source programs to object files; loader places object instructions in memory Invitation to Computer Science, 6th Edition 53

54 Summary (continued) Operating systems communicate with users through text or GUI actions The operating system includes key tasks such as: the user interface, system security, scheduling of programs, and system safety Operating systems developed through four generations of improvements, each adding new features and improving efficiency Future operating systems: parallel, distributed, and multimedia, with resources stored remotely Invitation to Computer Science, 6th Edition 54

Chapter 6: An Introduction to System Software and Virtual Machines

Chapter 6: An Introduction to System Software and Virtual Machines Objectives Chapter 6: An Introduction to System Software and Virtual Machines Invitation to Computer Science, C++ Version, Third Edition In this chapter, you will learn about: System software Assemblers

More information

OPERATING SYSTEMS. SYSTEM SOFTWARE IB DP Computer science Standard Level ICS3U. SYSTEM SOFTWARE IB DP Computer science Standard Level ICS3U

OPERATING SYSTEMS. SYSTEM SOFTWARE IB DP Computer science Standard Level ICS3U. SYSTEM SOFTWARE IB DP Computer science Standard Level ICS3U C A N A D I A N I N T E R N A T I O N A L S C H O O L O F H O N G K O N G 6.4 s five of the most important tasks that an operative system performs user interface management control of access to system

More information

Lecture 12 2/19/04 13:43. Lecture 12. Operating Systems (S&G, 6.4) 2/19/04 CS Lecture Read S&G ch. 7, 7.1

Lecture 12 2/19/04 13:43. Lecture 12. Operating Systems (S&G, 6.4) 2/19/04 CS Lecture Read S&G ch. 7, 7.1 Lecture 12 Operating Systems (S&G, 6.4) 2/19/04 CS 100 - Lecture 12 1 Read S&G ch. 7, 7.1 7.8 (High-Level Languages) for next week 2/19/04 CS 100 - Lecture 12 2 CS 100 1 Operating Systems Wait for user

More information

An Introduction to System Software and Virtual Machines

An Introduction to System Software and Virtual Machines n Introduction to System Software and Virtual Machines Chapter 6.1-6.3 Topics: System Software ssemblers and ssembly Language CMPUT11 Introduction to Computing (c) Jia You, Vadim ulitko, Yngvi jornsson

More information

Chapter 3. Operating Systems Pearson Addison-Wesley. All rights reserved

Chapter 3. Operating Systems Pearson Addison-Wesley. All rights reserved Chapter 3 Operating Systems 2007 Pearson Addison-Wesley. All rights reserved Chapter 3: Operating Systems 3.1 The History of Operating Systems 3.2 Operating System Architecture 3.3 Coordinating the Machine

More information

Computers in Engineering COMP 208. Computer Structure. Computer Architecture. Computer Structure Michael A. Hawker

Computers in Engineering COMP 208. Computer Structure. Computer Architecture. Computer Structure Michael A. Hawker Computers in Engineering COMP 208 Computer Structure Michael A. Hawker Computer Structure We will briefly look at the structure of a modern computer That will help us understand some of the concepts that

More information

Subject Name:Operating system. Subject Code:10EC35. Prepared By:Remya Ramesan and Kala H.S. Department:ECE. Date:

Subject Name:Operating system. Subject Code:10EC35. Prepared By:Remya Ramesan and Kala H.S. Department:ECE. Date: Subject Name:Operating system Subject Code:10EC35 Prepared By:Remya Ramesan and Kala H.S. Department:ECE Date:24-02-2015 UNIT 1 INTRODUCTION AND OVERVIEW OF OPERATING SYSTEM Operating system, Goals of

More information

A Review of Chapter 5 and. CSc 2010 Spring 2012 Instructor: Qian Hu

A Review of Chapter 5 and. CSc 2010 Spring 2012 Instructor: Qian Hu A Review of Chapter 5 and Chapter 6 Chapter 5 Computer Systems Organization Von Neumann Architecture 4 Components Memory Input/output ALU Control Unit Two major features Stored program concept Sequential

More information

OPERATING SYSTEMS. COMS W1001 Introduction to Information Science. Boyi Xie

OPERATING SYSTEMS. COMS W1001 Introduction to Information Science. Boyi Xie 1 OPERATING SYSTEMS COMS W1001 Introduction to Information Science Boyi Xie 2 Announcement Homework 1 is available Grace days A total of 5 days for 5 HWs If all grace days have been used, 50% of the points

More information

CSCI 1800 Cybersecurity and International Relations. Computer Hardware & Software John E. Savage Brown University

CSCI 1800 Cybersecurity and International Relations. Computer Hardware & Software John E. Savage Brown University CSCI 1800 Cybersecurity and International Relations Computer Hardware & Software John E. Savage Brown University Overview Introduction computer design Central Processing Unit (CPU) Random Access Memory

More information

CMPUT 101 with Solutions Quiz 2 (50 minutes) August 7, 2002

CMPUT 101 with Solutions Quiz 2 (50 minutes) August 7, 2002 CMPUT 101 with Solutions Quiz 2 (50 minutes) August 7, 2002 Last Name: First Name: Section: Instructor: B1 I. E. Leonard Instructions: Read carefully before proceeding. No calculators, books or other aids

More information

Module 1: Introduction

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 information

Multiprogramming. Evolution of OS. Today. Comp 104: Operating Systems Concepts 28/01/2013. Processes Management Scheduling & Resource Allocation

Multiprogramming. Evolution of OS. Today. Comp 104: Operating Systems Concepts 28/01/2013. Processes Management Scheduling & Resource Allocation Comp 104: Operating Systems Concepts Management Scheduling & Resource Allocation Today OS evolution Introduction to processes OS structure 1 2 Evolution of OS Largely driven by desire to do something useful

More information

Module 1: Introduction. What is an Operating System?

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

Course Content. 07-Feb-17 Faculty of Computer Science & Engineering 1 BK TP.HCM

Course 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

Chapter 1: Introduction

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

9/14/2010. Chapter 3: Software Overview. Types of Software. Functions of Operating Systems. Software classification

9/14/2010. Chapter 3: Software Overview. Types of Software. Functions of Operating Systems. Software classification Chapter 3: Software Overview Types of Software 3.1 History of Operating Systems 3.2 Operating System Architecture 3.5 Security Plus: Application Programs and Software Application software Performs specific

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

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

Chapter 5 12/2/2013. Objectives. Computer Systems Organization. Objectives. Objectives (continued) Introduction. INVITATION TO Computer Science 1

Chapter 5 12/2/2013. Objectives. Computer Systems Organization. Objectives. Objectives (continued) Introduction. INVITATION TO Computer Science 1 Chapter 5 Computer Systems Organization Objectives In this chapter, you will learn about: The components of a computer system Putting all the pieces together the Von Neumann architecture The future: non-von

More information

Introduction to System Programming

Introduction to System Programming Introduction to System Programming Introduction to System Programming Why system programming? Basic operation of a computer system Summary Acknowledgement: slides based on the cs:app2e material 2 Why 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

Operating Systems Overview

Operating Systems Overview Operating Systems Overview 1 operating system no clear traditional definition each definition cover a distinct aspect an interface between applications and hardware true, this was the first reason for

More information

Laboratory. Low-Level. Languages. Objective. References. Study simple machine language and assembly language programs.

Laboratory. Low-Level. Languages. Objective. References. Study simple machine language and assembly language programs. Laboratory Low-Level 7 Languages Objective Study simple machine language and assembly language programs. References Software needed: 1) A web browser (Internet Explorer or Netscape) 2) Applet from the

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

Introduction to Computer Science. Polly Huang NTU EE

Introduction to Computer Science. Polly Huang NTU EE Introduction to Computer Science Polly Huang NTU EE http://homepage.ntu.edu.tw/~pollyhuang pollyhuang@ntu.edu.tw Polly Huang, NTU EE Operating System 1 Chapter 3 Operating Systems Polly Huang, NTU EE Operating

More information

CS420: Operating Systems

CS420: Operating Systems OS Overview James Moscola Department of Engineering & Computer Science York College of Pennsylvania Contents of Introduction slides are courtesy of Silberschatz, Galvin, Gagne Operating System Structure

More information

Module 1: Introduction

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

More information

15 Sharing Main Memory Segmentation and Paging

15 Sharing Main Memory Segmentation and Paging Operating Systems 58 15 Sharing Main Memory Segmentation and Paging Readings for this topic: Anderson/Dahlin Chapter 8 9; Siberschatz/Galvin Chapter 8 9 Simple uniprogramming with a single segment per

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

Operating Systems Comprehensive Exam. Spring Student ID # 3/16/2006

Operating Systems Comprehensive Exam. Spring Student ID # 3/16/2006 Operating Systems Comprehensive Exam Spring 2006 Student ID # 3/16/2006 You must complete all of part I (60%) You must complete two of the three sections in part II (20% each) In Part I, circle or select

More information

2.2 THE MARIE Instruction Set Architecture

2.2 THE MARIE Instruction Set Architecture 2.2 THE MARIE Instruction Set Architecture MARIE has a very simple, yet powerful, instruction set. The instruction set architecture (ISA) of a machine specifies the instructions that the computer can perform

More information

OPERATING SYSTEMS OVERVIEW

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

CPS221 Lecture: Operating System Protection

CPS221 Lecture: Operating System Protection Objectives CPS221 Lecture: Operating System Protection last revised 9/5/12 1. To explain the use of two CPU modes as the basis for protecting privileged instructions and memory 2. To introduce basic protection

More information

0 Introduction: Computer systems and program development

0 Introduction: Computer systems and program development 0 Introduction: Computer systems and program development Outline 1 Introduction 2 What Is a Computer? 3 Computer Organization 4 Evolution of Operating Systems 5 Personal Computing, Distributed Computing

More information

Software Concepts. It is a translator that converts high level language to machine level language.

Software Concepts. It is a translator that converts high level language to machine level language. Software Concepts One mark questions: 1. What is a program? It is a set of instructions given to perform a task using a programming language. 2. What is hardware? It is defined as physical parts of the

More information

The Software Stack: From Assembly Language to Machine Code

The Software Stack: From Assembly Language to Machine Code COMP 506 Rice University Spring 2018 The Software Stack: From Assembly Language to Machine Code source code IR Front End Optimizer Back End IR target code Somewhere Out Here Copyright 2018, Keith D. Cooper

More information

CS30002: Operating Systems. Arobinda Gupta Spring 2017

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

More information

Fundamentals of Operating Systems (COMP355/L) A Student's Manual for Practice Exercises

Fundamentals of Operating Systems (COMP355/L) A Student's Manual for Practice Exercises Fundamentals of Operating Systems (COMP355/L) A Student's Manual for Practice Exercises Text Book: Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 1 Practice Exercises #1 Chapter

More information

Operating Systems Fundamentals. What is an Operating System? Focus. Computer System Components. Chapter 1: Introduction

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

Midterm Exam Solutions Amy Murphy 28 February 2001

Midterm Exam Solutions Amy Murphy 28 February 2001 University of Rochester Midterm Exam Solutions Amy Murphy 8 February 00 Computer Systems (CSC/56) Read before beginning: Please write clearly. Illegible answers cannot be graded. Be sure to identify all

More information

Tutorial 1: Programming Model 1

Tutorial 1: Programming Model 1 Tutorial 1: Programming Model 1 Introduction Objectives At the end of this lab you should be able to: Use the CPU simulator to create basic CPU instructions Use the simulator to execute the basic CPU instructions

More information

OPERATING SYSTEM. Functions of Operating System:

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

Computer Software: Introduction

Computer Software: Introduction Software: A collection of programs Computer Software: Introduction Program: Sequence of instructions for the computer to carry out Programs written using a programming language Types of languages: Machine

More information

CS420: Operating Systems

CS420: Operating Systems OS Overview James Moscola Department of Engineering & Computer Science York College of Pennsylvania Contents of Introduction slides are courtesy of Silberschatz, Galvin, Gagne Operating System Structure

More information

Computer Organisation IB Computer Science. Content developed by Dartford Grammar School Computer Science Department

Computer Organisation IB Computer Science. Content developed by Dartford Grammar School Computer Science Department Computer Organisation IB Computer Science Content developed by Dartford Grammar School Computer Science Department HL Topics 1-7, D1-4 1: System design 2: Computer Organisation 3: Networks 4: Computational

More information

nddprint 360 White Paper - Corporate Printing

nddprint 360 White Paper - Corporate Printing White Paper - Corporate Printing nddprint 360 nddprint 360 is a complete control, optimization and discipline solution for corporate printing environments. Nowadays, there is a greater need to control

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

Comp 204: Computer Systems and Their Implementation. Lecture 9: Deadlock

Comp 204: Computer Systems and Their Implementation. Lecture 9: Deadlock Comp 204: Computer Systems and Their Implementation Lecture 9: Deadlock 1 Today Deadlock Definition Resource allocation graphs Detecting and dealing with deadlock 2 Deadlock When two trains approach each

More information

PROCESSES Gursharan Singh Tatla 24/01/2011

PROCESSES Gursharan Singh Tatla 24/01/2011 1 PROCESSES Gursharan Singh Tatla professorgstatla@gmail.com Process 2 A process is a set of sequential steps that are required to do a particular task. A process is an instance of a program in execution.

More information

CS370 Operating Systems

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

More information

Machine code. Nils Jansen December 12, 2017

Machine code. Nils Jansen December 12, 2017 Machine code Nils Jansen December 12, 2017 Overview So far Circuits Memory ALU Data Path Fetch-Decode-Execute Cycle Fetch-decode-execute cycle Today Machine code Stack 2 Recap: Execute-phase: Computation

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

Lec 13: Linking and Memory. Kavita Bala CS 3410, Fall 2008 Computer Science Cornell University. Announcements

Lec 13: Linking and Memory. Kavita Bala CS 3410, Fall 2008 Computer Science Cornell University. Announcements Lec 13: Linking and Memory Kavita Bala CS 3410, Fall 2008 Computer Science Cornell University PA 2 is out Due on Oct 22 nd Announcements Prelim Oct 23 rd, 7:30-9:30/10:00 All content up to Lecture on Oct

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

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

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

More information

Chapter 2: Operating-System Structures

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

More information

Chapter 2: 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

COSC243 Part 2: Operating Systems

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

NETW3005 Operating Systems Lecture 1: Introduction and history of O/Ss

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

CS370 Operating Systems

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

Contents. Today's Topic: Introduction to Operating Systems

Contents. Today's Topic: Introduction to Operating Systems Contents Today's Topic: Introduction to Operating Systems We will learn 1. What is Operating System? 2. What OS does? 3. Structure of OS 4. Evolution of OS Batch Processing, Multiprogramming, Time sharing

More information

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

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

More information

The Lesson Plan of OS. The syllabus of OS. Access the lesson plan and syllabus at

The Lesson Plan of OS. The syllabus of OS. Access the lesson plan and syllabus at The Lesson Plan of OS The syllabus of OS Access the lesson plan and syllabus at http://mycse/cse The Slide does not contain all the information and cannot be treated as a study material for Operating System.

More information

16 Sharing Main Memory Segmentation and Paging

16 Sharing Main Memory Segmentation and Paging Operating Systems 64 16 Sharing Main Memory Segmentation and Paging Readings for this topic: Anderson/Dahlin Chapter 8 9; Siberschatz/Galvin Chapter 8 9 Simple uniprogramming with a single segment per

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

Topics: Early systems and OS overview Skim Chapters 1-2 of SGG Read Chapter 1 of USP CS 3733 Operating Systems

Topics: Early systems and OS overview Skim Chapters 1-2 of SGG Read Chapter 1 of USP CS 3733 Operating Systems Topics: Early systems and OS overview Skim Chapters 1-2 of SGG Read Chapter 1 of USP CS 3733 Operating Systems Instructor: Dr. Turgay Korkmaz Department Computer Science The University of Texas at San

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

Main Points of the Computer Organization and System Software Module

Main Points of the Computer Organization and System Software Module Main Points of the Computer Organization and System Software Module You can find below the topics we have covered during the COSS module. Reading the relevant parts of the textbooks is essential for a

More information

CMPUT 101 with Solutions Quiz 2 (50 minutes) November 16, 2000

CMPUT 101 with Solutions Quiz 2 (50 minutes) November 16, 2000 CMPUT 101 with Solutions Quiz 2 (50 minutes) November 16, 2000 Last Name: First Name: Section: Instructor: A6 Yngvi Bjornsson Instructions: Read carefully before proceeding. No calculators, books or other

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

LC-3 Assembly Language. (Textbook Chapter 7)"

LC-3 Assembly Language. (Textbook Chapter 7) LC-3 Assembly Language (Textbook Chapter 7)" Assembly and assembler" Machine language - binary" 0001110010000110 Assembly language - symbolic" ADD R6, R2, R6 ; increment index reg. Assembler is a program

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

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

CSE 120 Principles of Operating Systems

CSE 120 Principles of Operating Systems CSE 120 Principles of Operating Systems Fall 2016 Lecture 8: Scheduling and Deadlock Geoffrey M. Voelker Administrivia Thursday Friday Monday Homework #2 due at start of class Review material for midterm

More information

CSE 4/521 Introduction to Operating Systems

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

More information

Chapter 2: 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

Operating Systems and Interrupts/Exceptions

Operating Systems and Interrupts/Exceptions Operating Systems and Interrupts/Exceptions Arvind Computer Science & Artificial Intelligence Lab. Massachusetts Institute of Technology Code for the lecture is available on the course website under the

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

Midterm Exam Solutions March 7, 2001 CS162 Operating Systems

Midterm Exam Solutions March 7, 2001 CS162 Operating Systems University of California, Berkeley College of Engineering Computer Science Division EECS Spring 2001 Anthony D. Joseph Midterm Exam March 7, 2001 CS162 Operating Systems Your Name: SID AND 162 Login: TA:

More information

Introduction to Information Technology Turban, Rainer and Potter John Wiley & Sons, Inc. Copyright 2005

Introduction to Information Technology Turban, Rainer and Potter John Wiley & Sons, Inc. Copyright 2005 Introduction to Information Technology Turban, Rainer and Potter John Wiley & Sons, Inc. Copyright 2005 Computer Software Chapter Outline Significance of software System software Application software Software

More information

Little Man Computer. Copyright 2019 Peter Roberts

Little Man Computer. Copyright 2019 Peter Roberts Little Man Computer Copyright 2019 Peter Roberts Table of Contents 1. LMC5... 1.1. Introduction... 1.2. Getting Started... 1.2.1. Macros... 1.2.1.1. ClearRam... 1.2.1.2. clearsource... 1.2.1.3. firstpass...

More information

CSC 453 Operating Systems

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

Operating Systems : Overview

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

More information

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

2/14/2012. Using a layered approach, the operating system is divided into N levels or layers. Also view as a stack of services Rensselaer Polytechnic Institute CSC 432 Operating Systems David Goldschmidt, Ph.D. Using a layered approach, the operating system is divided into N levels or layers Layer 0 is the hardware Layer 1 is

More information

Introduction to Operating Systems

Introduction to Operating Systems Introduction to Operating Systems Organized By: Assistant Professor CSED, TU V.A. Disclaimer This is NOT A COPYRIGHT MATERIAL Content has been taken mainly from the following books: Operating Systems Concepts

More information

CS1004: Intro to CS in Java, Spring 2005

CS1004: Intro to CS in Java, Spring 2005 CS1004: Intro to CS in Java, Spring 2005 Lecture #10: Computer architecture Janak J Parekh janak@cs.columbia.edu HW#2 due Tuesday Administrivia Mass Storage RAM is volatile Not useful for permanent storage,

More information

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

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

More information

Slide 6-1. Processes. Operating Systems: A Modern Perspective, Chapter 6. Copyright 2004 Pearson Education, Inc.

Slide 6-1. Processes. Operating Systems: A Modern Perspective, Chapter 6. Copyright 2004 Pearson Education, Inc. Slide 6-1 6 es Announcements Slide 6-2 Extension til Friday 11 am for HW #1 Previous lectures online Program Assignment #1 online later today, due 2 weeks from today Homework Set #2 online later today,

More information

Lecture 2 Fundamental OS Concepts. Bo 2018, Spring

Lecture 2 Fundamental OS Concepts. Bo 2018, Spring Lecture 2 Fundamental OS Concepts Bo Tang @ 2018, Spring Our Roadmap Computer Organization Revision Kernel Data Structures in OS OS History Four fundamental OS concepts Thread Address space (with translation)

More information

Wednesday, April 19, 2017

Wednesday, April 19, 2017 Wednesday, April 19, 2017 Topics for today Process management (Chapter 8) Loader Traps Interrupts, Time-sharing Storage management (Chapter 9) Main memory (1) Uniprogramming (2) Fixed-partition multiprogramming

More information

Operating System: Chap7 Deadlocks. National Tsing-Hua University 2016, Fall Semester

Operating System: Chap7 Deadlocks. National Tsing-Hua University 2016, Fall Semester Operating System: Chap7 Deadlocks National Tsing-Hua University 2016, Fall Semester Overview System Model Deadlock Characterization Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from

More information

Chapter 8: Deadlocks. Bridge Crossing Example. The Deadlock Problem

Chapter 8: Deadlocks. Bridge Crossing Example. The Deadlock Problem Chapter 8: Deadlocks Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock 8.1 Bridge Crossing Example Bridge has one

More information

Introduction to Operating System

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

CONTENTS. Computer-System Structures

CONTENTS. Computer-System Structures CONTENTS PART ONE OVERVIEW Chapter 1 Introduction 1.1 What Is an Operating System? 3 1.2 Simple Batch Systems 6 1.3 Multiprogrammed Batched Systems 8 1.4 Time-Sharing Systems 9 1.5 Personal-Computer Systems

More information

Chapter 7: Deadlocks. Operating System Concepts 9 th Edition

Chapter 7: Deadlocks. Operating System Concepts 9 th Edition Chapter 7: Deadlocks Silberschatz, Galvin and Gagne 2013 Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection

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

CSI32 Object-Oriented Programming

CSI32 Object-Oriented Programming Outline Department of Mathematics and Computer Science Bronx Community College February 2, 2015 Outline Outline 1 Chapter 1 Cornerstones of Computing Textbook Object-Oriented Programming in Python Goldwasser

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

Chapter 5: Computer Systems Organization. Invitation to Computer Science, C++ Version, Third Edition

Chapter 5: Computer Systems Organization. Invitation to Computer Science, C++ Version, Third Edition Chapter 5: Computer Systems Organization Invitation to Computer Science, C++ Version, Third Edition Objectives In this chapter, you will learn about: The components of a computer system Putting all the

More information