๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
โญ Group_Study/Operating System

[10์ฃผ์ฐจ] I/O System

by ํฌ์ŠคํŠธ์‰์ดํฌ 2023. 2. 1.

I/O System

I/O System (HW)

I/O Mechanism

  1. Processor controlled memory access
  • Polling (Programmed I/O)
  • Interrupt
  1. 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

๋Œ“๊ธ€