GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Warum ist Kernel Shared Memory 0 auf Ubuntu 12.04?

KSMD wird nichts tun, es sei denn, die Anwendungssoftware weist es durch den Aufruf von madvise(MADV_MERGEABLE) an . Höchstwahrscheinlich verwenden Sie keine Anwendungssoftware, die die Dienste von KSMD nutzt.

MADV_MERGEABLE (seit Linux 2.6.32):

Aktivieren Sie Kernel Samepage Merging (KSM) für die Seiten in dem durch addr und length angegebenen Bereich. Der Kernel scannt regelmäßig die als zusammenführbar markierten Bereiche des Benutzerspeichers und sucht nach Seiten mit identischem Inhalt. Diese werden durch eine einzelne schreibgeschützte Seite ersetzt (die automatisch kopiert wird, wenn später ein Prozess den Inhalt der Seite aktualisieren möchte). KSM fügt nur private anonyme Seiten zusammen (siehe mmap(2)).

Die KSM-Funktion ist für Anwendungen gedacht, die viele Instanzen derselben Daten generieren (z. B. Virtualisierungssysteme wie KVM). Es kann viel Rechenleistung verbrauchen; vorsichtig verwenden. Weitere Einzelheiten finden Sie in der Kernel-Quelldatei Documentation/vm/ksm.txt. Die Operationen MADV_MERGEABLE und MADV_UNMERGEABLE sind nur verfügbar, wenn der Kernel mit CONFIG_KSM konfiguriert wurde.


Linux
  1. Der Linux-Kernel:Top 5 Innovationen

  2. Aktualisieren Sie die Kernel-Version auf Ubuntu-Servern

  3. Warum verwendet Ubuntu 14.04 Lts eine Nicht-lts-Kernelversion?

  4. Warum braucht Ubuntu zwei Kernel?

  5. Empfehlung für die Kommunikation zwischen Prozessen

So aktualisieren Sie den Linux-Kernel in Ubuntu

Ubuntu 22.04 Kernelversion

Linux-Speichersegmentierung

Warum ist es so schwer, eine Datei in Ubuntu zu finden?

Warum ist die Bearbeitung von core_pattern eingeschränkt?

Shared Memory:shmget schlägt fehl:Kein Speicherplatz mehr auf dem Gerät – wie kann man die Limits erhöhen?