๊ณ„๋ž€์†Œ๋…„ 2023. 8. 31. 18:56

๋„๊ตฌ,๊ธฐ๊ณ„: ์ •ํ•ด์ง„ ๋Œ€๋กœ ์›€์ง์ž„, ๋ช…๋ น์–ด x

ํ”„๋กœ๊ทธ๋ž˜๋ฐ(SW): ์‚ฌ๋žŒ์˜ ์ผ์„ ๋„์™€์ฃผ๊ณ , ์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์–ธ์–ด, ๋ช…๋ น์–ด์˜ ์ง‘ํ•ฉ

 

 

 

์ปดํ“จํ„ฐ์˜ ๊ธฐ๋ณธ ๊ตฌ์„ฑ

์‚ฌ์šฉ์ž
์‘์šฉ ์†Œํ”„ํŠธ์›จ์–ด = ์†Œํ”„ํŠธ์›จ์–ด
์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด = ์†Œํ”„ํŠธ์›จ์–ด
ํ•˜๋“œ์›จ์–ด

 

์†Œํ”„ํŠธ์›จ์–ด

์ข์€์˜๋ฏธ: ์ปดํ“จํ„ฐ๊ฐ€ ์ผ์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์–ธ์–ด๋กœ ์ž‘์„ฑํ•œ ๋ช…๋ น์–ด๋“ค์˜ ์ง‘ํ•ฉ

๋„“์€์˜๋ฏธ: ํ”„๋กœ๊ทธ๋žจ + ๋ฐ์ดํ„ฐ + ๊ด€๋ จ ๋ฌธ์„œ

 

์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด

ํ•˜๋“œ์›จ์–ด๋ฅผ ์›€์ง์ด๋Š” ์†Œํ”„ํŠธ์›จ์–ด

์‘์šฉ์†Œํ”„ํŠธ์›จ์–ด ์‹คํ–‰ ์œ„ํ•œ ๊ณตํ†ต์  ๊ธฐ๋Šฅ ์ œ๊ณต ์†Œํ”„ํŠธ์›จ์–ด

 

ํ•˜๋“œ์›จ์–ด

์ •๋ณด/๋ฐ์ดํ„ฐ์˜ ์ „์†ก ๋ฐ ์ฒ˜๋ฆฌ๊ฐ€ ์‹ค์ œ ์ผ์–ด๋‚˜๋Š” ๋ฌผ๋ฆฌ์  ์‹ค์ฒด

 

์ปดํ“จํ„ฐ ํ•˜๋“œ์›จ์–ด์˜ ๊ธฐ๋ณธ ๊ตฌ์„ฑ

์ปดํ“จํ„ฐ ํ•˜๋“œ์›จ์–ด: cpu, ๊ธฐ์–ต์žฅ์น˜(์ฃผ๊ธฐ์–ต-ram,rom/๋ณด์กฐ๊ธฐ์–ต-๋””์Šคํฌ,cd๋กฌ), ์ž…์ถœ๋ ฅ์žฅ์น˜, ์ „์›, ๋ƒ‰๊ฐ ์†กํ’๊ธฐ

 

์ค‘์•™์ฒ˜๋ฆฌ์žฅ์น˜(Central Processing Unit: CPU)

 
ํ”„๋กœ์„ธ์„œ(processor)๋ผ๊ณ ๋„ ๋ถˆ๋ฆผ
 
์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์— ๋ถ€์ฐฉ๋œ ๋ชจ๋“  ์žฅ์น˜์˜ ๋™์ž‘์„ ์ œ์–ดํ•˜๊ณ  ๋ช…๋ น์„ ์‹คํ–‰
 
์ œ์–ด์žฅ์น˜ + ์—ฐ์‚ฐ์žฅ์น˜ + ๋ ˆ์ง€์Šคํ„ฐ(CPU์˜ ์ €์žฅ์žฅ์น˜) + CPU ๋‚ด๋ถ€๋ฒ„์Šค
 
๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋ช…๋ น์–ด๋ฅผ ๊ฐ–๊ณ  ์™€์„œ ๋ช…๋ น์–ด๋Œ€๋กœ ์‹คํ–‰ํ•˜๋Š”  ์ž‘์—…์„ ๋น ๋ฅด๊ฒŒ ๋ฐ˜๋ณต (Fetch(๋ช…๋ น์–ด ๊ฐ€์ง€๊ณ ์˜ด)+Execution(๋ช…๋ น์–ด ์‹คํ–‰))

 

