[Eisfair_dev] E-1 inactive ram freigeben?

Olaf Jaehrling eisfair at ojaehrling.de
So Jan 15 21:35:16 CET 2017


Hallo Marcus,


Marcus Roeckrath schrieb am 14.01.2017 um 14:41:
> Hallo Kay,

> 
> Linux benutzt RAM wozu es da ist, nämlich als RAM, z. B. fürs Caching.
> 
> Inaktives oder als Caching benutztes RAM wird automatisch wieder
> freigegeben, wenn er für wichtigere Dinge gebraucht wird.

Das hatte ich bisher auch geglaubt. Aber wie das so ist.... Theorie und
Praxis ist was anderes.

Hier:

free -m
     total used free shared  buff/cache   available
Mem: 2048  701  307  78       1039        1256
Swap: 512  171  340

Also Frei 307 M und 1039M gecached.
Also theoretisch müsste er 1039M  freigeben wenn es gebraucht wird.
Aber ...

dd if=/dev/zero of=/swapfile count=1 bs=350M
dd: memory exhausted by input buffer of size 367001600 bytes (350 MiB)

Also ist es hier nicht möglich eine 350M große Datei zu erstellen weil
nicht genug RAM frei ist.

Gegenbeweis:
dd if=/dev/zero of=/swapfile count=1 bs=250M
1+0 records in
1+0 records out
262144000 bytes (262 MB) copied, 0.236551 s, 1.1 GB/s

Wenn ich eine bestimmte Anwendung beende und dadurch mehr RAM frei wird
klappt auch die größere Datei.
free -m
        total  used free shared buffers  cached
Mem:    2048   1127 920   96    0        867
-/+ buffers/cache:        260       1787
Swap:   512    149  362

dd if=/dev/zero of=/swapfile count=1 bs=350M
1+0 records in
1+0 records out
367001600 bytes (367 MB) copied, 0.301519 s, 1.2 GB/s





Gruß

Olaf


Mehr Informationen über die Mailingliste Eisfair_dev