ucore_lab1实验报告

本文详细介绍了ucore_lab1的实验内容,包括通过make生成ucore.img的操作系统镜像文件过程,分析了硬盘主引导扇区的规范,使用qemu进行执行与调试,探讨了bootloader如何进入保护模式以及加载ELF格式OS的过程。同时,还涵盖了函数调用堆栈跟踪和中断处理的实现。
摘要由CSDN通过智能技术生成

练习一:理解通过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的内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值