GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa fanno i parametri del kernel acpi_osi=linux e acpi_backlight=vendor?

I parametri del kernel sono documentati su kernel.org.

Per capire cosa acpi_osi In tal caso, è più o meno necessario sapere come funziona ACPI. ACPI è costituito dalle cosiddette tabelle che il BIOS carica nella RAM prima dell'avvio del sistema operativo. Alcuni contengono semplicemente informazioni sui dispositivi essenziali sulla scheda madre in un formato fisso, ma alcuni come la tabella DSDT contengono codice AML. Questo codice viene eseguito dal sistema operativo e fornisce al sistema operativo una struttura ad albero che descrive molti dispositivi sulla scheda madre e funzioni richiamabili che vengono eseguite dal sistema operativo quando ad es. il risparmio energetico è abilitato. Il codice AML può chiedere al sistema operativo quale sistema operativo è chiamando _OSI funzione. Questo è spesso utilizzato dai fornitori per creare soluzioni alternative, ad es. sui bug in alcune versioni di Windows.

Poiché molti fornitori di hardware testano i propri prodotti solo con l'ultima versione (a quel tempo) di Windows, i percorsi di codice "normali" senza soluzioni alternative sono spesso difettosi. Per questo motivo Linux di solito risponde sì quando gli viene chiesto se è Windows. Anche Linux rispondeva sì quando gli veniva chiesto se si trattava di "Linux", ma ciò faceva sì che i fornitori di BIOS aggirassero bug o funzionalità mancanti nell'ultima versione del kernel Linux (a quel tempo) invece di aprire segnalazioni di bug o fornire patch. Quando questi bug sono stati corretti, le soluzioni alternative hanno causato inutili penalizzazioni delle prestazioni e altri problemi per tutte le versioni successive di Linux.

acpi_osi=Linux fa sì che Linux risponda di nuovo sì quando gli viene chiesto se è "Linux" dal codice ACPI, consentendo così al codice ACPI di abilitare soluzioni alternative per Linux e/o disabilitare soluzioni alternative per Windows.

acpi_backlight=vendor cambia l'ordine in cui vengono controllati i driver ACPI per la retroilluminazione. Di solito Linux usa il generico video driver, quando ACPI DSDT fornisce un dispositivo di retroilluminazione che rivendica la compatibilità standard e controllerà solo altri driver specifici del fornitore se tale dispositivo non viene trovato. acpi_backlight=vendor inverte questo ordine, in modo che i driver specifici del fornitore vengano provati per primi.


Il primo risultato di Google per "acpi_osi" spiega acpi_osi=linux :

[...] il BIOS di solito disabilita la funzionalità se Windows non viene rilevato [...] per impostazione predefinita il kernel risponde false quando viene chiesto se Linux è in esecuzione. acpi_osi=Linux dice al kernel di rispondere true.(vedi drivers/acpi/osl.c ) Sembra che tu debba dire la verità al BIOS.

Il secondo risultato di Google per "acpi_osi" spiega acpi_backlight=vendor :

acpi_backlight=vendor preferirà il driver specifico del fornitore (ad es. thinkpad_acpi , sony_acpi , ecc.) invece dell'ACPI video.ko autista.


Linux
  1. Linux:cosa sono la memoria alta e la memoria insufficiente su Linux?

  2. Linux:quali sorgenti di entropia vengono utilizzate dal kernel Linux?

  3. Come funzionano le macro probabili/improbabili nel kernel di Linux e qual è il loro vantaggio?

  4. Qual è la differenza tra module_init e init_module in un modulo del kernel Linux?

  5. Qual è l'attuale sorgente del kernel Linux?

Qual ​​è la differenza tra i kernel macOS e Linux

Linux Kernel 5.9:Novità e come eseguire l'aggiornamento

Che cos'è la shell in Linux?

Qual è la differenza tra Linux e Unix?

Qual è il significato dei caratteri di sottolineatura iniziali e finali negli identificatori del kernel Linux?

Qual è l'interfaccia per le chiamate di sistema ARM e dove è definita nel kernel Linux?