๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Computer Science/Computer Structure

15 Device Controller & Device Driver (์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ & ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„)

by Dowon Kang 2024. 1. 5.

์ž…์ถœ๋ ฅ์žฅ์น˜๋Š” ์ปดํ“จํ„ฐ ์ž…์žฅ์—์„œ ์ƒ๋‹นํžˆ ๊นŒ๋‹ค๋กœ์šด ์žฅ์น˜๋“ค์ž…๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜๊ฐ€ ๋งŒ๋“ค์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ์—ฐ๊ฒฐ์˜ ์–ด๋ ค์›€์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด์ฃ . ๋˜ ํ•œ, ์ปดํ“จํ„ฐ์˜ CPU๋Š” ์ƒ๋‹นํžˆ ๋น ๋ฅธ ์†๋„๋ฅผ ์ž๋ž‘ํ•˜๋Š”๋ฐ ์ž…์ถœ๋ ฅ ์žฅ์น˜๋“ค์€ ์†๋„๊ฐ€ ๋Š๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ํ†ต์‹ ์ด ์‰ฝ์ง€ ์•Š๋Š” ์ ๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋ถˆํŽธํ•œ ์ ๋“ค์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ์™€ ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„๋Š” ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์—์„œ ํ•˜๋“œ์›จ์–ด์™€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐ„์˜ ํ†ต์‹ ์„ ์กฐ์ •ํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

 

 

์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ (Device Controller)

์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ๋Š” ํŠน์ • ํ•˜๋“œ์›จ์–ด ๋””๋ฐ”์ด์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ์ œ์–ดํ•˜๋Š” ํ•˜๋“œ์›จ์–ด ์ปดํฌ๋„ŒํŠธ์ž…๋‹ˆ๋‹ค. ๊ฐ๊ฐ์˜ ์žฅ์น˜(์˜ˆ: ๋””์Šคํฌ ๋“œ๋ผ์ด๋ธŒ, ํ”„๋ฆฐํ„ฐ, ๊ทธ๋ž˜ํ”ฝ ์นด๋“œ)๋Š” ์ž์ฒด์˜ ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

  • CPU์™€ ์ž…์ถœ๋ ฅ์žฅ์น˜๋“ค ๊ฐ„์˜ ํ†ต์‹ ์ค‘๊ฐœ
  • ์˜ค๋ฅ˜ ๊ฒ€์ถœ
  • ๋ฐ์ดํ„ฐ ๋ฒ„ํผ๋ง (Data Buffering)

๋ฐ์ดํ„ฐ ๋ฒ„ํผ๋ง์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์‹œ์ ์œผ๋กœ ์ €์žฅํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์ธ "๋ฒ„ํผ"๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์ „์†ก ์†๋„์˜ ๋ถˆ์ผ์น˜๋‚˜ ํšจ์œจ์„ฑ์„ ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ์ˆ ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๋ฒ„ํผ๋Š” ์ผ์ •๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ด€ํ•˜๋Š”๋ฐ, ์ด๋Š” ๋‹ค์–‘ํ•œ ์ปดํ“จํŒ… ํ™˜๊ฒฝ์—์„œ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

 

์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ์—๋Š” ์ฃผ๋กœ ๋ฐ์ดํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ, ์ƒํƒœ ๋ ˆ์ง€์Šคํ„ฐ, ๊ทธ๋ฆฌ๊ณ  ์ œ์–ด ๋ ˆ์ง€์Šคํ„ฐ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ ˆ์ง€์Šคํ„ฐ๋“ค์€ ํ•˜๋“œ์›จ์–ด ๋””๋ฐ”์ด์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ์ œ์–ดํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ (Data Register): ๋ฐ์ดํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ๋ ˆ์ง€์Šคํ„ฐ๋Š” ์ปดํ“จํ„ฐ์™€ ํ•˜๋“œ์›จ์–ด ๋””๋ฐ”์ด์Šค ๊ฐ„์˜ ๋ฐ์ดํ„ฐ ์ „์†ก์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๊ฐ€ ๋””๋ฐ”์ด์Šค๋กœ ์ „์†ก๋˜๊ฑฐ๋‚˜ ๋””๋ฐ”์ด์Šค๋กœ๋ถ€ํ„ฐ ์ฝํ˜€์งˆ ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. (=๋ฒ„ํผ)

 

