由于这个作业是在两台电脑上完成的,一开始没有传上git,故文件夹里的代码可能不全,请参考本文件中的代码 coursera上有part1的课程,但都是英文 配套的中文书籍可以在z-lib上找到,名为《计算机系统要素》 00部分是简介,直接跳过了 配套的文件可以在Nand2tetris官网找到 ...
nand tetris 难度: 推荐: nand tetris 项目有一本书叫 计算机系统要素 ,也有英语的视频教程。如果英语不好的可以看书,内容是一样的。 这本书主要讲解了计算机原理 章 编译原理 章 操作系统相关知识 章 。不要看内容这么多,其实这本书的内容非常通俗易懂,翻译也很给力。每一章背后都有对应的练习,需要你手写代码去完成,堪称理论与实践结合的经典。 这里引用一下书里的内容简介,大家可 ...
2020-03-28 23:50 0 1790 推荐指数:
由于这个作业是在两台电脑上完成的,一开始没有传上git,故文件夹里的代码可能不全,请参考本文件中的代码 coursera上有part1的课程,但都是英文 配套的中文书籍可以在z-lib上找到,名为《计算机系统要素》 00部分是简介,直接跳过了 配套的文件可以在Nand2tetris官网找到 ...
自己2017年9月到2月这段时间慢慢把5个lab磨完了,期间遇到了不少困难和疑惑,所以打算通过写博客的形式来回忆,记录和总结自己学习mit6.828的过程。 MIT6.828就不用我多介绍了, mit鼎鼎大名的操作系统经典课程,北大,华工等学校的操作系统实验都是基于这个课程的实验部分。课程所有 ...
Lab3 这个实验分成了两个大部分。 1. PartA User Environments and Exception Handling kernel使用Env这个数据结构来trace每一个user enviroment,你需要设计JOS来支持多environments。 kernel维护 ...
Lab0:环境搭建 824做到lab4b了。虽然博客没写,感觉824好难写博客。而且自己写的也比较乱吧,整理的都不是很好,后面有时间了再写824的博客。现在开一个新坑之前其实已经把s6.081做完了,也就是后来mit拆分出来的操作系统课程。不过我感觉那个比较简单,写在简历上可能帮助不是特别 ...
Lab4 Preemptive Multitasking(上) PartA : 多处理器支持和协作多任务 在实验的这部分中,我们首先拓展jos使其运行在多处理器系统上,然后实现jos内核一些系统功能调用以支持用户级环境去创建新环境。我们还需要实现协同式轮询调度(cooperative ...
Lab2 0. 任务介绍 你将编写一个内存管理代码。主要分为两大部分。分别对物理内存和虚拟内存的管理。 对于物理内存,每次分配内存分配器会为你分配4096bytes。也称为一个页(在大部分操作系统中一个页的大小都是4B)你需要维护一个数据结构来记录哪个物理页是空闲的哪个物理页是已被 ...