๐Ÿ‘ฉ‍๐Ÿ’ป ์•Œ๊ณ ๋ฆฌ์ฆ˜/๐ŸŽ›๏ธ ์ปดํ“จํ„ฐ ๊ตฌ์กฐ & OS

[ํ˜ผ๊ณตํ•™์Šต๋‹จ 12๊ธฐ] 8์žฅ, ์ž…์ถœ๋ ฅ์žฅ์น˜

์˜ค๋ธŒ ๐Ÿง™‍โ™‚๏ธ 2024. 7. 22. 13:58

" ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ ์—ญํ•  " 

- ์ข…๋ฅ˜๊ฐ€ ๋งŽ๊ณ , ๋ฐ์ดํ„ฐ ์ „์†ก๋ฅ ์ด ๋‚ฎ์•„ CPU๋‚˜ ๋ฉ”๋ชจ๋ฆฌ์— ๋น„ํ•ด ๊นŒ๋‹ค๋กญ๋‹ค.

(๋‹ค๋ฅธ ์–ธ์–ด๋ฅผ ํ•˜๋Š” ๊ฒƒ, ๋ง์˜ ์†๋„๊ฐ€ ๋‹ฌ๋ผ ๋Œ€ํ™”๊ฐ€ ์•ˆ ๋˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค.)

- ์ปดํ“จํ„ฐ ๋‚ด๋ถ€์™€ ์ •๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š”๋‹ค.

 

์—ญํ• 

1.CPU์™€ ์ž…์ถœ๋ ฅ์žฅ์น˜ ๊ฐ„์˜ ํ†ต์‹  ์ค‘๊ฐœ

2. ์˜ค๋ฅ˜ ๊ฒ€์ถœ

3. ๋ฐ์ดํ„ฐ ๋ฒ„ํผ๋ง

 

๋ฒ„ํผ๋ง

- ์ „์†ก๋ฅ ์ด ๋†’์€ ์žฅ์น˜์™€ ๋‚ฎ์€ ์žฅ์น˜ ์‚ฌ์ด์— ์ฃผ๊ณ ๋ฐ›๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒ„ํผ๋ผ๋Š” ์ž„์‹œ ์ €์žฅ ๊ณต๊ฐ„์— ์ €์žฅํ•˜์—ฌ ์ „์†ก๋ฅ ์„ ๋น„์Šทํ•˜๊ฒŒ ๋งž์ถ”๋Š” ๋ฐฉ๋ฒ•

- ๋ฒ„ํผ์— ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ๊ธˆ์”ฉ ๋ชจ์•˜๋‹ค๊ฐ€ ํ•œ๊บผ๋ฒˆ์— ๋‚ด๋ณด๋‚ด๊ฑฐ๋‚˜, ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๋ฒˆ์— ๋งŽ์ด ๋ฐ›์•„ ์กฐ๊ธˆ์”ฉ ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ๋ฒ•

 

" ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ ๊ตฌ์กฐ " 

๋ฐ์ดํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ, ์ƒํƒœ ๋ ˆ์ง€์Šคํ„ฐ, ์ œ์–ด ๋ ˆ์ง€์Šคํ„ฐ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.

 

1. ๋ฐ์ดํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ

- CPU์™€ ์ž…์ถœ๋ ฅ์žฅ์น˜ ์‚ฌ์ด์— ์ฃผ๊ณ ๋ฐ›์„ ๋ฐ์ดํ„ฐ๊ฐ€ ๋‹ด๊ธฐ๋Š” ๋ ˆ์ง€์Šคํ„ฐ

- ๋ฒ„ํผ ์—ญํ• 

 

2. ์ƒํƒœ ๋ ˆ์ง€์Šคํ„ฐ

- ์ž…์ถœ๋ ฅ์žฅ์น˜๊ฐ€ ์ž…์ถœ๋ ฅ ์ž‘์—…์„ ํ•  ์ค€๋น„๊ฐ€ ๋˜์—ˆ๋Š”์ง€, ์ž…์ถœ๋ ฅ ์ž‘์—…์ด ์™„๋ฃŒ๋˜์—ˆ๋Š”์ง€, ์ž…์ถœ๋ ฅ์žฅ์น˜์— ์˜ค๋ฅ˜๋Š” ์—†๋Š”์ง€ ๋“ฑ์˜ ์ƒํƒœ ์ •๋ณด๊ฐ€ ์ €์žฅ๋œ๋‹ค.

 

