1.setup.s的作用
bootsect.s从软盘中把第2到5扇区的setup.s程序读入到内存0x90200地址处,那么setup.s到底做了什么呢?
第一件事,获取硬件的参数

第二件事就是将0x10000(64K)地址到0x8ffff这段system内核代码移动到0地址处。
第三件事就是临时设置了临时IDT和临时GDT表,为jmpi 0,8做准备

第四件事,就是进入保护模式,然后impi 0,8,跳到system里面的head.s执行

2.head.s作用
初始化页表GDT和IDT
然后跳到main函数执行
3.main
开始执行main函数

3.1.mem_init案例
end_mem >>=12 这个就是内存除以2^12(4KB),开始分页,一页的内容为4KB

693

被折叠的 条评论
为什么被折叠?



