๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • Dev Blog
CS/์šด์˜์ฒด์ œ

[์šด์˜์ฒด์ œ] ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ

by ์œ ์ง„์˜ 2023. 5. 2.
ํŒจ์ŠคํŠธ์บ ํผ์Šค ์šด์˜์ฒด์ œ ๊ฐ•์˜์™€ ์‰ฝ๊ฒŒ ๋ฐฐ์šฐ๋Š” ์šด์˜์ฒด์ œ ๊ต์žฌ์— ๋Œ€ํ•œ TIL์ž…๋‹ˆ๋‹ค.

 

๋ฉ”๋ชจ๋ฆฌ์˜ ์ดํ•ด

๋ฉ”๋ชจ๋ฆฌ์˜ ๊ตฌ์กฐ๋Š” 1 ๋ฐ”์ดํŠธ ํฌ๊ธฐ๋กœ ๋‚˜๋‰œ๋‹ค. 1๋ฐ”์ดํŠธ๋กœ ๋‚˜๋‰œ ๊ฐ ์˜์—ญ์€ ์ฃผ์†Œ๋กœ ๊ตฌ๋ถ„๋˜๋Š”๋ฐ ๋ณดํ†ต 0๋ฒˆ์ง€๋ถ€ํ„ฐ ์‹œ์ž‘ํ•œ๋‹ค. CPU๋Š” ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ ์ž‘์—… ๊ฒฐ๊ณผ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
 

๐Ÿ’ก ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ CPU๋กœ ๊ฐ€์ ธ์˜ค๋Š” ๊ณผ์ •

๋จผ์ €, CPU๊ฐ€ ์ ‘๊ทผํ•˜๋ ค๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ ๋ ˆ์ง€์Šคํ„ฐ(MAR)์— ๋„ฃ์œผ๋ฉด ํ•ด๋‹น ์ฃผ์†Œ๊ฐ€ ์ฃผ์†Œ ๋ฒ„์Šค๋ฅผ ํ†ตํ•ด ๋ฉ”๋ชจ๋ฆฌ์— ์ „๋‹ฌ๋œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์—์„œ๋Š” ํ•ด๋‹น ์ฃผ์†Œ์˜ ๊ฐ’์„ ๋ฐ์ดํ„ฐ ๋ฒ„์Šค๋ฅผ ํ†ตํ•ด ๋ฉ”๋ชจ๋ฆฌ ๋ฒ„ํผ ๋ ˆ์ง€์Šคํ„ฐ(MBR)๋กœ ๋ณด๋‚ธ๋‹ค. MBR์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋ ˆ์ง€์Šคํ„ฐ๋กœ ์˜ฎ๊ฒจ์ง€๋ฉด ๋ฉ”๋ชจ๋ฆฌ ์ ‘๊ทผ ์ž‘์—…์ด ๋๋‚œ๋‹ค.

 

๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ์ž‘์—…

๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋Š” ์šด์˜์ฒด์ œ๋ฅผ ๋น„๋กฏํ•ด ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ๋•Œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์–ด๋–ป๊ฒŒ ๊ด€๋ฆฌํ•˜๋Š” ๊ฐ€์— ๊ด€ํ•œ ๋ฌธ์ œ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(MMS: Memory Management System)์ด ๋‹ด๋‹นํ•œ๋‹ค. ์ผ๊ด„ ์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ์—์„œ๋Š” ํ•œ ๋ฒˆ์— ํ•œ ๊ฐ€์ง€ ์ž‘์—…๋งŒ ์ฒ˜๋ฆฌํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๊ฐ€ ์–ด๋ ต์ง€ ์•Š์•˜์ง€๋งŒ, ํ˜„๋Œ€์˜ ์‹œ๋ถ„ํ•  ์‹œ์Šคํ…œ์—์„œ๋Š” ์šด์˜์ฒด์ œ๋ฅผ ํฌํ•จํ•œ ๋ชจ๋“  ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ์™€ ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๊ฐ€ ๋ณต์žกํ•˜๋‹ค.
 
๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ์ž‘์—…์€ ํฌ๊ฒŒ ๊ฐ€์ ธ์˜ค๊ธฐ(Fetch), ๋ฐฐ์น˜(Placement), ์žฌ๋ฐฐ์น˜(Replacement)๋กœ ๊ตฌ๋ถ„๋œ๋‹ค.
 
