操作系统 uCore Lab 1 含 Challenge 发表于 2018-11-04 分类于 操作系统 练习1:理解通过make生成执行文件的过程操作系统镜像文件ucore.img是如何一步一步生成的?123456$(UCOREIMG): $(kernel) $(bootblock) $(V)dd if=/dev/zero of=$@ count=10000 $(V)dd if=$(bootblock) of=$@ conv=notrunc $(V)dd if=$(kernel) of=$@ seek=1 conv=notrunc从 MakeFile 里面 可以看出 生成 ucore.img 首先需要生成 大小为 10000字节 的空间然后 将 bootblock 和 kernel 依次写入到 那块空间之中阅读全文 »
操作系统之 系统启动、中断、调用 发表于 2018-10-31 分类于 操作系统 系统启动CPU加电之后 初始化寄存器 从 CS:IP = 0xF000:FFF0 执行第一条指令 系统处于实模式 故 PC = 16 * CS + IP 此时物理地址为 0xFFFF0 20位地址总线 可用内存为 1MB 此时距离 1MB 只剩下 16个字节16个字节够用吗?0xffff0 物理地址处为跳转指令 会长跳转到 BIOS 代码真正开始的地方BIOS 初始化基本输入输出系统设置信息开机后自检硬件自检POST检测系统中内存或显卡等关键部位的存在和工作状态查找并执行显卡等接口的初始化程序系统初始化检测配置即插即用设备更新 ESCD 扩展系统配置数据系统自启动等阅读全文 »