๐Ÿ“š STUDY

240306 CS ์Šคํ„ฐ๋”” - ์šด์˜์ฒด์ œ ์งˆ๋ฌธ ๋ชจ์Œ2

ming412 2024. 3. 5. 20:29

Q1. ๋™๊ธฐํ™”๊ฐ€ ๋ฌด์—‡์ธ๊ฐ€์š”

์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋ฉด, ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๋“ค์ด ํ˜‘๋ ฅํ•˜๋ฉฐ ์‹คํ–‰๋œ๋‹ค.

ํ”„๋กœ์„ธ์Šค ๋™๊ธฐํ™”๋ž€, ์ด๋Ÿฐ ํ”„๋กœ์„ธ์Šค๋“ค ์‚ฌ์ด์˜ ์ˆ˜ํ–‰ ์‹œ๊ธฐ๋ฅผ ๋งž์ถ”๋Š” ๊ฒƒ.

(ํ”„๋กœ์„ธ์Šค ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์Šค๋ ˆ๋“œ๋„ ๋™๊ธฐํ™” ๋Œ€์ƒ์ด๋‹ค.)

 

ํ”„๋กœ์„ธ์Šค๋“ค ์‚ฌ์ด์˜ ์ˆ˜ํ–‰ ์‹œ๊ธฐ๋ฅผ ๋งž์ถ˜๋‹ค๋Š” ๊ฒƒ์€ ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

1) ์‹คํ–‰ ์ˆœ์„œ ์ œ์–ด : ํ”„๋กœ์„ธ์Šค๋ฅผ ์˜ฌ๋ฐ”๋ฅธ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰ํ•˜๊ธฐ

2) ์ƒํ˜ธ ๋ฐฐ์ œ : ๋™์‹œ์— ์ ‘๊ทผํ•ด์„œ๋Š” ์•ˆ๋˜๋Š” ์ž์›์— ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๋งŒ ์ ‘๊ทผํ•˜๊ฒŒ ํ•˜๊ธฐ 

 

Q2. ๋™๊ธฐํ™”๊ฐ€ ์™œ ํ•„์š”ํ•œ๊ฐ€์š”? (ํ”„๋กœ์„ธ์Šค๋ฅผ ๋™๊ธฐํ™”ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋“ค)

๋™๊ธฐํ™”์˜ ๋ชฉ์ ์€ ํฌ๊ฒŒ 1. ์‹คํ–‰ ์ˆœ์„œ ์ œ์–ด, 2. ์ƒํ˜ธ ๋ฐฐ์ œ๋ผ๊ณ  ํ–ˆ๋‹ค.

๋™๊ธฐํ™”ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋“ค๋กœ ๋™๊ธฐํ™”๊ฐ€ ํ•„์š”ํ•œ ์ด์œ ๋ฅผ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค.

 

์‹คํ–‰ ์ˆœ์„œ๋ฅผ ์ œ์–ดํ•˜์ง€ ์•Š์œผ๋ฉด, ์“ฐ๊ธฐ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํ–‰๋˜๊ธฐ ์ „์— ์ฝ๊ธฐ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํ–‰๋˜์–ด ๋ณ€๊ฒฝ๋œ ๊ฐ’์„ ์ฝ์–ด์˜ค์ง€ ๋ชปํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋˜ ๋‹ค๋ฅธ ์˜ˆ์‹œ๋กœ ํ”„๋กœ์„ธ์Šค A๊ฐ€ ์ž”์•ก์— 2๋งŒ์›์„ ๋”ํ•˜๊ณ , ํ”„๋กœ์„ธ์Šค B๊ฐ€ ์ž”์•ก์— 5๋งŒ์›์„ ๋”ํ•œ๋‹ค๊ณ  ํ•  ๋•Œ, ํ”„๋กœ์„ธ์Šค A๊ฐ€ ๋๋‚˜๊ธฐ๋„ ์ „์— ํ”„๋กœ์„ธ์Šค B๊ฐ€ '์ž”์•ก'์ด๋ผ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๋Š”๋‹ค๋ฉด, ์ตœ์ข…์ ์œผ๋กœ 5๋งŒ์›๋งŒ ๋”ํ•ด์ ธ ์žˆ์„ ๊ฒƒ์ด๋‹ค.

 

์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋™๊ธฐํ™”๊ฐ€ ํ•„์š”ํ•˜๋‹ค. 

 

Q3. ์ƒ์‚ฐ์ž์™€ ์†Œ๋น„์ž ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ธ๊ฐ€์š”

10์ด๋ผ๋Š” ์ดํ•ฉ์ด ์žˆ์„ ๋•Œ, ์ƒ์‚ฐ์ž๋Š” 10์—์„œ 1์„ ๋”ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์†Œ๋น„์ž๋Š” 10์—์„œ 1์„ ๋นผ๋Š” ํ”„๋กœ์„ธ์Šค๋ผ๊ณ  ๊ฐ€์ •ํ•œ๋‹ค. ์ด ์ƒํ™ฉ์—์„œ ์ƒ์‚ฐ์ž๋ฅผ 10๋งŒ๋ฒˆ, ์†Œ๋น„์ž๋ฅผ 10๋งŒ๋ฒˆ ๋™์‹œ์— ์ˆ˜ํ–‰ํ•œ๋‹ค๊ณ  ํ•˜์ž.

