摘要: 概述 最近又开了一个新坑,CMU的15445,这是一门介绍数据库的课程。我follow的是2018年的课程,因为2018年官方停止了对外开放实验源码,所以我用的2017年的实验,但是问题不大,内容基本没有变化。想要获取实验源码的同学可以上github搜,或者直接clone我的代码,找到最早的comm阅读全文
posted @ 2019-03-28 10:20 gatsby123 阅读(73) 评论(0) 编辑
摘要: 概述 lab2中实现了raft协议,本lab将在raft之上实现一个可容错的k/v存储服务,第一部分是实现一个不带日志压缩的版本,第二部分是实现日志压缩。时间原因我只完成了第一部分。 设计思路 ![kvserver](https://blog 1253119293.cos.ap beijing.my阅读全文
posted @ 2019-03-22 20:22 gatsby123 阅读(85) 评论(0) 编辑
摘要: 摘要 raft是一种比paxos容易理解的一致性算法,实现起来比paxos简单许多。本文前部分描述算法的细节,后部分尝试探讨下该算法的原理。 算法描述 raft算法之所以简单的原因之一是它将问题分解成三个子问题,分别是: 1. Leader选举 2. Log复制 3. 安全性保证 概述 raft协议阅读全文
posted @ 2019-03-22 13:00 gatsby123 阅读(113) 评论(0) 编辑
摘要: 概述 本lab将用go完成一个MapReduce框架,完成后将大大加深对MapReduce的理解。 Part I: Map/Reduce input and output 这部分需要我们实现common_map.go中的doMap()和common_reduce.go中的doReduce()两个函数阅读全文
posted @ 2019-03-20 20:36 gatsby123 阅读(22) 评论(0) 编辑
摘要: 概述 MapReduce是由JeffreyDean提出的一种处理大数据的编程模型,用户定义map和reduce函数,map函数处理原始数据生成一系列键值对中间数据,reduce函数并合相同key的键值对。 编程模型 整个计算过程输入的是键值对,输出的也是键值对。用户只需要提供两个函数分别是Map和R阅读全文
posted @ 2019-03-20 17:12 gatsby123 阅读(21) 评论(0) 编辑
摘要: MIT 6.828 Lab 6: Network Driver (default final project) tags: mit 6.828 os 概述 本lab是6.828默认的最后一个实验,围绕 网络 展开。主要就做了一件事情。 从0实现网络驱动。 还提到一些比较重要的概念: 1. 内存映射I阅读全文
posted @ 2018-12-06 23:15 gatsby123 阅读(202) 评论(0) 编辑
摘要: Lab 5: File system, Spawn and Shell tags: mit 6.828 os 概述 本lab将实现JOS的文件系统,只要包括如下四部分: 1. 引入一个 文件系统进程(FS进程) 的特殊进程,该进程提供文件操作的接口。 2. 建立RPC机制 ,客户端进程向FS进程发送阅读全文
posted @ 2018-11-13 10:08 gatsby123 阅读(178) 评论(0) 编辑
摘要: Lab 4: Preemptive Multitasking tags: mit 6.828, os 概述 本文是lab4的实验报告,主要围绕 进程 相关概念进行介绍。主要将四个知识点: 1. 开启多处理器。现代处理器一般都是多核的,这样每个CPU能同时运行不同进程,实现并行。需要用锁解决多CPU的阅读全文
posted @ 2018-11-08 17:53 gatsby123 阅读(271) 评论(0) 编辑
摘要: Lab 3: User Environments实验报告 tags:mit 6.828 os 概述: 本文是lab3的实验报告,主要介绍JOS中的进程,异常处理,系统调用。内容上分为三部分: 1. 用户环境建立,可以加载用户ELF文件并执行。 2. 建立异常处理机制。 3. 提供系统调用的能力。 P阅读全文
posted @ 2018-10-23 18:19 gatsby123 阅读(301) 评论(0) 编辑
摘要: MIT 6.828 Lab 2: Memory Management实验报告 tags:mit 6.828 os 概述 本文主要介绍lab2,讲的是操作系统内存管理,从内容上分为三部分: 1. 第一部分讲的是物理内存管理,要进行内存管理首先需要知道哪些物理内存是空闲的,哪些是被使用的。还需要实现一些阅读全文
posted @ 2018-10-22 19:34 gatsby123 阅读(398) 评论(2) 编辑