๋ฉ”๋ชจ๋ฆฌ ๊ฐ€์ ธ์˜ค๊ธฐ(Fetch)
์‹คํ–‰ํ•  ํ”„๋กœ์„ธ์Šค์™€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ์ž‘์—…์ด๋‹ค. ์–ด๋–ค ์ƒํ™ฉ์—์„œ๋Š” ๋ฐ์ดํ„ฐ์˜ ์ผ๋ถ€๋งŒ ๊ฐ€์ ธ์™€ ์‹คํ–‰ํ•˜๊ธฐ๋„ ํ•œ๋‹ค.
 
๋ฉ”๋ชจ๋ฆฌ ๋ฐฐ์น˜(Placement)
๊ฐ€์ ธ์˜จ ํ”„๋กœ์„ธ์Šค์™€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์˜ ์–ด๋–ค ๋ถ€๋ถ„์— ์˜ฌ๋ ค๋†“์„์ง€ ๊ฒฐ์ •ํ•˜๋Š” ์ž‘์—…์ด๋‹ค. ๋ฐฐ์น˜ ์ž‘์—… ์ „์— ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์–ด๋–ค ํฌ๊ธฐ๋กœ ์ž๋ฅผ ๊ฒƒ์ธ์ง€๊ฐ€ ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค. ์ด๋ ‡๊ฒŒ ๋‚˜๋‰œ ๋ฉ”๋ชจ๋ฆฌ์˜ ๊ตฌ์—ญ์— ๋”ฐ๋ผ ํ”„๋กœ์„ธ์Šค์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋–ค ์œ„์น˜์— ๋†“์„์ง€ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ ๋ฐฐ์น˜ ์ž‘์—…์ด๋‹ค. ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ฐ™์€ ํฌ๊ธฐ๋กœ ์ž๋ฅด๋Š” ๊ฒƒ์„ ํŽ˜์ด์ง•(Paging)์ด๋ผ๊ณ  ํ•˜๊ณ , ํ”„๋กœ์„ธ์Šค์˜ ํฌ๊ธฐ์— ๋งž๊ฒŒ ์ž๋ฅด๋Š” ๊ฒƒ์„ ์„ธ๊ทธ๋จผํ…Œ์ด์…˜(Segmentation)์ด๋ผ๊ณ  ํ•œ๋‹ค.
 
๋ฉ”๋ชจ๋ฆฌ ์žฌ๋ฐฐ์น˜(Replacement)
๊ฝ‰ ์ฐฌ ๋ฉ”๋ชจ๋ฆฌ์— ์ƒˆ๋กœ์šด ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด ์˜ค๋ž˜๋œ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‚ด๋ณด๋‚ด๋Š” ์ž‘์—…์„ ์žฌ๋ฐฐ์น˜ ์ž‘์—…์ด๋ผ๊ณ  ํ•œ๋‹ค.
 
 

๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ

32bit CPU, 64bit CPU์™€ ๊ฐ™์ด CPU์˜ ๋น„ํŠธ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„์˜ ํฌ๊ธฐ์™€๋„ ์—ฐ๊ด€์ด ์žˆ๋‹ค. 32bit CPU์˜ ๊ฒฝ์šฐ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ ˆ์ง€์Šคํ„ฐ์ธ MAR์˜ ํฌ๊ธฐ๊ฐ€ 32bit์ด๋ฏ€๋กœ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ตœ๋Œ€ 4GB๊นŒ์ง€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๋ฐ˜๋ฉด, 64bit CPU์˜ ๊ฒฝ์šฐ์—๋Š” ๊ฑฐ์˜ ๋ฌดํ•œ๋Œ€์— ๊ฐ€๊นŒ์šด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋•Œ, ํ•˜๋“œ์›จ์–ด ์ž…์žฅ์—์„œ ๋ฐ”๋ผ๋ณธ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„์„ ๋ฌผ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„์ด๋ผ๊ณ  ํ•˜๊ณ , ์‚ฌ์šฉ์ž ์ž…์žฅ์—์„œ ๋ฐ”๋ผ๋ณธ ์ฃผ์†Œ ๊ณต๊ฐ„์„ ๋…ผ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„์ด๋ผ๊ณ  ํ•œ๋‹ค.
 

๋ฌผ๋ฆฌ ์ฃผ์†Œ์™€ ๋…ผ๋ฆฌ ์ฃผ์†Œ

