据我了解,ACPI定义了一种通用的硬件编程模型,其中操作系统依赖OEM固件提供的AML(ACPI机器语言)代码来操纵硬件。
为了执行AML代码,操作系统必须合并AML解释器。
因此,在我看来固件开发人员使用AML在平台硬件和操作系统之间提供控制接口。
但是我们真的需要AML吗?
我认为最终可以通过平台的native指令<<< [仅配置硬件。因此,AML解释程序必须将AML转换为本机指令,否则无法在平台上执行。
但是,使用像AML这样的中间语言
有什么意义呢?我的意思是,尽管据说AML是platform-independent,这意味着我可以使用AML以non-native的方式描述我的平台。 但是实际上,AML是平台固件的一部分。整个固件已经内置在目标平台的本机指令中。因此,使固件的一小部分与平台无关有什么好处?]
为什么不仅仅使用本机指令?还有must可以让操作系统也使用它。而且这种方式的操作系统根本不需要AML解释器。可以避免很多复杂性。据我了解,ACPI定义了一种通用的硬件编程模型,其中操作系统依赖OEM固件提供的AML(ACPI机器语言)代码来操纵硬件。为了...