160 likes | 339 Views
Lab3 for I/O. TA: 黃俊輔 jojoman email:r93921109@ntu.edu.tw. Handshaking. http://rebrown.com/rebrown/handsh.htm. I/O Driven. Busy waiting Interrupt DMA (Direct Memory Access). I/O Driven. Busy waiting Keep asking I/O device if they have data to transfer or not. I/O Driven.
E N D
Lab3 for I/O TA:黃俊輔 jojomanemail:r93921109@ntu.edu.tw
Handshaking http://rebrown.com/rebrown/handsh.htm
I/O Driven • Busy waiting • Interrupt • DMA (Direct Memory Access)
I/O Driven • Busy waitingKeep asking I/O device if they have data to transfer or not.
I/O Driven • DMA (Direct Memory Access)Short for DMA, a technique for transferring data from main memory to a device without passing it through the CPU.
IRQ Numbers • IRQ# Device 0 System timer 1 Keyboard 2 Cascade from IRQ 9 3 COM port 2 4 COM port 15 Parallel (printer) port 2 or sound cards
IRQ Numbers • IRQ# Device6 Floppy drive controller 7 Parallel (printer) port 1 8 Real time clock 9 Open10 Open 11 Open 12 PS/2 mouse
IRQ Numbers • IRQ# Device13 Coprocessor 14 Primary IDE controller (hard drives) 15 Secondary IDE controller (hard drives)
Plug-and-Play(PnP) • Plug-and-Play automatically tells the software (device drivers) where to find various pieces of hardware (devices) such as modems, network cards, sound cards, etc.
Plug-and-Play(PnP) • PnP allocates the following "bus-resources" to both drivers and hardware: I/O addresses, memory regions, IRQs, DMA channels (ISA bus only).
Assign a IRQ Number • In win98 & win MEclick “系統”and open “裝置管理員” • In win 2k & win XPthe same but...........
IRQ Conflicts • There are few IRQ numbers open, but we still have a lot of devices such as USB, AGP, PCI, RAID, SATA, LAN, 1394. • Solution: We have to share IRQ numbers. It depends on each motherboard.
IRQ Conflicts • Example: for ABIT KT7A-RaidDevice A B C DPCI Slot1 s - - -PCI Slot2 - s - -PCI Slot3 - s - -PCI Slot4 - - - sPCI Slot5 - - s -PCI Slot6 - - - sAGP Slot s - - -USB controller - - - sRaidController - - s -
Lab Question1 • How to change keyboard’s repeat delay and repeat rate?
Lab Question2 • How to setup/add/switch input methods?
Lab Question3 • Adjustable on “control panel”