์‹คํ–‰ ๊ฒฐ๊ณผ, ๋นผ๊ณ  ๋”ํ•˜๋Š” ๊ฒƒ์„ ๋ฐ˜๋ณตํ•˜๋‹ˆ ์ดํ•ฉ์€ ๊ทธ๋Œ€๋กœ 10์ผ๊ฒƒ์„ ์˜ˆ์ƒํ•˜์ง€๋งŒ.. ์•„๋‹ˆ๋‹ค.

 

์ƒ์‚ฐ์ž์™€ ์†Œ๋น„์ž๋Š” '์ดํ•ฉ'์ด๋ผ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋™์‹œ์— ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ์†Œ๋น„์ž๊ฐ€ ์ƒ์‚ฐ์ž์˜ ์ž‘์—…์ด ๋๋‚˜๊ธฐ ์ „์— ์ดํ•ฉ์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜, ์ƒ์‚ฐ์ž๊ฐ€ ์†Œ๋น„์ž์˜ ์ž‘์—…์ด ๋๋‚˜๊ธฐ ์ „์— ์ดํ•ฉ์„ ์ˆ˜์ •ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์—‰๋šฑํ•œ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜จ๋‹ค.

 

์ด๋Š” ๊ณต์œ  ์ž์›์— ๋‘ ๊ฐœ ์ด์ƒ์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋™์‹œ์— ์ ‘๊ทผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.

 

Q4. ๊ณต์œ  ์ž์›๊ณผ ์ž„๊ณ„ ๊ตฌ์—ญ ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ธ๊ฐ€์š”

๊ณต์œ  ์ž์› : ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๋“ค์ด ๊ณต๋™์œผ๋กœ ์ด์šฉํ•˜๋Š” ์ž์›. (์ „์—ญ๋ณ€์ˆ˜๊ฐ€ ๋  ์ˆ˜๋„ ์žˆ๊ณ , ํŒŒ์ผ์ด ๋  ์ˆ˜๋„ ์žˆ๋‹ค.)

์ž„๊ณ„ ๊ตฌ์—ญ : ๊ณต์œ ์ž์›์— ์ ‘๊ทผํ•˜๋Š” ์ฝ”๋“œ ์ค‘ ๋™์‹œ์— ์‹คํ–‰ํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ์ฝ”๋“œ ์˜์—ญ.

 

Q5. ์ž„๊ณ„ ๊ตฌ์—ญ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์„ธ ๊ฐ€์ง€ ์›์น™

1) ์ƒํ˜ธ ๋ฐฐ์ œ (mutual exclusion) : ํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž„๊ณ„ ๊ตฌ์—ญ์— ์ง„์ž…ํ–ˆ๋‹ค๋ฉด ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๋Š” ๊ธฐ๋‹ค๋ ค์•ผ ํ•œ๋‹ค

2) progress : ์ž„๊ณ„ ๊ตฌ์—ญ์— ์–ด๋–ค ํ”„๋กœ์„ธ์Šค๋„ ์ง„์ž…ํ•˜์ง€ ์•Š์•˜๋‹ค๋ฉด, ์ง„์ž…ํ•˜๊ณ ์ž ํ•˜๋Š” ์–ด๋–ค ํ”„๋กœ์„ธ์Šค๋Š” ์ง„์ž…ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค

3) ์œ ํ•œ ๋Œ€๊ธฐ (bounded waiting) : ์ž„๊ณ„ ๊ตฌ์—ญ์— ์ง„์ž…ํ•˜๊ธธ ์›ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์žˆ๋‹ค๋ฉด, ์–ธ์  ๊ฐ€๋Š” ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค (๋ฌดํ•œ์ • ๋Œ€๊ธฐํ•ด์„œ๋Š” ์•ˆ๋œ๋‹ค)

 

Q6. ์ž„๊ณ„ ๊ตฌ์—ญ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋™๊ธฐํ™” ๊ธฐ๋ฒ•

1) ๋ฎคํ…์Šค ๋ฝ : ๋™์‹œ์— ์ ‘๊ทผํ•ด์„œ๋Š” ์•ˆ๋˜๋Š” ์ž์›์— ๋™์‹œ์— ์ ‘๊ทผํ•˜์ง€ ์•Š๋„๋ก ๋งŒ๋“œ๋Š” ๋„๊ตฌ. ์ƒํ˜ธ๋ฐฐ์ œ๋ฅผ ์œ„ํ•œ ๋™๊ธฐํ™” ๋„๊ตฌ.

 

์ž„๊ณ„ ๊ตฌ์—ญ์— ์ง„์ž…ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๋Š” '๋‚ด๊ฐ€ ์ง€๊ธˆ ์ž„๊ณ„ ๊ตฌ์—ญ์— ์žˆ์Œ'์„ ์•Œ๋ฆฌ๊ธฐ ์œ„ํ•ด ๋ฎคํ…์Šค ๋ฝ์„ ์ด์šฉํ•ด ์ž๋ฌผ์‡ ๋ฅผ ๊ฑธ์–ด๋‘˜ ์ˆ˜ ์žˆ๋‹ค. acquire() ๊ณผ release() ์ด์šฉ. -> acquire() ํ•จ์ˆ˜๋Š” ์ž„๊ณ„ ๊ตฌ์—ญ์ด ์ž ๊ฒจ์žˆ์„ ๋•Œ, ์ž„๊ณ„ ๊ตฌ์—ญ์ด ์—ด๋ฆด ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต์ ์œผ๋กœ ํ™•์ธํ•œ๋‹ค. (busy wait)

 

