Upload
krissapat
View
658
Download
1
Embed Size (px)
Citation preview
โครงสร�างระบบรบเข้�าและโครงสร�างระบบรบเข้�าและส�งออกส�งออก
I/O Systems Structure
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 2
I/O Systems
I/O Hardware Application I/O Interface Kernel I/O Subsystem Transforming I/O Requests to Hardware
Operations Streams Performance
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 3
Learning Objectives
เพื่��อศึ�กษาถึ�งแนวคิ�ดด�านการจั�ดการอ�ปกรณ์ ร�บเข้�าและส่งออก เพื่��อเข้�าใจัถึ�งหน�าที่%�ข้องระบบปฏิ�บ�ติ�การในการจั�ดการเก%�ยวก�บระบบ
ร�บเข้�าและส่งออก
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 4
I/O Hardware
อ�ปกรณ์ น)าเข้�า (input device) คิ�อ อ�ปกรณ์ ที่%�ที่)าให�คิอมพื่�วเติอร ส่ามารถึส่�มผั�ส่และร�บร, �ส่��งติางๆ จัากโลกภายนอกได� ติ�วอยางเช่น เคิร��องอานบ�ติร คิ%ย บอร ด เมาส่
อ�ปกรณ์ ส่งออก (output device) คิ�อ อ�ปกรณ์ ที่%�ที่)าให�คิอมพื่�วเติอร คิวบคิ�มหร�อส่งผัลออกมาส่,โลกภายนอกได� ติ�วอยางเช่น เคิร��องเจัาะบ�ติร จัอภาพื่ เคิร��องพื่�มพื่
Common concepts Port Bus (daisy chain or shared direct access) Controller (host adapter)
ม% I/O instructions ส่)าหร�บคิวบคิ�มอ�ปกรณ์ อ�ปกรณ์ เหลาน�2นจัะม%เลข้ที่%�อย, (addresses ) ที่%�ถึ,กใช่�โดย
Direct I/O instructions Memory-mapped I/O
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 5
A Typical PC Bus Structure
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 6
Device I/O Port Locations on PCs (partial)
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 7
ค ณสมบติ�ข้องพอร�ติ
พื่อร ติเอาที่ พื่�ติ (output port) คิ�อติ�องส่ามารถึด�งกระแส่เข้�า และจัายกระแส่ ออกได� และติ�องม%เอ�าที่ อ�นพื่%แดนซ์ (out impedance) ติ)�า
พื่อร ติอ�นพื่�ติ (input port) คิ�อ ติ�องม%อ�มพื่%แดนซ์ (impedance) ส่,งจัะติรวจัจั�บแรงด�น ส่�ญญาณ์ที่%�เข้�ามาวาเป5น 1 หร�อ 0
ม%เรจั�ส่เติอร 4 ติ�ว เรจั�ส่เติอร ส่ถึานะ (status register) เรจั�ส่เติอร คิวบคิ�ม (control register) เรจั�ส่เติอร ข้�อม,ลเข้�า (data-in register) เรจั�ส่เติอร ข้�อม,ลออก (data-out register)
เรจั�ส่เติอร ส่ถึานะบรรจั�บ�ติแส่ดงการอานโดยโฮส่ติ (host)
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 8
ติวิข้บอ ปกรณ�Device Driver
หากบรรจั�โปรแกรมคิวบคิ�มอ�ปกรณ์ I/O ที่�2งหมดเข้�าไว�ใน OS จัะที่)าให� OS ม%ข้นาดเที่อะที่ะ ไมย�ดหย�น และม%คิาใช่�จัายส่,งในการ upgrade OS แติละคิร�2ง
จั�งติ�องแยกโปรแกรมคิวบคิ�มอ�ปกรณ์ ออกมาเป5นส่วนหน��งติางหาก เร%ยกวา ติ�วข้�บอ�ปกรณ์ (device driver)
ล�กษณ์ะเช่นน%2 OS ไมจั)าเป5นติ�องร, �จั�กล�กษณ์ะการที่)างานข้องอ�ปกรณ์ ติาง ๆ ปลอยให�เป5นหน�าที่%�ข้องติ�วข้�บอ�ปกรณ์ ช่น�ดน�2นๆ OS ร, �เพื่%ยงแติการติ�ดติอและคิวบคิ�มอ�ปกรณ์ ผัานที่างติ�วข้�บอ�ปกรณ์ เที่าน�2น
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 9
อ ปกรณ�เสม"อนVirtual Device
คิ�อการน)าเอาอ�ปกรณ์ ช่น�ดหน��งมาจั)าลองการที่)างานเป5นอ�ปกรณ์ อ%กช่น�ดหน��ง เพื่��อกอให�เก�ดคิวามคิลองติ�วในการที่)างานข้องระบบ
ติ�วอยางข้องการที่)าอ�ปกรณ์ เส่ม�อนก7คิ�อ การที่)าแรมด�ส่ก (Ram disk)
การติ�ดติอคิวบคิ�มแรมด�ส่ก น%2 ที่)าได�โดยผัานโปรแกรมที่%�ที่)าหน�าที่%�จั)าลองหนวยคิวามจั)าเป5นด�ส่ก เร%ยกวา ติ�วข้�บอ�ปกรณ์ เส่ม�อน (virtual device driver)
การที่)า SPOOL (Simultaneous peripheral operation on-line) ซ์��งเป5นการใช่�ใช่�ด�ส่ก แที่นเคิร��องพื่�มพื่
โดยม%โปรเซ์ส่หน��งข้อง OS ช่��อ SPOOLER ที่)าหน�าที่%�จั�ดการเร��องการที่)า SPOOL ข้องระบบ
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 10
การส$ารวิจควิามติ�องการ(polling)
ที่�กๆ ช่วงเวลาหน��ง (Quantum time) ซ์%พื่%ย,จัะหย�ดงานที่%�ที่)าอย,ช่� �วคิราว และเว%ยนไปติรวจัเช่7คิที่%�แติละแช่นแนลเพื่��อด,วา ม%อ�ปกรณ์ ติ�วใดบ�างติ�องการส่งข้�อม,ลมาให�ซ์%พื่%ย,จัากอ�ปกรณ์ แรกไปถึ�งอ�ปกรณ์ ส่�ดที่�าย
เช่น พื่วกคิ)าส่��ง JNB TF1 , $ แบบน%2โปรแกรมจัะที่)าอะไรอยางอ��นไมได�เลย จัะติ�องรอจันกวา เง��อนไข้จัะ
เป5นจัร�ง จั�งที่)าให�เส่%ยเวลาไปโดยใช่เหติ�
Determines state of device command-ready busy Error
Busy-wait cycle to wait for I/O from device
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 11
มอดู'ลข้องการรบส�งข้�อม'ลData Transfer Module
I/O module Functionality การคิวบคิ�มและการจั�บเวลา การส่��อส่ารระหวางโปรเซ์ส่ การส่��อส่ารระหวางอ�ปกรณ์ การจั�ดการบ�ฟเฟอร การติรวจัส่อบข้�อผั�ดพื่ลาด
มอด,ลการร�บเข้�าและส่งออกจัะติ�องส่��อส่ารก�บโปรเซ์ส่เซ์อร และส่��อส่ารก�บภายนอก เก%�ยวข้�องก�บ การถึอดรห�ส่คิ)าส่� �ง (command decoding), ข้�อม,ล (data), การรายงานส่ถึานะ (status reporting) การร�บร, �ที่%�อย, (address recognition)
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 12
อ�ติราการส่งผัานอ�ปกรณ์ ข้อง Sun Enterprise 6000ที่%�มา (IEEE Computer Society, 1996, p.65).
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 13
โครงสร�างข้องมอดู'ลการรบเข้�าและส�งออกI/O Module Structure
ที่)าหน�าที่%�อ)านวยคิวามส่ะดวก ให�โปรเซ์ส่เซ์อร ส่ามารถึคิวบคิ�มการที่)างานข้องอ�ปกรณ์ ร�บเข้�าส่งออกติางๆได�งาย
I/O Module ที่)างานหน�กด�วยติ�วเอง โดยจัะเช่��อมติอก�บโปรเซ์ส่เซ์อร เร%ยกวา ช่องส่��อส่ารการร�บเข้�าส่งออก (I/O channels) หร�อ ไอโอโปรเซ์ส่เซ์อร (I/O processor)
I/O Module ที่%�ที่)างานน�อย และติ�องอาศึ�ยการคิวบคิ�มจัากโปรเซ์ส่เซ์อร โดยติรงเร%ยกวา หนวยคิวบคิ�มการร�บเข้�าส่งออก (I/O controller) หร�อหนวยคิวบคิ�มอ�ปกรณ์ (device controller)
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 14
การควิบค มการรบเข้�าส�งออก
ม%อย, 3 ว�ธี% การคิวบคิ�มการร�บเข้�าส่งออกด�วยโปรแกรม (Programmed I/O) กระบวนการอ�นเที่อร ร�พื่ที่ (Interrupt-driven I/O) การเข้�าถึ�งหนวยคิวามจั)าหล�กโดยติรง (Direct memory access :
DMA) Programmed I/O และ Interrupt-driven I/O ติ�องใช่�
processor คิอยคิวบคิ�มและจั�ดการแลกเปล%�ยนข้�อม,ลระหวางหนวยคิวามจั)าหล�กก�บ I/O
ส่วนแบบ DMA น�2น I/O module จัะแลกเปล%�ยนข้�อม,ลก�นโดยติรงก�บหนวยคิวามจั)าหล�กโดยที่%� processor ไมติ�องเก%�ยวข้�อง
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 15
Interrupts
CPU จัะถึ,ก Interrupt request line โดย I/O device
Interrupt handler (CPU) ได�ร�บ interrupts
จัะพื่�จัารณ์าวาติ�องที่)าติามคิ)าร�องข้อน�2นที่�นที่%�หร�อรอเวลาไว�กอน
Interrupt vector to dispatch interrupt to correct handler Based on priority Some unmaskable
Interrupt mechanism also used for exceptions
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 16
Interrupt-Driven I/O Cycle
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 17
Intel Pentium Processor Event-Vector Table
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 18
Direct Memory Access
การเคิล��อนย�ายข้�อม,ลจั)านวนมากไมน�ยมใช่� programmed I/O แติใช่� DMA แที่น
จั)าเป5นติ�องม% DMA controller
การร�บ-ส่งข้�อม,ลระหวาง I/O ก�บหนวยคิวามจั)าส่ามารถึที่)าได�โดยติรงโดยไมติ�องผัาน CPU
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 19
Six Step Process to Perform DMA Transfer
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 20
Application I/O Interface
I/O system calls จัะหอห��มพื่ฤติ�กรรมข้องอ�ปกรณ์ ให�อย,ในช่�2นที่��วไป
ในช่�2นข้องติ�วข้�บอ�ปกรณ์ (Device driver Layer) ถึ,กซ์อนไว�ระหวางระบบยอยน)าเข้�าส่งออกก�บติ�วข้�บอ�ปกรณ์
ประเภที่ข้องอ�ปกรณ์ แบงติามคิ�ณ์ล�กษณ์ะการร�บส่งข้�อม,ล Character-stream or block Sequential or random-access Sharable or dedicated Speed of operation read-write, read only, or write only
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 21
A Kernel I/O Structure
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 22
Characteristics of I/O Devices
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 23
อ ปกรณ�แบบบล(อกและแบบอกข้ระBlock and Character Devices
Block devices ได�แก disk drives Command ประกอบด�วย read, write, seek Raw I/O หร�อ file-system access อาจัใช่�การเข้�าถึ�งแฟ<มแบบ Memory-mapped
Character devices ประกอบด�วย keyboards, mice, serial ports Commands ประกอบด�วย get, put Libraries layered on top allow line editing
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 24
Network Devices
จัะม%ส่วนติอประส่านเป5นข้องติ�วเองที่%�เพื่%ยงพื่อส่)าหร�บบล7อกและอ�กข้ระ
Unix และ Windows NT/9i/2000 ใช่� socket interface แยก network protocol ออกจัาก network operation Includes select functionality
เป5นว�ธี%การที่%�ใช่�อยางแพื่รหลาย (pipes, FIFOs, streams, queues, mailboxes)
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 25
นาฬิ�กาและเวิลาClocks and Timers
บอก เวลาป=จัจั�บ�น , เวลาที่%�ผัานไปแล�ว , การติ�2งเวลา
อ�ปกรณ์ บอกเวลาที่%�ใช่�ผัานไปแล�วและการติ�2งเวลาเพื่��อคิ)านวณ์การส่งส่�ญญาณ์ เร%ยกวา programmable interval timer ใช่�เพื่��อติ�2งเวลา , ก)าหนดช่วงเวลาข้อง interrupts
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 26
Blocking and Nonblocking I/O
Blocking – กระบวนการจัะถึ,กหย�ดพื่�กช่��วคิราวจันกวา I/O completed งายติอการใช่�และเข้�าใจั เพื่%ยงพื่อติอคิวามติ�องการบางประการ
Nonblocking - I/O จัะถึ,กเร%ยกกล�บมาเม��อวาง งานที่%�ม%การประมวลผัลย�งที่)างานได�จันเส่ร7จัส่�2น แล�วจั�งเร%ยกส่�ญญาณ์
ข้�ดจั�งหวะ เพื่��อน)ากระบวนการที่�2งหมดที่%�ม%การเร%ยกระบบมาติ�ดติอเข้�าด�วยก�น
Asynchronous – กระบวนการก7ร�นไปในข้ณ์ะที่%� I/O ก7 executes ไป ใช่�งานยาก I/O subsystem ส่งส่�ญญาณ์ไปย�งกระบวนการ เม��อ I/O completed
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 27
Kernel I/O Subsystem
การจั�ดติาราง I/O (Scheduling) บาง I/O request ม%การจั�ดล)าด�บผัานคิ�วข้องแติละอ�ปกรณ์ บาง OS ม%การจั�ดการเร��องคิวามเป5นธีรรม
Buffering - เก7บข้�อม,ลในหนวยคิวามจั)าในระหวางการถึายโอนข้�อม,ลระหวางอ�ปกรณ์ เพื่��อร�บม�อก�บอ�ปกรณ์ ที่%�ม%คิวามเร7วติางก�นมาก เพื่��อร�บม�อก�บอ�ปกรณ์ ที่%�ม%ข้นาดการถึายโอนข้�อม,ลติางก�น เพื่��อส่น�บส่น�นการที่)างานแบบการส่)ารองข้�อม,ลที่%�เหม�อนก�น (copy
semantics)
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 28
Sun Enterprise 6000 Device-Transfer Rates
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 29
Kernel I/O Subsystem
Caching - หนวยคิวามจั)าคิวามเร7วส่,งใช่�เก7บส่)าเนาข้�อม,ล ม�กใช่�ในการส่)าเนา ใช่�เพื่��มประส่�ที่ธี�ภาพื่เป5นหล�ก
Spooling - เก7บผัลล�พื่ธี ข้องอ�ปกรณ์ ใช่�ในกรณ์%ที่%�อ�ปกรณ์ น�2นส่ามารถึรองร�บการที่)างานได�เพื่%ยงคิร�2งละหน��ง
งานในเวลาเด%ยวก�น เช่น การพื่�มพื่
การส่งวนอ�ปกรณ์ (Device reservation) – ที่)าให�การเข้�าถึ�งอ�ปกรณ์ แบบ exclusive System calls ส่)าหร�บจั�ดส่รรและคิ�นการจั�ดส่รร ระว�งการเก�ด deadlock ส่)าหร�บการร�องข้ออ�ปกรณ์
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 30
การจดูการข้�อผิ�ดูพลาดูError Handling
OS ส่ามารถึปกป<องข้�อผั�ดพื่ลาดที่%�จัะเก�ดจัากการอานด�ส่ก ,อ�ปกรณ์ ย�งไมพื่ร�อมใช่�งาน , การข้�ดข้�องข้องการเข้%ยน
OS จัะส่งคิ�น error number หร�อ code เม��อ I/O request เก�ดล�มเหลว
System error logs จัะบ�นที่�กรายงานป=ญหาที่%�เก�ดข้�2น
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 31
Kernel Data Structures
Kernel เก7บข้�อม,ลส่ถึานะส่)าหร�บ I/O components, ประกอบด�วย open file tables, network connections, character device state
โคิรงส่ร�างข้�อม,ลม%คิวามซ์�บซ์�อนส่,งเพื่��อใช่�แกะรอยบ�ฟเฟอร ,ติ)าแหนงหนวยคิวามจั)า และ “dirty” blocks
การใช่� object-oriented methods บางช่น�ด และ message passing ในการใช่�งาน I/O
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 32
UNIX I/O Kernel Structure
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 33
I/O Requests to Hardware Operations
การอานแฟ<มจัากด�ส่ก ส่)าหร�บกระบวนการ: พื่�จัารณ์าอ�ปกรณ์ เก7บแฟ<ม แปลงช่��อในการแที่นอ�ปกรณ์ อานข้�อม,ลเช่�งกายภาพื่จัากด�ส่ก ไปย�งบ�ฟเฟอร ส่ร�างข้�อม,ลให�พื่ร�อมใช่�งานไปย�งกระบวนการที่%�ร �องข้อ ส่งคิ�นการคิวบคิ�มไปย�งกระบวนการ
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 34
Life Cycle of An I/O Request
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 35
STREAMS
STREAM – คิ�อช่องที่างการส่��อส่ารแบบ full-duplex ระหวาง a user-level process ก�บ a device
A STREAM ประกอบด�วย:- STREAM head ส่วนติอประส่านก�บกระบวนการผั,�ใช่�- driver end ส่วนติอประส่านก�บอ�ปกรณ์ - zero หร�อ more STREAM modules ระหวาง อ�ปกรณ์ และกระบวนการเหลาน�2น
แติละมอด,ลบรรจั�ด�วย a read queue และ a write queue
ใช่� Message passing ในการส่��อส่ารระหวางคิ�ว
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 36
The STREAMS Structure
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 37
Performance
I/O เป5นป=จัจั�ยหล�กในเร��องประส่�ที่ธี�ภาพื่ข้องระบบ
คิวามติ�องการ CPU ในการ execute device driver, kernel I/O code
การส่ล�บบร�บที่ (Context switches) เม��อม%การ interrupts การที่)าส่)าเนาข้�อม,ล (Data copying) คิวามคิ�บคิ��งข้องการจัราจัรเคิร�อข้าย (Network traffic
especially stressful)
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 38
Intercomputer Communications
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 39
การปรบปร งประส�ทธิ�ภาพImproving Performance
ลดจั)านวนการส่ล�บบร�บที่ (Reduce number of context switches)
ลดการที่)าส่)าเนาข้�อม,ล (Reduce data copying) ลด interrupts โดยใช่�การถึายโอนคิร�2งละจั)านวนมาก, ติ�วคิวบคิ�ม
ที่%�ฉลาด (smart controllers), และ polling ใช่� DMA ส่ร�างส่มด�ลประส่�ที่ธี�ภาพื่ข้อง CPU, memory, bus, และ I/O
เพื่��อให�ได�ปร�มาณ์งานส่,งส่�ด (highest throughput)
วิ�เชษฐ์� พลายมาศ | ระบบปฏิ�บติ�การ (OS: Operating Systems) | ระบบร�บเข้�า/ส่งออก (I/O Systems) | 40
Device-Functionality Progression