├── .gitignore ├── .travis.yml ├── .vscode ├── bookmarks.json └── settings.json ├── LICENSE ├── Mutual-Exclusion ├── README.md ├── code │ ├── clock.go │ ├── clock_test.go │ ├── message.go │ ├── message_test.go │ ├── process.go │ ├── process_test.go │ ├── receivedTime.go │ ├── receivedTime_test.go │ ├── requestQueue.go │ ├── requestQueue_test.go │ ├── resource.go │ ├── resource_test.go │ ├── timestamp.go │ ├── timestamp_test.go │ ├── util.go │ └── util_test.go ├── mutual_exclusion_request_period.pptx ├── qna.md ├── request_period.png ├── spanner-osdi2012.pdf └── time-clocks.pdf ├── PoW.zip ├── README.md ├── Raft ├── 6.824-2018.zip ├── 6.824Lab2_Raft.html ├── 6.824Lab2_Raft_files │ └── style.css ├── README.md ├── code │ ├── config.go │ ├── labgob │ │ ├── labgob.go │ │ └── test_test.go │ ├── labrpc │ │ ├── labrpc.go │ │ └── test_test.go │ ├── persister.go │ ├── raft-API.go │ ├── raft-AppendEntries.go │ ├── raft-LogEntry.go │ ├── raft-Raft.go │ ├── raft-RequestVote.go │ ├── raft-method.go │ ├── raft-persist.go │ ├── raft-settings.go │ ├── raft-settings_test.go │ ├── raft-state.go │ ├── raft-state_test.go │ ├── test_test.go │ └── util.go └── raft-extended.pdf └── test.sh /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/.travis.yml -------------------------------------------------------------------------------- /.vscode/bookmarks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/.vscode/bookmarks.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/LICENSE -------------------------------------------------------------------------------- /Mutual-Exclusion/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/README.md -------------------------------------------------------------------------------- /Mutual-Exclusion/code/clock.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/clock.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/clock_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/clock_test.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/message.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/message.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/message_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/message_test.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/process.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/process.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/process_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/process_test.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/receivedTime.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/receivedTime.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/receivedTime_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/receivedTime_test.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/requestQueue.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/requestQueue.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/requestQueue_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/requestQueue_test.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/resource.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/resource.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/resource_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/resource_test.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/timestamp.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/timestamp.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/timestamp_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/timestamp_test.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/util.go -------------------------------------------------------------------------------- /Mutual-Exclusion/code/util_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/code/util_test.go -------------------------------------------------------------------------------- /Mutual-Exclusion/mutual_exclusion_request_period.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/mutual_exclusion_request_period.pptx -------------------------------------------------------------------------------- /Mutual-Exclusion/qna.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/qna.md -------------------------------------------------------------------------------- /Mutual-Exclusion/request_period.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/request_period.png -------------------------------------------------------------------------------- /Mutual-Exclusion/spanner-osdi2012.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/spanner-osdi2012.pdf -------------------------------------------------------------------------------- /Mutual-Exclusion/time-clocks.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Mutual-Exclusion/time-clocks.pdf -------------------------------------------------------------------------------- /PoW.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/PoW.zip -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/README.md -------------------------------------------------------------------------------- /Raft/6.824-2018.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/6.824-2018.zip -------------------------------------------------------------------------------- /Raft/6.824Lab2_Raft.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/6.824Lab2_Raft.html -------------------------------------------------------------------------------- /Raft/6.824Lab2_Raft_files/style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/6.824Lab2_Raft_files/style.css -------------------------------------------------------------------------------- /Raft/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/README.md -------------------------------------------------------------------------------- /Raft/code/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/config.go -------------------------------------------------------------------------------- /Raft/code/labgob/labgob.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/labgob/labgob.go -------------------------------------------------------------------------------- /Raft/code/labgob/test_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/labgob/test_test.go -------------------------------------------------------------------------------- /Raft/code/labrpc/labrpc.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/labrpc/labrpc.go -------------------------------------------------------------------------------- /Raft/code/labrpc/test_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/labrpc/test_test.go -------------------------------------------------------------------------------- /Raft/code/persister.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/persister.go -------------------------------------------------------------------------------- /Raft/code/raft-API.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-API.go -------------------------------------------------------------------------------- /Raft/code/raft-AppendEntries.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-AppendEntries.go -------------------------------------------------------------------------------- /Raft/code/raft-LogEntry.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-LogEntry.go -------------------------------------------------------------------------------- /Raft/code/raft-Raft.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-Raft.go -------------------------------------------------------------------------------- /Raft/code/raft-RequestVote.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-RequestVote.go -------------------------------------------------------------------------------- /Raft/code/raft-method.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-method.go -------------------------------------------------------------------------------- /Raft/code/raft-persist.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-persist.go -------------------------------------------------------------------------------- /Raft/code/raft-settings.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-settings.go -------------------------------------------------------------------------------- /Raft/code/raft-settings_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-settings_test.go -------------------------------------------------------------------------------- /Raft/code/raft-state.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-state.go -------------------------------------------------------------------------------- /Raft/code/raft-state_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/raft-state_test.go -------------------------------------------------------------------------------- /Raft/code/test_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/test_test.go -------------------------------------------------------------------------------- /Raft/code/util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/code/util.go -------------------------------------------------------------------------------- /Raft/raft-extended.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/Raft/raft-extended.pdf -------------------------------------------------------------------------------- /test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aQuaYi/Distributed-Algorithms/HEAD/test.sh --------------------------------------------------------------------------------