
## 环境部署
Ubuntu 18.04 [BYO Linux installation (stanford.edu)](https://stanford.edu/class/cs144/vm_howto/vm-howto-byo.html)
[CS144Winter2024--Chapter0--wsl2+docker环境搭建_cs144环境配置-CSDN博客](https://blog.csdn.net/weixin_73074012/article/details/135847082)
[2021 CS144 实验笔记 | 沧海月明 (inlighting.org)](https://www.inlighting.org/archives/2021-cs144-notes)
用 Clion 里的 remote 开发
## 参考资料
[CS144 Lab0翻译 | Doraemonzzz](https://doraemonzzz.com/2022/01/30/2022-1-30-CS144-Lab0%E7%BF%BB%E8%AF%91/)
[CS 144: Introduction to Computer Networking](https://cs144.github.io/)
[CS144计算机网络 Lab0 | Kiprey's Blog](https://kiprey.github.io/2021/11/cs144-lab0/)
[【计算机网络】Stanford CS144 Lab Assignments 学习笔记 - 康宇PL - 博客园 (cnblogs.com)](https://www.cnblogs.com/kangyupl/p/stanford_cs144_labs.html)
- Toolchain (工具链):
- 想象你有一个工具箱,里面有各种工具来建造房子。
- 在编程中,Toolchain 就是你的"编程工具箱"。
- 它包括:
- 编译器:把你写的代码转换成计算机能理解的语言(就像把你的设计图转换成实际的房子)
- 调试器:帮你找出代码中的错误(就像检查房子是否有问题)
- 其他工具:帮助你构建和运行程序的各种工具
- 在 Java 中,你可能用过 JDK,它就是一种 Toolchain。
- CMake:
- 想象你是一个建筑经理,负责管理整个建房子的过程。
- CMake 就像是你的"建筑计划"。
- 它告诉计算机:
- 你的代码文件在哪里
- 如何使用 Toolchain 中的工具来编译这些代码
- 如何把所有编译好的部分组合成一个完整的程序
- 在 Java 中,你可能用过 Maven 或 Gradle,CMake 在 C++ 中的作用类似。