스와핑
- 부족한 메모리 공간을 효율적으로 관리하기 위한 메모리 관리 기법
- 실행중이지 않는 프로세스 → 준비, 대기 상태에 빠져있는 프로세스
- 이러한 프로세스들을 임시로 보조기억장치에 쫓아내고
- 생긴 빈 공간에 다른 프로세스를 적재하여 실행하는 방식
<aside>
⚡ 용어정리
스왑 영역 : 프로세스들이 쫓겨나는 보조기억장치의 일부 영역
스왑 아웃 : 프로세스가 메모리에서 스왑 영역으로 옮겨지는것
스왑 인 : 스왑 영역에 있던 프로세스가 다시 메모리로 옮겨오는것
</aside>
스와핑 시 발생하는 문제점 → 외부 단편화
- 프로세스가 메모리를 할당 받고 해제될 때 그 밖에 있는 메모리에서 사용하지 못하는 단편화
- 무슨말이냐면
- 새로 들어올 프로세스가 600인데 남는 공간이 660임에도 불구하고 잘게 쪼개진 메모리 할당 구역에 들어갈 자리가 없는 문제
솔루션
- 비연속적인 할당 방법 적용
- 메모리 압축
- 하드디스크의 조각 모음 방법
- 짜투리 메모리들을 하나로 합쳐 큰 메모리 공간을 만드는 것
- 단점
- 빈 공간을 하나로 합치는 동안 시스템은 하던 일 중지해야함
- 오버헤드 발생