๋งŒ์•ฝ, ์•„๋ž˜ ์ฝ”๋“œ๊ฐ€ ๋ฌธ์ž A๋ฅผ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์˜ 40๋ฒˆ์ง€์— ๋„ฃ๋Š” ๊ธฐ๊ณ„์–ด ์ฝ”๋“œ๋กœ ๋ฒˆ์—ญ์ด ๋˜์—ˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด์ž.

char alp = 'A';

 
์ค‘์š”ํ•œ ๊ฒƒ์€ ์‹ค์ œ๋กœ๋Š” ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ, ์ฆ‰ ์ปดํ“จํ„ฐ ๋‚ด์— ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์„ค์น˜๋œ ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ์˜ 40๋ฒˆ์ง€์— A๊ฐ€ ๋“ค์–ด๊ฐ€๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ๋Š” ์ ์ด๋‹ค. ์œ„ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ์˜ค๋ฉด ์ด ํ”„๋กœ๊ทธ๋žจ์„ ์œ„ํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์€ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ์˜ ์šด์˜์ฒด์ œ ์˜์—ญ์„ ์ œ์™ธํ•œ ๋นˆ ๊ณต๊ฐ„์— ๋ฐฐ์น˜๋œ๋‹ค. ์ด๋•Œ, ์ด ํ”„๋กœ๊ทธ๋žจ์˜ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ์˜ ์‹œ์ž‘ ์ฃผ์†Œ๋Š” 500๋ฒˆ์ง€ ์ผ ์ˆ˜๋„ ์žˆ๊ณ  600๋ฒˆ์ง€์ผ ์ˆ˜๋„ ์žˆ๋‹ค. ์ด๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋  ๋•Œ๋งˆ๋‹ค ์‹œ์ž‘ํ•˜๋Š” ๋ฌผ๋ฆฌ ์ฃผ์†Œ๊ฐ€ ๋งค๋ฒˆ ๋ฐ”๋€๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.
 
๋งŒ์•ฝ, ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ์˜ ์‹œ์ž‘ ์ฃผ์†Œ๊ฐ€ 360๋ฒˆ์ง€๋ผ๊ณ  ๊ฐ€์ •ํ–ˆ์„ ๋•Œ, 40๋ฒˆ์ง€๋Š” ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ์˜ ์ฃผ์†Œ 400๋ฒˆ์ง€๊ฐ€ ๋œ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ, 40๋ฒˆ์ง€๋Š” ์‚ฌ์šฉ์ž ํ”„๋กœ์„ธ์Šค ์ž…์žฅ์—์„œ ๋ฐ”๋ผ๋ณธ ๋…ผ๋ฆฌ ์ฃผ์†Œ์ด๋‹ค.
 

 
ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋…ผ๋ฆฌ ์ฃผ์†Œ๋Š” ๋…ผ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„์— ์žˆ๋‹ค. ๋…ผ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„์€ ํ•ญ์ƒ 0๋ฒˆ์ง€๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฉฐ ์ปดํ“จํ„ฐ๊ฐ€ ํ—ˆ์šฉํ•˜๋Š” ์ตœ๋Œ€์˜ ์ฃผ์†Œ ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง„๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ๋…ผ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„์˜ 0๋ฒˆ์ง€๋ถ€ํ„ฐ ๋ณ€์ˆ˜๋“ค์„ ๋ฐฐ์น˜ํ•œ๋‹ค. ๋ฌผ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„๋„ 0๋ฒˆ์ง€๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์ง€๋งŒ ์ตœ๋Œ€ ์ฃผ์†Œ ํฌ๊ธฐ๋Š” ์ปดํ“จํ„ฐ์— ์„ค์น˜๋œ ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง„๋‹ค.
 