3. ์ œ์–ด ๋ ˆ์ง€์Šคํ„ฐ

- ์ž…์ถœ๋ ฅ์žฅ์น˜๊ฐ€ ์ˆ˜ํ–‰ํ•  ๋‚ด์šฉ์— ๋Œ€ํ•œ ์ œ์–ด ์ •๋ณด์™€ ๋ช…๋ น์„ ์ €์žฅ 

 

" ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ์ •๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๋ฐฉ๋ฒ• " 

1. ํ”„๋กœ๊ทธ๋žจ ์ž…์ถœ๋ ฅ

- ๊ธฐ๋ณธ์ ์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ ์† ๋ช…๋ น์–ด๋กœ ์ž…์ถœ๋ ฅ์„ ์ œ์–ดํ•˜๋Š” ๋ฐฉ๋ฒ•

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

 

[ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋œ ์ •๋ณด๋ฅผ ํ•˜๋“œ ๋””์Šคํฌ์— ๋ฐฑ์—…ํ•˜๋Š” ์ƒํ™ฉ ]

CPU๋Š” ํ•˜๋“œ๋””์Šคํฌ ์ปจํŠธ๋กค๋Ÿฌ์˜ ์ œ์–ด ๋ ˆ์ง€์Šคํ„ฐ์— ์“ฐ๊ธฐ ๋ช…๋ น์„ ๋ณด๋ƒ„ =>

ํ•˜๋“œ๋””์Šคํฌ ์ปจํŠธ๋กค๋Ÿฌ๋Š” ํ•˜๋“œ ๋””์Šคํฌ ์ƒํƒœ๋ฅผ ํ™•์ธํ•˜๊ณ , ํ•˜๋“œ ๋””์Šคํฌ๊ฐ€ ์ค€๋น„๊ฐ€ ๋๋‹ค๋ฉด ์ƒํƒœ ๋ ˆ์ง€์Šคํ„ฐ์— ์ค€๋น„๋˜์—ˆ๋‹ค๊ณ  ํ‘œ์‹œ =>

CPU๋Š” ์ƒํƒœ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ์ฃผ๊ธฐ์ ์œผ๋กœ ์ฝ์œผ๋ฉฐ ๋””์Šคํฌ ์ค€๋น„ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•จ =>

CPU๊ฐ€ ์ค€๋น„ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜๋ฉด ๋ฐฑ์—…ํ•  ๋ฉ”๋ชจ๋ฆฌ์˜ ์ •๋ณด๋ฅผ ๋ฐ์ดํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ์— ์”€=> ์“ฐ๊ธฐ๊ฐ€ ๋๋‚˜๋ฉด ๋ฐฑ์—… ์ข…๋ฃŒ

 

1-1. ๋ฉ”๋ชจ๋ฆฌ ๋งต ์ž…์ถœ๋ ฅ

๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ์ฃผ์†Œ ๊ณต๊ฐ„๊ณผ ์ž…์ถœ๋ ฅ์žฅ์น˜์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ์ฃผ์†Œ ๊ณต๊ฐ„์„ ํ•˜๋‚˜์˜ ์ฃผ์†Œ ๊ณต๊ฐ„์œผ๋กœ ๊ฐ„์ฃผํ•˜๋Š” ๋ฐฉ๋ฒ•

 

1-2. ๊ณ ๋ฆฝํ˜• ์ž…์ถœ๋ ฅ

- ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์œ„ํ•œ ์ฃผ์†Œ ๊ณต๊ฐ„๊ณผ ์ž…์ถœ๋ ฅ์žฅ์น˜๋ฅผ ์œ„ํ•œ ์ฃผ์†Œ๊ณต๊ฐ„์„ ๋ถ„๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•

