[Umfassende Erläuterung der Linux-Befehle] 172. Vertiefendes Verständnis der Slabtop-Befehle – Echtzeitüberwachung der Kernel-Cache-Informationen

Latzoberteil

Echtzeitanzeige der Cache-Informationen zum Kernel-Slab-Speicher

Weitere Informationen

slabtopDieser Befehl zeigt die Details des Kernel-„Slab“-Puffers in Echtzeit an.

Grammatik

slabtop(Möglichkeit)

Optionen

  • --delay=n, -d n: Aktualisieren Sie die angezeigten Informationen alle n Sekunden. Der Standardwert ist alle 3 Sekunden.
  • --sort=S, -s S: Geben Sie die Sortierkriterien für die Sortierung an (Sortierkriterien, siehe Folgendes oder das Handbuch);
  • --once, -o: Beenden nach einmaliger Anzeige;
  • --version, -V: Anzeigeversion;
  • --help: Hilfeinformationen anzeigen.

Sortierkriterien:

  • a: Sortieren nach Anzahl der aktiven Objekte
  • b: Nach Objekten pro Platte sortieren
  • c: Nach Cache-Größe sortieren
  • l: Nach Anzahl der Platten sortieren
  • v: Sortieren nach Anzahl der aktiven Platten
  • n: Nach Namen sortieren
  • o: Sortieren nach Anzahl der Objekte
  • p: Nach Seiten pro Platte sortieren
  • s: Nach Objektgröße sortieren
  • u: Sortierung nach Cache-Auslastung

Wissenserweiterung

Wenn Kernelmodule Ressourcen zuweisen, werden diese über Slab zugewiesen, um die Effizienz und Ressourcennutzung zu verbessern. Anhand der Slab-Informationen und des Quellcodes können Sie sich einen groben Überblick über den Systembetrieb verschaffen, z. B. ob ungewöhnlich viele Ressourcen vorhanden sind oder ob Lecks vorliegen. Das Linux-System stellt Benutzern die Slab-Nutzung über /proc/slabinfo zur Verfügung.

Der von Linux verwendete Slab Allocator basiert auf einem Algorithmus, der erstmals von Jeff Bonwick für das SunOS-Betriebssystem eingeführt wurde. Jeffs Allokator basiert auf dem Objekt-Caching. Im Kernel werden große Speichermengen für eine begrenzte Menge von Objekten reserviert, beispielsweise Dateideskriptoren und andere gängige Strukturen. Jeff stellte fest, dass die Zeit, die zum Initialisieren eines normalen Objekts im Kernel benötigt wurde, die Zeit überstieg, die zum Zuweisen und Freigeben des Objekts erforderlich war. Daher kam er zu dem Schluss, dass Speicher nicht an einen globalen Speicherpool zurückgegeben, sondern in einem für einen bestimmten Zweck initialisierten Zustand gehalten werden sollte. Der Linux-Slab-Allocator nutzt diese und andere Ideen, um einen Speicherallocator zu erstellen, der sowohl räumlich als auch zeitlich effizient ist.

Die Datei, die Informationen über alle aktiven Slab-Caches im Überwachungssystem enthält, ist /proc/slabinfo.

Beispiel

slabtop

 Active / Total Objects (% used)    : 897519 / 1245930 (72.0%)
 Active / Total Slabs (% used)      : 38605 / 38605 (100.0%)
 Active / Total Caches (% used)     : 94 / 145 (64.8%)
 Active / Total Size (% used)       : 129558.22K / 153432.58K (84.4%)
 Minimum / Average / Maximum Object : 0.01K / 0.12K / 128.00K

  OBJS ACTIVE  USE OBJ SIZE  SLABS OBJ/SLAB CACHE SIZE NAME                   
