408课程存在的问题:
-
课程体系中缺乏一门独立的能够贯穿整个计算机系统的基础课程
-
课程大多数从设计者角度出发,而不是从使用者的角度出发。对于大多数学生来说,毕业之后并不会成为专业的cpu设计人员、操作系统开发人员等,而是会成为软件开发工程师。对他们而言,最重要的是理解主流计算机系统的整体设计以及这些设计因素对于应用软件开发和运行的影响。
该教材的角度:
-
从程序员的角度来看待计算机系统,重点讨论系统的不同结构对于上层应用软件编写、执行和数据存储的影响。而其他的系统类书籍都是从构建者角度来写的。
-
现在一般认为问题抽象、系统抽象和数据抽象是计算机类专业毕业生的核心能力,本书负担起了系统抽象的任务。
-
虽然谈及了机器语言,但是重点并不在于如何手工编写汇编语言,而是关注C语言编译器是如何将C语言的结构翻译成机器代码。
编译环境
在经典的×86架构机器上运行Linux操作系统,采用C语言编程。