- CPU๋Š” ์ž…์ถœ๋ ฅ์žฅ์น˜์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•ด ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•˜๋Š” ๋ช…๋ น์–ด์™€๋Š” ๋‹ค๋ฅธ ์ž…์ถœ๋ ฅ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉ

 

2. ์ธํ„ฐ๋ŸฝํŠธ ๊ธฐ๋ฐ˜ ์ž…์ถœ๋ ฅ

- ์ž…์ถœ๋ ฅ์žฅ์น˜๊ฐ€ ์ž…์ถœ๋ ฅ ์ž‘์—…์„ ํ•  ์ค€๋น„๊ฐ€ ๋˜์—ˆ๋Š”์ง€, ์ž…์ถœ๋ ฅ ์ž‘์—…์ด ์™„๋ฃŒ๋˜์—ˆ๋Š”์ง€, ์ž…์ถœ๋ ฅ์žฅ์น˜์— ์˜ค๋ฅ˜๋Š” ์—†๋Š”์ง€ ๋“ฑ์˜ ์ƒํƒœ ์ •๋ณด๊ฐ€ ์ €์žฅ๋œ๋‹ค.

- ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ์ž…์ถœ๋ ฅ ์ž‘์—…์„ ๋๋‚ธ ๋’ค CPU์—๊ฒŒ ์ธํ„ฐ๋ŸฝํŠธ ์š”์ฒญ ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ด๋ฉด CPU๋Š” ํ•˜๋˜ ์ผ์„ ์ž ์‹œ ๋ฐฑ์—…ํ•˜๊ณ  ์ธํ„ฐ๋ŸฝํŠธ ์„œ๋น„์Šค ๋ฃจํ‹ด์„ ์‹คํ–‰ํ•œ๋‹ค.

-ํ”„๋กœ๊ทธ๋ž˜๋จธ๋ธ” ์ธํ„ฐ๋ŸฝํŠธ ์ปจํŠธ๋กค๋Ÿฌ(PIC)๋ฅผ ์ด์šฉํ•ด ๋‹ค์ค‘ ์ธํ„ฐ๋ŸฝํŠธ๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค

 

[ PIC์˜ ๋‹ค์ค‘ ์ธํ„ฐ๋ŸฝํŠธ ์ฒ˜๋ฆฌ ๊ณผ์ • ] 

1. PIC๊ฐ€ ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ์ธํ„ฐ๋ŸฝํŠธ ์š”์ฒญ ์‹ ํ˜ธ๋ฅผ ๋ฐ›๋Š”๋‹ค. 

2. PIC๋Š” ์ธํ„ฐ๋ŸฝํŠธ์˜ ์šฐ์„ ์ˆœ์œ„๋ฅผ ํŒŒ์•…ํ•œ ํ›„, CPU์—๊ฒŒ ์ธํ„ฐ๋ŸฝํŠธ ์š”์ฒญ ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ธ๋‹ค.

3. CPU๋Š” PIC์— ์ธํ„ฐ๋ŸฝํŠธ ํ™•์ธ ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ธ๋‹ค.

4. PIC๋Š” ๋ฐ์ดํ„ฐ๋ฒ„์Šค๋ฅผ ํ†ตํ•ด CPU์— ์ธํ„ฐ๋ŸฝํŠธ ๋ฒกํ„ฐ๋ฅผ ๋ณด๋‚ธ๋‹ค.

5. CPU๋Š” ์ธํ„ฐ๋ŸฝํŠธ ๋ฒกํ„ฐ๋ฅผ ํ†ตํ•ด ์ธํ„ฐ๋ŸฝํŠธ ์š”์ฒญ์˜ ์ฃผ์ฒด๋ฅผ ์•Œ๊ฒŒ ๋˜๊ณ , ํ•ด๋‹น ์žฅ์น˜์˜ ์ธํ„ฐ๋ŸฝํŠธ ์„œ๋น„์Šค ๋ฃจํ‹ด์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

 

3. DMA ์ž…์ถœ๋ ฅ

