5丶setup.s和system模块

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

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值