代码改变世界

深入理解计算及系统 Chapter1 学习笔记

2018-08-29 22:49  CeddieCoding  阅读(213)  评论(0)    收藏  举报

为了巩固基础,重新将CSAPP翻了出来,准备在温习的过程中做好学习笔记。

Chapter 1 计算机系统漫游

1.GCC编译器驱动程序读取源程序文件,并把它翻译成一个可执行目标文件。这个翻译过程可分为四个阶段完成:

(1)预处理:读取头文件内容并直接插入到程序文本中

(2)编 译:翻译成汇编语言程序

(3)汇 编:翻译成机器语言指令,并打包成一种叫做可重定位目标程序的格式

(4)链 接:将库中的文件合并到程序文件中,形成可执行目标文件

 

2.系统硬件的组成:

(1)总线:携带信息字节并负责在各个部件间传递

(2)IO设备:每个IO设备都通过控制器或适配器与IO总线相连

(3)主存:在处理器执行程序时,用来存放程序和程序处理的数据,每个字节都有其唯一的地址

(4)处理器:解释存储在主存中指令的引擎,核心是大小为一个字的存储设备(或寄存器),称为程序计数器(PC)

 

3.CPU指令的操作:

分别为加载、存储、操作、跳转

4.操作系统的作用:

(1)防止硬件被失控的应用程序滥用

(2)向应用程序提供简单一致的机制来控制复杂而又通常大大不同的低级硬件设备

5.进程

进程是操作系统对一个正在运行的程序的一种抽象。当操作系统决定要把控制权从当前进程转移到某个新进程时,就会进行上下文切换,即保存当前进程的上下文,恢复新进程的上下文,然后将控制权传递到新进程

6.线程

一个进程实际上由多个称为线程的执行单元组成,每个线程都运行在进程的上下文中,并共享同样的代码和全局数据

7.并发和并行

并发(concurrency)是指一个同时具有多个活动的系统,而并行(parallelism)指的是用并发来是一个系统运行得更快