MIT6.828-OS
mit的操作系统实验
victorika
这个作者很懒,什么都没留下…
展开
-
MIT6.828-OS lab5:Spawn and Shell 记录
Introduction在这次lab中,您将实现spawn,这是一个加载和运行磁盘可执行文件的库调用。 然后,您将充实kernel和库操作系统,以在控制台上运行Shell。Getting Started照以往的lab一样,创建分支,然后merge。本部分lab的主要新组件是文件系统环境,位于新的fs目录中。 扫描此目录中的所有文件,以了解所有新内容。 另外,在user和lib目录中还有一些与文件系统相关的新的源文件。合并新的lab5代码后,您应该再次运行lab4的pingpong,p原创 2020-06-29 20:56:21 · 428 阅读 · 0 评论 -
MIT6.828-OS lab4:Preemptive Multitasking 记录
Introduction在这个lab,您将在多个同时活动的用户态environment中实现抢占式多任务处理。在partA中,您将为JOS添加多处理器支持,实现循环调度,并添加基本的environment管理系统调用(创建和销毁environment以及分配/映射内存的调用)。在partB中,您将实现一个类似Unix的fork(),它允许用户态environment创建其自身的副本。...原创 2020-04-20 22:20:27 · 984 阅读 · 0 评论 -
MIT6.828-OS lab3:User Environments 记录
Introduction在本实验中,您将实现运行受保护的用户模式环境environment(即“进程process”)所需的基本内核功能。您将增强JOS内核,以设置数据结构来跟踪用户环境,创建单个用户环境,将程序映像加载到其中并开始运行。您还将使JOS内核能够处理用户环境发出的任何系统调用,并处理它引起的任何其他异常。Note:在本实验中,environment和process这两个术语是...原创 2020-04-02 16:08:06 · 1440 阅读 · 0 评论 -
MIT6.828-OS lab2:Memory Management 记录
这一章主要讲内存分配。introduction在这个实验中,你将会为你的操作系统写内存管理代码。内存管理有两个部件。为了kernel能够分配并且释放内存,第一个部件是kernel的物理内存分配器allocator。你的allocator将以4096B为操作单位,称为页。您的任务将是维护数据结构,该数据结构记录哪些物理页是空闲的,哪些是已分配的,以及多少进程正在共享每个分配的页。 ...原创 2020-03-16 16:14:57 · 636 阅读 · 0 评论 -
MIT6.828-OS lab1:Booting a PC 记录
回归初心,从基础开始再搞起。环境配置不多说,都是泪,千万别用64位系统搞这个东西,搞到最后我都搞不定。32位直接10分钟搞定了。基本如下。1.先安装依赖库libsdl1.2-devlibtool-binlibglib2.0-devlibz-devlibpixman-1-dev2.把官方6.828的qemu clone下来然后执行下面命令安装...原创 2020-01-02 10:30:02 · 714 阅读 · 0 评论