I/O System
I/O System (HW)
I/O Mechanism
- Processor controlled memory access
- Polling (Programmed I/O)
- Interrupt
- Direct Memory Access (DMA)
Pooling (Programmed I/O)
โ Processor๊ฐ ์ฃผ๊ธฐ์ ์ผ๋ก I/O ์ฅ์น์ ์ํ ํ์ธ
- ๋ชจ๋ I/O ์ฅ์น๋ฅผ ์ํํ๋ฉฐ ํ์ธ
- ์ ์ก ์ค๋น ๋ฐ ์ ์ก ์ํ ๋ฑ
โ ์ฅ์
- Simple
- I/O ์ฅ์น๊ฐ ๋น ๋ฅด๊ณ , ๋ฐ์ดํฐ ์ ์ก์ด ์ฆ์ ๊ฒฝ์ฐ ํจ์จ์
โ ๋จ์
- Processor์ ๋ถ๋ด์ด ํผ
- Pooling overhead (I/O device๊ฐ ๋๋ฆฐ ๊ฒฝ์ฐ)
Interrupt
โ I/O ์ฅ์น๊ฐ ์์ ์ ์๋ฃํ ํ, ์์ ์ ์ํ๋ฅผ Processor์๊ฒ ์ ๋ฌ
- Interrupt ๋ฐ์ ์, Processor๋ ๋ฐ์ดํฐ ์ ์ก ์ํ
โ ์ฅ์
- Pooling ๋๋น low overhead
- ๋ถ๊ท์น์ ์ธ ์์ฒญ ์ฒ๋ฆฌ์ ์ ํฉ
โ ๋จ์
- Interrupt handling overhead
Direct Memory Access (DMA)
โ Process controlled memory access์ ๋ฌธ์ ์ : Processor๊ฐ ๋ชจ๋ ๋ฐ์ดํฐ ์ ์ก์ ์ฒ๋ฆฌ ํด์ผ ํ๋ค
- High overhead
โ I/O ์ฅ์น์ Memory ์ฌ์ด์ ๋ฐ์ดํฐ ์ ์ก์ Processor ๊ฐ์ ์์ด ์ํ
โ Processor๋ ๋ฐ์ดํฐ ์ ์ก์ ์์/์ข ๋ฃ๋ง ๊ด์ฌ
I/O Services of OS
โ ์ปค๋ ์ ์ถ๋ ฅ ์๋ธ ์์คํ : I/O service ์ ๊ณต
I/O Scheduling
โ ์ ์ถ๋ ฅ ์์ฒญ์ ๋ํ ์ฒ๋ฆฌ ์์ ๊ฒฐ์
- ์์คํ ์ ์ ๋ฐ์ ์ฑ๋ฅ ํฅ์
- Process์ ์๊ตฌ์ ๋ํ ๊ณตํํ ์ฒ๋ฆฌ
โ ex) Disk I/O scheduling
Error Handling
โ ์ ์ถ๋ ฅ ์ค ๋ฐ์ํ๋ ์ค๋ฅ ์ฒ๋ฆฌ
โ ex) disk access fail, network communication error
I/O device information managements
Buffering
โ I/O ์ฅ์น์ Program ์ฌ์ด์ ์ ์ก๋๋ ๋ฐ์ดํฐ๋ฅผ Buffer์ ์์ ์ ์ฅ
โ ์ ์ก์๋(or ์ฒ๋ฆฌ ๋จ์) ์ฐจ์ด ๋ฌธ์ ํด๊ฒฐ
Caching
โ ์์ฃผ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ๋ฏธ๋ฆฌ ๋ณต์ฌ
โ Cache hit ์ I/O ์๋ต ๊ฐ๋ฅ
Spooling
โ ํ I/O ์ฅ์น์ ์ฌ๋ฌ Program์ด ์์ฒญ์ ๋ณด๋ผ ์, ์ถ๋ ฅ์ด ์์ด์ง ์๋๋ก ํ๋ ๊ธฐ๋ฒ
- ๊ฐ Program์ ๋์ํ๋ disk file์ ๊ธฐ๋ก(spooling)
- Spooling์ด ์๋ฃ ๋๋ฉด, Spool์ ํ ๋ฒ์ ํ๋์ฉ I/O ์ฅ์น๋ก ์ ์ก
'โญ Group_Study > Operating System' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[10์ฃผ์ฐจ] RAID Architecture (0) | 2023.02.03 |
---|---|
[10์ฃผ์ฐจ] Disk Scheduling (0) | 2023.02.02 |
[9์ฃผ์ฐจ] File System Implementation (0) | 2023.01.30 |
[9์ฃผ์ฐจ] File Protection (0) | 2023.01.29 |
[9์ฃผ์ฐจ] Directory Structure (0) | 2023.01.28 |
๋๊ธ