- 目的:了解在系统上执行hello程序时,系统发生了什么以及为什么会这样,即hello程序的生命周期
- 系统中所有的信息都是由一串比特表示的,区分不同数据对象的唯一方法是读到这些数据对象时的上下文,在不同的上下文中,一个同样的字节序列表示的内容可能不同
- 由ASCII字符构成的文件称为文本文件,所有其他文件称为二进制文件
- 程序翻译过程:
- 预处理阶段:读取系统头文件并直接插入到程序文本中
- 编译阶段:翻译成汇编语言
- 汇编阶段:翻译成机器语言指令(二进制)
- 链接阶段:合并预编译好的文件(如printf函数)
- 系统的硬件组成:
- 总线:携带信息字节并负责在各个部件间传递
- I/O设备:输入输出
- 主存:在处理器执行程序时,用来存放程序和程序处理的数据
- 处理器:解释存储在主存中指令的引擎
- 高速缓存:存放处理器近期可能会需要的信息
- 存储器存储结构的主要思想是上一层的存储器作为低一层存储器的高速缓存
- 操作系统:所有应用程序对硬件的操作尝试都必须通过操作系统
- 进程:是操作系统对一个正在运行的程序的一种抽象
- 一个系统可以同时运行多个进程,不同进程的指令是交错执行的,称为上下文切换
- 进程由多个线程组成
- 虚拟内存:把一个进程虚拟内存的内容存储在磁盘上,然后用主存作为磁盘的高速缓存
- Amdahl定律:当我们对系统的某个部分加速时,其对系统整体性能的影响取决于该部分的重要性和加速程度
- 并发和并行:
- 线程级并发:在正在执行的进程间快速切换来实现的
- 指令级并行:同时执行多条指令
- 抽象:
- 文件:I/O设备
- 虚拟内存:主存+磁盘
- 进程:正在运行的程序
- 虚拟机:整个计算机
第1章——计算机系统漫游
于 2022-10-05 16:49:47 首次发布