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

/proc/cpuinfo- und /proc/meminfo-Dateien unter Linux

/proc ist ein Verzeichnis im Linux-System, das Informationen über das System enthält.

/proc ist kein echtes Dateisystem, sondern ein virtuelles Dateisystem. Sie wird manchmal auch als Prozessinformations-Pseudo-Datei bezeichnet System . Dieses virtuelle Dateisystem wird während des Systemstarts erstellt und beim Herunterfahren des Systems aufgelöst.

Es enthält Informationen zum Laufzeitsystem anstelle von echten Dateien. Um mehr Informationen über die proc-Datei zu erhalten, lesen Sie die Manpage.

Wir werden uns insbesondere zwei Dateien im /proc-Dateisystem ansehen. /proc/cpuinfo und /proc/meminfo.

Die /proc/cpuinfo-Datei

/proc/cpuinfo enthält Informationen über den Prozessor, auf dem das Linux-System läuft. Es ist eine schreibgeschützte Datei.

Verwenden Sie den cat-Befehl, um die proc/cpuinfo-Datei anzuzeigen:

$ cat /proc/cpuinfo
processor	: 0
vendor_id	: AuthenticAMD
cpu family	: 23
model		: 1
model name	: AMD EPYC 7501 32-Core Processor
stepping	: 2
microcode	: 0x1000065
cpu MHz		: 1999.650
cache size	: 512 KB
physical id	: 0
siblings	: 1
core id		: 0
cpu cores	: 1
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm rep_good nopl cpuid extd_apicid tsc_known_freq pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw perfctr_core ssbd ibpb vmmcall fsgsbase tsc_adjust bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 virt_ssbd arat
bugs		: fxsave_leak sysret_ss_attrs null_seg spectre_v1 spectre_v2 spec_store_bypass
bogomips	: 3999.30
TLB size	: 1024 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 40 bits physical, 48 bits virtual
power management:

Der Inhalt der Datei enthält Informationen über den Prozessor.

Es sagt mir, dass der Modellname meines Prozessors AMD EPYC 7501 32-Core Processor ist.

  • Anbieter-ID stellt den Namen des Anbieters dar, der den Prozessor gebaut hat.
  • Zwischenspeichern Größe zeigt die Menge des vorhandenen Cache-Speichers an.
  • Auftragsverarbeiter Der Wert 0 zeigt ein Einzelprozessorsystem an.
  • Flaggen Feld zeigt, welche Funktionen in der CPU verfügbar sind.

Zusammen sagen all diese Informationen den Benutzern etwas über die Architektur des verwendeten Systems.

/proc/meminfo-Datei

Diese Datei enthält Informationen über die Speichernutzung des Systems. Um die Datei anzuzeigen, können wir den cat-Befehl verwenden:

$ cat /proc/meminfo
MemTotal:        2035428 kB
MemFree:          195028 kB
MemAvailable:    1692724 kB
Buffers:          108020 kB
Cached:          1451608 kB
SwapCached:           16 kB
Active:           539536 kB
Inactive:        1072496 kB
Active(anon):      33308 kB
Inactive(anon):    27948 kB
Active(file):     506228 kB
Inactive(file):  1044548 kB
Unevictable:       18512 kB
Mlocked:           18512 kB
SwapTotal:        524284 kB
SwapFree:         524016 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:         70920 kB
Mapped:           171140 kB
Shmem:               676 kB
KReclaimable:     134660 kB
Slab:             179536 kB
SReclaimable:     134660 kB
SUnreclaim:        44876 kB
KernelStack:        2156 kB
PageTables:         2324 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     1541996 kB
Committed_AS:     383328 kB
VmallocTotal:   34359738367 kB
VmallocUsed:       19176 kB
VmallocChunk:          0 kB
Percpu:              828 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
FileHugePages:         0 kB
FilePmdMapped:         0 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:               0 kB
DirectMap4k:      102256 kB
DirectMap2M:     1994752 kB
DirectMap1G:           0 kB

Die Datei enthält Informationen über freien und belegten Speicher (sowohl physisch als auch Swap) auf dem System sowie den gemeinsam genutzten Speicher und die vom Kernel verwendeten Puffer.

Einige der wichtigen Felder sind:

  • MemTotal — Gesamtmenge an physischem RAM im System in Kilobyte.
  • MemFree — Die Menge an physischem RAM in Kilobyte, die vom System ungenutzt gelassen wird.
  • Puffer — Die Größe des physischen Arbeitsspeichers in Kilobyte, der für Dateipuffer verwendet wird.
  • Zwischengespeichert — Die Größe des physikalischen Arbeitsspeichers in Kilobyte, der als Cache-Speicher verwendet wird.
  • SwapCached — Die Menge an Auslagerungsspeicher in Kilobyte, die als Cache-Speicher verwendet wird.

Schlussfolgerung

/proc/cpuinfo und /proc/meminfo sind Teil des virtuellen /proc-Dateisystems. Diese enthalten wichtige und detaillierte Informationen über Prozessor und Speicher des Systems. Normale Benutzer benötigen solche Informationen möglicherweise nicht, Systemadministratoren finden sie jedoch möglicherweise nützlich. Um mehr über die proc-Dateien zu erfahren, lesen Sie dies.


Linux
  1. Untersuchen des Linux /proc-Dateisystems

  2. Linux:Unterschied zwischen /dev/console , /dev/tty und /dev/tty0?

  3. /proc/[pid]/pagemaps und /proc/[pid]/maps | Linux

  4. Wie finde ich heraus, aus welchem ​​Ordner ein Prozess läuft?

  5. Sollten Websites gemäß der empfohlenen Verwendung in /var/ oder /usr/ leben?

Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

Linux – Zusammenführen von /usr/bin und /usr/sbin in /bin (gnu/linux)?

Eine Anleitung zum Dateisystem „/proc“ unter Linux

Die Dateien /proc/mounts, /etc/mtab und /proc/partitions verstehen

Wann sollte ich /dev/shm/ verwenden und wann sollte ich /tmp/?

Gelöschte Datei wiederherstellen, in die gerade geschrieben wird