Chöông 9: I/O System Thieát bò phaàn cöùng I/O

Slides:



Advertisements
Similar presentations
Moät caây lôùn, ñöôïc vun troàng treân thöûa ñaát toát ………... Töø Valdocco... Töø ngöôøi ñôøi...Töø nhöõng neàn vaên hoùa... Töø Mornese.
Advertisements

Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Hoài qui phi tuyeán Hoài qui phi tuyeán vaø hoài qui tuyeán tính : Moâ hình hoài qui ñöôïc goïi laø phi tuyeán neáu caùc ñaïo haøm cuûa moâ hình töông.
Trao đ ổ i tr ự c tuy ế n t ạ i:
Chapter III1 KYÕ THUAÄT NAÂNG - VAÄN CHUYEÅN CHÖÔNG 3 DAÂY & CAÙC CHI TIEÁT QUAÁN, HÖÔÙNG DAÂY (WIRE ROBES AND CHAINS FOR HOISTING AND HAULAGE. LIFTING.
1 BAØI TAÄP Baøi taäp chöông I Baøi taäp chöông II Baøi taäp chöông III Baøi taäp chöông IV Baøi taäp chöông V vaø VI Baøi taäp chöông VII Baøi taäp chöông.
PHAÂN TÍCH CHUOÃI THÔØI GIAN (time series analysis)
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 13: I/O Systems I/O Hardware Application I/O Interface.
04/14/2008CSCI 315 Operating Systems Design1 I/O Systems Notice: The slides for this lecture have been largely based on those accompanying the textbook.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 2, 2005 Chapter 13: I/O Systems I/O Hardware.
I/O Hardware n Incredible variety of I/O devices n Common concepts: – Port – connection point to the computer – Bus (daisy chain or shared direct access)
04/16/2010CSCI 315 Operating Systems Design1 I/O Systems Notice: The slides for this lecture have been largely based on those accompanying an earlier edition.
I/O Systems CS 3100 I/O Hardware1. I/O Hardware Incredible variety of I/O devices Common concepts ◦Port ◦Bus (daisy chain or shared direct access) ◦Controller.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
I/O Systems CSCI 444/544 Operating Systems Fall 2008.
CHUYEÂN ÑEÀ ÑIEÄN HOÙA HOÏC. I.PHAÛN ÖÙNG OXI HOÙA - KHÖÛ Laø phaûn öùng coù söï thay ñoåi soá oxi hoùa cuûa caùc nguyeân toá  Coù söï trao ñoåi e 
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
1 st EÂ TEØO! XUOÁNG LAØM LAÏI CAÙI NAØY THEO HEÄ MEÙT CHÖ KHOÂNG PHAÛI HEÄ INCHES.
HOÀI SINH TIM PHOÅI TS BS Hoà Huyønh Quang Trí Vieän Tim TP HCM.
ÑIEÄN TAÂM ÑOÀ CAÊN BAÛN. BS. Ñinh Hieáu Nhaân BS. Ñinh Hieáu Nhaân.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 AE4B33OSS Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O.
I/O Systems I/O Hardware Application I/O Interface
1 Module 12: I/O Systems n I/O hardware n Application I/O Interface n Kernel I/O Subsystem n Transforming I/O Requests to Hardware Operations n Performance.
-1.1- Chöông 10: Heä Thoáng File 10.C. 2 Chöông 10: Heä Thoáng File  Beân trong ñóa cöùng  Caùc giaûi thuaät ñònh thôøi truy caäp ñóa  Ñònh daïng,
CHÖÔNG 6: CAÛM BIEÁN ÑO LÖÔØNG 6.1 Ñaëc tính toång quaùt 6.2 Caûm bieán daïng ñieän trôû 6.3 Caûm bieán daïng ñieän caûm 6.4 Caûm bieán daïng hoå caûm.
MAÏNG SOÁ LIEÄU CHÖÔNG 2: LAN (Local Area Network)
Ñöøng ñoaùn. Haõy bieát cho töôøng taän. “Ñoäc Haïi” coù nghóa gì? Chaát ñoäc haïi laø baát cöù chaát gì coù theå gaây nguy haïi cho con ngöôøi khi hít.
Chapter 13: I/O Systems. 13.2/34 Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem Transforming I/O Requests to Hardware.
Trình Baøy Mang Laïi: Kieán Thöùc, An Toaøn, Töï Tin Chöông Trình Giaùo Duïc Taøi Chaùnh Cuûa FDIC Tröông Muïc Vaõng Lai.
Do söï giuùp ñôõ cuûa: Cuoäc Haønh Trình tôùi Laøm Chuû Caên Nhaø cuûa Mình Laøm ñôn giaûn… Bôûi: Phaân Ngaønh Tieáp Thò Ña Vaên Hoùa.
1.Moãi khi coù nhaân vieân nghæ vieäc hoaëc trong doanh nghieäp phaùt sinh theâm coâng vieäc môùi thì xuaát hieän nhu caàu nhaân söï. 2.Caàn xem xeùt lieäu.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel I/O Subsystem.
-1.1- Chöông 10: Heä Thoáng File 10.C. 2 Chöông 10: Heä Thoáng File  Beân trong ñóa cöùng  Caùc giaûi thuaät ñònh thôøi truy caäp ñóa  Ñònh daïng,
6.5 CAÛM BIEÁN ÑIEÄN DUNG ( Capacitive transducer ) 1- Caáu taïo vaø nguyeân lyù: 2 loaïi : daïng ñôn ( hai baûn cöïc ) vaø daïng vi sai ( 1baûn cöïc chung.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Principles Chapter 13: I/O Systems I/O Hardware Application I/O Interface.
1 CHÖÔNG II MOÄT SOÁ KHAÙI NIEÄM CÔ BAÛN VEÀ CAO TAÀN.
Khoa Khoa Hoïc & Kyõ Thuaät Maùy Tính – Ñaïi Hoïc Baùch Khoa TP HCM 10.C.1 Chöông 10: Heä Thoáng File 10.C  Caáu truùc heä thoáng löu tröõ thöù caáp.
XE33OSA Chapter 13: I/O Systems. 13.2XE33OSA Silberschatz, Galvin and Gagne ©2005 Chapter 13: I/O Systems I/O Hardware Application I/O Interface Kernel.
MOÂN HOÏC: CÔ SÔÛ KYÕ THUAÄT TRUYEÀN SOÁ LIEÄU Lôùp Kyõ thuaät vieãn thoâng Chöông 1: MAÏNG TRUYEÀN SOÁ LIEÄU VAØ CAÙC CHUAÅN HEÄ THOÁNG MÔÛ.
Chapter 13: I/O Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 13: I/O Systems Overview I/O Hardware Application.
Chapter 91 KYÕ THUAÄT NAÂNG-VAÄN CHUYEÅN CHÖÔNG 9 BAÛO ÑAÛM AN TOAØN LAØM VIEÄC MAÙY TRUÏC.
Nöõ tu Meán Thaùnh Giaù vaø Naêm Thaùnh Ñöùc Cha Pheâroâ Nguyeãn Vaên Nhôn, trình baøy vôùi Ñöùc Thaùnh Cha Beâneâñictoâ XVI: * Tình Hình GHVN *
Silberschatz, Galvin, and Gagne  Applied Operating System Concepts Module 12: I/O Systems I/O hardwared Application I/O Interface Kernel I/O.
BAØI TAÄP chöông 1 1. Veõ taát caû ñoà thò a. 3 ñænh vaø 3 caïnh. b. 4 ñænh, 4 caïnh vaø khoâng coù voøng, khoâng coù caïnh //. c. lieät keâ 4 ñoà thò.
Chương 4 : Ño L(inductance),C(capacitance)& M (mutual inductance) 4.1- Đo L &C dùng vôn kế và ampe kế Đo L&C dùng cầu đo AC 4.3- Đo M dùng vôn kế.
PHAÀN 1: MOÄT SOÁ VAÁN ÑEÀ VEÀ NOÄI QUY AN TOAØN TRONG LAÉP ÑAËT- VAÄN HAØNH VAØ BAÛO TRÌ HEÄ THOÁNG KHÍ NEÙN 1.1. Nhöõng quy ñònh veà an toaøn trong laép.
Chapter 13: I/O Systems.
NOÄI DUNG 1. CAÁU TAÏO SÔÏI QUANG
Module 12: I/O Systems I/O hardware Application I/O Interface
Chapter 13: I/O Systems Modified by Dr. Neerja Mhaskar for CS 3SH3.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
ÑEÀ TAØI : COÂNG NGHEÄ EÙP PHUN & ÖÙNG DUÏNG PHAÀN MEÀM PRO/ENGINEER ÑEÅ THIEÁT KEÁ KHUOÂN MOÙC CAÊNG DAÂY GHEÁ.
May be not.... Con kieán Moät truyeän nguï ngoân... Hay laø
CSCI 315 Operating Systems Design
Phong caùch laõnh ñaïo Point out that this course is competency based and their behaviour is a criteria for success. They will be asked questions, role.
Quaûn lyù tieán trình.
I/O Systems I/O Hardware Application I/O Interface
Operating System Concepts
13: I/O Systems I/O hardwared Application I/O Interface
CS703 - Advanced Operating Systems
2.A Quaûn lyù quaù trình Khaùi nieäm cô baûn Ñònh thôøi CPU
Moân: Mĩ thuật GIAÙO AÙN ÑIEÄN TÖÛ Hä tªn:NguyÔn ThÞ Sen
Chöông 2.B Thread Khaùi nieäm toång quan Caùc moâ hình multithread
Lieân Laïc VAÊN PHOØNG TRUNG ÖÔNG TÑT. Nguyeãn Hoàng Lónh
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
Tiết 50 - Bài 33 ÑIEÀU CHEÁ KHÍ HIÑRO PHAÛN ÖÙNG THEÁ.
Module 12: I/O Systems I/O hardwared Application I/O Interface
TÍNH TOAÙN NGAÉN MAÏCH TRÌNH BAØY TS. TRÖÔNG VIEÄT ANH.
Presentation transcript:

Chöông 9: I/O System Thieát bò phaàn cöùng I/O Giao dieän I/O cho öùng duïng Caùc dòch vuï cuûa I/O subsystem Hieäu suaát I/O

Toång quan Caùc thieát bò I/O khaùc bieät veà chöùc naêng, toác ñoä,… neân caàn coù caùc phöông thöùc quaûn lyù, ñieàu khieån töông öùng khaùc nhau Chính laø chöùc naêng cuûa I/O subsystem cuûa OS Caùc trình ñieàu khieån thieát bò (device driver) cung caáp cho I/O subsystem moät giao dieän thuaàn nhaát ñeå truy caäp caùc thieát bò memory-mapped I/O: Each control register is assigned a unique memory address to which no memory is assigned.

Thieát bò phaàn cöùng I/O Keát noái vaät lyù giöõa heä thoáng maùy tính vaø caùc thieát bò I/O Port (connection point) USB port Bus (daisy chain, shared direct access) Ñieàu khieån Controller (device controller, SCSI host adapter) Giao tieáp giöõa CPU vaø thieát bò I/O I/O port: ñòa chæ I/O ñeå laäp trình. Duøng leänh I/O leân I/O port ñeå taùc ñoäng leân caùc thanh ghi döõ lieäu / traïng thaùi / leänh cuûa controller. Memory-mapped I/O Each control register is assigned a unique memory address to which no memory is assigned. memory-mapped I/O: Each control register is assigned a unique memory address to which no memory is assigned.

Caáu truùc bus trong PC

Moät soá I/O port trong PC controller controller controller

Caùc kyõ thuaät thöïc hieän I/O (1/3) Kyõ thuaät polling (busy waiting) Kieåm tra traïng thaùi cuûa thieát bò khi muoán thöïc hieän I/O ready hoaëc busy hoaëc error Tieâu toán thôøi gian trong voøng laëp ñeå kieåm tra traïng thaùi (busy-wait) vaø thöïc hieän I/O. Programmed I/O

Caùc kyõ thuaät thöïc hieän I/O (2/3) Kyõ thuaät I/O duøng ngaét quaõng (interrupt-driven I/O) CPU coù moät ngoõ Interrupt Request (INTR), ñöôïc kích hoaït bôûi thieát bò I/O Neáu ngaét xaûy ra (INTR = active), CPU chuyeån quyeàn ñieàu khieån cho trình phuïc vuï ngaét (interrupt handler) Caùc ngaét coù theå che ñöôïc (maskable) hoaëc khoâng che ñöôïc (non-maskable) Heä thoáng coù moät baûng vector ngaét chöùa ñòa chæ caùc trình phuïc vuï ngaét Ngaét cuõng coù theå duøng xöû lyù caùc söï kieän khaùc trong heä thoáng (loãi chia cho 0, loãi vi phaïm vuøng nhôù,…)

PC interrupt (1) Programmable Interrupt processor Controller (2) IRQ 0 Programmable Interrupt Controller INTR processor IRQ 1 INTA (2) IRQ 15 local bus 1 byte interrupt number (k) (3) (4) Take exception to address k*4

Baûng vector ngaét treân Pentium processor

Caùc kyõ thuaät thöïc hieän I/O (3/3) Kyõ thuaät I/O duøng direct memory access (DMA) Caùc kyõ thuaät polling vaø interrupt-driven I/Oø khoâng thích hôïp khi thöïc hieän di chuyeån khoái löôïng lôùn döõ lieäu. Kyõ thuaät DMA caàn coù phaàn cöùng hoã trôï ñaëc bieät, ñoù laø DMA controller Kyõ thuaät DMA thöïc hieän truyeàn döõ lieäu tröïc tieáp giöõa thieát bò I/O vaø boä nhôù maø khoâng caàn söï can thieäp cuûa CPU.

6 böôùc thöïc hieän DMA

Giao dieän I/O cho öùng duïng OS cung caáp moät giao dieän I/O chuaån hoùa, ñoàng nhaát cho caùc öùng duïng. Ví duï: moät öùng duïng in taøi lieäu ra maùy in maø khoâng caàn bieát hieäu maùy in, ñaëc tính maùy in,… Giao dieän laø caùc I/O system call Module ñieàu khieån thieát bò (device driver) thöïc hieän giao dieän ñöôïc chuaån hoùa cuûa I/O subsystem qua ñoù giaáu ñöôïc söï khaùc bieät giöõa caùc caùc boä ñieàu khieån thieát bò (device controller) khaùc nhau

Caáu truùc I/O trong OS

Ñaëc tính cuûa caùc thieát bò I/O

Caùc dòch vuï I/O cho öùng duïng Giao dieän chuaån cho nhoùm thieát bò coù lieân quan Thieát bò khoái (block device) Disk Taùc vuï: read, write, seek Thieát bò kí töï (character device) Keyboard, mouse, serial port, line printer,… Taùc vuï: get, put Thieát bò maïng (network device) Block hoaëc character. Socket interface treân Unix, Windows/NT,… Clock vaø timer Cung caáp thôøi gian hieän taïi, timer Coù theå laäp trình ñöôïc.

System call yeâu caàu I/O Blocking: process bò suspended cho ñeán khi I/O hoaøn taát. Deã daøng söû duïng Khoâng hieäu quaû trong moät soá tröôøng hôïp Nonblocking: process seõ tieáp tuïc thöïc thi ngay sau leänh goïi I/O. Ví duï: data copy (buffered I/O) Thöôøng hieän thöïc vôùi multithreading Khoù kieåm soaùt keát quaû thöïc hieän I/O Asynchronous: process vaãn thöïc thi trong luùc heä thoáng ñang thöïc hieän I/O. Khoù söû duïng I/O subsystem baùo hieäu cho process khi I/O hoaøn taát Asynchronous I/O: The read() or write() call returns a small object instead of a count. separate set of methods in unix: aio_read(), aio_write() The user can call methods on the returned object to check “how much” of the I/O has completed.

I/O subsystem I/O subsystem cung caáp caùc chöùc naêng Ñònh thôøi caùc yeâu caàu I/O Caùc yeâu caàu I/O xeáp haøng taïi caùc haøng ñôïi cuûa moãi thieát bò Baûo ñaûm coâng baèng, hieäu suaát cao. Ñeäm döõ lieäu (buffering): löu döõ lieäu taïm thôøi trong boä nhôù khi thöïc hieän I/O Giaûi quyeát tröôøng hôïp cheânh leäch toác ñoä, kích thöôùc döõ lieäu khi thöïc hieän I/O Caching Spooling Xöû lyù loãi (error handling) OS can recover from disk read, device unavailable, transient write failures Most return an error number or code when I/O request fails System error logs hold problem reports

Chain of events triggered by a user keystroke on a typical UNIX system [The Context-Switch Overhead Inflicted by Hardware Interrupts (and the Enigma of Do-Nothing Loops) Dan Tsafrir] The chain of events triggered by a user keystroke on a typical UNIX system. The key press generates a hardware interrupt that invokes an appropriate handler-routine and consequently propagates through a chain of connected blocked-waiting processes, each of which is awakened as a result of a matching context switch. This sequence usually takes place immediately after the keystroke, because all the processes involved are “I/O bound” and therefore possess a relatively high priority that allows them to preempt any currently running “CPU bound” application. The end result is that the context switch to and from the interrupt-handler is often temporally coupled with an application-to-application switch. Dan Tsafrir

Hieäu suaát I/O Hieäu suaát I/O aûnh höôûng raát lôùn ñeán hieäu suaát toaøn heä thoáng. I/O gaây taûi cao do CPU thöïc hieän caùc leänh ñieàu khieån cuûa device driver, cuûa kernel I/O code. Chuyeån ngöõ caûnh vì caùc I/O interrupt, chi phí copy döõ lieäu göûi nhaän. Network traffic gaây toác ñoä context switch cao. Taêng hieäu suaát I/O Giaûm soá laàn chuyeån ngöõ caûnh, giaûm thieåu quaù trình copy döõ lieäu (baèng caching,…) Giaûm soá laàn ngaét quaõng (truyeàn khoái döõ lieäu lôùn, duøng caùc boä controller thoâng minh, duøng kyõ thuaät polling,…) Söû duïng DMA neáu coù theå.