# MIT6.824: Distributed System

## 课程简介

- 所属大学：MIT
- 先修要求：计算机体系结构，并行编程
- 编程语言：Go
- 课程难度：🌟🌟🌟🌟🌟🌟
- 预计学时：200 小时

这门课和 MIT 6.S081 一样，出品自 MIT 大名鼎鼎的 PDOS 实验室，授课老师 Robert Morris 教授曾是一位顶尖黑客，世界上第一个蠕虫病毒 Morris 病毒就是出自他之手。

这门课每节课都会精读一篇分布式系统领域的经典论文，并由此传授分布式系统设计与实现的重要原则和关键技术。同时其课程 Project 也是以其难度之大而闻名遐迩，4 个编程作业循序渐进带你实现一个基于 Raft 共识算法的 KV-store 框架，让你在痛苦的 debug 中体会并行与分布式带来的随机性和复杂性。

同样，这门课由于太过出名，网上答案无数，希望大家不要参考，而是力图自主实现整个 Project。

## 课程资源

- 课程网站：<https://pdos.csail.mit.edu/6.824/schedule.html>
- 课程视频：参见课程网站链接
- 课程视频中文翻译：<https://mit-public-courses-cn-translatio.gitbook.io/mit6-824/>
- 课程教材：无，以阅读论文为主
- 课程作业：4 个非常虐的 Project，具体要求参见课程网站

## 资源汇总

@PKUFlyingPig 在学习这门课中用到的所有资源和作业实现都汇总在 [PKUFlyingPig/MIT6.824 - GitHub](https://github.com/PKUFlyingPig/MIT6.824) 中。

@[OneSizeFitsQuorum](https://github.com/OneSizeFitsQuorum) 的 [Lab 文档](https://github.com/OneSizeFitsQuorum/MIT6.824-2021) 较为清晰地介绍了实现 lab 1-4 和 challenge 1-2 时需要考虑的许多细节，在遇到瓶颈期时可以阅读一下~~
