
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 · 500 阅读 · 0 评论 -
MIT6.828-OS lab4:Preemptive Multitasking 记录
Introduction 在这个lab,您将在多个同时活动的用户态environment中实现抢占式多任务处理。 在partA中,您将为JOS添加多处理器支持,实现循环调度,并添加基本的environment管理系统调用(创建和销毁environment以及分配/映射内存的调用)。 在partB中,您将实现一个类似Unix的fork(),它允许用户态environment创建其自身的副本。 ...原创 2020-04-20 22:20:27 · 1057 阅读 · 0 评论 -
MIT6.828-OS lab3:User Environments 记录
Introduction 在本实验中,您将实现运行受保护的用户模式环境environment(即“进程process”)所需的基本内核功能。您将增强JOS内核,以设置数据结构来跟踪用户环境,创建单个用户环境,将程序映像加载到其中并开始运行。您还将使JOS内核能够处理用户环境发出的任何系统调用,并处理它引起的任何其他异常。 Note:在本实验中,environment和process这两个术语是...原创 2020-04-02 16:08:06 · 1525 阅读 · 0 评论 -
MIT6.828-OS lab2:Memory Management 记录
这一章主要讲内存分配。 introduction 在这个实验中,你将会为你的操作系统写内存管理代码。内存管理有两个部件。 为了kernel能够分配并且释放内存,第一个部件是kernel的物理内存分配器allocator。你的allocator将以4096B为操作单位,称为页。您的任务将是维护数据结构,该数据结构记录哪些物理页是空闲的,哪些是已分配的,以及多少进程正在共享每个分配的页。 ...原创 2020-03-16 16:14:57 · 734 阅读 · 0 评论 -
MIT6.828-OS lab1:Booting a PC 记录
回归初心,从基础开始再搞起。 环境配置 不多说,都是泪,千万别用64位系统搞这个东西,搞到最后我都搞不定。 32位直接10分钟搞定了。基本如下。 1.先安装依赖库 libsdl1.2-dev libtool-bin libglib2.0-dev libz-dev libpixman-1-dev 2.把官方6.828的qemu clone下来然后执行下面命令安装 ...原创 2020-01-02 10:30:02 · 784 阅读 · 0 评论