![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MIT JOSLAB
文章平均质量分 93
劳塔罗爆射破门
这个作者很懒,什么都没留下…
展开
-
MIT JOS lab3保姆级试验记录,附满分代码
操作系统Lab3 User environments本次 lab 的目标是创建进程运行环境。在本实验中,(1)将实现运行受保护的用户模式环境(即“进程”)所需的基本内核功能(2)将完善JOS内核,以设置数据结构来跟踪用户环境,创建单个用户环境,将程序映像加载到其中并开始运行(3)还将使JOS内核能够处理用户环境发出的任何系统调用并处理它引起的任何其他异常。满分代码,附有详细注释传送门:https://download.csdn.net/download/qhaaha/13741545PartA 代码原创 2021-01-11 01:01:47 · 1138 阅读 · 1 评论 -
操作系统 MIT JOS lab4 超详细过程,附已通过代码
操作系统 MIT JOS lab4本次实验主要内容:(1)多处理器系统(2)抢占式调度(3)类似UNIX的fork——创建子进程,以及写时复制的机制(4)进程间通信 (写在前面)cpu、处理器、核的概念在这次lab中没有必要严格区分,在表述中就混着用了~练习函数作用:在虚拟地址MMIO 区域分配size大小,并把它映射到物理地址pa开始的size大小空间。AP的启动代码放到了MPENTRY_PADDR,这里需要将page_init函数中将MPENTRY_PADDR处的物理页标识为已用。加原创 2021-01-08 00:53:34 · 1190 阅读 · 0 评论 -
MIT JOS lab5 文件管理
lab6 文件管理exercise 1修改env_create,当创建的是文件系统环境时,赋予IO的权限,就加两行:if (type == ENV_TYPE_FS) { e->env_tf.tf_eflags |= FL_IOPL_MASK;}exercise 2本次Lab中假设的磁盘空间只有3G,文件系统环境虚拟地址空间的0x1000_0000~0xd000_0000这3G的地址映射到磁盘空间。磁盘中的内容肯定不是一次性全部加载到内存,而是采取请求式调页的策略,即当环境用原创 2021-01-05 12:31:32 · 452 阅读 · 0 评论 -
MIT JOS lab2内存管理实验记录
本次Lab主要完成JOS中关于虚拟内存映射、页表管理和分配的几个函数,旨在加深对内存管理的认识。“兵欲善其事,必先利其器“,在开始完成exercise之前,先从inc/mmu.h中几个比较底层的宏和函数看起,方便以后coding。(可跳过,有书签索引。)准备阶段1.基本概念首先,地址映射有以下虚拟地址—线性地址—物理地址的结构:分段机制把逻辑地址转换成线性地址,而分页则把线性地址转换成物理地址。这是线性地址的格式,mmu.h中画出来的,里面还定义了一些基本的宏。2. 内存的初始化和映射原创 2020-12-20 15:33:17 · 1196 阅读 · 2 评论