๋…ผ๋ฆฌ ์ฃผ์†Œ๋กœ ์ด๋ฃจ์–ด์ง„ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์ด๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์†Œ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค. ์ด ์ž‘์—…์€ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ์œ ๋‹›(MMU: Memory Management Unit)์ด ๋‹ด๋‹นํ•œ๋‹ค.
 

 
๋‹ค์Œ์€ ๋…ผ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์†Œ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์„ ๋‚˜ํƒ€๋‚ธ ๊ทธ๋ฆผ์ด๋‹ค.
 

 
์‚ฌ์šฉ์ž ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋…ผ๋ฆฌ ์ฃผ์†Œ 40๋ฒˆ์ง€์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•˜๋ฉด CPU๋Š” MMU์—๊ฒŒ 40๋ฒˆ์ง€์— ์žˆ๋Š” ๋‚ด์šฉ์„ ๊ฐ€์ ธ์˜ค๋ผ๊ณ  ๋ช…๋ นํ•œ๋‹ค. MMU๋Š” ์žฌ๋ฐฐ์น˜ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ 400๋ฒˆ์ง€์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค. ์ด๋•Œ, ์žฌ๋ฐฐ์น˜ ๋ ˆ์ง€์Šคํ„ฐ๋Š” ์ฃผ์†Œ ๋ณ€ํ™˜์˜ ๊ธฐ๋ณธ์ด ๋˜๋Š” ์ฃผ์†Œ ๊ฐ’์„ ๊ฐ€์ง„ ๋ ˆ์ง€์Šคํ„ฐ๋กœ, ์‚ฌ์šฉ์ž ํ”„๋กœ์„ธ์Šค์˜ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ์‹œ์ž‘ ์ฃผ์†Œ ๊ฐ’์ด ์ €์žฅ๋œ๋‹ค. ๋”ฐ๋ผ์„œ, ๋งŒ์•ฝ ์‚ฌ์šฉ์ž ํ”„๋กœ์„ธ์Šค์˜ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ์‹œ์ž‘ ์ฃผ์†Œ ๊ฐ’์ด ๋ฐ”๋€Œ๋ฉด ์žฌ๋ฐฐ์ฒด ๋ ˆ์ง€์Šคํ„ฐ์—๋„ ๋ฐ”๋€ ์‹œ์ž‘ ์ฃผ์†Œ ๊ฐ’์ด ๋“ค์–ด๊ฐ„๋‹ค.
 
 

๋‹จ์ผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์˜ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น

๋‹จ์ผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์ด์—ˆ๋˜ ๊ณผ๊ฑฐ์—๋Š” ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๊ฐ’๋น„์‹ผ ์žฅ์น˜์˜€๊ธฐ ๋•Œ๋ฌธ์— ํฐ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜๊ฐ€ ์—†์—ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ž‘์€ ๋ฉ”๋ชจ๋ฆฌ๋กœ ์–ด๋–ป๊ฒŒ ํฐ ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘๋™ํ•  ๊ฒƒ์ธ๊ฐ€๊ฐ€ ๋ฌธ์ œ์˜€๋‹ค.
 
์ด๋•Œ ๋“ฑ์žฅํ•œ ๊ฒƒ์ด ๋ฐ”๋กœ ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฒ„๋ ˆ์ด(Memory Overlay)์ด๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฒ„๋ ˆ์ด๋ž€ ์ „์ฒด ํ”„๋กœ๊ทธ๋žจ์„ ๋ฉ”๋ชจ๋ฆฌ์— ๊ฐ€์ ธ์˜ค๋Š” ๋Œ€์‹  ํ”„๋กœ๊ทธ๋žจ์„ ๋ช‡ ๊ฐœ์˜ ๋ชจ๋“ˆ๋กœ ๋‚˜๋ˆ„๊ณ  ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ๋ชจ๋“ˆ์„ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ๊ธฐ๋ฒ•์„ ๋งํ•œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฒ„๋ ˆ์ด์—์„œ ์–ด๋–ค ๋ชจ๋“ˆ์„ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ ๋‚ด๋ณด๋‚ผ์ง€๋Š” CPU ๋ ˆ์ง€์Šคํ„ฐ ์ค‘ ํ•˜๋‚˜์ธ ํ”„๋กœ๊ทธ๋žจ ์นด์šดํ„ฐ(PC)๊ฐ€ ๊ฒฐ์ •ํ•œ๋‹ค. ํ”„๋กœ๊ทธ๋žจ ์นด์šดํ„ฐ๋Š” ์•ž์œผ๋กœ ์‹คํ–‰ํ•  ๋ชจ๋“ˆ์ด ๋ฉ”๋ชจ๋ฆฌ์— ์—†์œผ๋ฉด ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ์ž์—๊ฒŒ ์š”์ฒญํ•˜์—ฌ ๊ฐ€์ ธ์˜ค๊ฒŒ ํ•œ๋‹ค.
 
๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฒ„๋ ˆ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋งŒ์•ฝ ๊ณต๊ฐ„์ด ๋‹ค ์ฐฌ ๋ฉ”๋ชจ๋ฆฌ์— ๋ชจ๋“ˆ B๋ฅผ ๊ฐ€์ ธ์˜ฌ ๋•Œ ๋จผ์ € ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ์˜จ ๋ชจ๋“ˆ A๋ฅผ ์–ด๋”˜๊ฐ€์— ๋ณด๊ด€ํ•ด์•ผ ํ•œ๋‹ค. ์ด์ฒ˜๋Ÿผ ๋ฉ”๋ชจ๋ฆฌ์˜ ๊ณต๊ฐ„์ด ๋ชจ์ž๋ผ์„œ ์ซ“๊ฒจ๋‚œ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ €์žฅ์žฅ์น˜์˜ ํŠน๋ณ„ํ•œ ๊ณต๊ฐ„์— ๋ชจ์•„๋‘๋Š” ์˜์—ญ์„ ์Šค์™‘ ์˜์—ญ(Swap Area)๋ผ๊ณ  ํ•œ๋‹ค. ์ฐธ๊ณ ๋กœ ์ด๋ ‡๊ฒŒ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์Šค์™‘ ์˜์—ญ์— ์žˆ๋Š” ์ƒํƒœ๋ฅผ ๋ณด๋ฅ˜ ์ƒํƒœ๋ผ๊ณ  ํ•œ๋‹ค. ์Šค์™‘ ์˜์—ญ์—์„œ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ์ž‘์—…์„ Swap In, ๋ฉ”๋ชจ๋ฆฌ์—์„œ ์Šค์™‘ ์˜์—ญ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๋Š” ์ž‘์—…์„ Swap Out์ด๋ผ๊ณ  ํ•œ๋‹ค. ์ด๋•Œ, ์Šค์™‘ ์˜์—ญ์€ ์ €์žฅ์žฅ์น˜ ๊ด€๋ฆฌ์ž๊ฐ€ ์•„๋‹Œ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ์ž๊ฐ€ ๊ด€๋ฆฌํ•œ๋‹ค. ๋”ฐ๋ผ์„œ, ์‚ฌ์šฉ์ž๋Š” ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ์˜ ์ „์ฒด ํฌ๊ธฐ๋ฅผ ์‹ค์ œ ๋ฉ”๋ชจ๋ฆฌ์™€ ์Šค์™‘ ์˜์—ญ์˜ ํฌ๊ธฐ๋ฅผ ํ•ฉ์ณ์„œ ์ธ์‹ํ•œ๋‹ค.
 

 

๋ฉ€ํ‹ฐํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์˜ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น

๋‹จ์ผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์ด์—ˆ๋˜ ๊ณผ๊ฑฐ์™€ ๋‹ฌ๋ฆฌ ํ˜„๋Œ€์˜ ์šด์˜์ฒด์ œ๋Š” ๋ฉ€ํ‹ฐํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ, ์ฆ‰ ํ•œ ๋ฒˆ์— ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํ–‰๋˜๋Š” ๊ตฌ์กฐ์˜ ๋ฉ”๋ชจ๋ฆฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•œ๋‹ค. ๊ฐ ํ”„๋กœ์„ธ์Šค๋“ค์˜ ํฌ๊ธฐ๊ฐ€ ๋‹ฌ๋ผ ํ”„๋กœ์„ธ์Šค๋งˆ๋‹ค ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์–ด๋–ป๊ฒŒ ๋‚˜๋ˆ„์–ด ์‚ฌ์šฉํ•  ๊ฒƒ์ธ์ง€๊ฐ€ ๊ฐ€์žฅ ํฐ ๋ฌธ์ œ์ด๋‹ค.
 
๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์–ด๋–ค ํฌ๊ธฐ๋กœ ๋‚˜๋ˆŒ ๊ฒƒ์ธ๊ฐ€๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋ฐฐ์น˜ ์ •์ฑ…์— ํ•ด๋‹นํ•œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ํฌ๊ฒŒ ๊ฐ€๋ณ€ ๋ถ„ํ•  ๋ฐฉ์‹(Variable-Size Partitioning)๊ณผ ๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹(Fixed-Size Partitioning)์œผ๋กœ ๋‚˜๋‰œ๋‹ค. ์ด์™ธ์—๋„ ๋ฒ„๋”” ์‹œ์Šคํ…œ(Buddy System)์ด๋ผ๋Š” ๊ฒƒ์ด ์กด์žฌํ•œ๋‹ค.
 

 

๊ฐ€๋ณ€ ๋ถ„ํ•  ๋ฐฉ์‹

