만약 Memory 가 꽉 찼다면 메모리에 있는 Page 를 swap 영역 으로 내보내야 한다 (swap out). 이때, 어떤 Page 를 보낼지 선정하는 알고리즘이 페이지 교체 알고리즘 이다.
하드디스크에 존재하고 Memory Management Unit 가 관리하는 영역 swap in swap out
swap out 을 위한 Page 를 선정하기 위한 알고리즘
하드디스크에 존재하고 Memory Management Unit 가 관리하는 영역 swap in swap out
Process 가 Page 를 요청했을 때, 그 Page 가 Memory 에 없는 상황 Process 의 부재에서 오류가 발생했을 뿐, Process 가 만든 오류는 아니다. Page Fault 가 발생하면, Process 가 해당 Page 를 사용할 수 있도록 swap 영역 에서 물리 Memory 로 옮겨야 한다...
swap 영역 에서 물리 Memory 로 데이터 (Page) 를 가져오는 것
실행할 프로그램의 코드가 저장되는 영역 (컴파일 시 크기가 결정됨)
swap out 을 위한 Page 를 선정하기 위한 알고리즘 Memory 에서 앞으로 사용할 가능성이 적은 페이지를 대상 Page 로 선정하여 Page Fault 를 줄이고, 시스템의 성능을 향상한다. 알고리즘 종류 algorithms/First In First Out 교체 알고리즘 LRU 교체 알고리즘 LFU...
Linux 는 I/O 성능을 높이기 위해서 Page Cache 를 사용한다.
Operating System은 application과 hardware 사이에서 resource를 관리하는 시스템 소프트웨어다. 사용자는 process, file, network 같은 추상화를 통해 hardware를 직접 다루지 않고도 계산 자원을 사용할 수 있다.
cache 는 다수의 slab 의 집합으로 구성되고, 각 slab 은 Slab Object 의 집합으로 구성된다. 각 Slab 은 Page Size 크기를 갖는다 (일반적으로 Page Size 는 4kb).
페이징이란 external fragmentation 의 발생을 완전히 차단하기 위하여 적용한 방법으로, 프로세스가 적재되는 메모리 의 논리 주소를 Page 라고 불리는 고정된 크기의 블록들로 분할하여 관리하는 기법이다.
메모리 관리를 하는 메모리 관리자 의 줄임말