CPU๋ช…๋ น์–ด ์‚ฌ์ดํด: CPU๊ฐ€ ํ•œ ๊ฐœ์˜ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ์ „์ฒด ์ฒ˜๋ฆฌ ๊ณผ์ •

2๊ฐœ์˜ ๋ถ€์‚ฌ์ดํด๋กœ ๋ถ„๋ฆฌ๋œ๋‹ค.

 

(1)์ธ์ถœ ์‚ฌ์ดํด(Fetch)

CPU๊ฐ€ ๊ธฐ์–ต์žฅ์น˜๋กœ๋ถ€ํ„ฐ ๋ช…๋ น์–ด๋ฅผ ์ฝ์–ด์˜ค๋Š” ๋‹จ๊ณ„

 

(2)์‹คํ–‰ ์‚ฌ์ดํด(Execution)

๋ช…๋ น์–ด๋ฅผ ํ•ด๋…ํ•˜๊ณ  ์‹คํ–‰ํ•˜๋Š” ๋‹จ๊ณ„, ์–‘์ด ๋งŽ์•„ 4๋‹จ๊ณ„๋กœ ๋ถ„๋ฆฌ

์ „์†ก ์—ฐ์‚ฐ, ์ฒ˜๋ฆฌ ์—ฐ์‚ฐ, ์ œ์–ด ์—ฐ์‚ฐ, ์ž…์ถœ๋ ฅ ์—ฐ์‚ฐ

 
 
 

๊ธฐ์–ต์žฅ์น˜  

(1) ์ฃผ๊ธฐ์–ต์žฅ์น˜(main memory) - RAM, ROM

CPU ๊ฐ€๊นŒ์ด์— ์œ„์น˜ํ•˜์—ฌ, CPU๊ฐ€ ์ฒ˜๋ฆฌํ•  ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์‹œ์ ์œผ๋กœ ์ €์žฅ

 

๋ฐ˜๋„์ฒด ๊ธฐ์–ต์žฅ์น˜ ์นฉ๋“ค๋กœ ๊ตฌ์„ฑ
 
๊ฐ€๊ฒฉ์ด ๋†’๊ณ , ์ €์žฅํ•  ๋•Œ ๋ฉด์ ์„ ๋งŽ์ด ์ฐจ์ง€
 
Random Access Memory: ๊ณ ์† ์•ก์„ธ์Šค ๊ฐ€๋Šฅ
 
ํœ˜๋ฐœ์„ฑ

 

RAM vs ROM

Booting: ๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜์— ์ €์žฅ๋œ OS๋ฅผ ์ฃผ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ฆฌ๋Š” ๊ณผ์ •

์ „์› ์ผฏ์„ ๋•Œ RAM์€ ๋น„์–ด์žˆ์Œ. 

๋ถ€ํŠธ๋กœ๋”๊ฐ€ ROM์— ,์šด์˜์ฒด์ œ๋Š” HDD์— ์ €์žฅ๋˜์–ด ์žˆ๊ณ ,

๋ถ€ํŠธ๋กœ๋”๊ฐ€ ์šด์˜์ฒด์ œ๋ฅผ RAM์— ์ ์žฌ

์ œ์–ด๊ถŒ์„ ์šด์˜์ฒด์ œ์— ์ „๋‹ฌ

 

 

๋ ˆ์ง€์Šคํ„ฐ/ ์ผ€์‹œ ๋ฉ”๋ชจ๋ฆฌ (SRAM) / ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ (DRAM) / ๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜

์†๋„๋น ๋ฆ„                           ←                                          ์†๋„๋А๋ฆผ

์šฉ๋Ÿ‰์ž‘์Œ                           ←                                          ์šฉ๋Ÿ‰๋งŽ์Œ

 

 

(2) ๋ณด์กฐ์ €์žฅ์žฅ์น˜(auxiliary storage device)