2) ์„ธ๋งˆํฌ์–ด : ๋ฎคํ…์Šค ๋ฝ๊ณผ ๋น„์Šทํ•˜์ง€๋งŒ, ๋” ์ผ๋ฐ˜ํ™”๋œ ๋ฐฉ์‹์˜ ๋™๊ธฐํ™” ๋„๊ตฌ. ๋ฎคํ…์Šค ๋ฝ์ด ํ•˜๋‚˜์˜ ๊ณต์œ  ์ž์›์„ ๋ณดํ˜ธํ•˜๋Š” ๋„๊ตฌ๋ผ๋ฉด, ์„ธ๋งˆํฌ์–ด๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ณต์œ  ์ž์›์„ ๋ณดํ˜ธํ•˜๋Š” ๋„๊ตฌ.

 

์„ธ๋งˆํฌ์–ด๋Š” ์ด์ง„ ์„ธ๋งˆํฌ์–ด(binary semaphore)์™€ ์นด์šดํŒ… ์„ธ๋งˆํฌ์–ด(counting semaphore)๊ฐ€ ์žˆ๋‹ค. ์ด์ง„ ์„ธ๋งˆํฌ์–ด๋Š” ๋ฎคํ…์Šค ๋ฝ๊ณผ ๋น„์Šทํ•œ ๊ฐœ๋…์ด๋ฏ€๋กœ ์นด์šดํŒ… ์„ธ๋งˆํฌ์–ด๋ฅผ ๋ณด์ž.

 

<์„ธ๋งˆํฌ์–ด์˜ ๊ตฌ์„ฑ>

- ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ณต์œ  ์ž์›์˜ ๊ฐœ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ „์—ญ ๋ณ€์ˆ˜ S

- ์ž„๊ณ„ ๊ตฌ์—ญ์— ๋“ค์–ด๊ฐ€๋„ ์ข‹์€์ง€, ๊ธฐ๋‹ค๋ ค์•ผ ํ•  ์ง€๋ฅผ ์•Œ๋ ค์ฃผ๋Š” wait() ํ•จ

- ์ž„๊ณ„ ๊ตฌ์—ญ์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ํ”„๋กœ์„ธ์Šค์—๊ฒŒ '์ด์ œ ๊ฐ€๋„ ์ข‹๋‹ค'๊ณ  ์‹ ํ˜ธ๋ฅผ ์ฃผ๋Š” signal() ํ•จ์ˆ˜

 

3) ๋ชจ๋‹ˆํ„ฐ : ์„ธ๋งˆํฌ์–ด์— ๋น„ํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์šฉํ•˜๊ธฐ ํŽธ๋ฆฌํ•œ ๋™๊ธฐํ™” ๋„๊ตฌ. ์„ธ๋งˆํฌ์–ด๋Š” ๋งค๋ฒˆ ์ž„๊ณ„ ๊ตฌ์—ญ ์•ž๋’ค๋กœ ์ผ์ผ์ด wait๊ณผ signal ํ•จ์ˆ˜๋ฅผ ๋ช…์‹œํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์ด๋Š” ๊ต‰์žฅํžˆ ๋ฒˆ๊ฑฐ๋กญ๊ณ , wait -> signal ์ˆœ์„œ๋ฅผ ์ง€ํ‚ค์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, ํ”„๋กœ๊ทธ๋ž˜๋จธ์˜ ์‹ค์ˆ˜ ๋ฐœ์ƒ ํ™•๋ฅ ์ด ๋†’๋‹ค. ๋ชจ๋‹ˆํ„ฐ๋Š” ์ด๋ฅผ ๊ฐœ์„ ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ, ํ(queue)๋ฅผ ์ด์šฉํ•ด ๊ณต์œ  ์ž์›์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ํ†ต๋กœ๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค.

 

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

 

๋ชจ๋‹ˆํ„ฐ

 

Q7. ๊ต์ฐฉ์ƒํƒœ๋ž€ ๋ฌด์—‡์ธ์ง€ 

์‹์‚ฌํ•˜๋Š” ์ฒ ํ•™์ž ๋ฌธ์ œ๋กœ ๊ต์ฐฉ์ƒํƒœ๋ฅผ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ๋‹ค. 

๋™๊ทธ๋ž€ ์›ํƒ์— ๋‹ค์„ฏ๋ช…์˜ ์ฒ ํ•™์ž๊ฐ€ ์•‰์•„์žˆ๊ณ , ์ฒ ํ•™์ž๋“ค ์•ž์—๋Š” ์Œ์‹๊ณผ ํฌํฌ๊ฐ€ ์žˆ๋‹ค.

