우리는 스왑없이 리눅스 시스템을 내장했습니다.
현재 메모리 사용량 %가 임계 값 이상으로 증가하면 경보를 발생시켜야합니다. 메모리 사용량 %가 (높은) 임계 값 이상으로 증가하면 재부팅하십시오.
그 이유 : 일부 프로그램이 누출 된 경우 커널이 프로세스를 종료하기 전에 안전 재부팅을 수행 할 수 있습니다 (데이터 손상 또는 사용 불가능으로 이어질 수 있음).
그러나 우리는 문제가 있습니다 :
우리의 목적에 사용될 수있는 메모리 사용량을 계산하는 방법?
/ proc / meminfo의 값을 사용하여 메모리 사용량을 계산하려고 시도했습니다.
/ # cat /proc/meminfo
MemTotal: 126744 kB
MemFree: 58256 kB
Buffers: 16740 kB
Cached: 31308 kB
SwapCached: 0 kB
Active: 37580 kB
Inactive: 24000 kB
성공없이:
(MemTotal - MemFree)
예를 들어 캐시를 포함하기 때문에 사용할 수 없습니다.
(MemTotal - MemFree - Buffers - Cached)
의 효과를 무시했다 Inactive
. 따라서 너무 큰 메모리 사용량 값을 제공합니다.
(MemTotal - MemFree - Buffers - Cached - Inactive)
결과는 부정적 일 수 있으므로 사용할 수 없습니다.