440136 171471  38%    0.05K   6113       72     24452K buffer_head
190086 148576  78%    0.05K   2437       78      9748K selinux_inode_security
151840 146366  96%    0.48K  18980        8     75920K ext3_inode_cache
144333 144143  99%    0.02K    711      203      2844K avtab_node
130529 128488  98%    0.13K   4501       29     18004K dentry_cache
99214  99071  99%    0.03K    878      113      3512K size-32
43834  28475  64%    0.27K   3131       14     12524K radix_tree_node
17818   9450  53%    0.06K    302       59      1208K size-64
4602   4562  99%    0.05K     59       78       236K sysfs_dir_cache
3220   2855  88%    0.08K     70       46       280K vm_area_struct
2460   2114  85%    0.12K     82       30       328K size-128
1564   1461  93%    0.04K     17       92        68K Acpi-Operand
1540   1540 100%    0.33K    140       11       560K inode_cache
1524    466  30%    0.01K      6      254        24K anon_vma
1440    515  35%    0.05K     20       72        80K avc_node
1440   1154  80%    0.19K     72       20       288K filp
1170   1023  87%    0.05K     15       78        60K ext3_xattr
845    724  85%    0.02K      5      169        20K Acpi-Namespace
638    315  49%    0.35K     58       11       232K proc_inode_cache
450    434  96%    0.25K     30       15       120K size-256
424    386  91%    0.50K     53        8       212K size-512
312    107  34%    0.05K      4       78        16K delayacct_cache
306    284  92%    0.43K     34        9       136K shmem_inode_cache
303    108  35%    0.04K      3      101        12K pid
300    261  87%    0.19K     15       20        60K skbuff_head_cache
300    300 100%    0.12K     10       30        40K bio
260    260 100%   32.00K    260        1      8320K size-32768
254      6   2%    0.01K      1      254         4K revoke_table
236     55  23%    0.06K      4       59        16K fs_cache
216    203  93%    1.00K     54        4       216K size-1024
214    214 100%    2.00K    107        2       428K size-2048
203     83  40%    0.02K      1      203         4K biovec-1

Lernen Sie von Grund aufpython