๋‘ ๊ฐœ์˜ ํฌํฌ๋ฅผ ๋ชจ๋‘ ์ง‘์—ˆ์„ ๋•Œ ์Œ์‹์„ ๋จน์„ ์ˆ˜ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•  ๋•Œ, ๋ชจ๋“  ์ฒ ํ•™์ž๊ฐ€ ๋™์‹œ์— ํ•œ ํฌํฌ์”ฉ์„ ๋“ค๋ฉด ์•„๋ฌด๋„ ์‹์‚ฌ๋ฅผ ํ•  ์ˆ˜ ์—†๊ฒŒ ๋˜๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•œ๋‹ค. ๋ชจ๋“  ์ฒ ํ•™์ž๋Š” ๋‹ค๋ฅธ ์ฒ ํ•™์ž๊ฐ€ ํฌํฌ๋ฅผ ๋‚ด๋ ค๋†“์„ ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฐ๋‹ค.

 

์ด๋ ‡๊ฒŒ ์ผ์–ด๋‚˜์ง€ ์•Š์„ ์‚ฌ๊ฑด์„ ๊ธฐ๋‹ค๋ฆฌ๋ฉฐ ์ง„ํ–‰์ด ๋ฉˆ์ถ”์–ด๋ฒ„๋ฆฌ๋Š” ํ˜„์ƒ์„ ๊ต์ฐฉ ์ƒํƒœ๋ผ๊ณ  ํ•œ๋‹ค.

 

์‹์‚ฌํ•˜๋Š” ์ฒ ํ•™์ž ๋ฌธ์ œ์—์„œ, ์ฒ ํ•™์ž๋Š” ํ”„๋กœ์„ธ์Šค ํ˜น์€ ์Šค๋ ˆ๋“œ, ํฌํฌ๋ฅผ ์ž์›์œผ๋กœ ๋น—๋Œ€์–ด ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

 

Q8. ๊ต์ฐฉ์ƒํƒœ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€

- ๊ต์ฐฉ์ƒํƒœ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๋„ค ๊ฐ€์ง€ ์กฐ๊ฑด ์ค‘ ํ•˜๋‚˜๋ผ๋„ ํ•ด๊ฒฐํ•œ๋‹ค (์ ์œ , ๋Œ€๊ธฐ, ๋น„์„ ์ , ์›ํ˜• ๋Œ€๊ธฐ)

- ํšŒํ”ผํ•œ๋‹ค (Banker's algorithm : ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ์•ˆ์ „ํ•œ ์ƒํƒœ๋ฅผ ๋ฏธ๋ฆฌ ํŒ๋ณ„ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜) - ๋ฐ๋“œ๋ฝ์ด ๋ฐœ์ƒํ•˜๋Š” ์ƒํ™ฉ์ด ๋งค์šฐ ํฌ๋ฐ•ํ•œ๋ฐ, ๋งค๋ฒˆ ๋ฏธ๋ฆฌ ํŒ๋ณ„ํ•˜๋Š”๊ฑด ๋น„ํšจ์œจ์ ์ด๋‹ค.

- ๋ฌด์‹œ -> ๊ฐ€์žฅ ํ˜„์‹ค์ ์ธ ๋ฐฉ๋ฒ•

 

Q9. ์Šค์™€ํ•‘์ด ๋ฌด์—‡์ธ์ง€

๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•. ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌ๋œ ํ”„๋กœ์„ธ์Šค๋“ค ์ค‘ ํ˜„์žฌ ์‹คํ–‰๋˜์ง€ ์•Š๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ๋””์Šคํฌ๋กœ ์ซ’์•„๋‚ด๊ณ , ์‹คํ–‰ํ•  ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋“ค์—ฌ๋ณด๋‚ด๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•.

 

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

 

Q10. ์—ฐ์† ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ๊ธฐ๋ฒ•๊ณผ ์™ธ๋ถ€ ๋‹จํŽธํ™” ๋ฌธ์ œ

์—ฐ์† ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ๊ธฐ๋ฒ• : ๊ฐ๊ฐ์˜ ํ”„๋กœ์„ธ์Šค์— ์—ฐ์†์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ํ• ๋‹นํ•˜๋Š” ๋ฐฉ์‹.

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

 

Q11. ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์ธ ํŽ˜์ด์ง•์˜ ๊ฐœ๋…๊ณผ ์ž‘๋™์— ๋Œ€ํ•ด

๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ : ์‹คํ–‰ํ•˜๊ณ ์ž ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ผ๋ถ€๋งŒ ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌํ•˜์—ฌ ์‹ค์ œ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ๋ณด๋‹ค ๋” ํฐ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๊ธฐ์ˆ 

 

๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•์—๋Š” ํŽ˜์ด์ง•๊ณผ ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์ด ์žˆ์ง€๋งŒ, ํ˜„๋Œ€ ๋Œ€๋ถ€๋ถ„์˜ ์šด์˜์ฒด์ œ๊ฐ€ ํŽ˜์ด์ง• ๊ธฐ๋ฒ•์„ ๋‹ค๋ฃฌ๋‹ค.

+) ์™œ?

์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์€ ๊ณ ์ • ์‚ฌ์ด์ฆˆ๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ˆœ์ˆ˜ ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์„ ์“ฐ๋ ค๋ฉด best fit, worst fit ์„ ํ•ด์•ผํ•œ๋‹ค -> ๋ณต์žกํ•˜๋‹ค

