计算机如何知道文件系统中引导加载程序的位置?是否所有操作系统和所有计算机(可能不是所有计算机,但所有体系结构)都指向引导加载程序的公共文件?我知道Raspberry Pi总是从SD卡的第一个分区加载bootcode.bin。 PC是否共享这样的公共文件?
答案 0 :(得分:3)
主引导记录占用第一个硬盘的前512个字节,并且是BIOS加载的第一个将控制权移交给能够引导所需操作系统的程序的东西。通常,引导加载程序安装在MBR中,删除其先前的内容。 (在双启动情况下)它们可以共存,这被称为多启动。
答案 1 :(得分:3)
不同架构之间存在差异。但通常有一个寄存器,cpu从复位后读取第一条指令开始执行。该寄存器通常包含用于组件跳转操作的位到另一个存储器地址,该地址是引导代码的地址。在下一个时钟周期,它将获取该地址的操作,依此类推。
硬件设计人员必须确定如何实现。例如,第一条指令可能是从包含引导代码的eeprom芯片上的存储器地址读取。
就PC而言,主板有自己的启动过程,可以加载操作系统启动加载程序。因此,你仍然可以启动电脑并看到没有安装操作系统的BIOS的原因
或者至少那是我从Comp中记得的东西。拱。永远的课。