참고
연속 메모리 할당
NOTE
메모리 공간에 프로세스를 연속적으로 할당하는 방식을 말한다!
프로세스 A~D가 순차적으로 할당되어 있다
스와핑
NOTE
오랫동안 사용하지 않는 프로세스를 보조 기억장치 일부 영역으로 임시로 쫒아내고, 빈 공간에 새로운 프로세스를 적재하는 방법!
스와핑 방식!
•
스왑 영역
◦
쫒겨난 프로세스를 임시로 보관하는 보조기억장치의 일부 영역
•
스왑 인
◦
스왑 영역 → 메모리
◦
기존의 물리 주소와는 다른 곳에 적재될 수 있다.
•
스왑 아웃
◦
메모리 → 스왑 영역
스와핑을 사용해서 실제 메모리보다 더 많은 양의 프로세스들을 실행시킬 수 있음
free, top 명령어로 스왑영역 확인가능
프로세스 할당방식
NOTE
메모리 내 빈공간이 여러 개 있을 때 프로세스를 할당하는 방식에 대해 알아보자!
저 20mb의 프로세스는 어디에 적용되어야 하는가?
•
최초 적합
최초적합!
◦
운영체제가 메모리 내 빈공간을 순서대로 검색하다가 적재할 수 있는 공간을 발견하면 배치
◦
검색을 최소화하여 빠른 할당 가능!
•
최적 적합
최적 적합( 20은 30,60,20 공간중 20이 가장 적절하다)
◦
운영체제가 메모리 내 빈 공간을 모두 검색해본 후, 프로세스가 적재될 수 있는 공간 중 가장 작은 공간에 배치
◦
잉여 공간의 최소화 가능
•
최악 적합
최악 적합(60이 가장 크게 남음)
◦
운영체제가 메모리 내 빈공간을 모두 검색해본 후, 가장 큰 공간에 배치
외부 단편화
NOTE
프로세스를 할당하기 어려울 만큼 작은 공간들로 인해 메모리가 낭비되는 현상!
외부 단편화 문제.. 50mb가 남아도, 50mb 프로세스를 올릴수 없음
메모리 압축으로 임시 해결!
•
외부 단편화 문제를 해결하기 위해 메모리를 압축(compaction)할 수 있다
•
하지만 잉여 공간을 한 데 모으는 동안의 오버헤드가 크기 때문에 단점이 크다
•
이 문제를 해결하는 방법 ⇒ 페이징 기법!