[Computer Science][Operating System] ๐Ÿง  ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ์™€ MMU: ์ปดํ“จํ„ฐ ๋ฉ”๋ชจ๋ฆฌ์˜ ํ•ต์‹ฌ ์ดํ•ดํ•˜๊ธฐ

๊น€์ƒ์šฑยท2024๋…„ 8์›” 15์ผ
0
post-thumbnail

๐Ÿง  ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ(Main Memory)

๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ๋Š” CPU๊ฐ€ ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์–ต ์žฅ์น˜๋กœ, ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํ–‰๋˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ์™€์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ๋Š” ์ฃผ์†Œ๊ฐ€ ํ• ๋‹น๋œ ์ผ๋ จ์˜ ๋ฐ”์ดํŠธ๋“ค๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, CPU๋Š” ๋ ˆ์ง€์Šคํ„ฐ๊ฐ€ ์ง€์‹œํ•˜๋Š” ๋Œ€๋กœ ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•˜์—ฌ ๋‹ค์Œ์— ์ˆ˜ํ–‰ํ•  ๋ช…๋ น์–ด๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๋ช…๋ น์–ด ์ˆ˜ํ–‰ ์‹œ ๋ฉ”๋ชจ๋ฆฌ์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์œผ๋ฉด ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ์šฐ์„  ๊ฐ€์ ธ์™€์•ผ ํ•˜๋ฉฐ, ์ด ์—ญํ• ์„ ํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ MMU(Memory Management Unit)์ž…๋‹ˆ๋‹ค.

๐Ÿ“ฆ MMU(Memory Management Unit, ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ์žฅ์น˜)

  • ์ฃผ์†Œ ๋ณ€ํ™˜: MMU๋Š” ๋…ผ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์†Œ๋กœ ๋ณ€ํ™˜ํ•ด์ค๋‹ˆ๋‹ค.
  • ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ: ๋ฉ”๋ชจ๋ฆฌ ๋ณดํ˜ธ ๋ฐ ์บ์‹œ ๊ด€๋ฆฌ ๋“ฑ์„ ํ†ตํ•ด CPU๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์„ ์ด ๊ด€๋ฆฌํ•˜๋Š” ํ•˜๋“œ์›จ์–ด์ž…๋‹ˆ๋‹ค.

๋ฉ”๋ชจ๋ฆฌ์˜ ๊ณต๊ฐ„์ด ํ•œ์ •์ ์ด๊ธฐ ๋•Œ๋ฌธ์—, ์‚ฌ์šฉ์ž์—๊ฒŒ ๋” ๋งŽ์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด '๊ฐ€์ƒ ์ฃผ์†Œ'๋ผ๋Š” ๊ฐœ๋…์ด ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์ƒ ์ฃผ์†Œ๋Š” ํ”„๋กœ๊ทธ๋žจ์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ๋ณด๋Š” ์ฃผ์†Œ ๊ณต๊ฐ„์„ ์˜๋ฏธํ•˜๋ฉฐ, MMU๋Š” ์ด ๊ฐ€์ƒ ์ฃผ์†Œ์—์„œ ์‹ค์ œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋‹ด๊ฒจ ์žˆ๋Š” ๊ณณ์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•ด ๋น ๋ฅธ ์ฃผ์†Œ ๋ณ€ํ™˜์„ ๋„์™€์ค๋‹ˆ๋‹ค.

MMU์˜ ์—ญํ• 

  • MMU๊ฐ€ ์ง€์›๋˜์ง€ ์•Š์œผ๋ฉด physical address๋ฅผ ์ง์ ‘ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋ฏ€๋กœ ๋ถ€๋‹ด์ด ์ปค์ง‘๋‹ˆ๋‹ค.
  • MMU๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ์–ต์žฅ์†Œ๋ฅผ ์ผ์ผ์ด ํ• ๋‹นํ•ด์•ผ ํ•˜๋Š” ๋ถˆํŽธ์„ ์—†์• ์ค๋‹ˆ๋‹ค.
  • ํ”„๋กœ์„ธ์Šค์˜ ํฌ๊ธฐ๊ฐ€ ์‹ค์ œ ๋ฉ”๋ชจ๋ฆฌ ์šฉ๋Ÿ‰์„ ์ดˆ๊ณผํ•ด๋„ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Š ๋ฉ”๋ชจ๋ฆฌ ๋ณดํ˜ธ

