OS_ucore
1、操作系统要干啥?哪些操作/任务不属于操作系统的管理范畴?
2、工具使用
阅读源码工具:understannd
源码文档自动生成工具:doxygen
虚拟运行环境:qemu
Lab0
1、了解汇编
1 | int count = 1; |
3、掌握指针和类型转换相关的C编程
实验源码如下
1 |
|
自己根据输出即可推出来是怎么做的。注意,gintr
等于0xee0000010002
中,最高16位全部等于0没有展示出来。而%x只能展示32位,所以intr
的输出结果为:0x10002
。
一个被系统认为是符合规范的硬盘主引导扇区的特征是什么?
硬盘主引导扇区(Master Boot Record,MBR)是位于硬盘第一个扇区(通常是逻辑地址0号扇区)的512字节的数据结构,用于引导计算机操作系统。一个符合规范的硬盘主引导扇区应该包含以下几个特征:
引导代码(Boot Code): 前446个字节用于存储引导代码,这是引导加载程序(Boot Loader)的代码,负责加载操作系统。这段代码必须是有效的汇编代码,能够启动计算机。
分区表(Partition Table): 接下来的64字节用于存储分区表,每个分区表项占16字节。一个硬盘可以分为最多4个主分区,每个分区表项描述一个分区的起始位置、大小和分区类型等信息。
签名字节(Signature): 最后的两个字节(0x55AA)是MBR的签名,标志这个扇区是有效的MBR扇区。这个签名是个小端字节序的16位值,它告诉操作系统这个扇区包含了引导信息,是一个有效的MBR。
总结起来,一个被系统认为是符合规范的硬盘主引导扇区应该包含引导代码、分区表和签名字节。这些特征是为了确保引导加载程序可以正确地读取分区信息,从而启动操作系统。如果这些特征中的任何一个缺失或损坏,可能导致系统无法正确引导。
引导扇区代码(tools/sign.c
)
1 |
|