Operating Systems. Lecture 03. February 11, 2013



Similar documents
Computer-System Architecture

1. Computer System Structure and Components

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

Operating Systems 4 th Class

Operating Systems Overview

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

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

COS 318: Operating Systems

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

CSC 2405: Computer Systems II

Hypervisor: Requirement Document (Version 3)

Operating System Organization. Purpose of an OS

Introduction. System Calls

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 ecos Embedded Configurable Operating System

Virtualization. Pradipta De

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

Overview of Operating Systems Instructor: Dr. Tongping Liu

CS161: Operating Systems

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

KVM: Kernel-based Virtualization Driver

Hardware accelerated Virtualization in the ARM Cortex Processors

Virtualization in the ARMv7 Architecture Lecture for the Embedded Systems Course CSD, University of Crete (May 20, 2014)

ELEC 377. Operating Systems. Week 1 Class 3

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

Distributed Systems. Virtualization. Paul Krzyzanowski

Microcontrollers in Practice

Presentation of Diagnosing performance overheads in the Xen virtual machine environment

Hardware Assisted Virtualization

Virtualization. P. A. Wilsey. The text highlighted in green in these slides contain external hyperlinks. 1 / 16

Operating System Structure

VxWorks Guest OS Programmer's Guide for Hypervisor 1.1, 6.8. VxWorks GUEST OS PROGRAMMER'S GUIDE FOR HYPERVISOR

x86 ISA Modifications to support Virtual Machines

Red Hat Linux Internals

OSes. Arvind Seshadri Mark Luk Ning Qu Adrian Perrig SOSP2007. CyLab of CMU. SecVisor: A Tiny Hypervisor to Provide

Introduction. What is an Operating System?

Operating System Overview. Otto J. Anshus

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

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

MICROPROCESSOR. Exclusive for IACE Students iacehyd.blogspot.in Ph: /422 Page 1

Virtualization. P. A. Wilsey. The text highlighted in green in these slides contain external hyperlinks. 1 / 16

Full and Para Virtualization

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

Chapter 16: Virtual Machines. Operating System Concepts 9 th Edition

Enabling Technologies for Distributed Computing

Virtualization for Cloud Computing

COS 318: Operating Systems. Virtual Machine Monitors

Timer, Interrupt, Exception in ARM

Advanced Computer Networks. Network I/O Virtualization

Chapter 6, The Operating System Machine Level

CPS221 Lecture: Operating System Structure; Virtual Machines

IOMMU: A Detailed view

Windows8 Internals, Sixth Edition, Part 1

Timer Value IRQ IACK

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

Virtualization. Types of Interfaces

I/O. Input/Output. Types of devices. Interface. Computer hardware

CS 695 Topics in Virtualization and Cloud Computing. More Introduction + Processor Virtualization

kvm: Kernel-based Virtual Machine for Linux

PROGRAMMING CONCEPTS AND EMBEDDED PROGRAMMING IN C, C++ and JAVA: Lesson-4: Data Structures: Stacks

Virtualization. Dr. Yingwu Zhu

Lecture 1 Operating System Overview

Enabling Technologies for Distributed and Cloud Computing

Virtualization. Explain how today s virtualization movement is actually a reinvention

Performance monitoring with Intel Architecture

Fastboot Techniques for x86 Architectures. Marcus Bortel Field Application Engineer QNX Software Systems

Components of a Computer System

windows maurizio pizzonia roma tre university

Do AUTOSAR and functional safety rule each other out?

Lecture 5. User-Mode Linux. Jeff Dike. November 7, Operating Systems Practical. OSP Lecture 5, UML 1/33

Hardware Based Virtualization Technologies. Elsie Wahlig Platform Software Architect

Real Time Control Under UNIX for RCCL

Chapter 3 Operating-System Structures

RTAI. Antonio Barbalace (modified by M.Moro 2011) RTAI

OPERATING SYSTEM SERVICES

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

Beyond Virtualization: A Novel Software Architecture for Multi-Core SoCs. Jim Ready September 18, 2012

Operating System Structures

Linux Process Scheduling Policy

VMware and CPU Virtualization Technology. Jack Lo Sr. Director, R&D

FRONT FLYLEAF PAGE. This page has been intentionally left blank

Serial Communications

Operating Systems Prof. Ashok K Agrawala

Evaluation of interrupt handling routines with a logic state analyser

UNIT 4 Software Development Flow

Knut Omang Ifi/Oracle 19 Oct, 2015

Special FEATURE. By Heinrich Munz

An Introduction to the ARM 7 Architecture

KVM: A Hypervisor for All Seasons. Avi Kivity avi@qumranet.com

CS 377: Operating Systems. Outline. A review of what you ve learned, and how it applies to a real operating system. Lecture 25 - Linux Case Study

Clouds, Virtualization and Security or Look Out Below

Hello, and welcome to this presentation of the STM32L4 reset and clock controller.

White Paper. Real-time Capabilities for Linux SGI REACT Real-Time for Linux

Embedded Systems. 6. Real-Time Operating Systems

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

Chapter 2 Logic Gates and Introduction to Computer Architecture

Virtual Machine Security

Virtual Machines. COMP 3361: Operating Systems I Winter

OPERATING SYSTEMS STRUCTURES

Transcription:

Operating Systems Lecture 03 February 11, 2013

Goals for Today Interrupts, traps and signals Hardware Protection System Calls

Interrupts, Traps, and Signals The occurrence of an event is usually signaled by an interrupt from either the hardware or the software. Hardware may trigger an interrupt at any time by sending a signal to the CPU usually by way of the system bus. Software may trigger an interrupt by executing a special operation called a system call. Answer the Phone... Resume

Interrupts, Traps, and Signals A process can generate a trap, for example, by dividing a number by zero. A user or a process may generate a signal (an interrupt to a process) Answer the Phone... Resume

Interrupt Handling Interrupt transfers control to the interrupt service routine, generally, through the interrupt vector, which contains addresses of all the interrupt service routines. Interrupt architecture must save the address of the instruction after the interrupted instruction and the CPU state so that execution of the interrupted process may continue after the interrupt has been serviced.

Interrupt Handling Incoming interrupts are disabled while another interrupt is being processed to prevent lost interrupts. An operating system is interrupt driven.

Hardware Protection Dual-Mode Operation I/O Protection Memory Protection CPU Protection

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. User mode execution done on behalf of a user. Monitor mode (also kernel mode or system mode) execution done on behalf of operating system.

Dual-Mode Operation 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.

Dual Mode Operation Hardware provides at least two modes: Kernel mode (or supervisor or protected ) User mode: Normal programs executed Some instructions/ops prohibited in user mode: Example: cannot modify page tables in user mode» Attempt to modify Exception generated Transitions from user mode to kernel mode: System Calls, Interrupts, Other exceptions

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

Use of A System Call to Perform I/O

Memory Protection Must provide memory protection outside the address space of a process. 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.

Use of Base and Limit Register

Hardware Support

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.

OS Kernel Users Applications Operating System API, AUI Operating System Kernel Computer Hardware Real work is done in the kernel

Entry Points into Kernel System Call Signal Interrupt Trap

System Calls User processes must not be given open access to the kernel code The system call interface layer contains entry point in the kernel code Any user or application request that involves access to any system resource must be handled by the kernel code

Types Of System Calls Process Control File Management Device Management Information maintenance Communications