源文件到目标文件的转化过程
- 预处理阶段:读取#开头的命令并插入到源程序文本中,得到hello.i文件
- 编译阶段:根据语法编译成hello.s
- 汇编阶段:进一步翻译成机器语言指令hello.o(二进制),可重定位目标程序的格式
- 链接阶段:链接器将预编译目标文件并入到hello.o程徐,得到可执行文件(目标程序)
硬件组成
- 总线:携带并传递信息字节
- I/O设备:通过控制器或适配器与I/O总线连接。控制器是主板上的芯片组,适配器是插在主板上的卡
- 主存储器:CPU执行程序时,存放程序和程序处理的数据。由一组动态随机存取存储器DRAM芯片组成,是一个线性的字节数组,每个字节有惟一的数组索引
- CPU(中央处理单元):程序计数器PC在任何时刻都指向主存中的某条机器语言指令;算数逻辑单元(ALU)计算新的数据和地址值;
高速缓存
hello程序的机器指令最初存放在磁盘,程序加载时被拷贝到主存。CPU运行程序时,指令从主存拷贝到CPU;字符串“helloWorld”最初在磁盘上,又被拷贝到主存,再被拷贝到显示设备。
CPU与主存之前价格和处理速度的差异,使得高速缓存存储器被采用。进程访问L2的时间开销要比L1大5倍,但比访问主存时间快5倍以上。L1和L2用静态随机访问存储器SRAM实现。
存储器分层结构的主要是想时一个层次上的存储器作为下一层次上的存储器的高速缓存