Intel8086之开机过程

1M内存分配

  • ROM存放在顶端64KB :0xF0000-0xfffff
  • 中间存放外围设备—
  • DRAM存放在低端640KB : 0x00000-0x9ffff
注: x86 中rom和ram统一编址
	地址总线20根

开机第一条指令

8086加电或者复位时: CS=0xffff , IP = 0x0000
所以第一条指令位于物理地址:0xffff0 (一般为jmp指令)

硬盘内部构成

硬盘 由 N个 盘片组成 (盘片由多个同心圆组成)

  1. 磁头 :盘面的当前位置,每个盘片有2个磁头 (正反)。最上面的编号 0
  2. 磁道(柱面):磁头绕圆心转一圈的轨迹 。 最外层的编号0
  3. 扇区 :磁道分割多个扇区 最开始的编号1

主引导扇区

BIOS 最后任务是是从外设中读取更多的指令交给处理器执行(即外设部分内容加载到内存中)

  1. 主引导扇区(0面0道1扇区or0头0柱1扇区)加载到内存(0x07c00)
  2. 用一个jmp指令跳转到0x0700执行
## 总结:开机过程

     执行第一条指令物理位置0xffff0,jmp指令,跳转到0xfe05b执行------>BIOS从硬盘主引导扇区
     加载指令到0x07c00之前。BIOS主要进行硬件诊断,检查和初始化。以及可以完成基本的输入输出。   

     硬盘主引导扇区指令加载到内存,执行jmp指令到0x07c00位置,至此BIOS工作做完。
   
     OS开始一系列运行。


     
    

发布了12 篇原创文章 · 获赞 0 · 访问量 4429

猜你喜欢

转载自blog.csdn.net/weixin_43180758/article/details/96909517