从Debian到Arch,以及多个不同的设备上,我都看到了ACPI的错误。我知道ACPI处于高水平:
ACPI ()是一种用于有效处理桌面和移动计算机功耗的行业规范。
我还意识到,在基于*nix的发行版上,这往往是一个明显的错误,因为它们的内核反馈往往比Window$更详细。
我的问题如下:
发布于 2018-10-21 09:34:49
尽管ACPI最初是一个“处理功耗的接口”,但它已经变得更加复杂,并且还指定了其他事情,比如硬件资源的分配。
问题是,ACPI规范相当复杂。硬件供应商通常会违反ACPI规范,但是当他们发布带有Windows驱动程序的硬件时,编写驱动程序的方式使得驱动程序能够很好地处理损坏的ACPI数据,没有人注意到这一点。直到您在Linux上尝试使用相同的方法,Linux根据规范要求数据,然后得到这些错误。
更有趣的是,ACPI数据可能因操作系统而异( ACPI有查询OS的函数),但查询函数有时起作用,有时不起作用,有时试图为Linux提供正确的值,而保留Windows的坏值,因为它们恰好与驱动程序一起工作,有时为Linux提供完全未经测试的值等等。您可以看到这是怎么回事:这一切都一团糟。
我个人的“最佳实践”它:忽略任何错误,直到你需要的事情出错。在这种情况下,修改操作系统识别,将内核参数作为重写来处理,如果其他操作失败,请坐下来,对ACPI表进行分解,并试图找出到底出了什么问题。最后一点都不好玩。
https://unix.stackexchange.com/questions/476600
复制相似问题