GNU/Linux >> Znalost Linux >  >> Linux

Jaký je význam úvodních a koncových podtržítek v identifikátorech jádra Linuxu?

Existuje několik případů:

  • Ve veřejných hlavičkách, tj. cokoli, co knihovna libc převezme a vloží pod /usr/include/linux , normy specifikují, které symboly by měly být definovány, a jakékoli další symboly specifické pro systém musí začínat podtržítkem a velkým písmenem nebo dvěma podtržítky. To je důvod pro __KERNEL__ zejména proto, že se používá v hlavičkách, které jsou součástí jádra i knihovny libc a některé deklarace se liší.
  • V interním kódu se obvykle používá symbol __something je tahounem pro something vyjma nějaké správy, často zamykání. To je důvod pro věci jako __d_lookup . Podobná konvence pro systémová volání je, že sys_something je vstupní bod systémového volání, který zpracovává přepínání kontextu do az jádra a volá do_something dělat skutečnou práci.
  • _t suffix je standardní knihovní konvence pro typové definice. Např. size_t , ptrdiff_t , foff_t a taková. Kód jádra se řídí touto konvencí i pro své interní typy.

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

  2. Co znamená EXPORT_SYMBOL v kódu jádra Linuxu?

  3. Jaké je rozhraní pro systémová volání ARM a kde je definováno v jádře Linuxu?

  1. Jaká jsou nativní volání OS/systému Windows a Linuxu prováděná z malloc()?

  2. Co je velká a nízká paměť v Linuxu?

  3. Co dělají parametry jádra acpi_osi=linux a acpi_backlight=vendor?

  1. Co je to jádro Linuxu a měli byste upgradovat na nejnovější jádro?

  2. Co je to linuxový kontejner a linuxový hypervizor?

  3. Jaký je význam curl -k -i -X ​​v Linuxu?