http://mooc.study.163.com/learn/HIT-1000002004
CS:段寄存器
IP是偏移
CS左移4位+IP
实模式和保护模式对应,实模式的寻址CS:IP(CS左移4位),和保护模式不一样
第五步是读入一个扇区
引导扇区就是启动设备的第一个扇区
启动设备信息被设置在CMOS中
引导扇区代码:bootsect.s //汇编代码
Boot工作:读setup, 读system...
Setup将完成OS启动前的设置
- 获取拓展内存的大小
- 取出光标位置
- .......
因为一开始的PC机只有1M内存,所以之后将1M以后的内存成为拓展内存
jump 0,8 //0赋给IP,8赋给CS,这是16位机的
从这个时候开始,寻址方式发生了改变,从16位机切换到32位机
32位模式也叫作保护模式。
16位模式和32位模式的区别: 寻址不一样,CPU的检测方式不一样
保护模式下CS放的是查表的下标/索引
GDT表
编写操作系统除了要写源码以外,还要写怎么编写操作系统的控制代码,这就是makefile
head.s是system的第一个文件 //重新建立idt gdt表
mem_init() //初始化了一个称为mem_map的表格
读入内存为了取址执行