์ƒํƒœ ๋ ˆ์ง€์Šคํ„ฐ (Status Register): ์ƒํƒœ ๋ ˆ์ง€์Šคํ„ฐ๋Š” ๋””๋ฐ”์ด์Šค์˜ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์ด ๋ ˆ์ง€์Šคํ„ฐ์—๋Š” ๋””๋ฐ”์ด์Šค์˜ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ƒํƒœ ์ •๋ณด๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋””๋ฐ”์ด์Šค๊ฐ€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ์ง€ ์—ฌ๋ถ€, ์ž‘์—…์ด ์™„๋ฃŒ๋˜์—ˆ๋Š”์ง€ ์—ฌ๋ถ€, ์˜ค๋ฅ˜ ์ƒํƒœ ๋“ฑ์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ œ์–ด ๋ ˆ์ง€์Šคํ„ฐ (Control Register): ์ œ์–ด ๋ ˆ์ง€์Šคํ„ฐ๋Š” ๋””๋ฐ”์ด์Šค์˜ ๋™์ž‘์„ ์ œ์–ดํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ปดํ“จํ„ฐ๋Š” ์ด ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ํ†ตํ•ด ๋””๋ฐ”์ด์Šค์— ๋ช…๋ น์„ ๋ณด๋‚ด๊ฑฐ๋‚˜ ๋™์ž‘์„ ์‹œ์ž‘ํ•˜๊ฑฐ๋‚˜ ์ค‘์ง€์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ œ์–ด ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ํ†ตํ•ด ๋””๋ฐ”์ด์Šค์˜ ๋™์ž‘์„ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

 

์ด๋Ÿฌํ•œ ๋ ˆ์ง€์Šคํ„ฐ๋“ค์€ ํ•˜๋“œ์›จ์–ด ๋””๋ฐ”์ด์Šค์™€ ์ปดํ“จํ„ฐ ๊ฐ„์˜ ํšจ๊ณผ์ ์ธ ํ†ต์‹ ๊ณผ ์ƒํ˜ธ ์ž‘์šฉ์„ ๋„์™€์ค๋‹ˆ๋‹ค. ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ๋Š” ์ด๋Ÿฌํ•œ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ํ†ตํ•ด ๋””๋ฐ”์ด์Šค๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ œ์–ดํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋ฉฐ, ์ƒํƒœ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜์—ฌ ์ •ํ™•ํ•œ ๋™์ž‘์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.

 

 


 


์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„ (Device Driver)

์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„๋Š” ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ์™€ ์šด์˜ ์ฒด์ œ ๊ฐ„์˜ ํ†ต์‹ ์„ ์ค‘๊ฐœํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด์ž…๋‹ˆ๋‹ค. ์šด์˜ ์ฒด์ œ๋Š” ํ‘œ์ค€ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ , ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„๋Š” ํ•ด๋‹น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ์žฅ์น˜์™€ ์ƒํ˜ธ ์ž‘์šฉํ•ฉ๋‹ˆ๋‹ค. ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ์ง€ ์•Š๋‹ค๋ฉด ํ•ด๋‹น ์ž…์ถœ๋ ฅ์žฅ์น˜๋Š” ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 

 

 

 


Device Controller
A hardware component that manages and controls a specific device, serving as an interface between the CPU and the device to handle operational details.

 

Device Driver
A software component that acts as a bridge between the operating system and a hardware device, providing a standardized interface for communication and control.

 

 

'Computer Science > Computer Structure' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

16 Input & Output process  (0) 2024.01.06
14 RAID  (1) 2024.01.05
13 Hard disk & Flash memory (๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜)  (1) 2024.01.05
12 Cache Memory (์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ)  (0) 2023.12.31
11 RAM  (1) 2023.12.30

๋Œ“๊ธ€