์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜ ๋ฐฉ์‹ ๋Œ€์‹  ํŽ˜์ด์ง•์„ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ์จ ๋‚ด๋ถ€ ๋‹จํŽธํ™”๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค. (ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๊ธฐ๋„ ํ•œ๋‹ค!)

 

ํŽ˜์ด์ง• ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ๋ณด๋‹ค ํฐ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์™ธ๋ถ€ ๋‹จํŽธํ™” ๋ฌธ์ œ๋„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

์—ฐ์† ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ๋ฐฉ์‹์—์„œ ์™ธ๋ถ€ ๋‹จํŽธํ™”๊ฐ€ ์ƒ๊ธด ์ด์œ ๋Š” ๊ฐ๊ธฐ ๋‹ค๋ฅธ ํฌ๊ธฐ์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์— ์—ฐ์†์ ์œผ๋กœ ํ• ๋‹น ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด์—ˆ๋‹ค.

 

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

ํŽ˜์ด์ง•์€ ํ”„๋กœ์„ธ์Šค์˜ ๋…ผ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„์„ ํŽ˜์ด์ง€(page)๋ผ๋Š” ์ผ์ •ํ•œ ๋‹จ์œ„๋กœ ์ž๋ฅด๊ณ , ๋ฉ”๋ชจ๋ฆฌ ๋ฌผ๋ฆฌ ์ฃผ์†Œ ๊ณต๊ฐ„์„ ํ”„๋ ˆ์ž„(frame)์ด๋ผ๋Š” ํŽ˜์ด์ง€์™€ ๋™์ผํ•œ ํฌ๊ธฐ์˜ ๋‹จ์œ„๋กœ ์ž๋ฅธ ๋’ค, ํŽ˜์ด์ง€๋ฅผ ํ”„๋ ˆ์ž„์— ํ• ๋‹นํ•˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค.

 

ํŽ˜์ด์ง•

 

ํŽ˜์ด์ง•์—์„œ๋„ ์Šค์™€ํ•‘์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 

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

 

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

 

ํŽ˜์ด์ง•์—์„œ ์Šค์™€ํ•‘

 

ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์— ๋ถˆ์—ฐ์†์ ์œผ๋กœ ๋ฐฐ์น˜๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— CPU ์ž…์žฅ์—์„œ ์ด๋ฅผ ์ˆœ์ฐจ์ ์œผ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์—†๋‹ค.

์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด "ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”" ๊ฐœ๋…์ด ๋“ฑ์žฅํ•œ๋‹ค. ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋น„๋ก (์‹ค์ œ ๋ฉ”๋ชจ๋ฆฌ ๋‚ด์˜ ์ฃผ์†Œ์ธ) ๋ฌผ๋ฆฌ ์ฃผ์†Œ์— ๋ถˆ์—ฐ์†์ ์œผ๋กœ ๋ฐฐ์น˜๋˜๋”๋ผ๋„ (CPU๊ฐ€ ๋ฐ”๋ผ๋„๋Š” ์ฃผ์†Œ์ธ) ๋…ผ๋ฆฌ ์ฃผ์†Œ์—๋Š” ์—ฐ์†์ ์œผ๋กœ ๋ฐฐ์น˜๋˜๋„๋ก ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์„ ์ด์šฉํ•œ๋‹ค.

 

ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”

 

Q12. ๋‚ด๋ถ€๋‹จํŽธํ™”๋ž€?

ํŽ˜์ด์ง• ๋ฐฉ์‹์—์„œ, ํ”„๋กœ์„ธ์Šค๋ฅผ ์ผ์ •ํ•œ ํŽ˜์ด์ง€ ํฌ๊ธฐ๋กœ ์ž๋ฅธ๋‹ค๊ณ  ํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ชจ๋“  ํ”„๋กœ์„ธ์Šค์˜ ํฌ๊ธฐ๊ฐ€ ํŽ˜์ด์ง€์˜ ๋ฐฐ์ˆ˜๋Š” ์•„๋‹ˆ๋‹ค. ํŽ˜์ด์ง€ ๋‚ด์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋‚ญ๋น„๋ฅผ ๋‚ด๋ถ€ ๋‹จํŽธํ™”๋ผ ํ•œ๋‹ค.

 

ํŽ˜์ด์ง•์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ผ์ •ํ•œ ๋‹จ์œ„๋กœ ์ž˜๋ผ ๋ถˆ์—ฐ์†์ ์œผ๋กœ ํ• ๋‹นํ•จ์œผ๋กœ์จ ์™ธ๋ถ€ ๋‹จํŽธํ™” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์ง€๋งŒ, ๋‚ด๋ถ€ ๋‹จํŽธํ™” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•œ๋‹ค.

 

Q12. ์š”๊ตฌ ํŽ˜์ด์ง•์˜ ๊ฐœ๋…๊ณผ ํŽ˜์ด์ง€ ๊ต์ฒด ์•Œ๊ณ ๋ฆฌ์ฆ˜

์š”๊ตฌ ํŽ˜์ด์ง• : ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌํ•  ๋•Œ, ์ฒ˜์Œ๋ถ€ํ„ฐ ๋ชจ๋“  ํŽ˜์ด์ง€๋ฅผ ์ ์žฌํ•˜์ง€ ์•Š๊ณ  ํ•„์š”ํ•œ ํŽ˜์ด์ง€๋งŒ์„ ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌํ•˜๋Š” ๊ธฐ๋ฒ• (๋ง๊ทธ๋Œ€๋กœ, ์‹คํ–‰์— ์š”๊ตฌ๋˜๋Š” ํŽ˜์ด์ง€๋งŒ ์ ์žฌ)

 

 

Q13. ์Šค๋ž˜์‹ฑ๊ณผ ๊ทธ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ํ”„๋ ˆ์ž„ ํ• ๋‹น์— ๋Œ€ํ•ด

์Šค๋ž˜์‹ฑ : ํŽ˜์ด์ง€ ํดํŠธ๊ฐ€ ์ž์ฃผ ๋ฐœ์ƒํ•˜์—ฌ CPU ์ด์šฉ๋ฅ ์ด ๊ธ‰๊ฒฉํ•˜๊ฒŒ ์ฆ๊ฐ€ํ•˜๋Š” ๊ฒƒ.

 

+) ์Šค๋ž˜์‹ฑ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•

1. ํŽ˜์ด์ง€ ๊ต์ฒด ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ž˜ ์„ค๊ณ„ํ•ด์•ผ ํ•œ๋‹ค. ?

2. ์›Œํ‚น์…‹ ์•Œ๊ณ ๋ฆฌ์ฆ˜ - ์บ์‹œ์˜ ์ง€์—ญ์„ฑ์„ ๊ณ ๋ คํ•ด์„œ ์œˆ๋„์šฐ ํฌ๊ธฐ๋งŒํผ ํ•œ๊บผ๋ฒˆ์— ๋„ฃ์—ˆ๋‹ค ๋นผ๋Š” ๊ฒƒ

 

Q14. ๋‚ด๋ถ€ ๋‹จํŽธํ™” ์™ธ๋ถ€ ๋‹จํŽธํ™”๊ฐ€ ๋ฌด์—‡์ธ์ง€์™€ ๊ฐ๊ฐ์˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๋‚ด๋ถ€๋‹จํŽธํ™”

- ??

- ์ฆ‰, ํ• ๋‹น๋ฐ›์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ

 

์™ธ๋ถ€๋‹จํŽธํ™”

- ??

- ์ฆ‰, ํ• ๋‹น๋ฐ›์ง€ ์•Š์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ

 

๋‚ด๋ถ€ ๋‹จํŽธํ™” ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• :

์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜

 

์™ธ๋ถ€ ๋‹จํŽธํ™” ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• :

ํŽ˜์ด์ง• ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ๋ณด๋‹ค ํฐ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์™ธ๋ถ€ ๋‹จํŽธํ™” ๋ฌธ์ œ๋„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

์—ฐ์† ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ๋ฐฉ์‹์—์„œ ์™ธ๋ถ€ ๋‹จํŽธํ™”๊ฐ€ ์ƒ๊ธด ์ด์œ ๋Š” ๊ฐ๊ธฐ ๋‹ค๋ฅธ ํฌ๊ธฐ์˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์— ์—ฐ์†์ ์œผ๋กœ ํ• ๋‹น ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์ด์—ˆ๋‹ค.

 

Q15. ์บ์‹œ์˜ ์ง€์—ญ์„ฑ์— ๋Œ€ํ•ด

- ์‹œ๊ฐ„ ์ง€์—ญ์„ฑ : ํ•œ ๋ฒˆ ์•ก์„ธ์Šค ๋œ ๋ฐ์ดํ„ฐ ๊ทผ์ฒ˜์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ์— ๋‹ค์‹œ ์ ‘๊ทผํ•  ํ™•๋ฅ ์ด ๋†’๋‹ค.

- ๊ณต๊ฐ„ ์ง€์—ญ์„ฑ : ๊ฐ€์žฅ ์ตœ๊ทผ์— ์‚ฌ์šฉ๋œ ๋ฐ์ดํ„ฐ๋“ค์„ ๋‹ค์‹œ ์‚ฌ์šฉํ•  ํ™•๋ฅ ์ด ๋†’๋‹ค.

+) ์‹œ๊ฐ„ ์ง€์—ญ์„ฑ ์‚ด๋ฆฌ๋Š” ๊ฒƒ : LRU

๊ณต๊ฐ„ ์ง€์—ญ์„ฑ ์‚ด๋ฆฌ๋Š” ๊ฒƒ : Prepaging (๋ฏธ๋ฆฌ ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ)

 

Q16. ๋ณด์•ˆ๊ณผ ๋ณดํ˜ธ์˜ ์ฐจ์ด์ 

๋ณด์•ˆ : (ํ•ดํ‚น ๋ฐฉ์–ด)

๋ณดํ˜ธ : ์ž์›์— ์ ‘๊ทผํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ์ œํ•œ (๊ถŒํ•œ ๊ด€๋ฆฌ)

 

Q17. MMU์˜ ์—ญํ• ?

๊ฐ€์ƒ ์ฃผ์†Œ๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์†Œ๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค.

+) ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•?

MMU๊ฐ€ ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์— ์ ‘๊ทผํ•ด์„œ ๋ฌผ๋ฆฌ์ฃผ์†Œ๋ฅผ ์ฐพ๋Š”๋‹ค. 

 

Q18. TLB๋ฅผ ์จ์•ผํ•˜๋Š” ์ด์œ ?

ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”๊ณผ ํŽ˜์ด์ง€๊ฐ€ ๋‘˜ ๋‹ค ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ์–ด์„œ ๋А๋ฆฌ๋‹ค.

-> ์บ์‹œ์— ์กด์žฌํ•˜๋Š” ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์ด TLB์ด๋‹ค.

 

Q19. ํŽ˜์ด์ง•๊ณผ ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์˜ ์ฐจ์ด?

ํŽ˜์ด์ง•์€ ๊ณ ์ •๊ธธ์ด, ์„ธ๊ทธ๋ฉ˜ํ…Œ์ด์…˜์€ ๊ฐ€๋ณ€๊ธธ์ด

ํŽ˜์ด์ง•์€ ๋‚ด๋ถ€๋‹จํŽธํ™”๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค. ํž™, ์Šคํƒ, ์ฝ”๋“œ๋ฅผ ๊ฐ๊ฐ .. ํ•˜๋Š”๊ฒŒ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๋ฐฉ์‹.

+) ๊ทธ๋Ÿผ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋ฉด ๋‹จํŽธํ™”๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋‚˜? ๋ฐœ์ƒํ•˜์ง€๋งŒ ๋‹จํŽธํ™”์˜ ์–‘์ด ์ ์–ด์ง„๋‹ค 

 

Q20. ์Šค๋ ˆ๋“œ๊ฐ„ PC(ํ”„๋กœ๊ทธ๋žจ ์นด์šดํ„ฐ) ๋ ˆ์ง€์Šคํ„ฐ๋Š” ์™œ ๋…๋ฆฝ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋‚˜?

 

Q21. ํŽ˜์ด์ง€ ํดํŠธ๊ฐ€ ์ผ์–ด๋‚  ๋•Œ ๋ฌด์Šจ์ผ์ด ์ผ์–ด๋‚ ๊นŒ?

TLB ํ™•์ธ

-> ์—†์œผ๋ฉด ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”

-> valid bit ์ฒดํฌํ•ด์„œ 0์ผ๋•Œ๊ฐ€ ํŽ˜์ด์ง€ ํดํŠธ(๋ฉ”๋ชจ๋ฆฌ์— ์—†๋Š” ๊ฒฝ์šฐ)์ด๋‹ค.

-> ํŽ˜์ด์ง€ ํดํŠธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ๋””์Šคํฌ์—์„œ ๊ฐ€์ ธ์˜จ๋‹ค

-> ๋ฐฑํ‚น์Šคํ† ์–ด์— ์žˆ๋Š” ํŽ˜์ด์ง€๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ฆฐ๋‹ค

-> ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”์— ์˜ฌ๋ผ์™”๋‹ค๊ณ  valid bit 1๋กœ ํ‘œ์‹œ

 

+) ์š”๊ตฌํŽ˜์ด์ง€์˜ ๋‹จ์ ? ํŽ˜์ด์ง€ ํดํŠธ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค. -> ํŽ˜์ด์ง€ ํดํŠธ ๊ฐœ๋…์œผ๋กœ ์ด์–ด์งˆ ์ˆ˜๋„,,,

 

Q22. ๋ฉ”๋ชจ๋ฆฌ ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ๋ถ„๋ฆฌํ•ด์•ผ ํ•˜๋Š” ์ด์œ ?

1. ์„ฑ๋Šฅ์ด ์ข‹์€ CPU๊ฐ€ ๋” ๋นจ๋ฆฌ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

2. ๊ทธ๋ฆฌ๊ณ  ์„ฑ๋Šฅ์ด ์ข‹์€๊ฑด ๋น„์‹ธ๋‹ค

3. ์ž์ฃผ ์“ฐ์ด๋Š” ๋ฐ์ดํ„ฐ๋Š” ๊ณ„์† ์ž์ฃผ ์“ฐ์ธ๋‹ค. ์ž์ฃผ ์“ฐ์ด๋Š” ๋ฐ์ดํ„ฐ๋Š” ์ „์ฒด ๋ฐ์ดํ„ฐ ์–‘์— ๋น„ํ•ด ์ž‘์€ ์–‘์ด๋‹ค

-> ์ปดํ“จํ„ฐ์˜ ๋น„์šฉ์„ ๋‚ฎ์ถ”๊ณ  ์†๋„๋ฅผ ๋†’์ด๊ธฐ ์œ„ํ•ด ๋ถ„๋ฆฌํ•œ๋‹ค.

 

+) ๋ฉ”๋ชจ๋ฆฌ์˜ ๊ณ„์ธต ๊ตฌ์กฐ

๋ ˆ์ง€์Šค

์บ์‹œ (L1, L2, L3)

๋ฉ”๋ชจ๋ฆฌ

ํ•˜๋“œ๋””์Šคํฌ

 

Q23. 64๋น„ํŠธ ์šด์˜์ฒด์ œ์—์„œ 32๋น„ํŠธ ํ”„๋กœ๊ทธ๋žจ์ด ๋Œ์•„๊ฐˆ๊นŒ?

 

Q24. JVM์˜ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜์— ๋Œ€ํ•ด

GC๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ํšŒ์ˆ˜๋ฅผ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ Memory Leak(๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜)๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ  ์ง€์†๋˜๋ฉด OOM(Out of Memory)๋‚˜ Can not allocate memory๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค

→ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๊ทธ๋Œ€๋กœ ๋ฉˆ์ถ”๊ฑฐ๋‚˜ ์ข…๋ฃŒ๋˜๋ฏ€๋กœ ๋Œ€์‘ํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค

 

์ฐธ์กฐ ์œ ์ง€์— ์˜ํ•œ ๋ฉ”๋ชจ๋ฆฌ ๋ฆญ

์ž๋ฐ”์—์„œ ๋ฉ”๋ชจ๋ฆฌ๋Š” ์ตœ์ข…์ ์œผ๋กœ Old Generation์—์„œ ํšŒ์ˆ˜๋˜๋Š”๋ฐ, ์ด ๋•Œ ์•„์ง ์ฐธ์กฐ์œ ์ง€์— ๋Œ€ํ•ด ๊ฐ์ฒด๊ฐ€ ์‚ด์•„์žˆ๋Š” ๊ฒฝ์šฐ ๊ฐ์ฒด๋Š” ๊ณ„์†ํ•ด์„œ Old ์˜์—ญ์— ์Œ“์ด๊ณ  ์ด๋ฅผ ํšŒ์ˆ˜ํ•˜๊ธฐ ์œ„ํ•ด Major GC๊ฐ€ ๋ฐ˜๋ณต๋˜๋‹ค ๊ฒฐ๊ตญ OOM ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค

์ฐธ์กฐ์œ ์ง€์— ์˜ํ•œ ๋ฉ”๋ชจ๋ฆฌ ๋ฆญ์„ ํŒŒ์•…ํ•˜๊ณ  ํ•ด๊ฒฐํ•˜๋Š” ๊ฒƒ์ด ํ•„์š”

 

๋ฉ”๋ชจ๋ฆฌ ๋ฆญ ํ™•์ธ

๊ฐ์ฒด ์ค‘ ์–ด๋–ค ๊ฐ์ฒด๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ๋ฆญ์„ ๋ฐœ์ƒ์‹œํ‚ค๋Š”์ง€ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์–ด์•ผํ•˜๋Š”๋ฐ,

์ผ๋ฐ˜์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ์ ์œ ์œจ๋กœ๋Š” ํŒŒ์•…ํ•  ์ˆ˜๋Š” ์—†์–ด Heap-Dump๋ผ๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•œ๋‹ค.

 

https://velog.io/@agugu95/JVM-Memory-Leak-๋ฉ”๋ชจ๋ฆฌ-๋ˆ„์ˆ˜

 

JVM Memory Leak, ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜

๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜์™€ ๊ด€๋ฆฌ

velog.io

 

+) Heap-Dump ๋– ๋ณธ์  ์žˆ๋‚˜์š”?

https://juneyr.dev/jvm-heap-dump

 

๋‚˜์˜ ์ฒซ JVM heap dump ๋œจ๊ธฐ

์„œ๋ก  ์„ฑ๋Šฅํ…Œ์ŠคํŠธ๋ฅผ ๊ณ„์†ํ•˜๊ณ  ์žˆ๋‹ค. ๋ถ€ํ•˜๋ฅผ ๋งŽ์ด ์ฃผ๊ธด ํ–ˆ์ง€๋งŒ, ๋งค์šฐ ๋น ๋ฅธ ์‹œ๊ฐ„ ๋‚ด์— full GC ๊ฐ€ ์ผ์–ด๋‚˜๋Š”๊ฒŒ ์š”์ƒ์Šค๋Ÿฝ๋‹ค, ์‹ถ์–ด์„œ heap dump ๋ฅผ ๋– ๋ด์•ผ๊ฒ ๋‹ค๋Š” ๊ฒฐ์‹ฌ์„ ํ–ˆ๋‹ค. heap dump๋ฅผ ์•Œ๊ธฐ ์ „์— jvm์˜ ๊ตฌ์กฐ

juneyr.dev

 

Q25. ๋ ˆ์ด๋“œ๋ž€?

๋ฐ์ดํ„ฐ ์†์‹ค์„ ๋Œ€๋น„ํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋””์Šคํฌ์— ๋‚˜๋ˆ ์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์“ฐ๋Š” ๋ฐฉ์‹(์ •์ฑ…)

 

RAID 0 - ์ŠคํŠธ๋ผ์ดํ•‘ - ๋ณ‘๋ ฌ๋กœ ์—ฐ๊ฒฐ๋œ ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋””์Šคํฌ์— ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜๋ˆ ์„œ ์ž…์ถœ๋ ฅ

RAID 1 - ๋ฏธ๋Ÿฌ๋ง - ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ ์ˆœ์ˆ˜ ๋ณต์ œ๋จ

 

+) 5,6๋ถ€ํ„ฐ ํŒจ๋ฆฌํ‹ฐ ๋น„ํŠธ๊ฐ€ ๋“ค์–ด๊ฐ„๋‹ค (5๋ฅผ ๊ฐ€์žฅ ๋งŽ์ด ์“ด๋‹ค)

(๋ ˆ์ด๋“œ 0,4,5,6 ์„ธ ๊ฐœ๋งŒ ์“ฐ๊ณ  1,2,3์€ ๋„ํƒœ๋จ)