计算机系统
计算机运行
第一阶段
cpu的pc指向ROM,cpu运行rOM里的一些程序,这些程序叫做固件,她们完成cpu的初始化,把bootloader加载到内存。
第二阶段
bootloader完成cpu初始化,并把操作系统镜像加载到内存,最后把控制权给操作系统。
第三阶段
操作系统的相关操作
计算机系统
概念:计算机系统(计算机)是由硬件系统和软件系统组成的整体,硬件系统是由运算器,存储器和io设备组成的整体,软件系统则是在硬件上不断抽象生成的的整体。
硬件系统
如图所示,硬件系统是硬件系统是由运算器,存储器和io设备组成的。其中运算器是完成算术运算和逻辑运算的部件,控制器是完成逐条取指并译码的部件,内存是用来存储指令和数据的部件,io设备是用来和数据交换的输入和输出设备。
硬件系统的工作流程
输入阶段:键盘输入“2+3” → 数据转为二进制码存入内存。
存储阶段:内存将“2”“3”“+”指令分别存储到特定地址。
控制阶段:控制器从内存取第一条指令(“取数2”)→ 译码 → 指挥运算器读取数据。
取第二条指令(“取数3”)→ 译码 → 指挥运算器读取数据。
取第三条指令(“加法”)→ 译码 → 命令运算器执行加法。
运算阶段:运算器执行“2+3=5”,结果存回内存。
输出阶段:控制器将内存中的“5”传送至显示器 → 用户看到结果。
硬件系统结构
冯诺依曼结构
特点:
1 指令和数据不加区分,放在存储器里,按地址访问。
2.由运算器,存储器,io设备,控制器组成。
3.指令是由操作码和地址码组成的二进制数,在存储器顺序执行,有时可改变顺序。操作码是表明计算机操作的性质,地址码表明操作数在存储器的位置。
4.以运算器为中心,输人输出设备与存储器间的数据传送通过运算器完成。
哈佛架构
1.指令存储和数据存储分开,放在指令存储器和数据存储器
2.由(1)CPU;(2)程序存储器;(3)数据存储器构成。
3.数据和指令的储存可以同时进行
4.中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
软件系统
计算机软件系统结构可以用上图表示,在硬件的上面构建一个新的层级,各个层级之间需要通讯,通讯需要协议。我们将这个协议叫做接口。接口的下层是服务的提供者,服务的上层是服务的使用者。
举个例子,洗衣机洗衣服有许多动作,控制水温,控制水量,控制洗衣服的时间,我们用洗衣机时可以通过洗衣机提供的按钮来控制洗衣机。
硬件的硬件规格作为接口提供给操作系统,操作系统内核提供系统调用给运行库,运行库在提供应用程序接口给各种软件,如开发库,浏览器等等。
计算机系统层次结构
最开始我们描述一个问题用自然语言描述,如汉语,我们解决这个问题的步骤称之为算法,算法转化为编程语言,编程语言有一系列相关的工具,例如编辑器,编译器等等,这些东西叫做语言处理系统。
语言处理系统使用由操作系统提供的服务。操作系统可以看做底层指令集的抽象层,好像一个可以使用的机器,我们也叫它虚拟机。
指令集是软硬件之间的桥梁,也叫做体系结构。它定义了计算机可以使用的指令的集合。
微体系结构是指令集的实现,也叫做微架构,例如我们通过数字电路构建出cpu,可以完成加减法等,这加减法就是指令集的一部分,加减法的数字电路的实现就叫做微体系结构。
微体系结构是通过数字电路实现,数字电路通过模拟电路,模拟电路又通过各种器件。