- ์ž…์ถœ๋ ฅ์žฅ์น˜๊ฐ€ ์ˆ˜ํ–‰ํ•  ๋‚ด์šฉ์— ๋Œ€ํ•œ ์ œ์–ด ์ •๋ณด์™€ ๋ช…๋ น์„ ์ €์žฅ

- ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ CPU๋ฅผ ๊ฑฐ์ณ์•ผ ํ•˜๋ฉด CPU๋Š” ๋ถ€๋‹ด์„ ๊ฐ€์ง€๊ฒŒ ๋œ๋‹ค. ๊ทธ๋ž˜์„œ ์ž…์ถœ๋ ฅ์žฅ์น˜์™€ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ CPU๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๊ณ  ์ƒํ˜ธ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋Š” DMA ๋ฐฉ์‹์ด ๋“ฑ์žฅํ•˜์˜€๋‹ค.

- ์ง์ ‘ ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค. 

- ์‹œ์Šคํ…œ ๋ฒ„์Šค์— ์—ฐ๊ฒฐ๋œ DMA ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.  

- ์‹œ์Šคํ…œ ๋ฒ„์Šค๋กœ ๋ฉ”๋ชจ๋ฆฌ์— ์ง์ ‘ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, ์‹œ์Šคํ…œ ๋ฒ„์Šค๋Š” ๋™์‹œ ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. 

 

[ DMA์˜ ์ž…์ถœ๋ ฅ ๊ณผ์ • ] 

1. CPU๋Š” DMA ์ปจํŠธ๋กค๋Ÿฌ์— ์ž…์ถœ๋ ฅ์žฅ์น˜์˜ ์ฃผ์†Œ, ์ˆ˜ํ–‰ํ•  ์—ฐ์‚ฐ, ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ ๋“ฑ์˜ ์ •๋ณด๋กœ ์ž…์ถœ๋ ฅ ์ •๋ณด๋ฅผ ๋ช…๋ นํ•œ๋‹ค. 

2. DMA ์ปจํŠธ๋กค๋Ÿฌ๋Š” CPU ๋Œ€์‹  ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ์™€ ์ƒํ˜ธ์ž‘์šฉํ•˜๋ฉฐ ์ž…์ถœ๋ ฅ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

3. ์ž…์ถœ๋ ฅ ์ž‘์—…์ด ๋๋‚˜๋ฉด DMA ์ปจํŠธ๋กค๋Ÿฌ๋Š” CPU์— ์ธํ„ฐ๋ŸฝํŠธ๋ฅผ ๊ฑธ์–ด ์ž‘์—…์ด ๋๋‚ฌ์Œ์„ ์•Œ๋ฆฐ๋‹ค.

 

" ์ž…์ถœ๋ ฅ๋ฒ„์Šค " 

DMA ์ปจํŠธ๋กค๋Ÿฌ์™€ ์žฅ์น˜ ์ปจํŠธ๋กค๋Ÿฌ๋“ค์„ ๋ณ„๋„์— ๋ฒ„์Šค์— ์—ฐ๊ฒฐํ•œ๋‹ค. => ์ž…์ถœ๋ ฅ๋ฒ„์Šค !

WHY?

DMA๋ฅผ ์œ„ํ•ด ์‹œ์Šคํ…œ ๋ฒ„์Šค๋ฅผ ๋„ˆ๋ฌด ๋งŽ์ด ์‚ฌ์šฉํ•˜๋ฉด, CPU๊ฐ€ ๊ทธ๋งŒํผ ์‹œ์Šคํ…œ ๋ฒ„์Šค๋ฅผ ์ด์šฉํ•˜์ง€ ๋ชปํ•œ๋‹ค.

 

- PCI ๋ฒ„์Šค ๋“ฑ์˜ ์ข…๋ฅ˜๊ฐ€ ์žˆ๊ณ , ์—ฌ๋Ÿฌ ์ž…์ถœ๋ ฅ์žฅ์น˜๋“ค์„ PCIe ๋ฒ„์Šค์™€ ์—ฐ๊ฒฐํ•ด ์ฃผ๋Š” ํ†ต๋กœ์ธ PCIe ์Šฌ๋กฏ์ด ์žˆ๋‹ค.