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

深入理解计算机系统#

1.1##

  • 010101(比特序列)八位一字节,一字节表示某些文本字符。ASCII即用单字节大小的整数值表示字符
  • 只有ASCII码字符构成的文件为文本文件,其他为二进制文件

1.2##

  • 预处理
    • 根据#读取头文件中内容并插入原文本文件.c得到.i文本文件
  • 编译
    • 编译器(ccl)将.i文本文件翻译成.s文本文件,包含汇编语言程序
  • 汇编
    • 将.s翻译成机械语言指令,打包成可重定位目标程序格式,保存在.o二进制文件中
  • 链接
    • 调用printf.o中的printf函数,合并入.o程序,变为可执行目标文件

1.3##

  • 了解编译系统——好!

1.4##

  • shell是一个命令行解释器

1.4.1##

  1. 总线
    • 贯穿整个系统,携带并传递信息字节,通常传输定长的字节块:32位——4字节,64位——8字节
  2. I/O设备
    • 输入/输出设备(In/Out)联系系统与外部:键鼠、显示器、磁盘……
    • I/O设备通过控制器适配器与I/O总线相连。相同的是,控制器和适配器用于在I/O设备和总线之间传递信息。不同的是,控制器是设备本身或系统的主板上的芯片组,适配器是插在主板插槽上的
  3. 主存
    • 主存在处理执行程序时用来存放程序和程序处理的数据。物理上是由一组动态随机存取存储器(DRAM)芯片组成。逻辑上是一个线性字节数组
  4. 处理器
    • CPU解释主存中指令,核心是程序计数器(PC)(此处核心指关键设备),为一字大小储存设备,PC始终指向主存中某条机械语言指令
    • 处理器从PC指向的内存处读取、结束、执行指令,然后更新PC

1.5##

  • 存储空间越大,运行越慢。于是在空间小的高速处理器与空间大的低速主存之间插入高速缓存(cache),利用高速缓存的局部性原理,在高速内存中存放可能经常访问的数据,使大部分操作可在高速缓存中完成。

1.6##

  • 通过一个从小到大,从快到慢(寄存器->高速缓存->主存->二级存储)的存储器层次结构,可以提高程序的性能。

1.7##

  • 操作系统连接程序和硬件。
  • 操作系统的基本功能:
    1. 防止硬件被失控的应用程序滥用
    2. 向应用程序提供简单一致的机制来控制复杂的低级硬件设备

1.7.1##

  • 进程是计算机科学中最重要和最成功的概念之一
  • 处理器看似并发运行程序,实则交错切换执行。例如需要运行的进程数多于可运行CPU。被称为上下文切换:保存当前进程的上下文、恢复新进程的上下文,将控制权传递到新进程。
  • 进程转换由系统内核(kernel)管理,内核是操作系统代码常驻主存的部分,它是系统管理全部进程所用代码和数据结构的集合。
  • 第八章

1.7.2##

  • 多线程并发balabalaba在第十二章

1.7.3##

低地址

  • 程序代码与数据——在开始就被规定大小
  • ——在运行是可动态扩展或收缩
  • 共享库——存放C标准库和数学库这样的公用代码(第七章)
  • ——编译器用它来实现函数调用,调用增长,返回收缩(第三章)
  • 内存虚拟内存——为内核保留,不允许程序读写或调用

高地址

1.7.4##

  • 文件就是字节序列,每个I/O设备都可看成文件

1.8##

  • 网络可视为一个I/O设备,多个系统通过网络读取/发送其他/自己的数据

1.9##

  • 系统是硬件与软件互相交织的集合体

1.9.1##

  • Amdahl定律:想要显著加速整个系统,必须提升全系统中相当大的部分的速度(考虑到分权)

1.9.2##

  • 并发:一个同时具有多个活动的系统
  • 并行:用并发来使一个系统运行地更快
    1. 线程级并发
      • 我们能够设计出同时有多个程序执行的系统,这导致了并发
      • 超线程/同时多线程允许一个cpu执行多个控制流
    2. 指令级并行
      • 流水线通过将执行一条指令所需要的活动划分为不同的步骤,将处理器的硬件组织成一系列的阶段,每个阶段执行一个步骤。这些阶段可以并行地操作,用来处理不同指令的不同部分
    3. 单指令、多数据并行
      • 在最低层次上,一些特殊的硬件允许一条指令产生多个可并行执行的操作,这种方式被称为单指令、多数据

1.9.3##

  • 抽象的使用是计算机科学中最为重要的概念之一。
  • 文件是多I/O设备的抽象,虚拟内存是对程序存储器的抽象,进程是对一个正在运行的程序的抽象,虚拟机是对整个计算机的抽象。
posted @ 2019-08-07 00:05  一个李长兴  阅读(293)  评论(2编辑  收藏  举报