计算机体系结构及内存分层体系
Computer Architecture & Memory Hierarchy
目录
计算机基本硬件结构
- CPU主要是完成对程序的控制
- 内存主要放置程序的代码和处理的数据
- 设备
计算机基本硬件结构
内存分层体系
放上这张图(这张图应该很多人都看到过)
内存延时
操作系统需要完成的四个目标
-
抽象: 逻辑地址空间
我们希望应用程序在内存中运行的时候, 不用考虑很多细节(物理内存地址在什么地方, 外设在什么地方), 只需要访问一个连续的地址空间就可以了, 即逻辑地址空间.
-
保护: 独立地址空间
因为在内存中运行着多个不同的应用程序. 运行的过程中, 有可能会访问其他应用程序的地址空间并造成破坏, 所以就需要将不同应用程序的运行空间进行隔离.
-
共享: 访问相同内存
不同的程序之间除了隔离之外, 还会有交互. 所以操作系统提供共享的内存空间来完成.
-
虚拟化: 更多的地址空间
当内存中的程序过多的时候, 有可能会出现内存不够的情况. 这样, 就会把急需要地址空间的程序放在内存中, 暂时不需要地址空间的程序先放在硬盘上去.
操作系统中管理内存的不同方法
- 程序重定位
- 分段
- 分页
- 虚拟内存
- 按需分页虚拟内存
实现高度依赖于硬件
- 必须知道内存架构
- MMU(内存管理单元): 硬件组件负责处理CPU的内存访问请求