📺 CMU 15-213 深入理解计算机系统 ⭐️
课程名称: 15-213/15-513 Introduction to Computer Systems (ICS)
课程官网地址:课程官方网站
先修课程: 15-122 命令式计算原理
重要程度: ※※※※※
课程评点: 这是CMU最为重要的一门课,配套教材CSAPP也是计算机专业最为经典的名著之一,建议每个程序员必修。本课相对而言,偏软,如果对偏硬的课程有追求,可以去学习MIT 6.004和6.033这套体系。
课程说明
本课是CMU计算机专业都必须要掌握的一门课,也是镇系乃至镇校神课,它不仅是所有计算机专业的学生最推荐学习的课程,同时也是所有已经工作的程序员提升自己最为推荐的一门课。本课不仅有丰富的视频、课件、Project资源,而且配套教材也有专门的网站以及国内外各种视频解读。
配套教材
这本书是从程序员的角度学习计算机系统是如何工作的,通过描述程序是如何映射到计算机系统上,程序是如何执行的,以及程序效率低下的原因,这样的方式可以让大 家能更好的知道「程序与计算机系统」的关系。
CSAPP 涵盖的内容非常多,有计算机组成 + 操作系统 + 汇编 + C语言 + Linux系统编程,涉猎的领域比较多,是一本综合性的书,更是一本程序员修炼内功的指引书。CSAPP 主要包括以下内容:
- 信息表示(如何使用二进制表示整型、浮点数等);
- C 和汇编语言的学习(通过汇编语言更深入地理解C语言是什么);
- 计算机体系结构(存储层次结构、局部性原理、处理器体系结构);
- 编译链接(C语言如何从文本变成可执行文件、静态链接、动态链接);
- 操作系统的使用(异常控制流、虚拟内存、多个系统调用介绍);
- 网络及并发编程(并发的基本概念、网络相关的系统调用的介绍)。
学习计算机系统,会使用C语言,和国内把C语言单独拿出来作为编程语言的入门课不同,CMU则是先以Python为入门课,而在CSAPP这门课则要求掌握C语言。
本书还配有专门的网站:
书籍配套网站:CSAPP官方配套网站
配套资源
课件资源
本课配套的课件也是公开的,大家在自学的时候,也可以按照该课程的日程表以及课件来结合教材一起学习:
课件资源:官方课程日程表与课件资源
Labs
配套的Labs包含11个实验,同时也是开源的,大家可以去官方网站上面下载相关代码以及实验说明:
Labs:Labs官方网站
配套视频
原书作者授课
本视频的主讲人Randal E. Bryant and David R. O'Hallaron,既是本 门课的主讲人以及CSAPP这本书的作者,视频带有中英文双语字幕,方便大家学习:
B站视频:精校中英字幕】2015 CMU 15-213 CSAPP 深入理解计算机系统
习题视频:2015 CMU 15213 CSAPP 深入理解计算机系统 习题课视频
国内用户和老师的讲课视频
B站UP fengmuzi2003的重点导读视频:深入理解计算机系统 - CSAPP重点导读
B站UP 九曲阑干的讲解视频: 【CSAPP-深入理解计算机系统】
B站UP yaaangmin的讲解视频: 深入理解计算机系统合集