基本原理的讲解
在loader所需要做的事情,
1 他这个检测内存的容量,我想知道是怎么做的。
2 然后就是模式的切换。
3 然后就是加载操作系统,并跳转到操作系统执行。
这是 他的总体的逻辑。
首先是加载 512 字节。
所以这512 字节的主要任务就是 再做一次跳转。
一共有两种方式。他采用的是第二种方式。
接下来就是关于 通用寄存器的了解。
也就是说 再实模式下,16位,只能使用 AX,BX,CX,DX,寄存器。
关于段寄存器的解释
ES,FS,GS, 都是数据寄存器。
他采用的方式,没有采用分段的方式,采用的平坦模型,直接给出偏移地址就可以了。
8086 的内存映射
可以看到 这里的boot 程序,仅指 512 字节的程序。