GNU/Linux >> Znalost Linux >  >> Linux

Jak vytvořit jádro Část 9 Manuálové stránky Které funkce dokumentu, datové struktury a záhlaví?

Zdrojové kódy jádra obsahují funkce a datové struktury které jsou zdokumentovány například v 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, ...)

Místo toho, abyste pokaždé procházeli zdroje, bylo by užitečné zobrazit tato rozhraní API jako manpage a využít tento existující dokumentační rámec.

Jak nainstalujete/vytvoříte manuálové stránky sekce 9 jádra (/usr/share/man/man9 ), které dokumentují výše uvedené funkce a datové struktury?

Přijatá odpověď:

Obsah je analyzován přímo (viz také toto) ze zdroje Soubory .c:

Aby bylo možné poskytnout vestavěnou, „C“ přátelskou, snadno udržovatelnou, ale
konzistentní a extrahovatelnou dokumentaci funkcí a datových
struktur v jádře Linuxu, linuxové jádro přijalo
konzistentní styl pro dokumentaci funkcí a jejich parametrů a
struktur a jejich členů.

Formát této dokumentace se nazývá formát kernel-doc. Je to
zdokumentováno v tomto souboru Documentation/kernel-doc-nano-HOWTO.txt.

Tento styl vkládá dokumentaci do zdrojových souborů pomocí
několika jednoduchých konvencí. Perl skript scripts/kernel-doc, některé šablony SGML
v Documentation/DocBook a další nástroje rozumí těmto
konvencím a používají se k extrahování této vložené dokumentace do
různých dokumentů.
[…]

Úvodní značka komentáře „/**“ je vyhrazena pro komentáře kernel-doc.
Skripty kernel-doc budou brát v úvahu pouze komentáře takto označené,
a všechny takto označené komentáře musí být v kernel-doc formát.

To znamená, že pouze takto formátované komentáře lze extrahovat tímto způsobem a že můžete využít kernel-doc Perl skript používaný make proces:

kernel-doc [ -docbook | -html | -html5 | -text | -man | -list ]
  [ -no-doc-sections ]
  [ -function funcname [ -function funcname ...] ]
  c file(s)s > outputfile

a proto nejste omezeni na mandocs cíl:

Po instalaci „make psdocs“, „make pdfdocs“, „make htmldocs“ nebo
„make mandocs“ vykreslí dokumentaci v požadovaném formátu.

V úložišti/zdroji jádra jsou také textové soubory specifické pro ovladače. Obecněji řečeno, jejich projekt manuálových stránek pro Linux (muž1 prostřednictvím man8 ) je k dispozici ke stažení. Na poslední poznámku kernel.org také udržuje určitou výstupní dokumentaci.

Související:"sudo:apt-get:příkaz nenalezen." po odstranění některých balíčků?
Linux
  1. Jak zkontrolovat, zda je potrubí prázdné, a spustit příkaz na datech, pokud není?

  2. Linux – Jak linuxové jádro zná hlavní a vedlejší čísla zařízení?

  3. Jak fungují pravděpodobná/nepravděpodobná makra v linuxovém jádře a jaký je jejich přínos?

  1. Jak ladit linuxové jádro pomocí GDB a QEMU?

  2. Jak mohu nechat tcpdump zapisovat do souboru a standardní výstup příslušných dat?

  3. Soubor, ve kterém je definována datová struktura pro tabulku Global Descriptor a Local Descriptor?

  1. jak zajistit, aby pager méně reagoval na rolovací kolečko a nevymazával obrazovku

  2. Jak nastavit umístění (a název) souboru výpisu jádra?

  3. Jak napsat bash skript nebo automatizovat otevření vi a upravit dokument?