摘要: 引言 这节课和上一节xv6进程切换是一个完整的的进程切换专题,上一节主要讨论进程切换过程中的细节,而这一节主要讨论进程切换过程中锁的使用,所以本节的两大关键词就是"Coordination"(协调)和 "lost wakeup" Coordination 就是有关出让CPU,直到等待的事件发生再恢复 阅读全文
posted @ 2023-09-12 16:23 byFMH 阅读(257) 评论(0) 推荐(2) 编辑
摘要: # 絮絮叨 这两节主要介绍 xv6 中的**线程切换**,首先预警说明,这节课程的容量和第 5/6 节:[进程的用户态到内核态的切换](https://www.cnblogs.com/looking-for-zihuatanejo/p/17644000.html)一样,**细节多到爆炸**,连我自己 阅读全文
posted @ 2023-09-06 16:04 byFMH 阅读(452) 评论(0) 推荐(1) 编辑
摘要: 这节课程的内容是锁(本节只讨论最基础的锁)。其实**锁本身就是一个很简单的概念**,这里的简单包括 3 点: 1. **概念简单**,和实际生活中的锁可以类比,不像学习虚拟内存时,现实世界中几乎没有可以类比的对象,所以即使这节课偏向于理论介绍,也一点不会感觉晦涩。 2. **使用简单**,几乎所有的 阅读全文
posted @ 2023-08-31 00:03 byFMH 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 本篇博客主要是复习 MIT6.s081/6.828 lectrue07:Page faults 以及记录 Lab5 :COW fork 的心得 值得一提的是,2020 年之前的版本第 5 个 lab 是 lazy alloction,但是到了 2020 年之后就换成了难度稍高一点的 COW fork 阅读全文
posted @ 2023-08-23 13:15 byFMH 阅读(359) 评论(0) 推荐(1) 编辑
摘要: 这篇博客主要复习 lecture05:GDB calling conentions 和 lecture06:System call entry/exit 的内容,外加 Lab4:traps 的心得 # 前置知识 这里的前置知识是指 lecture05:GDB calling conentions 的 阅读全文
posted @ 2023-08-20 14:58 byFMH 阅读(420) 评论(1) 推荐(0) 编辑
摘要: 不管是计算机组成还是操作系统,**虚拟内存**都是其中的重要内容,所以这一节我会结合 **CSAPP 第九章:虚拟内存** 来一起复习(顺便一说,CSAPP 这一节的 lab 是要求设计一个**内存分配器**,也是很有意思的,有时间一定要把 CSAPP 的 lab 博客也补上!) 这一节主要讨论** 阅读全文
posted @ 2023-08-14 21:47 byFMH 阅读(490) 评论(4) 推荐(1) 编辑
摘要: 这节课主要介绍 OS 的顶层设计以及 OS 启动流程和系统调用流程 前置知识:要求阅读 xv6 book chapter2 和 xv6 源码: [kernel/proc.h](https://github.com/mit-pdos/xv6-riscv/blob/riscv/kernel/proc.h 阅读全文
posted @ 2023-08-10 17:14 byFMH 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 这是 MIT 著名的操作系统课程,2019 年之前叫 MIT6.828,之后改名为 6.s081,2021 又改了一波名字,最新的名字是 6.1810 目前课程官网能够查到 2020,2021.2022 秋季的课程表,但是视频都是 2020 年录制的那一版 博客目的: 1. 简单复习+回顾下自己的 阅读全文
posted @ 2023-07-18 20:54 byFMH 阅读(735) 评论(0) 推荐(1) 编辑
摘要: ## 一、概述 **过瘾!过瘾!过瘾!P4 真过瘾!**写 P3 的博客时我说过“**感觉自己在数据库方面真正成长了**”,但写完 P4 之后最大的感受就是,我终于理解了 andy 在第一课说过的“**我只在乎两件事情,一个是我老婆,另一个是数据库。**” 从代码量、概念晦涩程度、思考深度等各方面综 阅读全文
posted @ 2023-07-05 20:33 byFMH 阅读(304) 评论(2) 推荐(2) 编辑
摘要: # Project3 Query Execution 心得 ## 一、概述 首先要说:这个 project很有趣很硬核!从这个 project 开始才感觉自己在数据库方面**真正成长**了! 第一个 project :buffer pool manager **相对独立且简单**,说白了就是使用 * 阅读全文
posted @ 2023-06-14 19:32 byFMH 阅读(196) 评论(0) 推荐(0) 编辑