NWI-IBC019: Operating systems

Similar documents
Chapter 13: I/O Systems

Chapter 13: I/O Systems

Chapter 12: I/O Systems

Chapter 13: I/O Systems

Chapter 12: I/O Systems. Operating System Concepts Essentials 8 th Edition

Device-Functionality Progression

Chapter 12: I/O Systems. I/O Hardware

Chapter 13: I/O Systems

Chapter 13: I/O Systems. Chapter 13: I/O Systems. Objectives. I/O Hardware. A Typical PC Bus Structure. Device I/O Port Locations on PCs (partial)

Module 12: I/O Systems

Chapter 13: I/O Systems. Operating System Concepts 9 th Edition

Chapter 13: I/O Systems

by I.-C. Lin, Dept. CS, NCTU. Textbook: Operating System Concepts 8ed CHAPTER 13: I/O SYSTEMS

Module 12: I/O Systems

I/O Systems. Amir H. Payberah. Amirkabir University of Technology (Tehran Polytechnic)

Input/Output Systems

Lecture 13 Input/Output (I/O) Systems (chapter 13)

I/O AND DEVICE HANDLING Operating Systems Design Euiseong Seo

Chapter 13: I/O Systems

Chapter 13: I/O Systems

The control of I/O devices is a major concern for OS designers

Silberschatz and Galvin Chapter 12

Chapter 13: I/O Systems

Chapter 13: I/O Systems

Lecture 15: I/O Devices & Drivers

操作系统概念 13. I/O Systems

CSE 4/521 Introduction to Operating Systems. Lecture 24 I/O Systems (Overview, Application I/O Interface, Kernel I/O Subsystem) Summer 2018

I/O Systems. 04/16/2007 CSCI 315 Operating Systems Design 1

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

I/O Systems. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

Module 11: I/O Systems

COT 4600 Operating Systems Fall Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM

I/O SYSTEMS. Sunu Wibirama

Ref: Chap 12. Secondary Storage and I/O Systems. Applied Operating System Concepts 12.1

CS330: Operating System and Lab. (Spring 2006) I/O Systems

Today: I/O Systems. Architecture of I/O Systems

CSC Operating Systems Spring Lecture - XIX Storage and I/O - II. Tevfik Koşar. Louisiana State University.

RAID Structure. RAID Levels. RAID (cont) RAID (0 + 1) and (1 + 0) Tevfik Koşar. Hierarchical Storage Management (HSM)

I/O Systems. Jo, Heeseung

Input/Output Systems

CS370 Operating Systems

Comp 204: Computer Systems and Their Implementation. Lecture 18: Devices

Operating Systems 2010/2011

Devices. Today. Comp 104: Operating Systems Concepts. Operating System An Abstract View 05/01/2017. Devices. Devices

CHAPTER 12 AND 13 - MASS-STORAGE STRUCTURE & I/O- SYSTEMS

Operating System: Chap13 I/O Systems. National Tsing-Hua University 2016, Fall Semester

Outline. Operating Systems: Devices and I/O p. 1/18

I/O Handling. ECE 650 Systems Programming & Engineering Duke University, Spring Based on Operating Systems Concepts, Silberschatz Chapter 13

I/O. CS 416: Operating Systems Design Department of Computer Science Rutgers University

Discussion Week 8. TA: Kyle Dewey. Tuesday, November 15, 11

[08] IO SUBSYSTEM 1. 1

CS370 Operating Systems

CS420: Operating Systems. Kernel I/O Subsystem

Operating Systems. V. Input / Output

Principles of Operating Systems CS 446/646

CSE 451: Operating Systems Winter I/O System. Gary Kimura

Answer to exercises chap 13.2

Input-Output (I/O) Input - Output. I/O Devices. I/O Devices. I/O Devices. I/O Devices. operating system must control all I/O devices.

-Device. -Physical or virtual thing that does something -Software + hardware to operate a device (Controller runs port, Bus, device)

CS 134. Operating Systems. April 8, 2013 Lecture 20. Input/Output. Instructor: Neil Rhodes. Monday, April 7, 14

or edit a file, our immediate interest is to read or enter some information, not to compute an answer.

C02: Interrupts and I/O

CIS Operating Systems I/O Systems & Secondary Storage. Professor Qiang Zeng Spring 2018

Input Output (IO) Management

Operating Systems. Steven Hand. Michaelmas / Lent Term 2008/ lectures for CST IA. Handout 4. Operating Systems

Input/Output Problems. External Devices. Input/Output Module. I/O Steps. I/O Module Function Computer Architecture

