往后体系结构内容笔记来自https://www.bilibili.com/video/av19929862?from=search&seid=7414140685790867958
不同年代计算机体系结构研究的变化
年代 | 一些重要的研究内容 | 典型计算机 |
1940年代 | 程序控制计算机、存程序计算机 | ENIAC、EDVAC
|
1960年代 | 指令系统 | IBM 360系列机 |
1960年代 | 阵列机和并行处理 | ILLIAC IV |
1970年代 | 流水线、向量处理、处理器 | Cray-1、Intel 4004 |
1980年代 | RISC、cache、流水线 | MIPS R1000、POWER |
1990年代 | SMP、CMP、指令级并行 | MIPS R10000、PowerPC 604 |
2000年以来 | SMT、功耗、Multi-core、Stream | Intel i7、Power 6、ARM、GPU |
40年代,关注机器是采用什么方式进行工作的,ENIAC是采用硬件互联的方式进行程序设计的、EDVAC是采用存储程序控制
阵列机和并行处理是当时人们对计算机系统性能的追求,是以量取胜的加速方法。
计算机系统中的多语言层次结构
第6级:应用语言虚拟机
第5级:高级语言虚拟机
第4级:汇编语言虚拟机
第3级:操作系统虚拟机
第2级:机器语言(传统机器级)<---------硬/软件分界
第1级:微程序机器级
微程序机器级
- 微程序机器级的机器语言是微指令集
- 程序员用微指令编写的微程序一般是直接由硬件解释实现的
传统机器级
- 传统机器级的语言是该机的指令集
- 机器指令程序可以由微程序进行解释(仿真)
- 可有多个解释程序
- 通过仿真,实现多种指令集
3. 可以没有微程序机器级
那么这些指令如何实现呢? 组成中说的直接由硬件的组合逻辑电路实现
操作系统虚拟机
- 直接管理传统机器中的软硬件资源
- 是传统机器的延申
- 提供了传统机器所没有的某些基本操作和数据结构
- 文件系统
- 虚拟存储系统
- 多道程序系统
- 多线程管理等
汇编语言虚拟机
- 用汇编语言编写的程序,首先翻译或解释成第3级和第2级语言,然后再由相应的机器执行
- 完成汇编语言翻译的程序就叫做汇编程序(又叫汇编器)
高级语言虚拟机
- 机器语言就是各种高级语言
- 用这些语言所编写的程序一般是由称为编译程序翻译到第4级或第3级上
- 个别的高级语言也用解释的方法实现转化
应用语言虚拟机
- 为使计算机 满足某种用途而专门设计的(人工智能语言、教育、行政管理、计算机设计)
- 应用语言编写的程序一般是由应用程序包翻译到第5级上