eeePC 900a가 있습니다. 디스크로 8GB 플래시와 1GB RAM 만 있습니다. 여기에 설치된 Linux 배포판은 ArchLinux입니다.
시스템에 메모리가 부족하면 응답 속도 가 매우 떨어집니다. TTY1로 전환하거나 마우스 포인터를 움직이는 것과 같은 작업을 수행하는 데 몇 초 / 분이 걸립니다. 때로는 시스템이 멈추는 것처럼 보일 수도 있습니다. 우리가 전에 3 개만 내버려 두었으므로 지금까지 아무것도 바뀌지 않았습니다.
디스크가 이미 작기 때문에이 eeePC에서 스왑 파티션 / 파일을 만드는 것을 피하고 싶습니다. 또한 스왑 공간에 많은 쓰기 작업을 수행하면 플래시 카드 수명이 크게 단축되기 때문입니다. 또한 스왑 파일 / 파티션은 문제를 확실히 해결하는 대신 문제를 옮길 것이라고 생각합니다.
커널에 메모리가 부족할 때 임의의 응용 프로그램을 강제 종료하지 않습니까? 그렇게하지 못하는 이유는 무엇입니까?
몇 달 / 몇 년 전에 나는 이미 이것에 대해 더 자세히 보려고했지만 실제로 작동하는 것을 찾을 수 없었습니다 ...
while(true){ if( $FREE_MEMORY<10MB ){ kill -9 $RANDOM_PID; } }
있습니다. 이것은 분명히 내 문제를 해결할 것입니다. 그러나 잠깐, 커널이 그렇게하지 않아야합니까 (그리고 내 스크립트보다 훨씬 나은 방법으로)? 왜 작동하지 않습니까?