Interpretation von /proc/sys/kernel/shmall

Interpretation von /proc/sys/kernel/shmall

Sofern ich mich nicht irre, gibt der Wert /proc/sys/kernel/shmalldie Gesamtmenge des gemeinsam genutzten Speichers in Bytes an, die dem System zugewiesen werden kann.

Ich bin auf einer t2.microEC2-Debian-Instanz und erhalte Folgendes:

$ cat /proc/sys/kernel/shmall
18446744073692774399

Ich nehme nicht an, dass dies bedeutet, dass die insgesamt zuweisbare Menge an gemeinsam genutztem Speicher bei etwa liegt0,02 Zettabyte...

Antwort1

Richtig, es sollte für jeden ausreichen, definiert als (ULONG_MAX - (1UL << 24)). Beachten Sie jedoch, dass es sich nicht um einen Pro-Prozess-Wert, sondern um einen Gesamtwert handelt. Siehehttp://elixir.free-electrons.com/linux/latest/source/include/uapi/linux/shm.h#L13:

* SHMMNI, SHMMAX und SHMALL sind standardmäßige Obergrenzen, die
 * geändert durch sysctl. Die Werte SHMMAX und SHMALL wurden gewählt, um
 * so groß wie möglich sein, ohne Szenarien zu ermöglichen, in denen der Benutzerbereich
 * verursacht Überläufe beim Anpassen der Grenzwerte über Operationen der Form
 * "aktuelles Limit abrufen; X hinzufügen; Limit aktualisieren". Es ist daher nicht
 * empfohlen, SHMMAX und SHMALL größer zu machen. Diese Grenzen sind
 * sowohl für 32- als auch für 64-Bit-Systeme geeignet.

verwandte Informationen