跳转至

Chapter 1 A Tour of Computer Systems

约 613 个字 预计阅读时间 2 分钟

1.4.1 Hardware Organization of a System

计算机系统的硬件组成包括:总线/BusI/O设备/IO devices主存/Main memory处理器/Processor

  • 总线是贯穿整个系统的一组电子管道,携带信息字节并负责在各个设备之间传输。总线被设计成传送定长的字节块,被称为字/Word,现代的计算机的字长大多为4个字节/32位或者8个字节/64位。

  • I/O设备

  • 主存是一个临时存储设备,在处理器执行程序的时候,用来存放程序和程序处理的数据。主存是由一组动态随机存取存储器/Dynamic random access memory/DRAM组成的,在逻辑上看是一个线性的字节数组,每个字节都有唯一的地址,且地址从零开始。

  • 中央处理器单元/Central processing unit简称为处理器,处理器负责解释(或者执行)主存中的指令。处理器的核心是大小为一个字的寄存器/Register,称为程序计数器/Program counter/PC

1.9.1 Amdahl's Law

当我们对系统的某个部分加速的时候,其对整个系统性能的影响取决于该部分的重要性和加速程度。特别地,假设系统执行某个应用程序需要的时间为\(T_{old}\),某部分所需执行时间与该时间所用的比例为\(\alpha\),而这部分性能提升的比例为\(k\),改进之后,总的执行时间为

\[T_{new}=T_{old}*(1-\alpha)+T_{old}*\alpha/k.\]

那么,我们可以的到加速比\(S\)

\[S=\frac{T_{old}}{T_{new}}=\frac{1}{(1-\alpha)+\alpha/k}.\]

我们同时也考虑极限情况,也就是 \(k\to\infty\) 的情况,此时加速比\(S\)

\[S=\frac{1}{1-\alpha}.\]

这就是加速比的上界了。

总之,Amdahl's Law告诉我们,为了显著提升系统性能,必须提升全系统中相当大的部分的性能

1.9.2 Concurrency and parallelism

并发(concurrency)和并行(parallelism)是两个不同的概念。并发是一个通用的概念,指一个同时具有多个活动的系统。并行是指使用并发来使一个系统运行得更快。并行可以在计算机系统的多个抽象层次上运用,我们按照系统层次结构中从高到底的顺序重点强调三个层次:

  • 线程级并发:使用