[Python von Grund auf lernen] 92. Verwenden Sie die Anforderungsbibliothek von Python, um HTTP-Anfragen zu senden und Antworten zu verarbeiten.
[Python von Grund auf lernen] 91. Verwenden Sie Dekoratoren und Wörterbücher, um Anforderungspfade in einer einfachen Webanwendung zu verwalten.
[Python von Grund auf lernen] 93. Verwenden Sie ein Wörterbuch Management-Anforderungspfad
[Python von Grund auf lernen] 89. Verwenden Sie WSGI, um einen einfachen und effizienten Webserver zu erstellen
[Python von Grund auf lernen] 88. Detaillierte Erläuterung der WSGI-Schnittstelle: Einfache und effiziente Webentwicklung realisieren
[Python von Grund auf lernen] 87. Manuell Erstellen Sie einen HTTP-Server in Python. Implementierung und gleichzeitige Multithread-Verarbeitung.
[Python von Grund auf lernen.] 86. Vertiefendes Verständnis des HTTP-Protokolls und seiner Rolle bei der Browser- und Serverkommunikation.
[Python von Grund auf lernen.] 85. Anwendung der Parallel-Computing-Technologie im Python-Prozesspool
[Python von Grund auf lernen] 84. Vertieftes Verständnis von Threads und Prozessen
[Python von Grund auf lernen] 83. Python-Multiprozessprogrammierung und Verwendung von Prozesspools
[Python von Grund auf lernen] 82. Chat-Programm Implementierung basierend auf Multithreading
[Python von Grund auf lernen] 81. Python mehr Anwendung von Thread-Kommunikation und Warteschlange
[Python von Grund auf lernen] 80. Thread-Zugriff auf globale Variablen und Thread-Sicherheitsprobleme
[Python von Grund auf lernen] 79. Thread-Zugriff auf globale Variablen und Thread-Sicherheitsprobleme
[Python von Grund auf lernen] 78. Datei-Download-Fall
[Python von Grund auf lernen] 77. Programmierung und Vorsichtsmaßnahmen für TCP-Server
[Python von Grund auf lernen] 76. Server und Client: Schlüsselkomponenten der Netzwerkkommunikation
[Python lernen von Grund auf neu] 75. TCP-Protokoll: zuverlässiges verbindungsorientiertes Übertragungsschicht-Kommunikationsprotokoll
[Python von Grund auf lernen] 74. UDP-Netzwerkprogramm: Detaillierte Erläuterung von Portproblemen und Bindungsinformationen
[Python von Grund auf lernen] 73. UDP-Netzwerkprogramm - Daten senden
[Python von Grund auf lernen] 72. Vertiefendes Verständnis der Socket-Kommunikation und Methode zur Erstellung von Sockets
[Python von Grund auf lernen] 71. Netzwerkports und ihre Funktionen
[Python von Grund auf lernen] 70. Netzwerkkommunikationsmethoden und ihre Anwendungen: von der direkten Kommunikation bis zu Routern, um mehrere Netzwerke zu verbinden
[Python von Grund auf lernen] 69. Netzwerk Kommunikations- und IP-Adressklassifizierungsanalyse
[Python von Grund auf lernen] 68. Gierige und nicht gierige Modi in regulären Python-Ausdrücken
[Python von Grund auf lernen] 67. Das Re-Modul in Python: regelmäßige Ersetzung und erweiterte Matching-Technologie
[Python von Grund auf lernen] 66. Umfassendes Verständnis regulärer Ausdrücke: ein leistungsstarkes Werkzeug für Mustervergleich und Textverarbeitung
[Python von Grund auf lernen] 65. Detaillierte Erklärung der Python-Modifikatoren für reguläre Ausdrücke und ihrer Anwendungen
[Python von Grund auf lernen] 64. Die re.compile-Methode in regulären Ausdrücken in Python Detaillierte Erläuterung der Verwendung
[Python von Grund auf lernen] 63. Einführung in die re.Match-Klasse und ihre Attribute und Methoden in regulären Ausdrücken
[Python von Grund auf lernen] 62. Reguläre Python-Ausdrücke: ein leistungsstarkes Tool zum String-Matching
[Lernen Python von Grund auf] 61. Detaillierte Erklärung und Anwendungsbeispiele von Eigenschaftsattributen in Python
[Python von Grund auf lernen] 60. Explorationsgenerator: ein flexibles Tool für die Iteration
[Python von Grund auf lernen] 59. Iterator: Ein effizientes Tool zur Optimierung der Datendurchquerung
[ Python von Grund auf lernen] 58. Benutzerdefinierte Ausnahmen in Python und Methoden zum Auslösen von Ausnahmen
[Python von Grund auf lernen] 57. Verwenden Sie das Schlüsselwort with in Python, um Ressourcen korrekt zu schließen
[Python von Grund auf lernen] 56. Die Bedeutung und Anwendung der Ausnahmebehandlung in der Programmierung
[Python von Grund auf lernen] 55. Serialisierung und Summe in Python Deserialisierung, Anwendung von JSON- und Pickle-Modulen
[Python von Grund auf lernen] 54. Daten in den Speicher schreiben
[Python von Grund auf lernen] 53. CSV-Dateien und Pythons CSV-Modul
[Python von Grund auf lernen] 52. Dateien lesen und schreiben – Anleitung zur Python-Dateibedienung
[ Python von Grund auf lernen] 51. Dateien und ihre Anwendungen in Python öffnen und schließen
[Python von Grund auf lernen] 49. Objektbezogene integrierte Funktionen in Python und ihre Verwendung
[Python von Grund auf lernen] 48 .Detaillierte Erklärung von Vererbung und Mehrfachvererbung Vererbung in Python
[Python von Grund auf lernen] 47. Das Konzept und die grundlegende Verwendung der Vererbung in der objektorientierten Programmierung
[Python von Grund auf lernen] 46. Analyse von __new__- und __init__-Methoden und Singletons in Python-Entwurfsmustern
[Python von Grund auf lernen] 45 . Klassenmethoden und statische Methoden in Python
[Python von Grund auf lernen] 44. Private Eigenschaften und Methoden in der objektorientierten Programmierung
[Python von Grund auf lernen] 43. Beispiele in der objektorientierten Programmierung in Python Eigenschaften und Klassenattribute
[Python von Grund auf lernen] 42. Integrierte Eigenschaften und Methoden in Python
[Python von Grund auf lernen] 41. Python-Magie-Methode (2)
[Python von Grund auf lernen] 40. Python-Magie-Methode (1)
[Python von Grund auf lernen] 39. Grundlegende objektorientierte Syntax und Anwendungsbeispiele
[Python von Grund auf lernen] 38. Verwendung und Import von Python-Paketen
[Python von Grund auf lernen] 37. Verwendung und Vorsichtsmaßnahmen von benutzerdefinierten Python-Modulen
[Python lernen von Grund auf] Python lernen] 36. Methoden und Techniken zur Verwendung von pip für die Paketverwaltung von Drittanbietern in Python
[Python von Grund auf lernen] 35. Allgemeine Python-Systemmodule und ihre Verwendung
[Python von Grund auf lernen] 34. Detaillierte Erläuterung des Imports und Verwendung von Python-Modulen
[Python von Grund auf lernen] 33. Die Rolle von Dekoratoren (2)
[Python von Grund auf lernen] 32. Die Rolle von Dekoratoren (1)
[Python von Grund auf lernen] 31. Vertiefendes Verständnis von höher- Bestellfunktionen und Abschlüsse in Python
[Von „Lernen Sie Python von Grund auf““ 30. Vertiefendes Verständnis rekursiver Funktionen und anonymer Funktionen
„Lernen Sie Python von Grund auf“ 29. „Detaillierte Erklärung von Funktionsparametern“ – Verstehen Sie die verschiedenen Verwendungen von Python-Funktionsparametern
【 Python von Grund auf lernen】28. Lokale Variablen und globale Variablen in Python-Variablen
[Python von Grund auf lernen] 27. Die Verwendung von Python-Funktionen und verschachtelten Aufrufen
[Python von Grund auf lernen] 25. Funktionen: ein Tool zur Verbesserung der Effizienz beim Schreiben von Code
[Python von Grund auf lernen] 24. String-Operationen und Traversal-Methoden in Python
[Python von Grund auf lernen] 23. Verwendung von Mengen (Set) und allgemeinen Operationen in Python
[Python von Grund auf lernen] 22. Hinzufügen, Löschen, Ändern und Wörterbuchvariablen in Python abfragen
[Python von Grund auf lernen] 21. Python-Tupel und Wörterbücher
[Python von Grund auf lernen] 20. Fähigkeiten und Beispiele für Python-Listenoperationen
[Python von Grund auf lernen] 19. Anwendungen des Durchlaufens von Listen und der Listenverschachtelung
[Python von Grund auf lernen] 18. Detaillierte Erläuterung der Grundoperationen von Python-Listen (1)
[Von Python von Grund auf lernen] 17. Die Formatierungsmethode von Python-Strings (2)
【Python von Grund auf lernen】 16. Die Formatierungsmethode von Python-Strings (1)
【Python von Grund auf lernen】 15. Vertiefendes Verständnis von Strings und Zeichensatzkodierung
【Von Python von Grund auf lernen】14. Allgemeine Operationen an Python-Strings (2)
【Python von Grund auf lernen】13. Allgemeine Operationen an Python-Strings (1)
【Python von Grund auf lernen】12. Python-String-Operationen und -Anwendungen
【 Python von Grund auf lernen】 11. Python-Schleifenanweisungen und Kontrollfluss
[Python von Grund auf lernen] 10. Detaillierte Erklärung von Python-Bedingungsanweisungen und deren Verschachtelung
[Python von Grund auf lernen] 09. Bedingte Beurteilungsanweisungen in Python
[Python von Grund auf lernen] 08 . Python versteht Bitoperationsoperatoren und Operatorprioritäten
[Python von Grund auf lernen] 07. Detaillierte Erklärung von Python-Operatoren: Zuweisung, Vergleich und logische Operatoren
[Python von Grund auf lernen] 06. Arithmetische Operatoren in Python für Berechnungen und String-Verkettung verwenden
[Lernen von Scratch] Python] 05. Ausgabe und Eingabe in Python
[Python von Grund auf lernen] 04. Grundlagen der Python-Programmierung: Variablen, Datentypen und Bezeichner
[Python von Grund auf lernen] 03. Interaktive Python-Programmierung und detaillierte Erklärung von Kommentaren
[Python von Grund auf lernen] 02. Einführung in Entwicklungstools
[Python von Grund auf lernen] 01. Python installieren und konfigurieren

Ich denke du magst

Origin blog.csdn.net/qq_33681891/article/details/133011639
Empfohlen
Rangfolge