Computer-System Architecture



Similar documents
Chapter 2: Computer-System Structures. Computer System Operation Storage Structure Storage Hierarchy Hardware Protection General System Architecture

Operating Systems. Lecture 03. February 11, 2013

Lesson Objectives. To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization

1. Computer System Structure and Components

Chapter 1: Introduction. Chapter 1: Introduction. Operating System Concepts, 7th Edition. Objectives

Lecture 1 Operating System Overview

Operating Systems Prof. Ashok K Agrawala

Operating Systems 4 th Class

Introduction to Operating Systems. Perspective of the Computer. System Software. Indiana University Chen Yu

Chapter 1: Introduction. Operating System Concepts 9 th Edit9on

Introduction. System Calls

Operating Systems Overview

CSC 2405: Computer Systems II

Introduction. What is an Operating System?

SYSTEM ecos Embedded Configurable Operating System

Chapter 2 Basic Structure of Computers. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

Chapter 11: Input/Output Organisation. Lesson 06: Programmed IO

COMPUTERS ORGANIZATION 2ND YEAR COMPUTE SCIENCE MANAGEMENT ENGINEERING UNIT 5 INPUT/OUTPUT UNIT JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ

Computer Organization. and Instruction Execution. August 22

Have both hardware and software. Want to hide the details from the programmer (user).

Operating System Tutorial

Read this before starting!

Technical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview

Devices and Device Controllers

COMPUTER HARDWARE. Input- Output and Communication Memory Systems

Process Description and Control william stallings, maurizio pizzonia - sistemi operativi

Overview of Operating Systems Instructor: Dr. Tongping Liu

Chapter 3 Operating-System Structures

I/O Management. General Computer Architecture. Goals for I/O. Levels of I/O. Naming. I/O Management. COMP755 Advanced Operating Systems 1

Storage. The text highlighted in green in these slides contain external hyperlinks. 1 / 14

Data Storage - I: Memory Hierarchies & Disks

Computer Organization & Architecture Lecture #19

Chapter 6, The Operating System Machine Level

OPERATING SYSTEMS STRUCTURES

Chapter 1 Computer System Overview

Buffer Management 5. Buffer Management

Chapter 11 I/O Management and Disk Scheduling

Secondary Storage. Any modern computer system will incorporate (at least) two levels of storage: magnetic disk/optical devices/tape systems

Computer Systems Structure Input/Output

Why Computers Are Getting Slower (and what we can do about it) Rik van Riel Sr. Software Engineer, Red Hat

Exceptions in MIPS. know the exception mechanism in MIPS be able to write a simple exception handler for a MIPS machine

Serial Communications

University of Dublin Trinity College. Storage Hardware.

Virtual vs Physical Addresses

Chapter Introduction. Storage and Other I/O Topics. p. 570( 頁 585) Fig I/O devices can be characterized by. I/O bus connections

File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System

1. Memory technology & Hierarchy

Chapter 1: Introduction. What is an Operating System?

CS161: Operating Systems

Price/performance Modern Memory Hierarchy

OPERATING SYSTEM - VIRTUAL MEMORY

Hello and welcome to this presentation of the STM32L4 Firewall. It covers the main features of this system IP used to secure sensitive code and data.

How To Understand And Understand An Operating System In C Programming

Lecture-3 MEMORY: Development of Memory:

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory

Client/Server Computing Distributed Processing, Client/Server, and Clusters

Lecture 6: Interrupts. CSC 469H1F Fall 2006 Angela Demke Brown

Virtual Machines. COMP 3361: Operating Systems I Winter

CS0206 OPERATING SYSTEMS Prerequisite CS0201, CS0203

opensm2 Enterprise Performance Monitoring December 2010 Copyright 2010 Fujitsu Technology Solutions

CS5460: Operating Systems. Lecture: Virtualization 2. Anton Burtsev March, 2013

CHAPTER 7: The CPU and Memory

Kernel Optimizations for KVM. Rik van Riel Senior Software Engineer, Red Hat June

Keil C51 Cross Compiler

Computer Organization and Components

Switch Fabric Implementation Using Shared Memory

Page 1 of 5. IS 335: Information Technology in Business Lecture Outline Operating Systems

Operating system Dr. Shroouq J.

TECHNOLOGY BRIEF. Compaq RAID on a Chip Technology EXECUTIVE SUMMARY CONTENTS

How To Understand The History Of An Operating System

Operating System Concepts. Operating System 資 訊 工 程 學 系 袁 賢 銘 老 師

Thomas Fahrig Senior Developer Hypervisor Team. Hypervisor Architecture Terminology Goals Basics Details

Remote Copy Technology of ETERNUS6000 and ETERNUS3000 Disk Arrays

Network Attached Storage. Jinfeng Yang Oct/19/2015

Chapter 3: Operating-System Structures. System Components Operating System Services System Calls System Programs System Structure Virtual Machines

Republic Polytechnic School of Information and Communications Technology C226 Operating System Concepts. Module Curriculum

Chapter 3. Operating Systems

Jorix kernel: real-time scheduling

Modbus RTU Communications RX/WX and MRX/MWX

Processes and Non-Preemptive Scheduling. Otto J. Anshus

AN141 SMBUS COMMUNICATION FOR SMALL FORM FACTOR DEVICE FAMILIES. 1. Introduction. 2. Overview of the SMBus Specification. 2.1.

