微比恩 > 信息聚合 > Linux 0.11 第一回 | 最开始的两行代码

Linux 0.11 第一回 | 最开始的两行代码

2022-09-29 16:03:33来源: IT之家

本文来自微信公众号:低并发编程 (ID:dibingfa),作者:闪客从这一篇开始,您就将跟着我一起进入这操作系统的梦幻之旅!别担心,每一章的内容会非常的少,而且你也不要抱着很大的负担去学习,只需要像读小说一样,跟着我一章一章读下去就好。话不多说,直奔主题。当你按下开机键的那一刻,在主板上提前写死的固件程序 BIOS 会将硬盘中启动区的 512 字节的数据,原封不动复制到内存中的 0x7c00这个位置,并跳转到那个位置进行执行。启动区的定义非常简单,只要硬盘中的 0 盘 0 道 1 扇区的 512 个字节的最后两个字节分别是 0x55和 0xaa,那么 BIOS 就会认为它是个启动区。所以对于我们理解操作系统而言,此时的 BIOS 仅仅就是个代码搬运工,把 512 字节的二进制数据从硬盘搬运到了内存中而已。所以作为操作系统的开发人员,仅仅需要把操作系统最开始的那段代码,编译并存储在硬盘的 0 盘 0 道 1 扇区即可。之后 BI

关注公众号
标签: Linux