一、执行hello程序

1 当用户输入hello后,shell程序逐一读取字符到寄存器;

2 放到主存储器;

二、从磁盘加载可执行文件到主存

三、从存储器写输出串到显示器

1 指令从存储器中拷贝到寄存器

2 从寄存器文件到显示器;

ALU:算术/逻辑处理单元;

控制器:I/O设备本身中或是主板上的芯片组;

寄存器文件:是一个小的存储设备,由一些字长大小的寄存器组成,每个都有唯一的名字。

PC:程序计算器;

CPU:执行存储在主存中指令的引擎;

处理器的核心是一个被称为程序计数器的字长大小的存储设备(或寄存器)。在任何一个时间点上,PC都指向主存中的某条机器语言指令(内含其地址)。CPU从PC指向的存储器处读取指令,执行指令,然后更新PC指向下一条指令;

主存:用于存放程序和程序处理的数据;

I/O:是主存与外部设备之间拷贝数据的过程;

适配器:一块插在主板插槽上的卡;

输入:从I/O设备拷贝数据到主存;

输出:从主存拷贝数据到I/O设备;

CPU在指令的要求下可能会执行这些操作

1 加载:从主存拷贝一个字节或者一个字到寄存器,覆盖寄存器原来的内容;

2 存储:从寄存器拷贝一个字节或者一个字到主存的某个位置,覆盖这个位置上原来的内容;

3 更新:拷贝两个寄存器的内容到ALU,ALU将两个字相加,并将结果存放到一个寄存器中,覆盖该寄存器中原来的内容;

4 I/O读:从一个I/O设备中拷贝一个字节或者一个字到寄存器;

5 I/O写:从一个寄存器中拷贝一个字节或者一个字到一个I/O设备;

6 转移:从指令本身中抽取一个字,并将这个字拷贝到PC中,覆盖PC中原来的值;

每个计算机系统中的存储设备都被组织成一个存储器层次模型;存储器分层结构的主要思想是一个层次上的存储器作为下一层次上的存储器的高速缓存;

存储器系统(memory system)是一个具有不同容量、成本和访问时间的存储(storage)设备的层次结构;

SRAM,将每个位存储在一个双稳态存储器单元里。第个单元用一个六晶体管电路来实现的。它可以无限期地保持在两个不同的电压配置(configuration)或状态(state)之一。只要有电,即使有干扰,当干扰消除时,电路就会恢复到稳定值;

DRAM,将每个位存储为对电容的充电。这个电容非常小,只有30*10-15法拉;每个单位由一个电容和一个访问晶体管组成。与SRAM不同,DRAM对干扰非常敏感,泄漏电流的各种因素会导致DRAM单元在10-100毫秒时间内失去电荷。幸运的是,计算机运行的时钟周期是以纳秒来衡量的,这个保持时间已经很长了。存储器系统必须周期性地通过读出然后写回来刷新存储器的每个位。

只要有电,SRAM就是持续的.与DRAM不同,它不需要刷新,且速度快,对诸如光和电噪音干扰不第三。代价是SRAM单元比DRAM单元使用更多的晶体管,因而没那么密集,而且更贵,功耗更大;