首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
MIT 6.S081学习与实验记录
Anemone_
创建于2024-10-20
订阅专栏
MIT 6.S081,是一门非常优秀的操作系统课程,需要我们完善一个精密设计的仿Unix/Linux操作系统xv6,这里我会记录我的学习过程和实验进展
暂无订阅
共9篇文章
创建于2024-10-20
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
MIT 6.S081 Lab9 Mmap 文件内存映射
Lab: mmap 实现mmap和munmap系统调用,首先了解一下这两个系统调用。 mmap mmap系统调用的主要功能是将文件或设备的内容映射到进程的虚拟地址空间,进程可以像访问内存一样对文件或设
MIT 6.S081 Lab8 File system 文件系统
Lab: file system Large files 在这个作业中,你将增加 xv6 文件的最大大小。目前,xv6 文件被限制在 268 个块,即 268×BSIZE 字节(在 xv6 中,BSI
MIT 6.S081 Lab7 Locks 锁优化
Lab: Locks Memory allocator xv6中的kalloc实现非常原始,所有空闲页面集合在一个长链表中,且只有一把大锁来控制该链表结构的访问控制,当有多个进程在不同CPU上同时频繁
MIT 6.S081 Lab6 Multithreading 多线程
Lab: Multithreading Uthread: switching between threads 完善用户态下的线程切换能力,这种用户态的线程切换其实类似于协程,多个线程运行在一个CPU上
MIT 6.S081 Lab5
Lab:Copy-on-Write Fork for xv6 目前存在的问题: 在 xv6 中,fork()系统调用会将父进程的所有用户空间内存复制到子进程中。如果父进程很大,复制可能需要很长时间。更
MIT 6.S081 Lab4
Lab: Traps Trap,中断,这一章实验主要考验中断及系统调用的理解。 涉及trap、trampoline、stack pointer、supervisor、risc-V assembly R
MIT 6.S081 Lab3
前面我们修改了原有的分支仓库名, origin -> old-origin,目的就是为了将完成后的实验推送到origin处。使用git branch命令观察远程分支可以看到如下输出。 现在我们想要在o
MIT 6.S081 Lab2
Lab: system calls 该Lab需要为xv6实现几个系统调用。 System call tracing trace系统调用,为每个进程设定一个标记为mask,根据mask决定trace哪些
MIT 6.S081 Lab1
Lab: Xv6 and Unix utilities Boot xv6 第一个Lab的首个关卡,就是配置实验所需环境并成功启动xv6。 环境配置参考:Tools Used in 6.S081 使用g