Die Kernel - Quellen enthalten , Funktionen und Datenstrukturen , die dokumentiert sind, beispielsweise in panic.c
:
/**
* panic - halt the system
* @fmt: The text string to print
*
* Display a message, then perform cleanups.
*
* This function never returns.
*/
void panic(const char *fmt, ...)
Anstatt jedes Mal die Quellen durchzugehen, wäre es nützlich, diese APIs als Manpages anzuzeigen und dieses vorhandene Dokumentationsframework zu nutzen.
Wie installiert / erstellt man die Kernel Section 9 Manpages ( /usr/share/man/man9
), die die oben genannten Funktionen und Datenstrukturen dokumentieren?
kernel
man
documentation
kakeh
quelle
quelle
Antworten:
Der Inhalt wird direkt (siehe auch dies ) aus den Quell- C-Dateien 1 analysiert :
Dies bedeutet, dass nur solche formatierten Kommentare auf diese Weise extrahiert werden können und dass Sie das vom Prozess verwendete Perl- Skript nutzen können:
kernel-doc
make
und deshalb, dass Sie nicht auf das Mandocs- Ziel beschränkt sind :
Es gibt auch treiberspezifische Textdateien im Kernel-Repository / in der Quelle. Allgemeiner gesagt , ihr Linux - man-pages Projekt ( man1 durch man8 ist) verfügbar zum Download bereit . In einem letzten Hinweis verwaltet kernel.org auch einige Ausgabedokumentationen .
1. Der Kernel ist nicht der einzige Fall, in dem eine solche Technik zum Generieren von Manpages verwendet wird. GNU Coreutils ist ein solcher anderer Fall; Die meisten seiner Manpages werden mithilfe der Ausgabe des Inhalts generiert , dessen
command --help
Inhalt in der Verwendungsfunktion der Utility-Quelldatei ( 1 2 ) enthalten ist.quelle
Makefile:19: /Documentation/DocBook/media/Makefile: No such file or directory
Documentation/
ist nicht in/
seiner Gegenwart in/lib/modules/3.2.0-57-generic-pae/build/
./scripts/kernel-doc -man ./**/*.c >mydoc
im obersten Verzeichnis der Quellen versuchen und sehen, ob Sie nicht alle direkt in eine Datei einfügen können, indem Sie die Quellen direkt analysieren .Angenommen, Sie verwenden Ubuntu.
oder ähnlich (wählen Sie die richtige Version). Es gibt auch ein anderes Dokumentationspaket
aber das ist html.
quelle
man alloc_register_region
sagte aber keine manuelle Eingabe docs sind anders als man pages ??Laden Sie den Kernel-Quellcode herunter und führen Sie ihn im Quellverzeichnis aus
Nachdem die Manndokumente erstellt wurden, führen Sie sie aus
Dadurch werden die Handbuchseiten in installiert
/usr/local/man/man9/
. Jetzt können Sie Manpages durch Eingabe anzeigenman <api-name>
oder beim Bearbeitenvim
einfach Küber den API-Namen drücken .quelle