计算机系统漫游

2019-01-19  本文已影响0人  月月月月_bd25

1.1 信息=位+上下文

系统中的信息,都是由一串比特表示的。

区分不同数据对象的唯一方法是读到这些数据的上下文。比如,一个同样的字节序列可能表示的是一个整数、浮点数字符串或机器指令。

1.2 程序被其他程序翻译成不同的格式

说的是一个编译系统的构成。

Hello.c -> 1. 预处理器 -> hello.i -> 2.编译器 -> hello.s -> 3. 汇编器 -> hello.o -> 4. 链接器 -> hello

  1. 读取系统头文件的内容,直接插入到程序文本中
  2. 将文本文件hello.i 翻译成汇编语言程序的文件hello.s
  3. 将hello.s 翻译成机器语言指令,将指令打包成可重定位目标的格式,保存到hello.o中
  4. 链接器负责处理标准预编译好的文件合并到hello.o中。(如在程序中调用C库中的printf函数)

1.3 了解编译系统如何工作的益处

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

一. 系统硬件组成

  1. 总线
    • 贯穿整个系统的一组电子管道。
    • 被设计成传送定长的字节块,字节块=字。
    • 字长通常是4个字节(32位),或者8个字节(64位)
  2. I/O设备
    • 键盘、鼠标、显示器、磁盘驱动等都是IO设备
    • 每个IO设备通过一个控制器或适配器和IO总线相连。控制器是IO设备本身或系统的主印刷电路板(即主板)上的芯片组。适配器是一块插在主板插槽上的卡。
  3. 主存
    • 物理上,主存由一组动态随机存取存储器(DRAM)芯片组成。逻辑上,是一个线性字节数组,每个字节都有唯一地址(数组索引),地址从0开始 。
    • 每条机器指令由不同数量的字节组成,如Linux x86-64机器上,short类型 2字节,int float 4字节,long double 8字节
  4. 处理器
    • 中央处理单元(CPU),解释或执行存储在主存中指令的引擎。
    • 程序计数器(PC),大小只有一个字,任何时刻都指向主存中的某条机器语言指令。(即含有该条指令的地址)
    • 寄存器文件(Register file),一个小的存储设备,由一些单个字长的寄存器组成。
    • 算术/逻辑单元(ALU),计算新的数据和地址值。
    • 指令集架构描述的是每条机器代码指令的效果,微体系架构描述的是处理器实际上如何实现。

二. 存储器层次结构

image

上一层的存储器作为第一层存储器的高速缓存。

三、操作系统管理硬件

1、进程

2、线程

3、虚拟内存

image

从低的区开始:

4、文件

四、系统间的网络通信

五、重要主题

1、Amdahl定律

2、并发和并行

3、计算机中的抽象

各种抽象:

上一篇下一篇

猜你喜欢

热点阅读