OS操作系统的启动

ucore的启动过程.

ucore.img 镜像文件的生成

ROM中的BIOS 软件运行,完成加电自检的工作后,跳转到bootloader 程序.

bootloader负责将os从硬盘加载到内存中,加载完成后,将cpu控制权移交给os,完成os的启动.

代码及细节:
获得第一条bootloader 指令的地址:寄存器初始化时设置,cs及ip寄存器, 0x7c00

bootloader还完成了实模式和保护模式(32位)的转换.
包括:1.打开A20
2.建立gdt(global descript table)
3.使能保护模式
bootloader加载os
os文件的格式为ELF文件.
通过ELF文件头获取相应信息.
和ELF_MAGIC比较判断是否为ELF文件.
获取多个程序段的入口地址,将他们载入内存

posted @ 2019-10-02 10:32  少年留不住  阅读(208)  评论(0编辑  收藏  举报