ucore实验环境简介:
虚拟环境:VirtualBox
操作环境:Utunbu 10.04
编译环境:gcc-4.6.x
实验目的:
操作系统是一个软件,也需要通过某种机制加载并运行它。在这里我们将通过另外一个更加简单的软件-bootloader来完成这些工作。为此,我们需要完成一个能够切换到x86的保护模式并显示字符的bootloader,为启动操作系统ucore做准备。lab1提供了一个非常小的bootloader和ucore OS,整个bootloader执行代码小于512个字节,这样才能放到硬盘的主引导扇区中。
知识目标:
-
计算机原理
- CPU的编址与寻址: 基于分段机制的内存管理
- CPU的中断机制
- 外设:串口/并口/CGA,时钟,硬盘
-
Bootloader软件
- 编译运行bootloader的过程
- 调试bootloader的方法
- PC启动bootloader的过程
- ELF执行文件的格式和加载
- 外设访问:读硬盘,在CGA上显示字符串
-
ucore OS软件
- 编译运行ucore OS的过程
- ucore OS的启动过程
- 调试ucore OS的方法
- 函数调用关系:在汇编级了解函数调用栈的结构和处理过程
- 中断管理:与软件相关的中断处理
- 外设管理:时钟

这篇博客介绍了ucore操作系统实验的背景和目的,特别是lab1中的bootloader如何引导系统从实模式切换到保护模式。内容涵盖了CPU的内存管理和中断机制,以及bootloader在读取ucore kernel和跳转到OS入口点的角色。同时,文章还讨论了C函数调用的实现、GCC内联汇编的使用,以及中断处理流程。
最低0.47元/天 解锁文章
2057

被折叠的 条评论
为什么被折叠?



