Notes on Computer Organization and Architecture
引言
本篇文章内容是计算机体系结构的相关知识整理,作为研究虚拟机(主要是JVM)的知识储备。
目录
计算机发展史:
- 机械计算机
- 真空管计算机
- 晶体管计算机
- 集成电路计算机
- 超大规模集成电路计算机
- 摩尔定律:硅芯片的密度每18个月翻一番(PS,自然杂志等媒体早就预言摩尔定律失效,然而摩尔定律50周年的时候,摩尔定律仍有效)
计算机系统中的数据格式
- 二进制数,浮点数,补码
- 编码,校验码
布尔代数,逻辑电路
- 卡诺图
Marie
- CPU:简单来说是执行指令,包括提取指令,指令译码和数据操作。
- 寄存器,Register
- 算数逻辑单元,Arithmetic Logic Unit
- 控制单元,Control Unit
- 总线
- 时钟
- 输入输出子系统
- 存储器的组成和寻址方式
- 中断
- I/O请求
- 算数错误
- 算数上溢或下溢
- 硬件故障
- 用户定义的中断点
- 页面错误
- 非法指令
- 其他原因
- 指令执行:取址,译码,执行周期。
- CISC和RISC (Complex Instruction Set Computer&Reduced Instruction Set Computer)
- MIPS体系
指令系统体系
- ISA(Instruction System Architecture)
- 大端小端的区别是高低位地址的存储顺序,各有优缺点。注意的是,计算机网络是大端位序的体系结构。GIF是小端,JEPG是大端。AVI支持两种格式。
- 堆栈和寄存器:指令的操作码和操作数可变,节省存储空间。RPN(Reverse Polish Notation)后缀表示法。
- 扩展操作码:改变指令的操作码和操作数
- 寻址方式
- 指令流水线
存储
- RAM(Random Access Memory)
- ROM(Read-Only Memory)
- 存储器层次结构
- 寄存器
- 1级缓存
- 2级缓存
- 主存储器
- 硬盘
- 优化磁盘
- 磁带
- 直接映射的高速缓存
- 全关联高速缓存
- 组关联高速缓存
- 置换策略:Vivtim Block的选择算法LRU(Least Recently Used)&FIFO
- 虚拟存储器:主存器的分页机制。
- 虚拟地址:进程使用的逻辑地址
- 物理地址:物理存储器使用的地址
- 映射:高速缓存映射
- 页帧:主存储器分成的相等大小的信息块或数据块
- 页:虚拟存储器划分的信息块。每页的大小与一个页帧相同。
- 分页:将虚拟页从硬盘复制到主存储器的某个页帧的过程
- 存储碎片:变得不能用的存储器单元
- 缺页:当请求页在主存储器中没有找到时,将请求页从硬盘复制到存储器。
- 分页:按照固定大小的页帧为各个进程分配物理地址,在页表中记录页的存储位置信息。
- 虚拟地址:页域(page field)和偏移量(offset field)
- 分段:虚拟地址的空间划分为多个长度可变的逻辑单元。
系统软件
- 编译器
- 词法分析器
- 语法分析器
- 语义分析器
- 中间代码发生器
- 代码优化器
- 代码发生器
- 解释器