Download presentation
Presentation is loading. Please wait.
Published byMarcia McDaniel Modified over 9 years ago
1
© 2004, D. J. Foreman 1 Device Mgmt
2
© 2004, D. J. Foreman 2 Device Management Organization Multiple layers ■ Application ■ Operating System ■ Driver ■ Controller ■ Device Tradeoffs of layering ■ Loss of efficiency ■ Increased generalization and flexibility ■ Reduced cost of maintenance and development for all (driver writers, O/S writers, app writers and users)
3
© 2004, D. J. Foreman 3 Device Management Organization-2 O/S API Applications Controller Firmware Devices Device Driver Device independent Device dependent read, write
4
© 2004, D. J. Foreman 4 The API Simple set of abstract operations ■ read, write, seek, control Direct vs Sequential ■ Disks vs tapes, printers, etc Block vs Character ■ Disk vs keyboard Blocking vs Non-blocking
5
© 2004, D. J. Foreman 5 Handling I/O Polling ■ Program loops until device signals completion ■ No other program can run ■ CPU runs, but no work gets done! Interrupt driven ■ Program starts I/O ■ Program decides to wait or not ■ O/S switches to another thread or process
6
© 2004, D. J. Foreman 6 Key concepts CPU cycles are wasted during a wait Devices are independent Multitasking (or threading) is possible Why not overlap I/O with CPU Threads can decide when to wait Non-thread programs can also decide System throughput is increased
7
© 2004, D. J. Foreman 7 Driver/Kernel Interface Drivers merged with kernel Kernel makes function calls to drivers Kernel functions used by drivers: ■ Device allocation ■ Resource (e.g., memory) allocation ■ Scheduling ■ Others: depends on O/S
8
© 2004, D. J. Foreman 8 System bottlenecks Compute bound processes ■ no devices get started until time-slice used up ■ Only one process/thread gets service I/O bound processes ■ CPU under-utilized Solution: ■ "Good" mix of applications ■ Pre-emptive scheduling (more later)
9
© 2004, D. J. Foreman 9 Overlapped I/O Apps t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 Device th1 Blockin g I/O Non- Blockin g I/O th2 P1 P2
10
© 2004, D. J. Foreman 10 Buffering Provides a means for speed-matching Many methods ■ Lists 1 way, 2 way, circular ■ Arrays Fixed size Variable size Circular Problems ■ Overflow ■ Protected access ■ Synchronization – more in another chapter
11
© 2004, D. J. Foreman 11 Example of using buffers Water CompanyCustomer Office Water Consumers Water Producer Delivering Water Returning the Empties Production qty? Consumption qty? Inventory Classic "Producer-Consumer"
12
© 2004, D. J. Foreman 12 Hardware Buffering In the Device controller In the Device itself = "double-buffering" Reduces system overhead from: ■ Buffer mgmt ■ Buffer content ■ Synchronizing
13
© 2004, D. J. Foreman 13 Disk I/O Goal – minimize access time ■ Mixed solution: h/w & s/w = (X + Y*K) + latency + transfer Seek time: head movement delay ■ for 1 cylinder (X) ≈ 10 ms(device dependent) ■ For Y cylinders = Y * K (K is device dependent) Latency: rotational delay ■ 5400R/M*1M/60s= 90R/s .01 s/R = 10ms/R ■ 7200 R/M*1M/60s=120R/s .008 s/R= 8ms/R Transfer time: delay between disk and RAM ■ Bus speed (currently) 400 Mhz or 800 Mhz Access Time = seek + latency + transfer
14
© 2004, D. J. Foreman 14 Access Algorithms FCFS ■ No optimization SSTF – min seek from current position ■ Starvation can occur (from local minimization) Scan/Look ■ No starvation ■ Requests may wait a full scan (0-n-0) Circular Scan/Look ■ No starvation ■ Requires fast-reposition to 0
15
© 2004, D. J. Foreman 15 Serial I/O Must convert ■ Parallel (bytes) to serial (bit-by-bit) ■ Digital (1/0) to analog (+/- voltages) And back again at the other end Protocol: RS-232
16
© 2004, D. J. Foreman 16 MS-bootable disk layout 0x00-0x02 jump inst to 0x1e 0x03-0x0aPC manufacturer name 0x0b-0x0csectors/cluster 0x0d-0x0freserved for boot record 0x10-0x10# of FAT's 0x11-0x12# root directory entries 0x13-0x14# logical sectors 0x15-0x15media descriptor 0x16-0x17sectors/FAT 0x18-0x19sectors/track 0x1a-0x10b # surfaces (heads) 0x1c-0x1d# hidden sectors 0x1e-…boot program
17
© 2004, D. J. Foreman 17 Mainframe Device Mgmt CPU Channel Controller Hardware Devices
18
© 2004, D. J. Foreman 18 Channel programming SIOdevaddr Channel Address Word Channel Program Seek Search Read/write Device
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.