2์ฐจ ๊ธฐ์–ต์žฅ์น˜(secondary memory)๋กœ ์ฝ๊ธฐ/์“ฐ๊ธฐ ์†๋„๊ฐ€ ๋А๋ฆผ
 
 
์ €์žฅ ๋ฐ€๋„๊ฐ€ ๋†’๊ณ , ๋น„ํŠธ ๋‹น ๊ฐ€๊ฒฉ์ด ๋‚ฎ์Œ
 
 
์˜๊ตฌ ์ €์žฅ ๊ฐ€๋Šฅ
 
 
ํ•˜๋“œ ๋””์Šคํฌ(hard disk)-HDD, ํ”Œ๋ž˜์‹œ ๋ฉ”๋ชจ๋ฆฌ(flash memory)-SSD, CD-ROM, ๋“ฑ

 

 

 

์ž…์ถœ๋ ฅ์žฅ์น˜(I/O device)

 
์‚ฌ์šฉ์ž์™€ ์ปดํ“จํ„ฐ๊ฐ„์˜ ๋Œ€ํ™”๋ฅผ ์œ„ํ•œ ์ž…๋ ฅ ๋ฐ ์ถœ๋ ฅ์žฅ์น˜
 
์œ ×๋ฌด์„  ํ†ต์‹  ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค ์žฅ์น˜

 


์‹œ์Šคํ…œ ๋ฒ„์Šค

 

CPU์™€ ์‹œ์Šคํ…œ ๋‚ด์˜ ๋‹ค๋ฅธ ์š”์†Œ๋“ค ์‚ฌ์ด์— ์ •๋ณด๋ฅผ ๊ตํ™˜ํ•˜๋Š” ํ†ต๋กœ
 
๊ธฐ๋ณธ ๊ตฌ์„ฑ
 
 
์ฃผ์†Œ ๋ฒ„์Šค(address bus)
 
 
CPU๊ฐ€ ์™ธ๋ถ€๋กœ ๋ฐœ์ƒํ•˜๋Š” ์ฃผ์†Œ ์ •๋ณด๋ฅผ ์ „์†กํ•˜๋Š” ์‹ ํ˜ธ ์„ ๋“ค์˜ ์ง‘ํ•ฉ
 
์ฃผ์†Œ ์„ ์˜ ์ˆ˜๋Š” CPU์™€ ์ ‘์†๋  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ๊ธฐ์–ต์žฅ์น˜ ์šฉ๋Ÿ‰์„ ๊ฒฐ์ •

 

๋ฐ์ดํ„ฐ ๋ฒ„์Šค(data bus)

 

CPU๊ฐ€ ๊ธฐ์–ต์žฅ์น˜ ํ˜น์€ I/O ์žฅ์น˜์™€์˜ ์‚ฌ์ด์— ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ธฐ ์œ„ํ•œ ์‹ ํ˜ธ ์„ ๋“ค์˜ ์ง‘ํ•ฉ
๋ฐ์ดํ„ฐ ์„ ์˜ ์ˆ˜๋Š” CPU๊ฐ€ ํ•œ ๋ฒˆ์— ์ „์†กํ•  ์ˆ˜ ์žˆ๋Š” ๋น„ํŠธ ์ˆ˜๋ฅผ ๊ฒฐ์ •

 

์ œ์–ด ๋ฒ„์Šค(control bus)

 

CPU๊ฐ€ ์‹œ์Šคํ…œ ๋‚ด์˜ ๊ฐ์ข… ์š”์†Œ๋“ค์˜ ๋™์ž‘ ์ œ์–ด๋ฅผ ์œ„ํ•œ ์‹ ํ˜ธ ์„ ๋“ค์˜ ์ง‘ํ•ฉ

 

์ปดํ“จํ„ฐ ์ •๋ณด์˜ ํ‘œํ˜„๊ณผ ์ €์žฅ

์ปดํ“จํ„ฐ ์ •๋ณด๋Š” 2์ง„์ˆ˜๋กœ ํ‘œํ˜„

 

ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ

๊ณ ๊ธ‰์–ธ์–ด: ์‚ฌ๋žŒ์ด ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ์–ธ์–ด

์ปดํŒŒ์ผ๋Ÿฌ,์–ด์…ˆ๋ธ”๋Ÿฌ๋ฅผ ์ด์šฉํ•ด ๊ธฐ๊ณ„์–ด๋กœ ๋ฒˆ์—ญ

 

