O que os parâmetros do kernel acpi_osi = linux e acpi_backlight = vendor fazem?

12

Eu tive problemas com o controle de brilho da tela em meu laptop e corrigi-o adicionando os parâmetros acpi_osi=linux e acpi_backlight=vendor ao arquivo grub.cfg . Gostaria de saber o que esses parâmetros significam e por que funcionam.

    
por user91655 23.01.2014 / 18:59

3 respostas

15

Os parâmetros do kernel são documentados no kernel.org .

Para entender o que o acpi_osi faz, você precisa saber como o ACPI funciona. A ACPI consiste nas chamadas tabelas que o BIOS carrega na RAM antes do sistema operacional ser iniciado. Alguns deles simplesmente contêm informações sobre dispositivos essenciais na placa-mãe em um formato fixo, mas alguns como a tabela DSDT contêm código AML. Este código é executado pelo sistema operacional e fornece ao sistema operacional uma estrutura em árvore que descreve muitos dispositivos na placa principal e funções que podem ser chamadas que são executadas pelo sistema operacional quando, por exemplo. a economia de energia está ativada. O código AML pode perguntar ao SO qual sistema operacional está chamando a função _OSI . Isso é freqüentemente usado pelos fornecedores para fazer soluções alternativas, por exemplo em torno de erros em algumas versões do Windows.

Como muitos fornecedores de hardware testam seus produtos apenas com a (na época) versão mais recente do Windows, os caminhos de código "regulares" sem as soluções alternativas geralmente são problemáticos. Por causa disso, o Linux geralmente responde sim quando perguntado se é o Windows. O Linux também costumava responder sim quando perguntado se era "Linux", mas que fazia com que os fornecedores de BIOS contornar bugs ou funcionalidades ausentes na (na época) versão mais recente do kernel do Linux em vez de abrir relatórios de bugs ou fornecer patches. Quando esses bugs foram corrigidos, as soluções causaram penalidades de desempenho desnecessárias e outros problemas para todas as versões posteriores do Linux.

acpi_osi=Linux faz o Linux responder sim novamente quando perguntado se é "Linux" pelo código ACPI, permitindo assim que o código ACPI ative soluções alternativas para o Linux e / ou desabilite soluções alternativas para o Windows.

acpi_backlight=vendor altera a ordem na qual os drivers da ACPI para backlights são verificados. Normalmente, o Linux usará o driver genérico video , quando o ACPD DSDT fornecer um dispositivo de luz de fundo que declare compatibilidade padrão e só verificará outros drivers específicos do fornecedor se tal dispositivo não for encontrado. acpi_backlight=vendor inverte esta ordem, para que os drivers específicos do fornecedor sejam testados primeiro.

    
por 07.03.2016 / 04:28
3

Então ... você tentou pesquisar no Google?

O primeiro resultado do Google para "acpi_osi" " explica acpi_osi=linux :

[...] BIOS's usually disable functionality if Windows is not detected [...] by default the kernel responds false when asked if Linux is running. acpi_osi=Linux tells the kernel to respond true.(see drivers/acpi/osl.c) It seems that you need to tell the BIOS the truth.

O segundo resultado do Google para "acpi_osi" explica acpi_backlight=vendor :

acpi_backlight=vendor will prefer vendor specific driver (e.g. thinkpad_acpi, sony_acpi, etc.) instead of the ACPI video.ko driver.

    
por 23.01.2014 / 19:16
-2

η λυση ειναι αυτη την δοκιμασα

Abra o cmd su end sudo

nano / etc / default / grub

, você precisará privs root para editar.

Vá para a linha:

GRUB_CMDLINE_LINUX_DEFAULT="silencioso"

e adicione os parâmetros

GRUB_CMDLINE_LINUX_DEFAULT="acpi_osi silencioso = Linux acpi_backlight = fornecedor"

Salvar.

Em seguida, emita o comando:

grub-mkconfig -o /boot/grub/grub.cfg

Novamente, você precisará de privs root.

Reinicie

    
por 21.04.2018 / 09:29