600 МГц прекрасны, но можно получить больше RAM? Если можно поместить 256 или даже 512 МБ в вещь - это не должно быть дорого, но аппаратные средства обнаруживают его? И с 512, ожидает xubuntu.:) Или другие альтернативы, упомянутые. Но RAM, RAM, RAM.
Этот Linux? Раз так Вы могли попробовать следующее:
# sysctl vm.swappiness=100
И затем или используйте программу (программы), которая использует много RAM, или запишите небольшое приложение, которое просто съедает поршень. Следующее сделает это (источник: http://www.linuxatemyram.com/play.html):
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int main(int argc, char** argv) {
int max = -1;
int mb = 0;
char* buffer;
if(argc > 1)
max = atoi(argv[1]);
while((buffer=malloc(1024*1024)) != NULL && mb != max) {
memset(buffer, 0, 1024*1024);
mb++;
printf("Allocated %d MB\n", mb);
sleep(1);
}
return 0;
}
Я добавил сон (1), чтобы дать Вам больше времени для наблюдения процессов, поскольку он проглатывает поршень и подкачку. Уничтожитель OOM должен уничтожить это, после того как Вы вне RAM и ПОДКАЧКИ для предоставления программе. Можно скомпилировать его с
gcc filename.c -o memeater
где filename.c является файлом, Вы сохраняете вышеупомянутую программу в. Затем можно выполнить его с./memeater.
Я не сделал бы этого на производственной машине.
/proc/self/oom_score_adj
гарантировать, что это - наиболее вероятная OOM-уничтожающая жертва... – Gert van den Berg 15.10.2017, 23:33<unistd.h>
для сна иначе это бросает предупреждениеwarning: implicit declaration of function ‘sleep’;
– Debanjan Basu 26.01.2018, 20:22