Operating system 从Unix角度启动计算机时会发生什么?

Operating system 从Unix角度启动计算机时会发生什么?,operating-system,boot,Operating System,Boot,谁能告诉我如何理解启动Unix系统时会发生什么?与加载“BIOS”一样,它会执行外围设备测试等,直到您得到一个shell?这取决于系统,但一般来说,您希望从查看初始化过程开始: 我还推荐“UNIX环境中的高级编程”(我认为现在是第三版),它详细介绍了这一点和许多类似的问题。这取决于系统,但一般来说,您希望从查看初始化过程开始: 我还推荐“UNIX环境中的高级编程”(我想现在是第三版),它详细介绍了这一点和许多类似的问题。为了简化,BIOS会按定义的顺序检查可引导设备, 找到的第一个扇区被复制到内

谁能告诉我如何理解启动Unix系统时会发生什么?与加载“BIOS”一样,它会执行外围设备测试等,直到您得到一个shell?

这取决于系统,但一般来说,您希望从查看初始化过程开始:


我还推荐“UNIX环境中的高级编程”(我认为现在是第三版),它详细介绍了这一点和许多类似的问题。

这取决于系统,但一般来说,您希望从查看初始化过程开始:


我还推荐“UNIX环境中的高级编程”(我想现在是第三版),它详细介绍了这一点和许多类似的问题。

为了简化,BIOS会按定义的顺序检查可引导设备, 找到的第一个扇区被复制到内存中。
然后,将内存位置0800十六进制的代码设置为程序计数器寄存器,并将执行传送到可引导介质。

为了简化操作,BIOS会按定义的顺序检查可引导设备, 找到的第一个扇区被复制到内存中。
然后将内存位置0800十六进制的代码设置为程序计数器寄存器,并将执行传递到可引导介质。

对于每个unix,它是不同的,但对于linux,从bios开始,您进入引导加载程序(u-boot、lilo、grub…),然后内核自行解压,启动自己并在引导后调用init

本文很好地解释了这一过程:

对于每个unix,它都是不同的,但是对于linux,从bios进入引导加载程序(u-boot、lilo、grub…),然后内核自行解压缩,启动自己,并在引导后调用init

本文很好地解释了这一过程:

关于莫里斯·巴赫,我发现关于如何处理这个话题有点困惑——莫里斯·巴赫、安德鲁·坦南鲍姆或史蒂文斯的书?@Nishant:我没有读巴赫或坦南鲍姆。我确实觉得史蒂文的书写得很好,也很有用。莫里斯·巴赫呢,我觉得这是一个关于这个话题的困惑——莫里斯·巴赫、安德鲁·坦南鲍姆还是史蒂文的书?@Nishant:我没有读过巴赫或坦南鲍姆。我确实觉得史蒂文的书写得很好,很有用。