开篇:前言与本书使用说明

计算机系统——从小白学起

Computer System—Start From a Newbie

主编 吴一航

前言

​ 什么是计算?什么是计算机?什么是计算机系统?这三个问题看起来十分简短,却是许多初入计算机专业同学难以回答的问题。回想一年前的自己,也是如此。大家喜欢称笔者这样的同学为计算机“小白”,这一称呼与我们习惯称那些来到本科学习计算机专业前早已身怀绝技的同学“奆佬”一样自然。

​ 作为一个小白,笔者很高兴能够选择信息安全专业,能够在大一的春夏学期在网络空间安全学院的老师们的带领下开始计算机系统课程的学习。经过一个学期的系统课程学习,笔者深刻体会到了一个小白对于计算机系统的初步认识对于学习其他课程的重要意义。最简单的例子,对于位运算,二进制表示,特别是对于C语言中的指针等知识的理解更为深入了。

​ 可以说,计算机系统课程知识涵盖的内容,是我们深入理解自己写下的代码以及了解他们在计算机中的具体执行方式的重要前提,因此是一个计算机专业学生需要掌握的基本知识。除此之外,我们在系统课的学习中,更能领悟到计算机设计的各种原则,领会计算机工程师们的伟大设计与构想中蕴含的思想。

​ 但是,在这一学期的学习中,笔者深感一本适合于初学者学习计算机系统课程的教材的难得。国内的许多教材更重视知识的罗列,或在讲解的体系上陈旧古板,或无法完全做到由浅入深,并且很多描述佶屈聱牙,对于初学者而言阅读起来经常会使人一头雾水。国外的许多经典教材在这些方面基本上有很好的表现,但是在适合中国学生阅读学习的方面上有所欠缺,同时很多描述也经常无法切中关键,并且也缺少能够完整将计算机系统思路贯通的教材,而这正是浙江大学网络空间安全学院开设计算机系统课程的目的。除此之外,在学习过程中,笔者愈发认为,许多零碎的知识本可以用更好的方式顺畅地表达,形成对于我个人而言更为完备的体系。更重要的是,笔者希望能在教材中体现出由底而上的设计者思路,从原理出发,重视细节,重视设计思路。总而言之,笔者希望能够在学习系统课程的过程中编写这样一本教材,可以从一个小白的视角而非已知者出发,体会初学者学习过程中遇到的困难以及他们可能最能接受怎样的讲解顺序以及讲解方式,并且使学习者能以在学习后以更高的视角认识计算机系统。使其能契合本书的标题以及笔者写作的初心。

​ 当然,由于笔者本人水平有限,并且内容在初学时逐步跟进完稿,尽管我会在学习过程中对之前的内容不断调整打磨,但是难免会出现不少不当之处。因此也希望每一位读者能指出错误,笔者一定耐心学习并及时改正。当然,在成书过程中,笔者也会邀请未学习过相关内容的同学阅读这本教材,以尽力让这本书更适合于初学者学习。