mirror of
https://github.com/PKUFlyingPig/cs-self-learning.git
synced 2026-06-23 18:06:56 +08:00
[COURSE] Add HIT OS
This commit is contained in:
parent
bb0dae6618
commit
c7ea7f8bb6
5 changed files with 62 additions and 1 deletions
|
|
@ -228,6 +228,8 @@ IDE (Integrated Development Environment):集成开发环境,说白了就是
|
||||||
|
|
||||||
[NJU: Operating System Design and Implementation](操作系统/NJUOS.md),南京大学的蒋炎岩老师开设的操作系统课程。蒋老师以其独到的系统视角结合丰富的代码示例将众多操作系统的概念讲得深入浅出,此外这门课的全部课程内容都是中文的,非常方便大家学习。
|
[NJU: Operating System Design and Implementation](操作系统/NJUOS.md),南京大学的蒋炎岩老师开设的操作系统课程。蒋老师以其独到的系统视角结合丰富的代码示例将众多操作系统的概念讲得深入浅出,此外这门课的全部课程内容都是中文的,非常方便大家学习。
|
||||||
|
|
||||||
|
[HIT OS: Operating System](操作系统/HITOS.md),哈尔滨工业大学的李治军老师开设的中文操作系统课程。李老师的课程基于 Linux 0.11 源码,十分注重代码实践,并站在学生视角将操作系统的来龙去脉娓娓道来。
|
||||||
|
|
||||||
### 并行与分布式系统
|
### 并行与分布式系统
|
||||||
|
|
||||||
想必这两年各类 CS 讲座里最常听到的话就是“摩尔定律正在走向终结”,此话不假,当单核能力达到上限时,多核乃至众核架构如日中天。硬件的变化带来的是上层编程逻辑的适应与改变,要想充分利用硬件性能,编写并行程序几乎成了程序员的必备技能。与此同时,深度学习的兴起对计算机算力与存储的要求都达到了前所未有的高度,大规模集群的部署和优化也成为热门技术话题。
|
想必这两年各类 CS 讲座里最常听到的话就是“摩尔定律正在走向终结”,此话不假,当单核能力达到上限时,多核乃至众核架构如日中天。硬件的变化带来的是上层编程逻辑的适应与改变,要想充分利用硬件性能,编写并行程序几乎成了程序员的必备技能。与此同时,深度学习的兴起对计算机算力与存储的要求都达到了前所未有的高度,大规模集群的部署和优化也成为热门技术话题。
|
||||||
|
|
|
||||||
29
docs/操作系统/HITOS.en.md
Normal file
29
docs/操作系统/HITOS.en.md
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
# HIT OS: Operating System
|
||||||
|
|
||||||
|
## Descriptions
|
||||||
|
|
||||||
|
- University: Harbin Institute of Technology
|
||||||
|
- Prerequisites: C Language
|
||||||
|
- Programming Languages: C Language, Assembly
|
||||||
|
- Difficulty: 🌟🌟🌟🌟
|
||||||
|
- Class Hour: 100 hours+
|
||||||
|
|
||||||
|
If you search on Zhihu for questions like “How to self-study operating system”, “Recommendations for operating system open courses”, “What are some computer courses that you wish you had learned earlier”, etc., HIT Li Zhijun’s operating system course will probably be in one of the high-voted answers. This is a well-known and popular Chinese computer course.
|
||||||
|
|
||||||
|
This course is good at guiding students from their perspective. For example, the course starts with “weakly asking, what is an operating system” to “lifting the lid of the operating system piano”, and introduces the concept of process from the intuitive management of CPU, and introduces memory management from “let’s first let the program enter memory”.
|
||||||
|
|
||||||
|
This course emphasizes the combination of theory and practice. Operating system is something that can be seen and touched. Teacher Li repeatedly emphasizes that experiments must be done. If you only watch videos and talk on paper, you will not learn operating system well. The course is based on the actual Linux 0.11 source code (total code size is about 20,000 lines) for explanation and experiments, with a total of eight small experiments and four large experiments.
|
||||||
|
|
||||||
|
Of course, this course also has some minor flaws. For example, Linux 0.11 is industrial code, not designed for teaching. Therefore, in the process of experimentation, there will be some unavoidable obscure and difficult codes, but they are not very helpful for understanding operating system.
|
||||||
|
|
||||||
|
## Course Resources
|
||||||
|
|
||||||
|
- Course Website: <https://www.icourse163.org/course/HIT-1002531008>
|
||||||
|
- Lecture Videos: <https://www.bilibili.com/video/BV19r4y1b7Aw/?p=1>
|
||||||
|
- Text Book 1: [《Linux 内核完全注释》](https://book.douban.com/subject/1231236//)
|
||||||
|
- Text Book 2:[《操作系统原理、实现与实践》](https://book.douban.com/subject/30391722/)
|
||||||
|
- Assignments: <https://www.lanqiao.cn/courses/115>
|
||||||
|
|
||||||
|
## Complementary Resources
|
||||||
|
|
||||||
|
@NaChen95 summarized the principle analysis and implementation of the eight experimental assignments in this course in [NaChen95 / Linux0.11](https://github.com/NaChen95/Linux0.11).
|
||||||
29
docs/操作系统/HITOS.md
Normal file
29
docs/操作系统/HITOS.md
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
# HIT OS: Operating System
|
||||||
|
|
||||||
|
## 课程简介
|
||||||
|
|
||||||
|
- 所属大学:哈尔滨工业大学
|
||||||
|
- 先修要求:C 语言
|
||||||
|
- 编程语言:C 语言、汇编
|
||||||
|
- 课程难度:🌟🌟🌟🌟
|
||||||
|
- 预计学时:100 小时+
|
||||||
|
|
||||||
|
如果你在知乎上搜索“操作系统如何自学”、“操作系统的公开课推荐”、“有哪些让你相见恨晚的计算机课程”等问题,哈工大李治军老师的操作系统课程大概率都会在某条高赞回答的推荐里。这是一门知名度较高、颇受欢迎的中文计算机课程。
|
||||||
|
|
||||||
|
这门课善于站在学生角度循循善诱。例如,课程从“弱弱地问,什么是操作系统”来“揭开操作系统钢琴的盖子”,从 CPU 的直观管理引出进程概念,从“那就首先让程序进入内存”引出内存管理。
|
||||||
|
|
||||||
|
这门课注重理论和实践相结合。操作系统是看得见摸得着的东西,李老师反复强调一定要做实验,如果只看视频纸上谈兵,是学不好操作系统的。课程基于实际的 Linux 0.11 源码(总代码量约两万行)进行讲解和实验,共有八个小实验,四个大实验。
|
||||||
|
|
||||||
|
当然,这门课也有一些瑕不掩瑜的地方。例如,Linux 0.11 是工业界的代码,不是为了教学而设计的。因此在实验过程中会有一些避不开的晦涩难懂的原生代码,但它们对理解操作系统其实并没有太大帮助。
|
||||||
|
|
||||||
|
## 课程资源
|
||||||
|
|
||||||
|
- 课程网站:<https://www.icourse163.org/course/HIT-1002531008>
|
||||||
|
- 课程视频:<https://www.bilibili.com/video/BV19r4y1b7Aw/?p=1>
|
||||||
|
- 课程教材一:[《Linux 内核完全注释》](https://book.douban.com/subject/1231236//)
|
||||||
|
- 课程教材二:[《操作系统原理、实现与实践》](https://book.douban.com/subject/30391722/)
|
||||||
|
- 课程作业:<https://www.lanqiao.cn/courses/115>
|
||||||
|
|
||||||
|
## 资源汇总
|
||||||
|
|
||||||
|
@NaChen95 在学习这门课中的八个实验作业的原理分析和实现都汇总在 [NaChen95 / Linux0.11](https://github.com/NaChen95/Linux0.11) 中。
|
||||||
|
|
@ -182,6 +182,7 @@ nav:
|
||||||
- "MIT 6.S081: Operating System Engineering": "操作系统/MIT6.S081.md"
|
- "MIT 6.S081: Operating System Engineering": "操作系统/MIT6.S081.md"
|
||||||
- "UCB CS162: Operating System": "操作系统/CS162.md"
|
- "UCB CS162: Operating System": "操作系统/CS162.md"
|
||||||
- "NJU OS: Operating System Design and Implementation": "操作系统/NJUOS.md"
|
- "NJU OS: Operating System Design and Implementation": "操作系统/NJUOS.md"
|
||||||
|
- "HIT OS: Operating System": "操作系统/HITOS.md"
|
||||||
- 并行与分布式系统:
|
- 并行与分布式系统:
|
||||||
- "CMU 15-418/Stanford CS149: Parallel Computing": "并行与分布式系统/CS149.md"
|
- "CMU 15-418/Stanford CS149: Parallel Computing": "并行与分布式系统/CS149.md"
|
||||||
- "MIT 6.824: Distributed System": "并行与分布式系统/MIT6.824.md"
|
- "MIT 6.824: Distributed System": "并行与分布式系统/MIT6.824.md"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue