๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
โญ Group_Study/Operating System

[5์ฃผ์ฐจ] Memory Management - Variable Partition Multi-programming

by ํฌ์ŠคํŠธ์‰์ดํฌ 2023. 1. 4.

Memory Management - Variable Partition Multi-programming

Multi-Programming (Variable Partition Multiprogramming)

โœ” ์ดˆ๊ธฐ์—๋Š” ์ „์ฒด๊ฐ€ ํ•˜๋‚˜์˜ ์˜์—ญ
โœ” ํ”„๋กœ์„ธ์Šค๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ณผ์ •์—์„œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์ด ๋™์ ์œผ๋กœ ๋ถ„ํ• 

โœ” No internal fragmentation

VPM Example

โœ” Memory space: 120 MB

1. ์ดˆ๊ธฐ์ƒํƒœ

2. ํ”„๋กœ์„ธ์Šค A(20MB) ์ ์žฌ

3. ํ”„๋กœ์„ธ์Šค B(10MB) ์ ์žฌ

4. ํ”„๋กœ์„ธ์Šค C(25MB) ์ ์žฌ

5. ํ”„๋กœ์„ธ์Šค D(20MB) ์ ์žฌ

6. ํ”„๋กœ์„ธ์Šค B๊ฐ€ ์ฃผ๊ธฐ์–ต์žฅ์น˜ ๋ฐ˜๋‚ฉ

7. ํ”„๋กœ์„ธ์Šค E(15MB) ์ ์žฌ

8. ํ”„๋กœ์„ธ์Šค D๊ฐ€ ์ฃผ๊ธฐ์–ต์žฅ์น˜ ๋ฐ˜๋‚ฉ

9. ์–ด๋””์— ๋ฐฐ์น˜ํ•  ๊ฒƒ์ธ๊ฐ€...?

Placement Strategies(๋ฐฐ์น˜ ์ „๋žต)

1. First-fit(์ตœ์ดˆ ์ ํ•ฉ)

โœ” ์ถฉ๋ถ„ํ•œ ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง„ ์ฒซ ๋ฒˆ์งธ partition ์„ ํƒ
โœ” simple and low overhead
โœ” ๊ณต๊ฐ„ ํ™œ์šฉ๋ฅ ์ด ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ์Œ

2. Best-fit(์ตœ์  ์ ํ•ฉ)

โœ” Process๊ฐ€ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” partition ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ๊ณณ ์„ ํƒ
โœ” ํƒ์ƒ‰ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆผ(๋ชจ๋“  partition ํƒ์ƒ‰)
โœ” ํฌ๊ธฐ๊ฐ€ ํฐ partition ์œ ์ง€ ๊ฐ€๋Šฅ
โœ” ํ™œ์šฉํ•˜๊ธฐ ๋„ˆ๋ฌด ์ž‘์€ partition ๋งŽ์ด ๋ฐœ์ƒ

3. Worst-fit(์ตœ์•… ์ ํ•ฉ)

โœ” Process๊ฐ€ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” partition ์ค‘ ๊ฐ€์žฅ ํฐ ๊ณณ ์„ ํƒ
โœ” ํƒ์ƒ‰ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆผ(๋ชจ๋“  partition ํƒ์ƒ‰)
โœ” ์ž‘์€ ํฌ๊ธฐ์˜ partition ๋ฐœ์ƒ ์ค„์ผ ์ˆ˜ ์žˆ์Œ
โœ” ํฐ ํ”„๋กœ์„ธ์Šค์— ํ•„์š”ํ•œ ํฐ ํฌ๊ธฐ์˜ parition ํ™•๋ณด ์–ด๋ ค์›€

4. Next-fit(์ˆœ์ฐจ ์ตœ์ดˆ ์ ํ•ฉ)

โœ” ์ตœ์ดˆ ์ ํ•ฉ ์ „๋žต๊ณผ ์œ ์‚ฌ
โœ” state table์—์„œ ๋งˆ์ง€๋ง‰์œผ๋กœ ํƒ์ƒ‰ํ•œ ์œ„์น˜๋ถ€ํ„ฐ ํƒ์ƒ‰
โœ” ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์˜ ์‚ฌ์šฉ ๋นˆ๋„ ๊ท ๋“ฑํ™”
โœ” Low overhead

Coalescing holes (๊ณต๊ฐ„ ํ†ตํ•ฉ)

โœ” ์ธ์ ‘ํ•œ ๋นˆ ์˜์—ญ์„ ํ•˜๋‚˜์˜ partition์œผ๋กœ ํ†ตํ•ฉ

  • process๊ฐ€ memory๋ฅผ releaseํ•˜๊ณ  ๋‚˜๊ฐ€๋ฉด ์ˆ˜ํ–‰
  • Low overhead

Storage compaction(๋ฉ”๋ชจ๋ฆฌ ์••์ถ•)

โœ” ๋ชจ๋“  ๋นˆ ๊ณต๊ฐ„์„ ํ•˜๋‚˜๋กœ ํ†ตํ•ฉ
โœ” ํ”„๋กœ์„ธ์Šค ์ฒ˜๋ฆฌ์— ํ•„์š”ํ•œ ์ ์žฌ ๊ณต๊ฐ„ ํ™•๋ณด๊ฐ€ ํ•„์š”ํ•  ๋•Œ ์ˆ˜ํ–‰

โœ” high overhead

  • ๋ชจ๋“  process ์žฌ๋ฐฐ์น˜
  • ๋งŽ์€ ์‹œ์Šคํ…œ ์ž์› ์†Œ๋น„

๋Œ“๊ธ€