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

Linux – in diesen Adressen enthalten?

Ich arbeite an der MUlti-processor record-replay Funktion einer virtuellen Maschine.
Ich habe ein Protokoll von nicht deterministischen Speicherzugriffen in der virtuellen Maschine durch virtuelle CPUs.
Ein sehr hoher Anteil davon zum Kernel-Space-Speicher, dh über 0Xc0000000.
Hier ist zum Beispiel eine Liste der 10 Kernel-Speicheradressen, auf die am häufigsten zugegriffen wird, nachdem der SPLASH-Benchmark in der virtuellen Maschine ausgeführt wurde

0xfffb5000                                                    
0xc1779db0                                               
0xc18b6910                                                      
0xc1771a44                                                      
0xc1771a40                                                      
0xc1779e00                                                      
0xc18b67e0                                                      
0xc18b693c                                                      
0xc18b67f0                                                      
0xfffa1000

Ich möchte wissen, ob es eine Möglichkeit gibt, herauszufinden, was genau in diesen Speicheradressen ist … ist es der Kernel-Stack, die vsyscall-Seite, die Bereitschaftsliste des Schedulers …
Damit ich mir dann eine Möglichkeit vorstellen kann, diesen Overhead zu lösen Aufnahmewiedergabe beschleunigen….
Hinweise, wo man im Kernel-Code nachsehen kann, sind willkommen

Danke

Akzeptierte Antwort:

Auf einer physischen Maschine würde ich einen Blick auf /boot/System.map* werfen (wie auch immer diese Datei in Ihrer Distribution heißt).

Ich vermute, dass das Gleiche innerhalb einer KVM-VM zutrifft.


Linux
  1. Führen Sie eine virtuelle Linux-Maschine in Podman aus

  2. So entfernen Sie KVM-basierte virtuelle Maschinen unter Redhat Linux

  3. Konfigurieren des automatischen Starts der virtuellen Maschine auf dem Redhat Linux-Host

  4. So migrieren Sie eine Bare-Metal-Linux-Installation auf eine virtuelle Maschine

  5. Android - Wie führe ich Windows oder Linux als virtuelle Maschine auf Android aus?

So erweitern Sie die Festplattengröße der virtuellen KVM-Maschine unter Linux

Erstellen Sie eine virtuelle KVM-Maschine mit dem Qcow2-Image unter Linux

Erstellen einer Sicherung von Daten, die in einer virtuellen Linux-Maschine gespeichert sind

Verwendung von Tails Linux OS in VirtualBox Virtual Machine

Eine einfache Anleitung zur Installation von Kali Linux auf einer virtuellen Maschine

Alle Methoden zum Ausführen einer virtuellen Maschine auf einem Linux-System