操作系统-ucore-lab1 下载本文

内容发布更新时间 : 2024/5/4 19:10:23星期一 下面是文章的全部内容请认真阅读。

HUNAN UNIVERSITY

操作系统 实验报告

目录

一、内容 ................................................................................................................................................................. 2 二、目的 ................................................................................................................................................................. 2 三、实验设计思想和流程 ..................................................................................................................................... 3 四、主要文件结构说明 ......................................................................................................................................... 4 五、实验环境以及实验过程与结果分析 (包含实验详细过程) .................................................................. 4

练习1:理解通过make生成执行文件的过程 ............................................................................................. 4

操作系统实验报告

练习2:使用qemu执行并调试lab1中的软件。 ....................................................................................... 6 练习3:分析bootloader进入保护模式的过程。 ..................................................................................... 9 练习4:分析bootloader加载ELF格式的OS的过程。 ......................................................................... 11 练习5:实现函数调用堆栈跟踪函数 ......................................................................................................... 14 练习6:完善中断初始化和处理................................................................................................................. 16 六、实验体会 ....................................................................................................................................................... 18

1

操作系统实验报告

一、内容

lab1中包含一个bootloader和一个OS。这个bootloader可以切换到X86保护模式,能够读磁盘并加载ELF执行文件格式,并显 示字符。而这lab1中的OS只是一个可以处理时钟中断和显示字符的幼儿园级别OS。

为了实现lab1的目标,lab1提供了6个基本练习和1个扩展练习,要求完成实验报告。 二、目的

操作系统是一个软件,也需要通过某种机制加载并运行它。在这里我们将通过另外一个更加简单的软件-bootloader来完成这 些工作。为此,我们需要完成一个能够切换到x86的保护模式并显示字符的bootloader,为启动操作系统ucore做准备。lab1 提供了一个非常小的bootloader和ucore OS,整个bootloader执行代码小于512个字节,这样才能放到硬盘的主引导扇区中。 通过分析和实现这个bootloader和ucore OS,读者可以了解到: 计算机原理

CPU的编址与寻址: 基于分段机制的内存管理 CPU的中断机制

外设:串口/并口/CGA,时钟,硬盘 Bootloader软件

编译运行bootloader的过程 调试bootloader的方法 PC启动bootloader的过程 ELF执行文件的格式和加载

外设访问:读硬盘,在CGA上显示字符串 ucore

OS软件

编译运行ucore OS的过程 ucore

OS的启动过程

调试ucore OS的方法

函数调用关系:在汇编级了解函数调用栈的结构和处理过程 中断管理:与软件相关的中断处理

2