Parametry jádra jsou zdokumentovány na kernel.org.
Abyste pochopili, co acpi_osi
musíte zhruba vědět, jak ACPI funguje. ACPI se skládá z takzvaných tabulek, které BIOS načte do RAM před spuštěním operačního systému. Některé z nich jednoduše obsahují informace o základních zařízeních na základní desce v pevném formátu, ale některé jako tabulka DSDT obsahují kód AML. Tento kód je spouštěn operačním systémem a poskytuje OS stromovou strukturu popisující mnoho zařízení na základní desce a volatelné funkce, které OS spouští, když např. je povolena úspora energie. Kód AML se může zeptat OS, který OS to je, voláním _OSI
funkce. To je často používáno prodejci k řešení, např. kolem chyb v některých verzích Windows.
Protože mnoho výrobců hardwaru testuje své produkty pouze s (v té době) nejnovější verzí Windows, „běžné“ cesty kódu bez řešení jsou často chybné. Z tohoto důvodu Linux na otázku, zda je to Windows, obvykle odpovídá ano. Linux také odpovídal ano, když byl dotázán, zda je to „Linux“, ale to způsobilo, že prodejci BIOSu obcházeli chyby nebo chybějící funkce v (v té době) nejnovější verzi linuxového jádra, místo aby otevírali hlášení o chybách nebo poskytovali záplaty. Když byly tyto chyby opraveny, způsobovala náhradní řešení zbytečné snížení výkonu a další problémy pro všechny pozdější verze Linuxu.
acpi_osi=Linux
způsobí, že Linux na otázku, zda se jedná o "Linux" kódem ACPI, opět odpoví ano, což umožňuje kódu ACPI povolit náhradní řešení pro Linux a/nebo zakázat náhradní řešení pro Windows.
acpi_backlight=vendor
změní pořadí, ve kterém jsou kontrolovány ovladače ACPI pro podsvícení. Linux obvykle používá obecný video
ovladač, když ACPI DSDT poskytuje zařízení pro podsvícení s nárokem na standardní kompatibilitu a zkontroluje pouze ovladače specifické pro jiné dodavatele, pokud takové zařízení není nalezeno. acpi_backlight=vendor
obrací toto pořadí, takže nejprve jsou vyzkoušeny ovladače specifické pro dodavatele.
První výsledek Google pro „acpi_osi“ vysvětluje acpi_osi=linux
:
[...] BIOS obvykle zakáže funkci, pokud není detekován Windows [...] ve výchozím nastavení odpoví jádro na dotaz, zda běží Linux.
acpi_osi=Linux
říká jádru, aby odpovědělo true. (vizdrivers/acpi/osl.c
) Zdá se, že musíte BIOSu říci pravdu.
Druhý výsledek Google pro "acpi_osi" vysvětluje acpi_backlight=vendor
:
acpi_backlight=vendor
bude preferovat ovladač specifický pro dodavatele (např.thinkpad_acpi
,sony_acpi
, atd.) namísto ACPIvideo.ko
řidič.