bios在系统启动后还有用吗?
1.Boot time的代码和数据是只在启动过程需要的。包括几乎所有的协议栈、UEFI driver model的代码等;数据包括代码需要的数据和page table等。在启动完毕后会被释放,操作系统可以重用。
2.Runtime的代码和数据在启动阶段也有可能会用到,但更多的是留个尾巴到操作系统启动后。包括UEFI Runtime Service(UEFI Spec定义,其中有variable存储,RTC等)、SMM代码和ACPI的AML代码等;数据包括各种ACPI table和一些预留的内容(Reserved)。它的内容是不会释放给操作系统的,也就是操作系统看起来神秘消失的内存。
如果比较两者的大小的话,用一句名人的话讲,是一个指头和九个指头的关系。BIOS中Boot time的内容占据绝大多数,而这些内容都会被清掉而不会再起作用,而Runtime的东西在OS起来后还在不知不觉的为大家服务。