ํ”„๋กœ์„ธ์Šค๋Š” ๋…๋ฆฝ์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ๊ฐ€์ ธ์•ผ ํ•˜๋ฉฐ, ์ž์‹ ์˜ ๊ณต๊ฐ„๋งŒ ์ ‘๊ทผํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐ ํ”„๋กœ์„ธ์Šค์—๊ฒŒ ํ•ฉ๋ฒ•์ ์ธ ์ฃผ์†Œ ์˜์—ญ, ์ฆ‰ ๊ทธ ๋ฉ”๋ชจ๋ฆฌ๋งŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์˜์—ญ์„ ์„ค์ •ํ•˜๊ณ , ์ž˜๋ชป๋œ ์ ‘๊ทผ์ด ๋ฐœ์ƒํ•˜๋ฉด trap์„ ๋ฐœ์ƒ์‹œ์ผœ ๋ณดํ˜ธํ•ฉ๋‹ˆ๋‹ค.

Base์™€ Limit ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ํ™œ์šฉํ•œ ๋ฉ”๋ชจ๋ฆฌ ๋ณดํ˜ธ ๊ธฐ๋ฒ•

  • Base ๋ ˆ์ง€์Šคํ„ฐ: ๋ฉ”๋ชจ๋ฆฌ์ƒ์˜ ํ”„๋กœ์„ธ์Šค ์‹œ์ž‘ ์ฃผ์†Œ๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์†Œ๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • Limit ๋ ˆ์ง€์Šคํ„ฐ: ํ”„๋กœ์„ธ์Šค์˜ ํฌ๊ธฐ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์ด๋กœ์จ ํ”„๋กœ์„ธ์Šค์˜ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ํ•ฉ๋ฒ•์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ(x)์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

base <= x < limit

์ด ์˜์—ญ ๋ฐ–์—์„œ ์ ‘๊ทผ์„ ์š”๊ตฌํ•˜๋ฉด trap์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์•ˆ์ „์„ฑ์„ ์œ„ํ•ด base์™€ limit ๋ ˆ์ง€์Šคํ„ฐ๋Š” ์ปค๋„ ๋ชจ๋“œ์—์„œ๋งŒ ์ˆ˜์ • ๊ฐ€๋Šฅํ•˜๋„๋ก ์„ค๊ณ„๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿšฆ ๋ฉ”๋ชจ๋ฆฌ ๊ณผํ• ๋‹น(Over Allocating)

๋ฉ”๋ชจ๋ฆฌ ๊ณผํ• ๋‹น์€ ์‹ค์ œ ๋ฉ”๋ชจ๋ฆฌ์˜ ์‚ฌ์ด์ฆˆ๋ณด๋‹ค ๋” ํฐ ์‚ฌ์ด์ฆˆ์˜ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ”„๋กœ์„ธ์Šค์— ํ• ๋‹นํ•œ ์ƒํ™ฉ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ํŽ˜์ด์ง€ ๊ธฐ๋ฒ•๊ณผ ๊ฐ™์€ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฅผ ๋ˆˆ์น˜์ฑ„์ง€ ๋ชปํ•˜๋„๋ก ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ• ๋‹นํ•ด ์ค๋‹ˆ๋‹ค. ๊ณผํ• ๋‹น ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฅผ ์ธ์ง€ํ•  ์ˆ˜ ์žˆ๋Š” ์ƒํ™ฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  1. ํ”„๋กœ์„ธ์Šค ์‹คํ–‰ ๋„์ค‘ ํŽ˜์ด์ง€ ํดํŠธ ๋ฐœ์ƒ
  2. ํŽ˜์ด์ง€ ํดํŠธ๋ฅผ ๋ฐœ์ƒ์‹œํ‚จ ํŽ˜์ด์ง€ ์œ„์น˜๋ฅผ ๋””์Šคํฌ์—์„œ ์ฐพ์Œ
  3. ๋ฉ”๋ชจ๋ฆฌ์˜ ๋นˆ ํ”„๋ ˆ์ž„์— ํŽ˜์ด์ง€๋ฅผ ์˜ฌ๋ ค์•ผ ํ•˜๋Š”๋ฐ, ๋ชจ๋“  ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์‚ฌ์šฉ ์ค‘์ด๋ผ ๋นˆ ํ”„๋ ˆ์ž„์ด ์—†์Œ