VIII. Input/Output Operating Systems Prof. Dr. Marc H. Scholl DBIS U KN Summer Term

Organisasi Sistem Komputer

Chapter 5 Input/Output. I/O Devices

Chapter 7: Mass-storage structure & I/O systems. Operating System Concepts 8 th Edition,

Generic Model of I/O Module Interface to CPU and Memory Interface to one or more peripherals


Operating Systems 2010/2011

Input / Output. School of Computer Science G51CSA

CS 450 Fall xxxx Final exam solutions. 2) a. Multiprogramming is allowing the computer to run several programs simultaneously.

Bus System. Bus Lines. Bus Systems. Chapter 8. Common connection between the CPU, the memory, and the peripheral devices.

19: I/O. Mark Handley. Direct Memory Access (DMA)

Main Points of the Computer Organization and System Software Module

CIS Operating Systems I/O Systems & Secondary Storage. Professor Qiang Zeng Fall 2017

UNIT-7. Overview of Mass Storage Structure

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum)

I/O. Fall Tore Larsen. Including slides from Pål Halvorsen, Tore Larsen, Kai Li, and Andrew S. Tanenbaum)

Last class: Today: Course administration OS definition, some history. Background on Computer Architecture

I/O Design, I/O Subsystem, I/O-Handler Device Driver, Buffering, Disks, RAID January WT 2008/09

Chapter-6. SUBJECT:- Operating System TOPICS:- I/O Management. Created by : - Sanjay Patel

CS510 Operating System Foundations. Jonathan Walpole

Operating systems. Module 15 kernel I/O subsystem. Tami Sorgente 1

OPERATING SYSTEMS CS136

INPUT/OUTPUT ORGANIZATION

Chapter 8. A Typical collection of I/O devices. Interrupts. Processor. Cache. Memory I/O bus. I/O controller I/O I/O. Main memory.

Computer Organization ECE514. Chapter 5 Input/Output (9hrs)

Computer System Overview

Computer System Overview OPERATING SYSTEM TOP-LEVEL COMPONENTS. Simplified view: Operating Systems. Slide 1. Slide /S2. Slide 2.

Lecture 1 Introduction (Chapter 1 of Textbook)

I/O & Storage. Jin-Soo Kim ( Computer Systems Laboratory Sungkyunkwan University

CSCI-GA Operating Systems I/O. Hubertus Franke

CIS Operating Systems File Systems. Professor Qiang Zeng Fall 2017

CIS Operating Systems File Systems. Professor Qiang Zeng Spring 2018

Interconnecting Components

Announcements. Reading. Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) CMSC 412 S14 (lect 5)

Transcription:

NWI-IBC019: Operating systems Bernard van Gastel and Nils Jansen I/O Systems

UPPAAL Assignment Deadline: Sunday, November 12, 2017 (more than week after the exam) Go to the practicals! Use UPAAL 4.0 (VM) Start now! Keep page limits in the report!

10/23/2017 Teaching/VerifiedMachineLearning Thesis! icis Homepage News Vacancies People Research Mission Application Areas Basic Techniques Software Research Projects Collaborations Software Science Home» Teaching» VerifiedMachineLearning print source login Theme: Verified Machine Learning If you are interested in any of the topics listed below or in the general area, please contact me (Nils Jansen). My webpage can be found here. With rapidly growing application of artificial intelligence and machine learning in social life, considering for instance autonomous systems such as self driving cars, the need for verified guarantees against potentially fatal accidents is self evident. An important question is then, how confidence in system behaviors obtained from machine learning can be transferred to formal verification. Vice versa, industrial usage of formal verification so far suffers from the fact that scalability is still an issue for large real world applications. Leveraging the capabilities of machine learning to assess large data sets will help to enable verification for more realistic systems. Seminars Learning & Testing Teaching Publications Contact Sitemap Intranet A very nice article discussing challenges and open problems can be found here. If one of the open problems is of interest, let me know. On top of that, please consider the following concrete thesis proposals. We focus on two fundamental formalisms/methods, namely partially observable Markov decision processes (POMDPs) and reinforcement learning (RL). If interest in deep neural networks (DNNs) is there, consider reading this article. I'm happy to discuss potential projects. Thesis Topics a) Data consistent Machine Learning with Formal Guarantees In machine learning algorithms, a system model is learned based on observation of the real world. Upon further observation, this model may be subject to change. The problem of applying formal verification to such a model is that it is not a well defined and fixed model of the system at hand. This project proposes to robustify a current learned model against further changes based on future observations. If it can be verified, that given http://www.sws.cs.ru.nl/teaching/verifiedmachinelearning 1/4

