1 / 17

CHÖÔNG 9: HEÄ THOÁNG NHAÄP/ XUAÁT (I/O SYSTEMS)

CHÖÔNG 9: HEÄ THOÁNG NHAÄP/ XUAÁT (I/O SYSTEMS). GIÔÙI THIEÄU HEÄ THOÁNG NHAÄP XUAÁT. Hoã trôï giao tieáp giöõa ngöôøi duøng –heä thoáng vaø giöõa caùc heä thoáng vôùi nhau Thieát bò phaàn cöùng phuïc vuï I/O ( I/O Hardware ) Device Bus Controller

angus
Download Presentation

CHÖÔNG 9: HEÄ THOÁNG NHAÄP/ XUAÁT (I/O SYSTEMS)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CHÖÔNG 9: HEÄ THOÁNG NHAÄP/ XUAÁT (I/O SYSTEMS)

  2. GIÔÙI THIEÄU HEÄ THOÁNG NHAÄP XUAÁT • Hoã trôï giao tieáp giöõa ngöôøi duøng –heä thoáng vaø giöõa caùc heä thoáng vôùi nhau • Thieát bò phaàn cöùng phuïc vuï I/O (I/O Hardware) • Device • Bus • Controller • Port: status, control, data in, data out • Caùc phaàn meàm phuïc vuï I/O (I/O Software)

  3. KEÁT NOÁI CAÙC THIEÁT BÒ I/O TREÂN PC

  4. TIEÂU CHUAÅN PHAÂN LOAÏI CAÙC THIEÁT BÒ I/O • Thieát bò khoái (block device) • Coù khaû naêng ñònh ñòa chæ tröïc tieáp • Khoâng ñònh ñòa chæ tröïc tieáp • Thieát bò theo kyù töï (character-stream device) • Thieát bò truy xuaát tuaàn töï / ngaãu nhieân • Thieát bò truy xuaát ñoàng boä/ baát ñoàng boä • Thieát bò chia xeû ñöôïc hay thieát bò daønh rieâng • Toác ñoä cuûa thieát bò : nhanh, chaäm • Cheá ñoä truy caäp thieùt bò: • Thieát bò chæ ñoïc, chæ ghi, ñoïc / ghi

  5. TRUY CAÄP I/O BAÈÈNG PHÖÔNG PHAÙP POLLING • Hieän thöïc: • Traïng thaùi thieát bò: busy, error hay command-ready • Khi thieát bò raûnh, CPU ra leänh truy caäp I/O • Controller ñoïc leänh vaø thöïc thi taùc vuï. • Khi thöïc thi xong, controller ñaët laïi traïng thaùi cuûa thieát bò: idle hoaëc error. • CPU lieân tuïc kieåm tra traïng thaùi thieát bò ñeå ñoïc, ghi döõ lieäu neáu caàn thieát • Nhaän xeùt

  6. TRUY CAÄP I/O BAÈÈNG CAÙCH SÖÛ DUÏNG NGAÉT QUAÕNG • Thieát bò I/O taïo ngaét quaõng khi hoaøn taát taùc vuï • Khi coù ngaét quaõng • Trình xöû lyù ngaét quaõng nhaän interrupt • Xaùc ñònh thieát bò gaây ngaét quaõng • Laáy döõ lieäu töø device register (leänh tröôùc laø leänh ñoïc) • Khôûi ñoäng leänh tieáp theo cho thieát bò ñoù • Xöû lyù ngaét quaõng theo ñoä öu tieân, coù theå hoaõn hoaëc huûy moät soá ngaét quaõng • Ngaét quaõng cuõng ñöôïc duøng khi xaûy ra bieán coá • Nhaän xeùt?

  7. CHU KYØ NGAÉT QUAÕNG CUÛA I/O

  8. DIRECT MEMORY ACCESS - DMA • Cho pheùp thieát bò I/O trao ñoåi döõ lieäu tröïc tieáp vôùi boä nhôù khoâng caàn thoâng qua CPU Hình veõ: Caùc böôùc truy xuaát ñóa cöùng duøng DMA

  9. CAÙC PHAÀN MEÀM PHUÏC VUÏ I/O (I/O SOFTWARE) • Caùc trình xöû lyù ngaét quaõng (Interrupt Service Routines) • Caùc trình ñieàu khieån thieát bò (Device Drivers) • Caùc dòch vuï cuûa heä ñieàu haønh • Thö vieän laäp trình vaø caùc chöông trình khaùc

  10. CAÙC DÒCH VUÏ I/O DO HEÄ ÑIEÀU HAØNH CUNG CAÁP • Ñaët teân thieát bò • Caùc taùc vuï xöû lyù • Ñieàu khieån truy caäp • Caáp phaùt thieát bò • Ñònh thôøi cho caùc thieát bò I/O • Caùc kyõ thuaït bufffer, cache, spool • Xöû lyù vaø phuïc hoài loãi

  11. GIAO TIEÁP I/O BLOCKING & NONBLOCKING • Blocking – Quaù trình goïi seõ treo ñeán khi giao tieáp I/O xong • Deã hieåu, deã söû duïng • Khoâng hieäu quaû trong moät soá tröôøng hôïp • Nonblocking – Haøm I/O return ngay khi coù theå • Hieän thöïc baèng kyõ thuaät multi-threading • Traû veà ngay soá byte ñöôïc ñoïc hoaëc ghi • Asynchronous – Quaù trình tieáp tuïc chaïy khi ñang giao tieáp vôùi I/O • Khoù duøng • I/O subsystem baùo hieäu cho quaù trình khi hoaøn thaønh taùc vuï I/O.

  12. CAÙC CHÖÙC NAÊNG QUAÛN LYÙ I/O • Do module quaûn lyù I/O cuûa heä ñieàu haønh (Kernel I/O Subsystem) ñaûm nhaän • Caùc chöùc naêng chính • Ñònh thôøi I/O ( I/O scheduling) • Daønh rieâng thieát bò (device reservation) • Xöû lyù loãi (error handling) • Buffering • Caching • Spooling

  13. BUFFERING • Löu döõ lieäu trong boä nhôù thay vì chuyeån tröïc tieáp döõ lieäu giöõa caùc thieát bò • Coù theå ñöôïc hieän thöïc ôû • Caáp phaàn cöùng • Caáp heä ñieàu haønh • Muïc ñích • Xöû lyù vaán ñeà toác ñoä caùc thieát bò khaùc nhau • Xöû lyù vaán ñeà kích thöôùc khoái döõ lieäu trao ñoåi giöõa caùc thieát bò khaùc nhau • Giaûm thieåu thôøi gian quaù trình bò chaën khi ghi döõ lieäu

  14. CACHING & SPOOLING • Caching • Duøng vuøng nhôù toác ñoä cao ñeå löu baûn sao cuûa döõ lieäu thöôøng xuyeân truy xuaát • Ñaûm baûo tính nhaát quaùn cuûa cache: • Kyõ thuaät write through • Kyõ thuaät write back • Spooling (Simultaneous Peripheral Operation On-line) • Duøng thieát bò löu tröõ toác ñoä trung bình laøm trung gian giao tieáp giöõa 2 thieát bò coù toác ñoä cheânh leäch nhau • Ví duï : dòch vuï in aán

  15. CHU KYØ I/O

  16. TAÊNG HIEÄU SUAÁT HEÄ THOÁNG I/O • Giaûm thieåu copy döõ lieäu (caching) • Giaûm taàn soá interrupt (duøng kích thöôùc khoái döõ lieäu truyeàn nhaän lôùn, smart controller…) • Giaûm taûi cho CPU baèng DMA • Taêng soá löôïng thieát bò ñeå traùnh tranh chaáp • Taêng dung löôïng boä nhôù thöïc • Caân baèêng hieäu suaát CPU, boä nhôù, bus vaø thieát bò I/O ñeå ñaït throughput cao nhaát • …

  17. Mụctiêu • Giớithiệuvaitròcủaviệctổchứcdữliệutrongmộtđềántinhọc. • Mốiquanhệgiữagiảithuậtvàcấutrúcdữliệu. • Cácyêucầutổchứccấutrúcdữliệu • Kháiniệmkiểudữliệu_cấutrúcdữliệu • Tổngquanvềđánhgiáđộphứctạpgiảithuật

More Related