Bài giảng Operating system Concepts - Chapter 2: Computer system structures

ppt 29 trang huongle 2820
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Operating system Concepts - Chapter 2: Computer system structures", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_operating_system_concepts_chapter_2_computer_syste.ppt

Nội dung text: Bài giảng Operating system Concepts - Chapter 2: Computer system structures

  1. Chapter 2: Computer-System Structures n Computer System Operation n I/O Structure n Storage Structure n Storage Hierarchy n Hardware Protection n General System Architecture Operating System Concepts 2.1 Silberschatz, Galvin and Gagne 2002
  2. Computer-System Architecture Operating System Concepts 2.2 Silberschatz, Galvin and Gagne 2002
  3. Computer-System Operation n I/O devices and the CPU can execute concurrently. n Each device controller is in charge of a particular device type. n Each device controller has a local buffer. n CPU moves data from/to main memory to/from local buffers n I/O is from the device to local buffer of controller. n Device controller informs CPU that it has finished its operation by causing an interrupt. Operating System Concepts 2.3 Silberschatz, Galvin and Gagne 2002
  4. Common Functions of Interrupts n Interrupt transfers control to the interrupt service routine generally, through the interrupt vector, which contains the addresses of all the service routines. n Interrupt architecture must save the address of the interrupted instruction. n Incoming interrupts are disabled while another interrupt is being processed to prevent a lost interrupt. n A trap is a software-generated interrupt caused either by an error or a user request. n An operating system is interrupt driven. Operating System Concepts 2.4 Silberschatz, Galvin and Gagne 2002
  5. Interrupt Handling n The operating system preserves the state of the CPU by storing registers and the program counter. n Determines which type of interrupt has occurred: F polling F vectored interrupt system n Separate segments of code determine what action should be taken for each type of interrupt Operating System Concepts 2.5 Silberschatz, Galvin and Gagne 2002
  6. Interrupt Time Line For a Single Process Doing Output Operating System Concepts 2.6 Silberschatz, Galvin and Gagne 2002
  7. I/O Structure n After I/O starts, control returns to user program only upon I/O completion. F Wait instruction idles the CPU until the next interrupt F Wait loop (contention for memory access). F At most one I/O request is outstanding at a time, no simultaneous I/O processing. n After I/O starts, control returns to user program without waiting for I/O completion. F System call – request to the operating system to allow user to wait for I/O completion. F Device-status table contains entry for each I/O device indicating its type, address, and state. F Operating system indexes into I/O device table to determine device status and to modify table entry to include interrupt. Operating System Concepts 2.7 Silberschatz, Galvin and Gagne 2002
  8. Two I/O Methods Synchronous Asynchronous Operating System Concepts 2.8 Silberschatz, Galvin and Gagne 2002
  9. Device-Status Table Operating System Concepts 2.9 Silberschatz, Galvin and Gagne 2002
  10. Direct Memory Access Structure n Used for high-speed I/O devices able to transmit information at close to memory speeds. n Device controller transfers blocks of data from buffer storage directly to main memory without CPU intervention. n Only on interrupt is generated per block, rather than the one interrupt per byte. Operating System Concepts 2.10 Silberschatz, Galvin and Gagne 2002
  11. Storage Structure n Main memory – only large storage media that the CPU can access directly. n Secondary storage – extension of main memory that provides large nonvolatile storage capacity. n Magnetic disks – rigid metal or glass platters covered with magnetic recording material F Disk surface is logically divided into tracks, which are subdivided into sectors. F The disk controller determines the logical interaction between the device and the computer. Operating System Concepts 2.11 Silberschatz, Galvin and Gagne 2002
  12. Moving-Head Disk Mechanism Operating System Concepts 2.12 Silberschatz, Galvin and Gagne 2002
  13. Storage Hierarchy n Storage systems organized in hierarchy. F Speed F Cost F Volatility n Caching – copying information into faster storage system; main memory can be viewed as a last cache for secondary storage. Operating System Concepts 2.13 Silberschatz, Galvin and Gagne 2002
  14. Storage-Device Hierarchy Operating System Concepts 2.14 Silberschatz, Galvin and Gagne 2002
  15. Caching n Use of high-speed memory to hold recently-accessed data. n Requires a cache management policy. n Caching introduces another level in storage hierarchy. This requires data that is simultaneously stored in more than one level to be consistent. Operating System Concepts 2.15 Silberschatz, Galvin and Gagne 2002
  16. Migration of A From Disk to Register Operating System Concepts 2.16 Silberschatz, Galvin and Gagne 2002
  17. Hardware Protection n Dual-Mode Operation n I/O Protection n Memory Protection n CPU Protection Operating System Concepts 2.17 Silberschatz, Galvin and Gagne 2002
  18. Dual-Mode Operation n Sharing system resources requires operating system to ensure that an incorrect program cannot cause other programs to execute incorrectly. n 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. Operating System Concepts 2.18 Silberschatz, Galvin and Gagne 2002
  19. Dual-Mode Operation (Cont.) n Mode bit added to computer hardware to indicate the current mode: monitor (0) or user (1). n 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. Operating System Concepts 2.19 Silberschatz, Galvin and Gagne 2002
  20. I/O Protection n All I/O instructions are privileged instructions. n 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). Operating System Concepts 2.20 Silberschatz, Galvin and Gagne 2002
  21. Use of A System Call to Perform I/O Operating System Concepts 2.21 Silberschatz, Galvin and Gagne 2002
  22. Memory Protection n Must provide memory protection at least for the interrupt vector and the interrupt service routines. n In order to have memory protection, add two registers that determine the range of legal addresses a program may access: F Base register – holds the smallest legal physical memory address. F Limit register – contains the size of the range n Memory outside the defined range is protected. Operating System Concepts 2.22 Silberschatz, Galvin and Gagne 2002
  23. Use of A Base and Limit Register Operating System Concepts 2.23 Silberschatz, Galvin and Gagne 2002
  24. Hardware Address Protection Operating System Concepts 2.24 Silberschatz, Galvin and Gagne 2002
  25. Hardware Protection n When executing in monitor mode, the operating system has unrestricted access to both monitor and user’s memory. n The load instructions for the base and limit registers are privileged instructions. Operating System Concepts 2.25 Silberschatz, Galvin and Gagne 2002
  26. CPU Protection n Timer – interrupts computer after specified period to ensure operating system maintains control. F Timer is decremented every clock tick. F When timer reaches the value 0, an interrupt occurs. n Timer commonly used to implement time sharing. n Time also used to compute the current time. n Load-timer is a privileged instruction. Operating System Concepts 2.26 Silberschatz, Galvin and Gagne 2002
  27. Network Structure n Local Area Networks (LAN) n Wide Area Networks (WAN) Operating System Concepts 2.27 Silberschatz, Galvin and Gagne 2002
  28. Local Area Network Structure Operating System Concepts 2.28 Silberschatz, Galvin and Gagne 2002
  29. Wide Area Network Structure Operating System Concepts 2.29 Silberschatz, Galvin and Gagne 2002