深入理解计算机系统 -- 第一章 计算机系统漫游

1.1 信息就是位 + 上下文

1.2 编译系统的四个阶段

预处理阶段 生成 修改了的源文件(.i 文本文件)、编译阶段 生成汇编语言文件(.s 文本文件)、汇编阶段 生成可重定位目标程序(.o 二进制文件)、链接阶段 生成可执行目标程序 (二进制文件)

1.3 学习编译系统的益处

  1. 优化程序性能
  2. 理解链接时出现的错误
  3. 避免安全漏洞

1.4 处理器读并解释存在内存中的指令

1.4.1 系统的硬件组成

  1. 总线
  2. I/O设备
  3. 主存
  4. 处理器 程序计数器(PC),寄存器文件、算术逻辑处理单元(ALU)

1.5 高速缓存至关重要

1.6 存储设备形成层次结构

1.7 操作系统管理硬件

1.7.1 进程

操作系统对一个正在运行的程序的一种抽象。进程运行时的所有状态信息,成为上下文。

1.7.2 线程

一个进程可以由多个成为线程的执行单元组成,运行在进程的上下文中,共享同样的代码和全局数据。

1.7.3 虚拟内存

每个进程看到的内存都是一样的,成为虚拟内存地址空间。


1.7.4 文件

每个I/O设备,包括磁盘、键盘、显示器、甚至网络,都可以看成是文件。

1.8 系统之间利用网络通信

1.9 重要主题

1.9.1 Amdahl定律

当我们对系统的某个部分加速时,其对系统整体性能的影响取决于该部分的重要性和加速程度。若系统执行某应用程序需要时间为Told。假设系统某部分所需执行时间与该时间的比例为a,而该部分性能提升比例为k。则系统整体计算加速比为

[图片上传失败...(image-f34aee-1600528021564)]

[图片上传失败...(image-8e7179-1600528021564)]+\alpha/k})

1.9.2 并发和并行

并发 一个通用的概念,指一个同时具有多个活动的系统。

并行 指的是用并发来时一个系统运行得更快。

三个层次的并发

  • 线程级并行

    • 多核处理器 是将多个CPU集成到一个集成电路芯片上。
    • 超线程(同时多线程)是一项允许一个CPU执行多个控制流的技术。它涉及CPU 某些硬件有多个备份,比如程序计数器和寄存器文件,而其他的硬件部分只有一份。
  • 指令级并行 现代处理器可以同时执行多条指令的属性称为指令级并行。

  • 单指令、多数据并行。许多现代处理器拥有特殊的硬件,允许一条指令产生多个可以并行执行的操作,这种方式成为单指令、多数据。

1.9.3 计算机系统中抽象的重要性

你可能感兴趣的:(深入理解计算机系统 -- 第一章 计算机系统漫游)