练习一:理解通过make生成执行文件的过程。
1. 操作系统镜像文件ucore.img是如何一步一步生成的?(需要比较详细地解释Makefile中每 一条相关命令和命令参数的含义,以及说明命令导致的结果)
初始状态时lab1包含的文件夹
为了生成ucore.img需执行make命令对Makefile进行编译
执行make命令后lab1包含的目录
查看bin目录
成功生成了ucore.img
使用了make V=”” 命令查看make执行了哪些命令
根据以上过程可知:
编译了16个内核文件,构建出内核bin/kernel
生成bin/bootblock引导程序
编译bootasm.S,bootmain.c,链接生成obj/bootblock.o
编译sign.c生成sign.o工具
使用sign.o工具规范化bootblock.o,生成bon/bootblock引导扇区
生成ucore.img虚拟磁盘
初始化ucore.img为512000 bytes,内容为0的文件
拷贝bin/bootblock到ucore.img第一个扇区
拷贝bin/kernel到ucore.img第二个扇区往后的空间
2. 一个被系统认为是符合规范的硬盘主引导扇区的特征是什么?
查看sign.c的内容