메모리 배치 전략 계산기 (최초·최적·최악적합)
고정분할 메모리에서 최초·최적·최악·순환최초적합 네 방식의 배치 결과와 내부·외부 단편화를 한꺼번에 견줍니다. 못 넣은 작업과 각 방식이 살펴본 칸 수까지 함께 보여 줍니다.
미리 나눠 둔 메모리 칸들의 크기입니다. 앞에서부터 차례로 번호가 붙습니다
도착하는 순서대로 적습니다. 순서가 바뀌면 결과가 달라집니다
전체 1,700 · 작업 4개
최적적합은 모두 배치
최적적합 기준 내부 단편화 433 · 외부 100
방식별 요약
| 방식 | 못 넣음 | 내부 | 외부 | 살펴본 칸 |
|---|---|---|---|---|
| 최초적합 | 1개 | 559 | 400 | 15 |
| 최적적합 | — | 433 | 100 | 20 |
| 최악적합 | 1개 | 659 | 300 | 20 |
| 순환최초적합 | 1개 | 559 | 400 | 13 |
«내부»는 배치된 칸 안에서 남아 버린 자리, «외부»는 아무것도 못 받은 빈 칸의 크기 합입니다.
최초적합
| 작업 | 들어간 칸 | 남은 자리 | 살펴본 칸 |
|---|---|---|---|
| 1번 · 212 | 2번 · 500 | 288 | 2 |
| 2번 · 417 | 5번 · 600 | 183 | 5 |
| 3번 · 112 | 3번 · 200 | 88 | 3 |
| 4번 · 426 | 못 넣음 | — | 5 |
최적적합
| 작업 | 들어간 칸 | 남은 자리 | 살펴본 칸 |
|---|---|---|---|
| 1번 · 212 | 4번 · 300 | 88 | 5 |
| 2번 · 417 | 2번 · 500 | 83 | 5 |
| 3번 · 112 | 3번 · 200 | 88 | 5 |
| 4번 · 426 | 5번 · 600 | 174 | 5 |
최악적합
| 작업 | 들어간 칸 | 남은 자리 | 살펴본 칸 |
|---|---|---|---|
| 1번 · 212 | 5번 · 600 | 388 | 5 |
| 2번 · 417 | 2번 · 500 | 83 | 5 |
| 3번 · 112 | 4번 · 300 | 188 | 5 |
| 4번 · 426 | 못 넣음 | — | 5 |
순환최초적합
| 작업 | 들어간 칸 | 남은 자리 | 살펴본 칸 |
|---|---|---|---|
| 1번 · 212 | 2번 · 500 | 288 | 2 |
| 2번 · 417 | 5번 · 600 | 183 | 3 |
| 3번 · 112 | 3번 · 200 | 88 | 3 |
| 4번 · 426 | 못 넣음 | — | 5 |
사용 방법
- 1미리 나눠 둔 메모리 칸들의 크기를 앞에서부터 차례로 넣습니다.
- 2작업 크기를 도착하는 순서대로 넣습니다. 순서가 바뀌면 결과가 달라집니다.
- 3방식별로 못 넣은 작업과 내부·외부 단편화, 살펴본 칸 수를 견줍니다.
자주 묻는 질문
내부 단편화는 배치된 칸 안에서 남아 버린 자리이고, 외부 단편화는 아무 작업도 받지 못한 빈 칸의 크기입니다. 고정분할에서는 작업이 칸을 통째로 차지하므로 작업이 칸보다 작으면 그 차이가 그대로 버려집니다. 남은 자리를 다 합치면 못 넣은 작업이 들어갈 만한데도 한 칸에 이어져 있지 않아 못 넣는 것이 외부 단편화의 문제입니다.
그 말은 가변분할 이야기입니다. 칸을 쪼개 쓰는 가변분할에서는 딱 맞는 자리에 넣을수록 남는 조각이 잘아져 어디에도 못 쓰는 부스러기가 쌓입니다. 하지만 칸이 쪼개지지 않는 고정분할에서는 그 일이 일어나지 않아, 최적적합이 배치 개수로도 내부 단편화로도 나머지 셋에게 지지 않습니다. 고정분할에서 최적적합이 치르는 값은 탐색 비용입니다.
빠르기 때문입니다. 최적적합은 가장 작은 칸을 찾으려고 매번 모든 칸을 끝까지 훑어야 하지만, 최초적합은 들어가는 첫 칸을 찾는 순간 멈춥니다. 이 도구의 «살펴본 칸» 열이 그 차이를 보여 줍니다. 배치 결과가 비슷하다면 덜 훑는 쪽이 낫습니다.
직전에 멈춘 자리부터 이어서 훑는다는 점만 다릅니다. 최초적합은 늘 앞에서부터 훑어 앞쪽 칸만 닳고 뒤쪽은 잘 쓰이지 않는데, 순환최초적합은 그 쏠림을 줄입니다. 대신 앞쪽에 새로 생긴 빈칸을 지나쳐 버려 더 나빠지는 경우도 있습니다.
달라집니다. 이 계산은 작업이 도착하는 순서대로 하나씩 자리를 잡는 상황을 그린 것이라, 큰 작업이 먼저 오느냐 나중에 오느냐에 따라 남는 칸이 달라집니다. 순서를 바꿔 넣어 보면 어느 방식이 유리한지도 뒤집히는 것을 볼 수 있습니다.
전송되지 않습니다. 계산은 전부 브라우저 안에서 이뤄지고, 입력값은 이 브라우저의 localStorage에만 남습니다.
알아두면 좋은 점
- 고정분할을 전제로 합니다. 칸이 쪼개지고 합쳐지는 가변분할과 버디 시스템은 규칙이 달라 다루지 않습니다.
- 한 칸에는 작업 하나만 들어가며, 한 번 배치된 작업은 끝나지 않는다고 봅니다. 작업이 끝나 칸이 비는 상황은 계산하지 않습니다.
- 최적·최악적합에서 크기가 같은 칸이 여럿이면 앞선 번호를 고릅니다. 교재에 따라 다를 수 있습니다.
- 운영체제 교재에 널리 실린 예제(분할 100·500·200·300·600, 작업 212·417·112·426)의 답을 정답지로 삼아 맞췄습니다. 최적적합만 넷을 모두 배치합니다.
함께 보면 좋은 도구
마지막 검증: 2026년 9월 1일 · 결과는 참고용 추정치입니다.