์ด๋Ÿฌํ•œ ๊ณผํ• ๋‹น์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋นˆ ํ”„๋ ˆ์ž„์„ ํ™•๋ณดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  1. ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ์™€ ์žˆ๋Š” ํ•œ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒ์‹œ์ผœ ๋นˆ ํ”„๋ ˆ์ž„์„ ์–ป์Œ
  2. ํ”„๋กœ์„ธ์Šค ํ•˜๋‚˜๋ฅผ swap outํ•˜๊ณ , ์ด ๊ณต๊ฐ„์„ ๋นˆ ํ”„๋ ˆ์ž„์œผ๋กœ ํ™œ์šฉ

์Šค์™€ํ•‘ ๊ธฐ๋ฒ•์„ ํ†ตํ•ด ๊ณต๊ฐ„์„ ๋ฐ”๊ฟ”์น˜๊ธฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์ง€๋งŒ, ์ฒซ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ํŽ˜์ด์ง• ์‹œ์Šคํ…œ์„ ๋“คํ‚ฌ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„ ํ”ผํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‘ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์„ ํ†ตํ•ด ํŽ˜์ด์ง€ ๊ต์ฒด๊ฐ€ ์ด๋ฃจ์–ด์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ”„ ํŽ˜์ด์ง€ ๊ต์ฒด

๋ฉ”๋ชจ๋ฆฌ ๊ณผํ• ๋‹น์ด ๋ฐœ์ƒํ–ˆ์„ ๋•Œ, ํ”„๋กœ์„ธ์Šค ํ•˜๋‚˜๋ฅผ swap outํ•˜์—ฌ ๋นˆ ํ”„๋ ˆ์ž„์„ ํ™•๋ณดํ•˜๋Š” ๊ณผ์ •์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

  1. ํ”„๋กœ์„ธ์Šค ์‹คํ–‰ ๋„์ค‘ ํŽ˜์ด์ง€ ๋ถ€์žฌ ๋ฐœ์ƒ
  2. ํŽ˜์ด์ง€ ํดํŠธ๋ฅผ ๋ฐœ์ƒ์‹œํ‚จ ํŽ˜์ด์ง€ ์œ„์น˜๋ฅผ ๋””์Šคํฌ์—์„œ ์ฐพ์•„์„œ
  3. ๋ฉ”๋ชจ๋ฆฌ์— ๋นˆ ํ”„๋ ˆ์ž„์ด ์žˆ๋Š”์ง€ ํ™•์ธ
    • ๋นˆ ํ”„๋ ˆ์ž„์ด ์žˆ์œผ๋ฉด ํ•ด๋‹น ํ”„๋ ˆ์ž„์„ ์‚ฌ์šฉ
    • ๋นˆ ํ”„๋ ˆ์ž„์ด ์—†์œผ๋ฉด victim ํ”„๋ ˆ์ž„์„ ์„ ์ •ํ•ด ๋””์Šคํฌ์— ๊ธฐ๋กํ•˜๊ณ  ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์„ ์—…๋ฐ์ดํŠธํ•จ
  4. ๋นˆ ํ”„๋ ˆ์ž„์— ํŽ˜์ด์ง€ ํดํŠธ๊ฐ€ ๋ฐœ์ƒํ•œ ํŽ˜์ด์ง€๋ฅผ ์˜ฌ๋ฆฌ๊ณ , ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ์—…๋ฐ์ดํŠธ