Overview and History of Operating Systems

Operating System Components

Operating Systems. Virtual Memory

Chapter 3: Operating-System Structures. Common System Components

Types Of Operating Systems

Chapter 2: OS Overview

Chapter 12: Mass-Storage Systems

Enabling Technologies for Distributed and Cloud Computing

Predefined Analyser Rules for MS SQL Server

Lesson-16: Real time clock DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK

POSIX. RTOSes Part I. POSIX Versions. POSIX Versions (2)

Traditional IBM Mainframe Operating Principles

CPS104 Computer Organization and Programming Lecture 18: Input-Output. Robert Wagner

COMPUTER ARCHITECTURE. Input/Output

Memory Management Outline. Background Swapping Contiguous Memory Allocation Paging Segmentation Segmented Paging

Central Processing Unit

Distributed Systems LEEC (2005/06 2º Sem.)

Transcription:

Chapter 2: Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection General System Architecture 2.1 Computer-System Architecture 2.2

Computer-System Operation I/O devices and the CPU can execute concurrently. 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. 2.3 Common Functions of Interrupts Interrupt transfers control to the interrupt service routine generally, through the interrupt vector, which contains the addresses of all the service routines. Interrupt architecture must save the address of the interrupted instruction. Incoming interrupts are disabled while another interrupt is being processed to prevent a lost interrupt. A trap is a software-generated interrupt caused either by an error or a user request. An operating system is interrupt driven. 2.4

Interrupt Handling The operating system preserves the state of the CPU by storing registers and the program counter. Determines which type of interrupt has occurred: polling vectored interrupt system Separate segments of code determine what action should be taken for each type of interrupt 2.5 Interrupt Time Line For a Single Process Doing Output 2.6

I/O Structure After I/O starts, control returns to user program only upon I/O completion. Wait instruction idles the CPU until the next interrupt Wait loop (contention for memory access). At most one I/O request is outstanding at a time, no simultaneous I/O processing. After I/O starts, control returns to user program without waiting for I/O completion. System call request to the operating system to allow user to wait for I/O completion. Device-status table contains entry for each I/O device indicating its type, address, and state. Operating system indexes into I/O device table to determine device status and to modify table entry to include interrupt. 2.7 Two I/O Methods Synchronous Asynchronous 2.8

Device-Status Table 2.9 Direct Memory Access Structure Used for high-speed I/O devices able to transmit information at close to memory speeds. Device controller transfers blocks of data from buffer storage directly to main memory without CPU intervention. Only on interrupt is generated per block, rather than the one interrupt per byte. 2.10

Storage Structure Main memory only large storage media that the CPU can access directly. Secondary storage extension of main memory that provides large nonvolatile storage capacity. Magnetic disks rigid metal or glass platters covered with magnetic recording material Disk surface is logically divided into tracks, which are subdivided into sectors. The disk controller determines the logical interaction between the device and the computer. 2.11 Moving-Head Disk Mechanism 2.12

Storage Hierarchy Storage systems organized in hierarchy. Speed Cost Volatility Caching copying information into faster storage system; main memory can be viewed as a last cache for secondary storage. 2.13 Storage-Device Hierarchy 2.14

Caching Use of high-speed memory to hold recently-accessed data. Requires a cache management policy. Caching introduces another level in storage hierarchy. This requires data that is simultaneously stored in more than one level to be consistent. 2.15 Migration of A From Disk to Register 2.16

Hardware Protection Dual-Mode Operation I/O Protection Memory Protection CPU Protection 2.17 Dual-Mode Operation Sharing system resources requires operating system to ensure that an incorrect program cannot cause other programs to execute incorrectly. Provide hardware support to differentiate between at least two modes of operations. 1. User mode execution done on behalf of a user. 2. Monitor mode (also kernel mode or system mode) execution done on behalf of operating system. 2.18

Dual-Mode Operation (Cont.) Mode bit added to computer hardware to indicate the current mode: monitor (0) or user (1). When an interrupt or fault occurs hardware switches to monitor mode. Interrupt/fault monitor user set user mode Privileged instructions can be issued only in monitor mode. 2.19 I/O Protection All I/O instructions are privileged instructions. Must ensure that a user program could never gain control of the computer in monitor mode (I.e., a user program that, as part of its execution, stores a new address in the interrupt vector). 2.20

Use of A System Call to Perform I/O 2.21 Memory Protection Must provide memory protection at least for the interrupt vector and the interrupt service routines. In order to have memory protection, add two registers that determine the range of legal addresses a program may access: Base register holds the smallest legal physical memory address. Limit register contains the size of the range Memory outside the defined range is protected. 2.22

Use of A Base and Limit Register 2.23 Hardware Address Protection 2.24

Hardware Protection When executing in monitor mode, the operating system has unrestricted access to both monitor and user s memory. The load instructions for the base and limit registers are privileged instructions. 2.25 CPU Protection Timer interrupts computer after specified period to ensure operating system maintains control. Timer is decremented every clock tick. When timer reaches the value 0, an interrupt occurs. Timer commonly used to implement time sharing. Time also used to compute the current time. Load-timer is a privileged instruction. 2.26

Network Structure Local Area Networks (LAN) Wide Area Networks (WAN) 2.27 Local Area Network Structure 2.28

Wide Area Network Structure 2.29