๊ฐ€๋ณ€ ๋ถ„ํ•  ๋ฐฉ์‹์€ ํ”„๋กœ์„ธ์Šค์˜ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋‚˜๋ˆ„๋Š” ๋ฐฉ์‹์ด๋‹ค. ๊ฐ€๋ณ€ ๋ถ„ํ•  ๋ฐฉ์‹์—์„œ๋Š” ํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์˜ ์—ฐ์†๋œ ๊ณต๊ฐ„์— ๋ฐฐ์น˜๋˜๊ธฐ ๋•Œ๋ฌธ์— ์—ฐ์† ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น(contiguous memory allocation), ๋˜๋Š” ์„ธ๊ทธ๋จผํ…Œ์ด์…˜(Segmentation) ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์ด๋ผ๊ณ  ํ•œ๋‹ค. ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค์— ํ•ด๋‹นํ•˜๋Š” ์ฃผ์†Œ ๊ณต๊ฐ„์ด ์—ฐ์†์ ์œผ๋กœ ์ด์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
 
๊ฐ€๋ณ€ ๋ถ„ํ•  ๋ฐฉ์‹์˜ ์žฅ์ ์€ ํ”„๋กœ์„ธ์Šค๋ฅผ ํ•œ ๋ฉ์–ด๋ฆฌ๋กœ ์ฒ˜๋ฆฌํ•˜์—ฌ ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ์—ฐ์†๋œ ๊ณต๊ฐ„์— ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฉ”๋ชจ๋ฆฌ์˜ ๋นˆ ๊ณต๊ฐ„์ด ๋ถˆ์—ฐ์†์ ์œผ๋กœ ์ƒ๊ธธ ์ˆ˜ ์žˆ์–ด ์ด์— ๋Œ€ํ•œ ๋ฉ”๋ชจ๋ฆฌ ํ†ตํ•ฉ๋“ฑ์˜ ๋ถ€๊ฐ€์ ์ธ ์ž‘์—…์ด ํ•„์š”ํ•˜๋ฏ€๋กœ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๊ฐ€ ๋ณต์žกํ•˜๋‹ค๋Š” ๋‹จ์ ์ด ์กด์žฌํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ๋ถˆ์—ฐ์†์ ์ธ ๋นˆ ๊ณต๊ฐ„์„ ๋‹จํŽธํ™”(Fragmentation)๋ผ๊ณ  ํ•œ๋‹ค. ๊ฐ€๋ณ€ ๋ถ„ํ•  ๋ฐฉ์‹์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋‹จํŽธํ™”๋Š” ํ”„๋กœ์„ธ์Šค์˜ ๋ฐ”๊นฅ์ชฝ์— ์œ„์น˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์™ธ๋ถ€ ๋‹จํŽธํ™”(External Fragmentation)๋ผ๊ณ  ํ•œ๋‹ค.
 

 
์™ธ๋ถ€ ๋‹จํŽธํ™”๋กœ ์ธํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ฉ”๋ชจ๋ฆฌ ๋ฐฐ์น˜ ๋ฐฉ์‹์ด๋‚˜ ์กฐ๊ฐ ๋ชจ์Œ(Defragmentation)์„ ์‚ฌ์šฉํ•œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ๋ฐฐ์น˜ ๋ฐฉ์‹์€ ์ž‘์€ ์กฐ๊ฐ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๋„๋ก ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์„ ์ฒ˜๋ฆฌ์— ํ•ด๋‹นํ•˜๊ณ  ์กฐ๊ฐ ๋ชจ์Œ์€ ์กฐ๊ฐ์ด ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์ž‘์€ ์กฐ๊ฐ๋“ค์„ ๋ชจ์•„์„œ ํ•˜๋‚˜์˜ ํฐ ๋ฉ์–ด๋ฆฌ๋กœ ๋งŒ๋“œ๋Š” ์ž‘์—…์œผ๋กœ ํ›„์ฒ˜๋ฆฌ์— ํ•ด๋‹นํ•œ๋‹ค.
 