ํŽ˜์ด์ง€ ๊ต์ฒด๊ฐ€ ์ด๋ฃจ์–ด์ง€๋ฉด, ์•„๋ฌด ์ผ์ด ์—†๋˜ ๊ฒƒ์ฒ˜๋Ÿผ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ณ„์† ์ˆ˜ํ–‰์‹œ์ผœ ์‚ฌ์šฉ์ž์—๊ฒŒ ์•Œ๋ฆฌ์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ํŽ˜์ด์ง€ ๊ต์ฒด ๋‹น์‹œ ์˜ค๋ฒ„ํ—ค๋“œ๋ฅผ ์ตœ๋Œ€ํ•œ ์ค„์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฒ„ํ—ค๋“œ ๊ฐ์†Œ ๋ฐฉ๋ฒ•

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

๋ฐฉ๋ฒ• 1: ๋ณ€๊ฒฝ ๋น„ํŠธ ํ™œ์šฉ

๋ชจ๋“  ํŽ˜์ด์ง€๋งˆ๋‹ค ๋ณ€๊ฒฝ ๋น„ํŠธ๋ฅผ ๋‘์–ด, victim ํŽ˜์ด์ง€๊ฐ€ ์ •ํ•ด์ง€๋ฉด ํ•ด๋‹น ํŽ˜์ด์ง€์˜ ๋น„ํŠธ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

  • set ์ƒํƒœ: ํŽ˜์ด์ง€ ๋‚ด์šฉ์ด ๋””์Šคํฌ ์ƒ์˜ ํŽ˜์ด์ง€ ๋‚ด์šฉ๊ณผ ๋‹ฌ๋ผ์กŒ๋‹ค๋Š” ๋œป์œผ๋กœ, ๋””์Šคํฌ์— ๊ธฐ๋กํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • clear ์ƒํƒœ: ๋””์Šคํฌ์ƒ์˜ ํŽ˜์ด์ง€ ๋‚ด์šฉ๊ณผ ๋ฉ”๋ชจ๋ฆฌ ์ƒ์˜ ํŽ˜์ด์ง€๊ฐ€ ์ •ํ™•ํžˆ ์ผ์น˜ํ•˜์—ฌ ๊ธฐ๋กํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

์ด ๋ฐฉ๋ฒ•์„ ํ†ตํ•ด ๋””์Šคํฌ์— ๊ธฐ๋กํ•˜๋Š” ํšŸ์ˆ˜๋ฅผ ์ค„์—ฌ ์˜ค๋ฒ„ํ—ค๋“œ๋ฅผ ์ ˆ๋ฐ˜์œผ๋กœ ๊ฐ์†Œ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐฉ๋ฒ• 2: ํŽ˜์ด์ง€ ๊ต์ฒด ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์„ ํƒ

ํ˜„์žฌ ์ƒํ™ฉ์—์„œ ํŽ˜์ด์ง€ ํดํŠธ๋ฅผ ๋ฐœ์ƒํ•  ํ™•๋ฅ ์„ ์ตœ๋Œ€ํ•œ ์ค„์—ฌ์ค„ ์ˆ˜ ์žˆ๋Š” ๊ต์ฒด ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ๋Š” FIFO, OPT, LRU ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

โšก ์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ

์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ๋Š” ์ฃผ๊ธฐ์–ต์žฅ์น˜์— ์ €์žฅ๋œ ๋‚ด์šฉ์˜ ์ผ๋ถ€๋ฅผ ์ž„์‹œ๋กœ ์ €์žฅํ•ด๋‘๋Š” ๊ธฐ์–ต์žฅ์น˜๋กœ, CPU์™€ ์ฃผ๊ธฐ์–ต์žฅ์น˜์˜ ์†๋„ ์ฐจ์ด๋กœ ์ธํ•œ ์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. CPU๊ฐ€ ์ด๋ฏธ ๋ดค๋˜ ๊ฒƒ์„ ๋‹ค์‹œ ์žฌ์ ‘๊ทผํ•  ๋•Œ, ๋ฉ”๋ชจ๋ฆฌ ์ฐธ์กฐ ๋ฐ ์ธ์ถœ ๊ณผ์ •์— ๋Œ€ํ•œ ๋น„์šฉ์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ์บ์‹œ์— ์ €์žฅํ•ด๋‘” ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.

