这个学期一直很忙,还没有入学,就预先收到了导师对CSAPP课程助教的邀请,去网上了解了一下CSAPP课程,感觉非常有用的一门课,可惜当年我们读大学的时候没有开。今年这个学期我们学校也是第一次课程改革,将大二的计算机组成这门课换成了CSAPP。教学模式也是完全效仿国外教学制度,大班授课,小班辅导,由11班级的大班,5个授课老师,由于是第一年课改,之前没有学过这门课程,做起来这门课的助教的任务和压力也非常大,辅导学生,帮学生答疑,指导和验收实验,批改作业,构建课程练习测试的习题库,以及上小班讨论课等等。
网上有很多关于CSAPP这本书的评价,都非常高,大家有兴趣可以自行搜索,这本书的中文名叫做《深入理解计算机系统》,但是网上很多人都认为直译成《以程序员的视角理解计算机系统》,是作为一个程序员的基本知识。这本教材是卡内基梅隆大学的教材,也是国内少数知名学府才开设的课程,内容涵盖了计算机组成与体系结构,汇编,操作系统以及计算机网络等一些基础知识。全书分为12个章节。大家有兴趣的还是值得一读的,但是阅读之前也要具备一点基础知识,而且个人感觉中文翻译版不是太好,有时候还有错误。国外教材的一个特点就是有很多概念在后面才会讲解到,但是在前面涉及就会提前用到,所以需要具备一点基础知识比如c,java语言,数据结构等基础知识。个人感觉读英文原版可能更好理解。
直到现在课程也是才上到了一半,上周六上午才去监考完他们的期中测试,下午验收完他们的lab3。时间总是安排的这么紧张有序,CSAPP感觉不仅内容比较好,学习收获比较大以外就是它的实验了,实验非常有意思,而且也是这门课的重头戏,难度也都是非常大的,非常锻炼动手能力,所以也经常看到csdn上好多博主将做完某一个实验专门写一篇博文的。
切入正题,再辅导和验收学生实验的过程中,自己收获也非常大,所以想总结一下,主要是写一写这几个实验。
首先我们是为了让学生可以很快的熟悉其实验环境,先是一个环境安装配置与熟悉linux基本操作的预练习实验+熟悉基本的汇编操作的热身实验。
在这里我用的环境是:VMware Workstation 10+ ubuntu-13.04-desktop-i386(关于环境安装和遇到的一些问题以及第一个预备实验改天补上)