/***************** * proc-Dateisystem*****************/ (1) Eigenschaften des /proc-Dateisystems und Beschreibung der /proc-Dateien Das /proc-Dateisystem ist ein spezielles, von der Software erstelltes Dateisystem. Der Kernel verwendet es, um Informationen nach außen zu exportieren. Das /proc-System existiert nur im Speicher und belegt keinen externen Speicherplatz. Jede Datei unter /proc ist an eine Kernelfunktion gebunden, die den Inhalt der Datei dynamisch generiert, wenn der Benutzer die Datei liest. Sie können Kernelparameter auch ändern, indem Sie /proc-Dateien schreiben Dateianalyse unter dem Verzeichnis /proc /proc/$pid Informationsverzeichnis über den Prozess $pid. Jeder Prozess hat ein Verzeichnis unter /proc, das nach seiner Prozessnummer benannt ist. Beispiel: $>strings -f /proc/[0-9]*/cmdline
(2) Implementieren Sie selbst eine /proc-Datei Die Header-Datei <linux/proc_fs.h> muss eingebunden werden, die Funktion ist in /fs/proc/generic.c definiert. a. Erstellen Sie eine Datei unter /proc Rufen Sie create_proc_read_entry auf, um eine neue Datei unter /proc zu erstellen Struktur proc_dir_entry *create_proc_read_entry( const char *Name, mode_t-Modus, Struktur proc_dir_entry *base, lese_proc_t *lese_proc, ungültig * Daten) b. Deinstallieren Sie Dateien unter /proc Verwenden Sie remove_proc_entry, um Proc-Dateien zu deinstallieren void remove_proc_entry( const char *Name, Struktur proc_dir_entry *übergeordnet); c. Definieren Sie eine Funktion, die Daten zurückgibt Wenn der Prozess die /proc-Datei liest, weist der Kernel eine Speicherseite zu (d. h. einen Speicherblock mit PAGE_SIZE Bytes) und der Treiber gibt die Daten zurück, die über diese Speicherseite in den Benutzerbereich geschrieben werden sollen. typedef int (read_proc_t)(char *Seite, char **Start, off_t aus, int-Anzahl, int *eof, void *data); Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: So rufen Sie die Browser-Sharing-Funktion in Vue auf
>>: So aktivieren Sie das langsame Abfrageprotokoll in MySQL
1. Problem Es gibt eine Tabelle wie unten gezeigt...
Warum wird NULL so oft verwendet? (1) Javas Null ...
Inhaltsverzeichnis Vorne geschrieben Zwei-Wege-Ve...
Einführung Kennen Sie wirklich den Unterschied zw...
Inhaltsverzeichnis Übergangs-Hook-Funktion Benutz...
In diesem Artikel wird der spezifische Code des A...
Docker-Installation Installieren von Abhängigkeit...
In diesem Artikel wird der spezifische Code von j...
Spezifische Methode: 1. Öffnen Sie die Eingabeauf...
Logo-Optimierung: 1. Das Logobild sollte so klein...
MySQL-Speicher-Engine: Der MySQL-Server verwendet...
Das jQuery-Plug-In implementiert das Dashboard zu...
1. Gehen Sie zur offiziellen GraphVis-Website, um...
In diesem Artikel wird der spezifische Code von j...
<br />Originaltext: http://andymao.com/andy/...