์บ์‹œ๋Š” ํ”Œ๋ฆฝํ”Œ๋กญ ์†Œ์ž(0๊ณผ 1์˜ ๋‘๊ฐ€์ง€ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๋Š” ์†Œ์ž)๋กœ ๊ตฌ์„ฑ๋˜์–ด SRAM(static)์œผ๋กœ ๋˜์–ด ์žˆ์–ด DRAM(dynamic)๋ณด๋‹ค ๋น ๋ฅธ ์žฅ์ ์„ ์ง€๋‹™๋‹ˆ๋‹ค. ์ด๋Š” SRAM์€ ๋ฐ์ดํ„ฐ ์œ ์ง€๋ฅผ ์œ„ํ•ด ์ง€์†์ ์ธ ์ „์› ๊ณต๊ธ‰์ด ํ•„์š”ํ•˜์ง€๋งŒ ์žฌ์ถฉ์ „์ด ํ•„์š”ํ•˜์ง€๋Š” ์•Š๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

CPU์™€ ๊ธฐ์–ต์žฅ์น˜์˜ ์ƒํ˜ธ์ž‘์šฉ

  1. CPU์—์„œ ์ฃผ์†Œ๋ฅผ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.
  2. ์บ์‹œ ๊ธฐ์–ต์žฅ์น˜์— ๋ช…๋ น์ด ์กด์žฌํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
    • Hit: ํ•ด๋‹น ๋ช…๋ น์–ด๋ฅผ CPU๋กœ ์ „์†กํ•˜๊ณ  ์™„๋ฃŒํ•ฉ๋‹ˆ๋‹ค.
    • Miss: ๋ช…๋ น์–ด๋ฅผ ๊ฐ–๊ณ  ์ฃผ๊ธฐ์–ต์žฅ์น˜๋กœ ์ ‘๊ทผํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์ธ์ถœ ํ›„ ์บ์‹œ์— ์ €์žฅํ•˜๊ณ  CPU๋กœ ์ „์†กํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ณผ์ •์—์„œ ์บ์‹œ๋ฅผ ์ž˜ ํ™œ์šฉํ•˜๋ฉด ๋น„์šฉ์„ ๋งŽ์ด ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ CPU๊ฐ€ ์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฅผ ์›ํ• ์ง€ ์˜ˆ์ธกํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๋ฉฐ, ์บ์‹œ์— ์œ ์šฉํ•œ ์ •๋ณด๊ฐ€ ๋“ค์–ด์žˆ์–ด์•ผ ์„ฑ๋Šฅ์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค. ์ด ๋•Œ, ์ ์ค‘๋ฅ ์„ ๊ทน๋Œ€ํ™”์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ '์ง€์—ญ์„ฑ์˜ ์›๋ฆฌ'์ž…๋‹ˆ๋‹ค.

์ง€์—ญ์„ฑ์˜ ์›๋ฆฌ

์ง€์—ญ์„ฑ์€ ๊ธฐ์–ต ์žฅ์น˜ ๋‚ด์˜ ์ •๋ณด๋ฅผ ๊ท ์ผํ•˜๊ฒŒ ์•ก์„ธ์Šคํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํŠน์ • ๋ถ€๋ถ„์„ ์ง‘์ค‘์ ์œผ๋กœ ์ฐธ์กฐํ•˜๋Š” ํŠน์„ฑ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ง€์—ญ์„ฑ์˜ ์ข…๋ฅ˜๋Š” ์‹œ๊ฐ„๊ณผ ๊ณต๊ฐ„์œผ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์‹œ๊ฐ„ ์ง€์—ญ์„ฑ: ์ตœ๊ทผ์— ์ฐธ์กฐ๋œ ์ฃผ์†Œ์˜ ๋‚ด์šฉ์€ ๊ณง ๋‹ค์Œ์—๋„ ์ฐธ์กฐ๋˜๋Š” ํŠน์„ฑ์ž…๋‹ˆ๋‹ค.
  • ๊ณต๊ฐ„ ์ง€์—ญ์„ฑ: ์‹ค์ œ ํ”„๋กœ๊ทธ๋žจ์ด ์ฐธ์กฐ๋œ ์ฃผ์†Œ์™€ ์ธ์ ‘ํ•œ ์ฃผ์†Œ์˜ ๋‚ด์šฉ์ด ๋‹ค์‹œ ์ฐธ์กฐ๋˜๋Š” ํŠน์„ฑ์ž…๋‹ˆ๋‹ค.