๋ฉ”๋ชจ๋ฆฌ ๋ฐฐ์น˜ ๋ฐฉ์‹
๋Œ€ํ‘œ์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ๋ฐฐ์น˜ ๋ฐฉ์‹์œผ๋กœ๋Š” ์ตœ์ดˆ ๋ฐฐ์น˜(First Fit), ์ตœ์  ๋ฐฐ์น˜(Best Fit), ์ตœ์•… ๋ฐฐ์น˜(Worst Fit)๊ฐ€ ์žˆ๋‹ค.

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

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

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

 
์กฐ๊ฐ ๋ชจ์Œ
์„œ๋กœ ๋–จ์–ด์ ธ ์žˆ๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋นˆ ๊ณต๊ฐ„์„ ํ•ฉ์น˜๋Š” ์ž‘์—…์œผ๋กœ, ๋ฉ”๋ชจ๋ฆฌ ํ†ตํ•ฉ์ด๋ผ ๋ถ€๋ฅด๊ธฐ๋„ ํ•œ๋‹ค.
 

 
์กฐ๊ฐ ๋ชจ์Œ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ง„ํ–‰๋œ๋‹ค. ๋จผ์ € ์กฐ๊ฐ ๋ชจ์Œ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ด๋™ํ•  ํ”„๋กœ์„ธ์Šค์˜ ๋™์ž‘์„ ๋ฉˆ์ถ”๊ณ  ํ•ด๋‹น ํ”„๋กœ์„ธ์Šค์˜ ๋…ผ๋ฆฌ ์ฃผ์†Œ ๊ฐ’์„ ๋ฐ”๊ฟ” ์ ๋‹นํ•œ ์œ„์น˜๋กœ ์ด๋™์‹œํ‚ค๊ณ  ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•œ๋‹ค. ์œ„์˜ ๊ทธ๋ฆผ์„ ์˜ˆ๋กœ ๋“ค๋ฉด ํ”„๋กœ์„ธ์Šค C์™€ E๊ฐ€ ๋™์ž‘์„ ๋ฉˆ์ถ”๊ณ  ์ ๋‹นํ•œ ์œ„์น˜๋กœ ์ด๋™๋  ๊ฒƒ์ด๋‹ค. ๋‹น์—ฐํžˆ ํ•ด์•ผ ํ•  ์ผ์ด ๋งŽ๊ธฐ ๋•Œ๋ฌธ์— ๋งŽ์€ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฐ๋‹ค๋Š” ๋‹จ์ ์ด ์กด์žฌํ•œ๋‹ค.
 
์ฐธ๊ณ ๋กœ ํ•˜๋“œ๋””์Šคํฌ์™€ ๊ฐ™์€ ์ €์žฅ์žฅ์น˜์—์„œ๋„ ์™ธ๋ถ€ ๋‹จํŽธํ™”๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ•˜๋“œ๋””์Šคํฌ๋„ ์„ฑ๋Šฅ์„ ์œ ์ง€ํ•˜๋ ค๋ฉด ์ฃผ๊ธฐ์ ์œผ๋กœ ์กฐ๊ฐ ๋ชจ์Œ์„ ์‹คํ–‰ํ•ด์•ผ ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ๋‹จํŽธํ™”๋กœ ์ธํ•œ ์„ฑ๋Šฅ ์ €ํ•˜๊ฐ€ ๋˜์ง€ ์•Š๋Š” SSD๊ฐ€ ๋Œ€์ค‘ํ™”๋œ ์˜ค๋Š˜๋‚ ์—๋Š” ์ €์žฅ์žฅ์น˜์— ๋Œ€ํ•œ ์กฐ๊ฐ ๋ชจ์Œ์˜ ์ค‘์š”์„ฑ์ด ๋–จ์–ด์กŒ๋‹ค.
 
 

๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹

๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹์€ ํ”„๋กœ์„ธ์Šค์˜ ํฌ๊ธฐ์™€ ์ƒ๊ด€์—†์ด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๊ฐ™์€ ํฌ๊ธฐ๋กœ ๋‚˜๋ˆ„๋Š” ๋ฐฉ์‹์ด๋‹ค. ํ”„๋กœ์„ธ์Šค์˜ ํฌ๊ธฐ์— ์ƒ๊ด€์—†์ด ๊ฐ™์€ ํฌ๊ธฐ๋กœ ๋‚˜๋ˆ„๊ธฐ ๋•Œ๋ฌธ์— ํฐ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ์˜ค๋ฉด ์—ฌ๋Ÿฌ ์กฐ๊ฐ์œผ๋กœ ๋‚˜๋‰˜์–ด ๋ฐฐ์น˜๋œ๋‹ค. ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ๋กœ ๋‚˜๋‰˜์–ด ๋ฐฐ์น˜๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„์—ฐ์† ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น(noncontiguous memory allocation), ๋˜๋Š” ํŽ˜์ด์ง•(Paging) ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์ด๋ผ๊ณ  ํ•œ๋‹ค.
 
๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ผ์ •ํ•œ ํฌ๊ธฐ๋กœ ๋‚˜๋ˆ„๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”๋ชจ๋ฆฌ ํ†ตํ•ฉ ๊ฐ™์€ ๋ถ€๊ฐ€์ ์ธ ์ž‘์—…์„ ํ•  ํ•„์š”๊ฐ€ ์—†์–ด ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๊ฐ€ ํŽธํ•˜๋‹ค๋Š” ์žฅ์ ์ด ์กด์žฌํ•œ๋‹ค. ํ•˜์ง€๋งŒ, ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์—ฌ๋Ÿฌ ๊ณณ์œผ๋กœ ๋‚˜๋‰  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋‹จ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฒ„๋ ˆ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ”„๋กœ์„ธ์Šค๊ฐ€ ์—ฌ๋Ÿฌ ๊ณณ์— ๋‚˜๋‰˜์–ด ๋ฐฐ์น˜๋˜๊ฑฐ๋‚˜ ์ผ๋ถ€๋งŒ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๊ณ  ๋‚˜๋จธ์ง€๋Š” ์Šค์™‘ ์˜์—ญ์— ์žˆ์–ด๋„ ์‹คํ–‰์—๋Š” ๋ฌธ์ œ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ€๋ณ€ ๋ถ„ํ•  ๋ฐฉ์‹๋ณด๋‹ค ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ์ธก๋ฉด์—์„œ ์œ ๋ฆฌํ•˜๋‹ค. ๋”ฐ๋ผ์„œ, ํ˜„๋Œ€ ์šด์˜์ฒด์ œ์—์„œ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹์„ ์ด์šฉํ•œ๋‹ค.
 
๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹๋„ ์ผ์ •ํ•˜๊ฒŒ ๋‚˜๋‰œ ๋ฉ”๋ชจ๋ฆฌ์˜ ํฌ๊ธฐ๋ณด๋‹ค ์ž‘์€ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฐฐ์น˜๋  ๊ฒฝ์šฐ ๋‚ญ๋น„๋˜๋Š” ๊ณต๊ฐ„์ด ์ƒ๊ธด๋‹ค๋Š” ๋‹จ์ ์ด ์กด์žฌํ•œ๋‹ค. ์ด์ฒ˜๋Ÿผ ๊ฐ ๋ฉ”๋ชจ๋ฆฌ ์กฐ๊ฐ์— ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐฐ์น˜ํ•˜๊ณ  ๊ณต๊ฐ„์ด ๋‚จ๋Š” ๊ฒƒ์„ ๋‚ด๋ถ€ ๋‹จํŽธํ™”(Internal Fragmentation)์ด๋ผ๊ณ  ํ•œ๋‹ค. ์™ธ๋ถ€ ๋‹จํŽธํ™”๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์กฐ๊ฐ ๋ชจ์Œ์„ ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ํ›„์ฒ˜๋ฆฌ๋ฅผ ํ•˜๊ฑฐ๋‚˜ ๋‚จ๋Š” ๊ณต๊ฐ„์„ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค์— ๋ฐฐ์ •ํ•  ์ˆ˜๋„ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹์—์„œ๋Š” ๋‚ด๋ถ€ ๋‹จํŽธํ™”๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์–ด๋–ค ํฌ๊ธฐ๋กœ ๋‚˜๋ˆŒ์ง€ ์‹ ์ค‘ํ•˜๊ฒŒ ๊ฒฐ์ •ํ•ด์•ผ ํ•œ๋‹ค.
 

 

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

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

์ถœ์ฒ˜) https://www.youtube.com/watch?v=1pCC6pPAtio

 
ํšจ์œจ์ ์ธ ๊ณต๊ฐ„ ๊ด€๋ฆฌ ์ธก๋ฉด์—์„œ ๋ณด๋ฉด ๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹๊ณผ ๋ฒ„๋”” ์‹œ์Šคํ…œ์€ ๋น„์Šทํ•œ ์ˆ˜์ค€์ด๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹์ด ํ›จ์”ฌ ๋‹จ์ˆœํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฒ„๋”” ์‹œ์Šคํ…œ๋ณด๋‹ค ๊ณ ์ • ๋ถ„ํ•  ๋ฐฉ์‹์„ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค.

๋Œ“๊ธ€