Lab 1: Booting a PC 1、Introduction Software setup Get jos code: athena% mkdir ~/6.828 athena% cd ~/6.828 athena% add git athena% git clone ...
lab 实验报告 实验思考题 . cache用虚拟地址查询时可能的,只要CPU 程序 可以用虚拟地址取到正确物理地址中的数据,其中间经过的cache使用的地址并无大碍。 使用虚拟地址的cache时,优点在于查询cache前不用访问页表进行地址转换,缺点在于一旦cache中数据缺失,更新cache时需要访问页表,时间开销更大 同时多个程序的虚拟地址可能相同,安全性以及数据正确性比较难以保障,异或每 ...
2020-04-16 23:43 1 787 推荐指数:
Lab 1: Booting a PC 1、Introduction Software setup Get jos code: athena% mkdir ~/6.828 athena% cd ~/6.828 athena% add git athena% git clone ...
lab1 中的Makefile主要是根目录下的GNUMakefile, kern/Makefrag, boot/Makefrag, 后两者通过include直接包含到GNUMakefile中。 #include <stdio.h>#include < ...
BUAA_OS lab2 难点梳理 实验重点 所列出的实验重点为笔者在进行lab2过程中认为需要深刻理解的部分。 进行内存访问的流程 熟悉mips内存映射布局,即理解mmu.h内图 二级页表的理解和实现 以下将参考指导书逻辑,对于重难点进行梳理。 内存 ...
BUAA_OS lab3 难点梳理 实验难点 进程创建 对于初始化部分,首先需要在pmap.c中修改mips_vm_init()函数,为envs开空间,并map到UENVS空间。 其次,模仿page_init()的做法,将空闲进程控制块串成env_free_list。 至此没有什么理解 ...
思考题 Thinking1.1 也许你会发现我们的 readelf 程序是不能解析之前生成的内核文件 (内核文件是可执行文件) 的,而我们刚才介绍的工具 readelf 则可以解析,这是为什么 ...
Lab5 实验的目的在于: 了解文件系统的基本概念和作用 了解普通磁盘的基本结构和读写方式 了解实现设备驱动的方法 掌握并实现文件系统服务的基本操作 了解微内核的基本设计思想和结构 为了避免同志们坐享其成,所有代码均取自[login学长的开源代码](login256 ...
一、实验内容 通过阅读bootmain.c,了解bootloader如何加载ELF文件。通过分析源代码和通过qemu来运行并调试bootloader&OS, bootloader如何读取硬盘扇区的? bootloader是如何加载ELF格式的OS? 二、实验相关 ...
OS Lab4 踩坑记 Lab4在之前Lab3的基础上,增加了系统调用,难度增加了很多。而且加上注释不详细,开玩笑的指导书,自己做起来困难较大。也遇到了大大小小的bug,调试了一整天。 本文记录笔者在实现Lab4中遇到了一些bug,出现的问题可能不具有普遍性,但是可能有参考价值 ...