Was bewirkt der Kernel-Boot-Parameter "set acpi_osi = Linux"?


48

Ich habe ein Problem mit der Helligkeitsregelung meines Laptops, der Intel HD-Grafik und Ubuntu 10.10 64-Bit hat. Also , wenn ich für eine Korrektur gesucht fand ich , dass ein gemeinsamer Vorschlag ist die GRUB - Datei Zeile zu bearbeiten, GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"zu GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi=Linux acpi_backlight=vendor"

Die Dokumentation für den Boot-Parameter acpi_osisagt:

acpi_osi=   [HW,ACPI] Modify list of supported OS interface strings
            acpi_osi="string1"      # add string1 -- only one string
            acpi_osi="!string2"     # remove built-in string2
            acpi_osi=               # disable all strings

- http://redsymbol.net/linux_boot_parameters/

Ich finde keinen Grund, warum dies ein Laptop-Problem beheben sollte .

Kann mir jemand sagen, was die Kernel-Boot-Option acpi_osi=Linuxmacht?

Antworten:


29

Ich denke du meinst =Windows, nicht Linux. Das Argument weist den Kernel auf das ACPI - BIOS zu liegen und ihm zu sagen , dass es etwas ist , andere als Linux (weshalb die Angabe Linux ist dumm).

Ich bin mir sicher, dass er meint, was er geschrieben hat. Ja, BIOS deaktiviert normalerweise die Funktionalität, wenn Windows nicht erkannt wird, aber die Angabe von Linux ist nicht albern, da der Kernel standardmäßig falsch antwortet, wenn gefragt wird, ob Linux ausgeführt wird. acpi_osi=Linuxteilt dem Kernel mit, wahr zu antworten (siehe drivers/acpi/osl.c). Es scheint, dass Sie dem BIOS die Wahrheit sagen müssen.

Es ist entweder ein Treiberproblem oder eine falsche ACPI-Implementierung. Sie müssten Ihre dsdtherausnehmen und sie zerlegen, um den Code zu überprüfen und ein besseres Verständnis dafür zu erhalten, was unter Linux OSI defekt oder deaktiviert ist.

Referenz


2
Dies war sehr nützlich für meine Ubuntu 14.04-Installation auf meinem Dell Vostro 3750 mit NVIDIA GeForce GT 525M und Intel HD-Grafik.
Jason

14

Der Parameter fügt "Linux" zur Liste der unterstützten Betriebssysteme hinzu, die der Kernel erhält, wenn er das BIOS fragt "Hey, was unterstützen Sie?". Wenn Sie diese Zeichenfolge später hinzufügen, werden Dinge, die ACPI verwenden, wie folgt lauten: "Hey, ich habe eine Funktion, die ACPI benötigt, und ich verwende Linux. Welche Plattformen werden unterstützt?" und sie erhalten eine Liste mit Linux zurück.

Wenn Sie diese Einstellung auf Linux setzen, deaktivieren Sie grundsätzlich alle Überprüfungen, um festzustellen, ob das BIOS angibt, dass bestimmte ACPI-Funktionen mit bestimmten Betriebssystemen funktionieren. Und das macht oft Dinge, die vorher verborgen waren. Aber es könnte auch Dinge kaputt machen, die früher funktionierten, in [hoffentlich] seltenen Fällen. :)


2

Ich denke du meinst =Windows, nicht Linux. Das Argument weist den Kernel auf das ACPI - BIOS zu liegen und ihm zu sagen , dass es etwas ist , andere als Linux (weshalb die Angabe Linux ist dumm). Es ist bekannt, dass bestimmte BIOS überprüfen, ob sie unter Windows oder einer bestimmten Windows-Version ausgeführt werden, und die Funktionalität deaktivieren, wenn dies nicht der Fall ist. Mit diesem Parameter können Sie diese Idiotie umgehen.


Es heißt nur = Linux. livinginjava.blogspot.com/2010/11/…
AIB

Hier ist ein weiterer Link, der die gleiche Fehlerbehebung für Fanprobleme enthält ... php? f = 42 & t = 56323
AIB
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.