6.824-ads-labs
the 6.824 labs
This is my answer of 6.824
As a greenhand of the ads-lab, I also read the code from
https://github.com/WenbinZhu/MIT-6.824-labs
https://github.com/xingdl2007/6.824-2017
The code from Wenbinzhu,xingdl2007 is clear and easy to understand.
I added some comments in my version so that it would be easy to understand how the implementation works.
Course website: https://pdos.csail.mit.edu/6.824/schedule.html
There are several branch in this repository. Why did i create so many branch?
I think it will be convenient for you to check the answer of a specific steps in a lab.
for example:
lab1_part1: only part1 code
lab2_part2: part1 + part2
lab2_part3: part2 + part3
It's clear that you can get the pure step1 answer in branch-step1 without any other succeeding step code in it.
Btw, the master branch is the original clean 6.824 code from the MIT-6.824 class
And the dev branch is a branch maintaining the latest progress which follows the list below.
-
Lab 1: MapReduce
-
Lab 2: Raft Consensus Algorithm
-
----Lab 2-part2A
-
----Lab 2-part2B
-
----Lab 2-part2C
-
Lab 3: Fault-tolerant Key/Value Service
-
----Lab 3-part3A
-
----Lab 3-part3B
-
Lab 4: Sharded Key/Value Service
-
----Lab 4-part4A
-
----Lab 4-part4B
--------Lab4B is quite difficult for me, and here are some logical diagrams refered to https://github.com/xingdl2007/6.824-2017 implementation of shardkv.