
나는 256MB의 메모리를 가진 Linux VPS를 가지고 있습니다( free
그러나 248MB만 찾습니다). 하지만 아직 85MB의 여유 공간이 있는 것 같습니다.하지만255MB로 교체됩니다. 왜 이런거야?
free -m
total used free shared buffers cached
Mem: 248 245 3 0 41 40
-/+ buffers/cache: 163 85
Swap: 1971 255 1716
답변1
85MB가 아닌 3MB의 여유 공간이 있습니다. 사용된 스왑 공간은 255MB이고 스왑된 데이터를 보관하는 데 잠재적으로 사용할 수 있는 메모리는 88MB이므로 커널은 최소 167MB를 스왑할 수 밖에 없습니다. 그보다 더 많이 교체한 이유는 해당 메모리를 최근에 액세스하지 않은 응용 프로그램 데이터를 보관하는 데 사용하는 것보다 디스크 캐시(기술적으로는 페이지 캐싱)에 사용하면 성능이 더 좋을 것이라고 커널이 판단했기 때문입니다.
3MB를 여유 공간으로 유지하는 이유는 메모리를 쉽게 확보하거나 용도를 변경할 수 없는 상황에서 로드 급증을 처리하기 위한 것입니다. 예를 들어 네트워크 트래픽이 급증하거나 디스크 I/O가 완료되는 경우입니다.