문서의 이전 판입니다!
MemTotal | 사용 가능한 최대 메모리(RAM)량 ( Physical RAM - a few reserved bits - kernel binary code ) |
---|---|
MemFree | LowFree + HighFree |
MemShared | 호환성을 위하여 존재하는 필드로 항상 0(zero) |
Buffers | buffer cache 메모리 크기 (커널 2.6부터는 의미가 없다고 한다) Buffer cache는 원래 directory name 과 inode 정보등의 meta data를 cache하기 위한 것이며 I/O 단위는 block size 이다. |
Cached | Pagecache (disk cache) 메모리 크기에서 SwapCached가 빠진 크기. Pagecache는 file 의 내용을 cache하기 위한 것으로 I/O단위는 page size와 같다. SWAP공간으로의 page-in/out 또한 Pagecache를 통해 이루어지며 Software MMU라고도 불리운다. 커널 2.6에서 Buffer cache가 Pagecache로 통합이 되었다. |
SwapCache | 스와핑 아웃되었던 메모리로, 스와핑 인되었지만 여전히 스왑 파일에 존재하는 메모리 (메모리가 다시 필요하다면 이미 스왑파일에 존재하므로 또 다시 스와핑 아웃될 필요가 없음. 이는 I/O를 절약할 수 있음) |
Active | 가장 최근에 사용되었던 메모리로 완전히 불필요하지 않은 경우를 제외하고서는 빈공간으로 반환되지 않음 |
---|---|
Inact_dirty | 여기서 dirty의 의미는 “디스크나 스왑 공간으로 기록될 필요가 있음”을 의미하며, 빈 공간으로 반환되기 위해서는 몇가지 작업이 필요하다. 아직 기록되지 않은 파일이 예가 될 것이다. 너무 일찍 메모리에 기록하여 I/O의 성능을 떨어뜨릴 필요가 없기 때문이다. 예를 들어 log를 기록한다고 할 때 완벽한 로그가 구성될 때까지 디스크에 기록하지 않는 것이 성능에 도움이 된다. |
Inact_clean | 쉽게 빈 공간으로 반환될 수 있음을 의미한다. 커널은 항상 일정한 양의 빈 공간을 확보하고 있는데, 이는 움직일 수 있는 여유를 가지기 위함이다. |
Inact_target | 커널에서 inactive페이지가 충분히 보장되도록 하기 위한 목적으로 사용된다. 이것이 초과되었을때 커널은 페이지를 active에서 inactive로 이동시키기 위한 작업을 더이상 하지 않을 것이다. |