![Page 1: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/1.jpg)
2.1 Sana’a University, Dr aimenOperating System Concepts with Java
ComputerComputer--System StructuresSystem Structures
� Computer System Operation� I/O Structure � Storage Structure� Storage Hierarchy� Hardware Protection� Network Structure
![Page 2: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/2.jpg)
2.2 Sana’a University, Dr aimenOperating System Concepts with Java
A Modern Computer SystemA Modern Computer System
![Page 3: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/3.jpg)
2.3 Sana’a University, Dr aimenOperating System Concepts with Java
ComputerComputer--System OperationSystem 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
![Page 4: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/4.jpg)
2.4 Sana’a University, Dr aimenOperating System Concepts with Java
Common Functions of InterruptsCommon 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
![Page 5: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/5.jpg)
2.5 Sana’a University, Dr aimenOperating System Concepts with Java
Interrupt HandlingInterrupt 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 kernel routines determine what action should be taken for each type of interrupt
![Page 6: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/6.jpg)
2.6 Sana’a University, Dr aimenOperating System Concepts with Java
Interrupt Time Line For a Single Process Doing OutputInterrupt Time Line For a Single Process Doing Output
![Page 7: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/7.jpg)
2.7 Sana’a University, Dr aimenOperating System Concepts with Java
I/O StructureI/O Structure
� Synchronous I/O - 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
� Asynchronous I/O - 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
![Page 8: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/8.jpg)
2.8 Sana’a University, Dr aimenOperating System Concepts with Java
Two I/O MethodsTwo I/O Methods
Synchronous Asynchronous
![Page 9: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/9.jpg)
2.9 Sana’a University, Dr aimenOperating System Concepts with Java
DeviceDevice--Status TableStatus Table
![Page 10: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/10.jpg)
2.10 Sana’a University, Dr aimenOperating System Concepts with Java
Direct Memory Access StructureDirect 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
![Page 11: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/11.jpg)
2.11 Sana’a University, Dr aimenOperating System Concepts with Java
Storage StructureStorage 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
![Page 12: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/12.jpg)
2.12 Sana’a University, Dr aimenOperating System Concepts with Java
MovingMoving--Head Disk MechanismHead Disk Mechanism
![Page 13: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/13.jpg)
2.13 Sana’a University, Dr aimenOperating System Concepts with Java
Storage HierarchyStorage 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
![Page 14: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/14.jpg)
2.14 Sana’a University, Dr aimenOperating System Concepts with Java
StorageStorage--Device HierarchyDevice Hierarchy
![Page 15: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/15.jpg)
2.15 Sana’a University, Dr aimenOperating System Concepts with Java
CachingCaching
� 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
![Page 16: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/16.jpg)
2.16 Sana’a University, Dr aimenOperating System Concepts with Java
Migration of Integer Migration of Integer ““AA”” From Disk to RegisterFrom Disk to Register
![Page 17: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/17.jpg)
2.17 Sana’a University, Dr aimenOperating System Concepts with Java
Hardware ProtectionHardware Protection
� Dual-Mode Operation� I/O Protection� Memory Protection� CPU Protection
![Page 18: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/18.jpg)
2.18 Sana’a University, Dr aimenOperating System Concepts with Java
DualDual--Mode OperationMode Operation
� Sharing system resources requires operating system to ensure that an incorrect program or poorly behaving human cannot cause other programs to execute incorrectly
� OS must provide hardware support to differentiate between at least two modes of operations1. User mode – execution done on behalf of a user2. Monitor mode (also kernel mode or system mode) – execution done
on behalf of operating system
![Page 19: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/19.jpg)
2.19 Sana’a University, Dr aimenOperating System Concepts with Java
DualDual--Mode Operation (Cont.)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
Privileged instructions can be issued only in monitor mode
monitor user
Interrupt/fault
set user mode
![Page 20: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/20.jpg)
2.20 Sana’a University, Dr aimenOperating System Concepts with Java
I/O ProtectionI/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)
![Page 21: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/21.jpg)
2.21 Sana’a University, Dr aimenOperating System Concepts with Java
Use of A System Call to Perform I/OUse of A System Call to Perform I/O
![Page 22: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/22.jpg)
2.22 Sana’a University, Dr aimenOperating System Concepts with Java
Memory ProtectionMemory Protection
� Must provide memory protection at least for the interrupt vectorand the interrupt service routines
� In order to have memory protection, at a minimum 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
![Page 23: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/23.jpg)
2.23 Sana’a University, Dr aimenOperating System Concepts with Java
Use of A Base and Limit RegisterUse of A Base and Limit Register
![Page 24: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/24.jpg)
2.24 Sana’a University, Dr aimenOperating System Concepts with Java
Hardware Address Protection Hardware Address Protection
![Page 25: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/25.jpg)
2.25 Sana’a University, Dr aimenOperating System Concepts with Java
Hardware ProtectionHardware 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
![Page 26: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/26.jpg)
2.26 Sana’a University, Dr aimenOperating System Concepts with Java
CPU ProtectionCPU 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
![Page 27: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/27.jpg)
2.27 Sana’a University, Dr aimenOperating System Concepts with Java
GeneralGeneral--System ArchitectureSystem Architecture
� Given the I/O instructions are privileged, how does the user program perform I/O?
� System call – the method used by a process to request action by the operating system� Usually takes the form of a trap to a specific location in the interrupt
vector� Control passes through the interrupt vector to a service routine in
the OS, and the mode bit is set to monitor mode� The monitor verifies that the parameters are correct and legal,
executes the request, and returns control to the instruction following the system call
![Page 28: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/28.jpg)
2.28 Sana’a University, Dr aimenOperating System Concepts with Java
Network StructureNetwork Structure
� Local Area Networks (LAN)� Wide Area Networks (WAN)
![Page 29: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/29.jpg)
2.29 Sana’a University, Dr aimenOperating System Concepts with Java
Local Area Network StructureLocal Area Network Structure
![Page 30: Computer › 2010 › 06 › microsoft... · Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection Network Structure](https://reader030.vdocuments.us/reader030/viewer/2022040413/5f0ce1917e708231d43797fd/html5/thumbnails/30.jpg)
2.30 Sana’a University, Dr aimenOperating System Concepts with Java
Wide Area Network StructureWide Area Network Structure