CreateFileMapping()을 토앟여 매핑을 생성하여 named shared-memory object를 생성
MapViewOfFile()을 통하여 view를 생성한다.
버디 시스템
물리적으로 인접한 페이지로 구성된 고정 크기의 세그먼트를 사용하여 메모리 할당
power-of-2 allocator를 사용하여 메모리 할당
2의 거듭제곱 크기 단위로 요청을 충족
ex: 256KB 청크가 있을 때 커널이 21KB를 요청한다면 256KB 를 128KB 크키의 2개로 분할 하고 또 한개를 64 → 32 로 분할하고 32에서 21KB를 할당 하는 방식
장점: 사용되지 않는 청크를 더 큰 크기의 청크로 빠르게 병합 할 수 있다.
단점: 단편화
대체 전략 슬랩 할당기
슬랩(Slab)은 하나 이상의 물리적으로 인접한 페이지
캐시(Cache)는 하나 이상의 슬랩으로 구성
커널 자료구조 마다 하나의 캐시 배정
각 캐시는 objects로 채워짐
캐시가 생성될 때, free로 표시된 object로 채워짐
자료구조가 저장될 때 object가 used로 표시
슬랩이 사용중이면 다음 슬랩을 배정함
장점: 단편화가 발생하지 않음
프리페이징
프로세스가 시작할 때 발생하는 많은 수의 페이지 폴트 개수를 줄이기 위하여프로세스가 필요로 할 것 같은 페이지를 참조되기 전에 메모리에 반입 하는 기법
그러나 프리페이징한 페이지가 사용되지 않으면 입출력과 메모리가 낭비된다. s 개의 페이지가 프리페이징 되고, 그중 a 페이지만 사용한다고 가정 한다면 페이지 폴트를 줄인 비용 s*a 가 불필요하게 프리페이징 한 비용 s*(1-a) 보다 큰가 작은가 비교 하여 프리페이징이 효율적인지 비효율적인지 판단 할 수 있다.