现代操作系统中 BIOS 的功能是什么?开机后还能用吗?是否有某种 BIOS API?
最佳答案
BIOS 仍然是在刚刚启动的 CPU 上运行的第一件事,负责启动主板硬件、设置基本的芯片组模式和寄存器、初始化一些硬件以及运行加载内核的代码。
加载内核后,BIOS 通常不使用,它依赖于 16 位执行环境,而不是现代内核运行的 32 位或 64 位保护模式环境。
引导加载程序通常确实需要 BIOS IO 调用才能将内核放入内存。即使在这个角色中,BIOS 也被更新的引导时软件(如 Coreboot)所取代。提供更快的启动时间。 EFI 有朝一日将取代传统的 BIOS,并有望取代引导加载程序,在从存储中加载内核后直接将控制权传递给内核。
发现的硬件配置、内存范围设置和 ACPI 元数据表可能是加载内核后操作系统使用的唯一基于 BIOS 的数据。任何可运行的 ACPI 代码都被编码为 ACPI 机器语言并由操作系统解释。
任何关于 MS-DOS 汇编编程的优秀传统书籍都将包含有关 BIOS 编程接口(interface)的信息。查看 The Art of ASSEMBLY LANGUAGE PROGRAMMING
关于api - 现代操作系统如何使用 BIOS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2540266/