Download presentation
Presentation is loading. Please wait.
Published byLilian Osborne Modified over 8 years ago
1
Silberschatz, Galvin and Gagne 2002 2.1 Operating System Concepts Chapter 2: Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection General System Architecture
2
Silberschatz, Galvin and Gagne 2002 2.2 Operating System Concepts Computer-System Architecture
3
Silberschatz, Galvin and Gagne 2002 2.3 Operating System Concepts Computer-System Operation I/O devices and the CPU can execute concurrently one device controller for each device type Each device controller has 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.
4
Silberschatz, Galvin and Gagne 2002 2.4 Operating System Concepts Common Functions of Interrupts Interrupt calls interrupt service routine Interrupt has number interrupt vector contains addresses of service routines Interrupt architecture save the address of the interrupted instruction disabled new interrupt to prevent a lost interrupt trap = software-generated interrupt caused either by an error or a user request operating system is interrupt driven
5
Silberschatz, Galvin and Gagne 2002 2.5 Operating System Concepts Interrupt Handling Preserve state of CPU storing registers and the program counter Determine which type of interrupt has occurred: vectored interrupt system polling Execute interrupt specific code Restore CPU state
6
Silberschatz, Galvin and Gagne 2002 2.6 Operating System Concepts Interrupt Time Line For a Single Process Doing Output
7
Silberschatz, Galvin and Gagne 2002 2.7 Operating System Concepts I/O Structures Synchronous Asynchronous
8
Silberschatz, Galvin and Gagne 2002 2.8 Operating System Concepts Synchronous I/O After I/O starts user program waits for I/O completion Wait via Special instruction Wait loop Limitation one I/O request at a time no simultaneous I/O processing
9
Silberschatz, Galvin and Gagne 2002 2.9 Operating System Concepts Asynchronous I/O After I/O starts user program does not wait Extra System call needed to allow explicit wait Device-status table Has entry for each I/O device type, address, and state
10
Silberschatz, Galvin and Gagne 2002 2.10 Operating System Concepts Device-Status Table
11
Silberschatz, Galvin and Gagne 2002 2.11 Operating System Concepts 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 one interrupt is generated per block, rather than the one interrupt per byte
12
Silberschatz, Galvin and Gagne 2002 2.12 Operating System Concepts Storage Structure Main memory only large storage media that the CPU can access directly Secondary storage extension of main memory that is large and non-volatile Magnetic disks rigid metal or glass platters with magnetic recording material Disk is logically divided into tracks and sectors The disk controller determines the logical interaction between the device and the computer
13
Silberschatz, Galvin and Gagne 2002 2.13 Operating System Concepts Moving-Head Disk Mechanism
14
Silberschatz, Galvin and Gagne 2002 2.14 Operating System Concepts Storage Hierarchy Storage systems organized in hierarchyhierarchy Speed Cost Volatility Caching copying information into faster storage system main memory can be viewed as cache for secondary storage
15
Silberschatz, Galvin and Gagne 2002 2.15 Operating System Concepts Storage-Device Hierarchy
16
Silberschatz, Galvin and Gagne 2002 2.16 Operating System Concepts Caching Use of high-speed memory to hold recently-accessed data Requires a cache management policy Requires replicated data to be consistent
17
Silberschatz, Galvin and Gagne 2002 2.17 Operating System Concepts Hardware Protection Dual-Mode Operation I/O Protection Memory Protection CPU Protection
18
Silberschatz, Galvin and Gagne 2002 2.18 Operating System Concepts Dual-Mode Operation System resources are shared Rogue program may not cause other programs to execute incorrectly Hardware supports two modes of operation: 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
19
Silberschatz, Galvin and Gagne 2002 2.19 Operating System Concepts Dual-Mode Operation (Cont.) Hardware has mode bit: monitor (0) or user (1) On interrupt or fault: hardware switches to monitor mode Privileged instructions can be issued only in monitor mode monitoruser Interrupt/fault set user mode
20
Silberschatz, Galvin and Gagne 2002 2.20 Operating System Concepts I/O Protection All I/O instructions are privileged instructions OS ensures that a user program never gains control of the computer in monitor mode example: user program stores a new address into interrupt vector
21
Silberschatz, Galvin and Gagne 2002 2.21 Operating System Concepts Use of A System Call to Perform I/O
22
Silberschatz, Galvin and Gagne 2002 2.22 Operating System Concepts Memory Protection Must provide memory protection at least for the interrupt vector and the interrupt service routines Typical: registers that hold range of legal addresses Base register – holds the smallest legal physical memory address. Limit register – contains the size of the range Memory outside the defined range is protected
23
Silberschatz, Galvin and Gagne 2002 2.23 Operating System Concepts Use of A Base and Limit Register
24
Silberschatz, Galvin and Gagne 2002 2.24 Operating System Concepts Hardware Address Protection
25
Silberschatz, Galvin and Gagne 2002 2.25 Operating System Concepts 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
26
Silberschatz, Galvin and Gagne 2002 2.26 Operating System Concepts 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
27
Silberschatz, Galvin and Gagne 2002 2.27 Operating System Concepts Network Structure Local Area Networks (LAN) Wide Area Networks (WAN)
28
Silberschatz, Galvin and Gagne 2002 2.28 Operating System Concepts Local Area Network Structure
29
Silberschatz, Galvin and Gagne 2002 2.29 Operating System Concepts Wide Area Network Structure
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.