cs-self-learning/docs/编程入门/Rust/cs431.md
Yinmin Zhong 4979ddabbe
[UPDATE] Reorganize the intro to programming section (#593)
* reorganize intro to programming

* nits

* nits
2024-04-14 00:55:13 +08:00

22 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# CS431: Concurrent Programming
## 课程简介
- 所属大学KAIST
- 先修要求Rust 编程基础与对并发的初步了解
- 编程语言Rust
- 课程难度:🌟🌟🌟🌟
- 预计学时50 小时
CS431是一门讨论并发编程的课程主要使用 Rust 语言。课程内容主要包括理论与实践两个部分。理论部分聚焦于建立并发情形下的编程模型,而实践部分则主要是理解 Rust 相关库中锁与无锁数据结构的实现原理。
这门课程同时配有一系列代码量不大但并不简单的作业来巩固你对并发编程的理解,从基于锁的并发安全缓存设计和链表,到无锁的哈希表和著名的 [hazard pointer](https://ieeexplore.ieee.org/document/1291819). 和众多高质量课程一样,这些作业质量较高且配有详细的本地测试,适合自学。
这门课程比我预想的要深入的多,我所知晓的关于自旋锁,互斥锁的知识在该门课程中都是最基础的,而对于 promising semantics, 访存模型和无锁数据结构的介绍让我对并发和 Rust 都有更深入的理解。
## 课程资源
- 课程网站:[Website](https://github.com/kaist-cp/cs431)
- 课程视频:[Youtube](https://www.youtube.com/playlist?list=PL5aMzERQ_OZ9j40DJNlsem2qAGoFbfwb4)
- 课程教材:[Slides](https://docs.google.com/presentation/d/1NMg08N1LUNDPuMxNZ-UMbdH13p8LXgMM3esbWRMowhU/edit?usp=sharing)
- 课程作业:[Homework](https://github.com/kaist-cp/cs431/tree/main/homework)