์–ด์…ˆ๋ธ”๋ฆฌ ์–ธ์–ด

๊ณ ๊ธ‰ ์–ธ์–ด์™€ ๊ธฐ๊ณ„์–ด ์‚ฌ์ด์˜ ์ค‘๊ฐ„ ์–ธ์–ด

 

๊ธฐ๊ณ„์–ด

์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•˜๋Š” ์–ธ์–ด

 

์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด

์ •์˜

์ปดํ“จํ„ฐ ํ•˜๋“œ์›จ์–ด์™€ ์‘์šฉ ์†Œํ”„ํŠธ์›จ์–ด ์‚ฌ์ด์—์„œ ํ”Œ๋žซํผ ์—ญํ• ์„ ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด

 
์ข…๋ฅ˜
 

์šด์˜์ฒด์ œ(Operating System) : ์ปดํ“จํ„ฐ ์ž์›์„ ๊ด€๋ฆฌํ•˜๊ณ  ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์‹คํ–‰ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋Š” SW

 

๋””๋ฐ”์ด์Šค ๋“œ๋ผ์ด๋ฒ„(Device Driver) : ์ปดํ“จํ„ฐ์— ์—ฐ๊ฒฐ๋œ ์ฃผ๋ณ€ ๊ธฐ๊ธฐ๋ฅผ ์ œ์–ดํ•˜๋Š” ๋ชจ๋“ˆ(SW)
 

์ปดํŒŒ์ผ๋Ÿฌ(Compiler) - ํ†ต๋ฒˆ์—ญ, ์ธํ„ฐํ”„๋ฆฌํ„ฐ(Interpreter) - ๋™์‹œํ†ต์—ญ: ๊ณ ๊ธ‰์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ํ”„๋กœ๊ทธ๋žจ์„ ์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์ €๊ธ‰์–ธ์–ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” SW

 
 
๋ง์ปค(linker) : ์—ฌ๋Ÿฌ ๊ฐœ๋กœ ๋ถ„ํ• , ์ž‘์„ฑ๋œ (๋ชฉ์ )ํ”„๋กœ๊ทธ๋žจ ๋˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฃจํ‹ด์„ ๊ฒฐํ•ฉํ•˜์—ฌ, ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ํ•˜๋‚˜์˜ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์—ฐ๊ฒฐํ•˜๋Š” SW

 

๋กœ๋”(loader) : ๋””์Šคํฌ์™€ ๊ฐ™์€ ์ €์žฅ์žฅ์น˜์— ๋ณด๊ด€๋œ ํ”„๋กœ๊ทธ๋žจ์„ ์ฝ์–ด ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌํ•œ ํ›„ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ๋กœ ๋งŒ๋“œ๋Š” SW

 

์–ด์…ˆ๋ธ”๋ฆฌ์–ด ๋ช…๋ น์–ด ํ˜•์‹=์—ฐ์‚ฐ์ฝ”๋“œ+์˜คํผ๋žœ๋“œ

์—ฐ์‚ฐ ์ฝ”๋“œ: CPU๊ฐ€ ์ˆ˜ํ–‰ํ•  ์—ฐ์‚ฐ์€ ์ง€์ •ํ•ด ์ฃผ๋Š” ๋น„ํŠธ ex)2bit = 2์˜ 2์Šน

ํ”ผ์—ฐ์‚ฐ์ž(์˜คํผ๋žœ๋“œ): ์—ฐ์‚ฐ์— ์“ฐ์ผ ๋ฐ์ดํ„ฐ or ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๊ธฐ์–ต์žฅ์น˜์ฃผ์†Œ

์˜คํผ๋žœ๋“œ์˜ ๋น„ํŠธ ์ˆ˜๋Š” ๊ธฐ์–ต์žฅ์†Œ์˜ ํฌ๊ธฐ

 

์ปดํ“จํ„ฐ์˜ ๊ธฐ๋ณธ์  ๊ธฐ๋Šฅ

 

ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰, ๋ฐ์ดํ„ฐ ์ €์žฅ, ๋ฐ์ดํ„ฐ ์ด๋™, ๋ฐ์ดํ„ฐ ์ž…๋ ฅ/์ถœ๋ ฅ, ์ œ์–ด