I/O Systems Structure of I/O subsystem Principles of I/O hardware Performance Aspects

I/O Hardware Large variety of I/O devices Storage Transmission Human-interface What types and aspects of I/O devices do you know? How to communicate with computer?

I/O Hardware Concepts signals from I/O devices Port connection point for device Bus - set of wires and rigidly defined communication protocol daisy chain or shared direct access Controller (host adapter) electronics that operate port, bus, device Sometimes integrated Sometimes separate circuit board (host adapter) Contains processor, microcode, private memory, bus controller, etc

PC Bus Structure Small Computer System Interface complex specialized controller, separate circuit board complex specialized controller, separate circuit board common PC system bus bus for slow devices

I/O Controllers I/O instructions control devices Devices have registers where device drivers place commands, addresses, and data to write, or read data from registers after command execution Devices have addresses, used by Direct I/O instructions Memory-mapped I/O Device data and command registers mapped to processor address space Especially for large address spaces (graphics)

Device I/O Locations

Communication between Host and Controller How do I/O devices interact with host? Polling vs. Interrupts

Polling Problems with Polling? For each byte of I/O Host reads busy bit from status register until 0 Host sets read or write bit, and if write, copies data into data-out register Host sets command-ready bit Controller sets busy bit, executes transfer Controller clears busy bit, error bit, command-ready bit when transfer done Step 1 is busy-wait cycle to wait for I/O from device Reasonable if device is fast But inefficient if device slow CPU switches to other tasks? But if miss a cycle data overwritten / lost

Interrupts CPU Interrupt-request line triggered by I/O device Checked by processor after each instruction Modern OS: >100 interrupts per second (single user system) What properties should interrupts have? Defer interrupt handling during critical processes Efficient way to dispatch to proper interrupt handler Multilevel Interrupts: Priorities

Interrupts Interrupt handler receives interrupts Maskable to ignore or delay some interrupts Interrupt vector to dispatch interrupt to correct handler Context switch at start and end Based on priority Some nonmaskable Interrupt chaining if more than one device at same interrupt number

Intel Pentium Event-Vector Table

Direct Memory Access (DMA) Used to avoid one byte at a time for large data movement Requires DMA controller Bypasses CPU to transfer data directly between I/O device and memory OS writes DMA command block into memory Source writes location of command block to DMA controller Bus mastering of DMA controller grabs bus from CPU When done, interrupts to signal completion

DMA Transfer

Device Variations What are typical device variations? Character-stream or block Bytes transferred one by one or as a block of bytes Sequential or random-access Data transferred in fixed order or seek at any location Synchronous or asynchronous (or both) Data transfer with predictable response time or irregular/unpredictable time Sharable or dedicated May be shared by several processes or not Speed of operation read-write, read only, or write only

I/O Structure

Characteristics

Block and Character Devices Block devices include disk drives Commands include read, write, seek Access via a file-system interface Character devices include keyboards, mice, serial ports Commands include get(), put() Libraries layered on top allow line editing

Network Devices Varying enough from block and character to have own interface Unix and Windows NT/9x/2000 include socket interface Connect local socket to remote address Separates network protocol from network operation Includes select() functionality

Blocking and Nonblocking I/O Examples? Blocking - process suspended until I/O completed Easy to use and understand Insufficient for some needs Nonblocking - I/O call returns as much as available User interface, data copy (buffered I/O) Implemented via multi-threading Returns quickly with count of bytes read or written select() to find if data ready then read() or write() to transfer Asynchronous - process runs while I/O executes Difficult to use I/O subsystem signals process when I/O completed

Kernel I/O Subsystem Scheduling What services for kernel I/O system are needed? Buffering - store data in memory while transferring between devices Caching Spooling Device Reservation

Scheduling and Spooling Scheduling Per-device queue Fairness Buffering - store data in memory while transferring between devices To cope with device speed mismatch To cope with device transfer size mismatch

Device Status Table

Sun Enterprise Device-Transfer Rates

Caching, Spooling, Device Reservation, and Error Handling Caching - faster device holding copy of data Always just a copy Key to performance Spooling - hold output for a device If device can serve only one request at a time Device reservation - provides exclusive access to a device Watch out for deadlock Error Handling Retry a read or write, for example Track error frequencies, stop using device with increasing frequency of retry-able errors

Summary I/O Hardware I/O Interface Kernel Subsystem