๐Ÿ“Š ์บ์‹ฑ ๋ผ์ธ

์บ์‹œ์— ๋นˆ๋ฒˆํ•˜๊ฒŒ ์‚ฌ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ๋“ค์„ ์ €์žฅํ–ˆ๋”๋ผ๋„, ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ์ˆœํšŒํ•˜๋Š” ๊ฒƒ์€ ์‹œ๊ฐ„ ๋‚ญ๋น„์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์บ์‹œ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์‹œ ์ž๋ฃŒ๊ตฌ์กฐ(set, map ๋“ฑ)๋ฅผ ํ™œ์šฉํ•ด ๋ฌถ์–ด์„œ ์ €์žฅํ•˜๋Š”๋ฐ, ์ด๋ฅผ ์บ์‹ฑ ๋ผ์ธ์ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์™€ ํ•จ๊ป˜ ์ €์žฅํ•˜์—ฌ ๋น ๋ฅด๊ฒŒ ์›ํ•˜๋Š” ์ •๋ณด๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


์ด ๊ธ€์„ ํ†ตํ•ด ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ, MMU, ๋ฉ”๋ชจ๋ฆฌ ๋ณดํ˜ธ, ๊ณผํ• ๋‹น, ํŽ˜์ด์ง€ ๊ต์ฒด, ์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ ๋“ฑ ์ปดํ“จํ„ฐ ๋ฉ”๋ชจ๋ฆฌ์˜ ํ•ต์‹ฌ ๊ฐœ๋…์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜์—ˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์ด๋Ÿฐ ์ž๋ฃŒ๋ฅผ ์ฐธ๊ณ ํ–ˆ์–ด์š”.
[1] ํ‹ฐ์Šคํ† ๋ฆฌ - ๋ฉ”๋ชจ๋ฆฌ(Memory) - ์šด์˜์ฒด์ œ - ๊ฐœ๋ฐœ ๊ธฐ๋ก - ํ‹ฐ์Šคํ† ๋ฆฌ (https://mimsdatastudy.tistory.com/46)
[2] Wikipedia - ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ์žฅ์น˜ - ์œ„ํ‚ค๋ฐฑ๊ณผ, ์šฐ๋ฆฌ ๋ชจ๋‘์˜ ๋ฐฑ๊ณผ์‚ฌ์ „ (https://ko.wikipedia.org/wiki/%EB%A9%94%EB%AA%A8%EB%A6%AC_%EA%B4%80%EB%A6%AC_%EC%9E%A5%EC%B9%98)
[3] ํ‹ฐ์Šคํ† ๋ฆฌ - ์ฃผ๊ธฐ์–ต์žฅ์น˜๊ด€๋ฆฌ - MMU - ํ˜ธ๋ชจ ์•„ํ‚ค๋น„์ŠคํŠธ - ํ‹ฐ์Šคํ† ๋ฆฌ (https://yeongunheo.tistory.com/entry/%EC%A3%BC%EA%B8%B0%EC%96%B5%EC%9E%A5%EC%B9%98%EA%B4%80%EB%A6%AC-MMU)
[4] velog - [์šด์˜์ฒด์ œ] ๋ฉ”๋ชจ๋ฆฌ(Memory) (https://velog.io/@yerimm99/%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C-%EB%A9%94%EB%AA%A8%EB%A6%ACMemory)

0๊ฐœ์˜ ๋Œ“๊ธ€