缺页中断处理过程
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
由于缓存的块数远小于主存的块数,一个缓存块不能 唯一、永久地对应一个主存块,每个缓存块需设一个标记, 用来表示当前存放的是哪一个主存块,该标记的内容相当 于主存块的编号(即主存地址的高m位)。
CPU读信息时根据主存地址的低位部分,将主存地址 的高位部分与缓存块的标记进行比较,以判断所读信息是 否在缓存中。
LOGO 5
第三章 存储管理 3.1 存储管理综述
正文
主存块号 主存储器
0
0
::
字块0
1
1
::
字块1
标记
Cache
:: ::
字块0 字块1
2
::
字块2
:: ~~ :: ~~
2m-1
::
字块M-1
~~ :: ~~
2c-1
::
字块C-1
M= 2m C = 2c
(1)CACAHE命中:CPU访问的数据或指令已存在于CACHE中。
翻译阶段
制程序代码,这属于翻译阶段。
3. 链接编辑阶段
把目标程序代码链接装配到一起,
库代码
其他 代码
目标程序 代码
成为一个统一的程序整体。经过链接编辑阶段,
得到用户程序相对于“0”编址的一个完整的二 进制目标程序代码。
链接编辑阶段
4. 装入阶段
装入阶段的任务,是根据内存的ቤተ መጻሕፍቲ ባይዱ用情况,
为进入内存的程序分配存储区,对程序中的地 址进行调整。
(2)命中时间:在CACHE命中时的访存时间,它等于CACHE的访问时间。
(3)失效时间:CACHE不命中时因访存而增加的访问时间,它等于对主存的访问
时间和将主存中的数据调入CACHE的时间。
LOGO 6
第三章 存储管理 3.1 存储管理综述
正文
3.1.3 存储管理的功能 ▪内存的分配和回收
当用户提出内存申请时,操作系统按一定策略从表 中选出符合申请者要求的空闲区进行分配,并修改表内 有关项,这称为内存的分配;若某进程执行完毕,需归 还内存空间时,操作系统负责及时收回相关存储空间, 并修改表中有关项,这称为内存的回收。
LOGO 8
第三章 存储管理 3.1 存储管理综述
正文
▪地址定位
就是将进程的逻辑地址变换为内存中的物理地址。 我们需要实现从逻辑地址到物理地址的变换,即实现 从虚地址到实地址的变换。
▪内存扩充 内存“扩充”包含了存储器利用的提高和扩充两方
面的内容。为用户提供比内存物理空间大得多的地址 空间。比较典型的内存扩充是虚拟存储器。
第三章 存储管理 3.1 存储管理综述
正文
存储器分类
内存:CPU直接存取,存放正要执行的程序和数据, 访问速度快,价格贵,容量小。
外存:CPU不能直接访问,存放暂时不执行的程序 和数据,访问速度慢,容量大。
存储管理指内存管理
LOGO 1
第三章 存储管理 3.1 存储管理综述
正文
3.1.1 存储器的层次结构
CACHE用于解决 CPU与主存间的速度匹配问题,其 理论依据是程序访问的局部性原理。
LOGO 4
第三章 存储管理 3.1 存储管理综述
正文
为了使主存与cache之间映射,将主存与缓存都分在若 干个块,每个块包含若干个字,并使块的大小相等。
将主存n位地址分为高m位和低b位,缓存地址也分成 高c位和低b位。主存的块数M=2m远大于缓存的块数C=2c 块。
. 正文 例如,假定用户程序A的相对地址空间为0~3KB(0~3071),在程序
中地址为3000的地方,有一条调用子程序(其入口地址为100)的指令:
• 理想中的存储器
– 速度快 – 容量大 – 价格便宜
• 目前无法同 时满足三个 条件
• 多级存储器 结构
LOGO 2
第三章 存储管理 3.1 存储管理综述
正文
寄存器和主存又 叫
“可执行存储器”
可执行 存储器
辅存
计算机对所存信息访问机制 访问所耗时间
进程可在很少的时钟周期使 很少的时钟周期 用一条Load或store指令访 问可执行存储器
区域,也不知道自己的程序将会被放在内存的什么地方。
. 用户程序的
程序通过链接编辑,产生出相对于“0”计算的地址
逻辑地址空间 0
a 用户
空间,这个地址空间称为是用户程序的“相对地址空
程序的
间”,或“逻辑地址空间”,其地址称为“相对地址”
物理 地址空间
或“逻辑地址”。系统所接受的,就是这种相对于“0”
.编址的这用样户的程程序序。是不可能直接投入运行的,因为程序中 k
通过I/O设备访问辅存
远高于前者,一般相差3个 数量级甚至更多(因访问
中涉及到中断、设备驱LO动GO 3
程序以及物理设备的运行)
第三章 存储管理 3.1 存储管理综述
正文
3.1.2 高速缓冲存储器的工作原理
1、高速缓冲存储器 CACHE是一个高速度、小容量的缓冲存储器,存储
CPU最经常访问的指令或数据,一般用SRAM芯片构成, 其全部功能由硬件实现,对程序员是透明的。
a+k
的地址没有能够反映出它所在存储区的真正存储位置。
物理
逻辑
装入
地址
.2. 地址的重定位
地址
程序被装入到分配给它的内存储区时,必须对每
条指令里所涉及到的逻辑地址进行修改,使它们能够
正确地反映出所在的存储位置。这种把逻辑地址转换成物理地址的过程,称为L地O址GO的 11
“重定位”。
第三章 存储管理 3.2 固定分区存储管理
磁盘
可执行程序 代码
装入阶段
程序 地址空间
LOGO 10
第三章 存储管理 3.2 固定分区存储管理
正文
• 3.2.1 地址重定位
.1. 用户程序的两种地址和空间 内存单元的地址称为“绝对地址”或“物理地址”。从任何一个绝对地
.址开始的一段连续的内存空间,被称为“物理地址空间”,或“绝对地址空间内”存 。 在多道程序设计环境下,用户无法事先指定要占用内存的哪个
LOGO 9
第三章 存储管理 3.2 固定分区存储管理
正文 • 用户程序的四个处理阶段
1. 编辑阶段
用户
用汇编语言或某高级语言编写程序,是产生用户程 序的编辑阶段,该阶段的结果是得到“源程序”文件。
编辑阶段
2. 翻译阶段
源程序
为了程序的运行,先应使用汇编程序或编译程序对
源程序进行翻译处理,产生出称为“目标程序”的二进
LOGO 7
第三章 存储管理 3.1 存储管理综述
正文
▪内存的保护和共享 内存保护:就是确保多个进程都在各自分配到内 存区域内操作,互不干扰,防止一个进程破坏其他进 程的信息。
内存共享:内存允许同时有多个程序在运行-多 个进程,它们可能调用相同程序段或使用同一数据体, 从而节省内存空间,减少内外存的数据交换,提高系 统的效率
CPU读信息时根据主存地址的低位部分,将主存地址 的高位部分与缓存块的标记进行比较,以判断所读信息是 否在缓存中。
LOGO 5
第三章 存储管理 3.1 存储管理综述
正文
主存块号 主存储器
0
0
::
字块0
1
1
::
字块1
标记
Cache
:: ::
字块0 字块1
2
::
字块2
:: ~~ :: ~~
2m-1
::
字块M-1
~~ :: ~~
2c-1
::
字块C-1
M= 2m C = 2c
(1)CACAHE命中:CPU访问的数据或指令已存在于CACHE中。
翻译阶段
制程序代码,这属于翻译阶段。
3. 链接编辑阶段
把目标程序代码链接装配到一起,
库代码
其他 代码
目标程序 代码
成为一个统一的程序整体。经过链接编辑阶段,
得到用户程序相对于“0”编址的一个完整的二 进制目标程序代码。
链接编辑阶段
4. 装入阶段
装入阶段的任务,是根据内存的ቤተ መጻሕፍቲ ባይዱ用情况,
为进入内存的程序分配存储区,对程序中的地 址进行调整。
(2)命中时间:在CACHE命中时的访存时间,它等于CACHE的访问时间。
(3)失效时间:CACHE不命中时因访存而增加的访问时间,它等于对主存的访问
时间和将主存中的数据调入CACHE的时间。
LOGO 6
第三章 存储管理 3.1 存储管理综述
正文
3.1.3 存储管理的功能 ▪内存的分配和回收
当用户提出内存申请时,操作系统按一定策略从表 中选出符合申请者要求的空闲区进行分配,并修改表内 有关项,这称为内存的分配;若某进程执行完毕,需归 还内存空间时,操作系统负责及时收回相关存储空间, 并修改表中有关项,这称为内存的回收。
LOGO 8
第三章 存储管理 3.1 存储管理综述
正文
▪地址定位
就是将进程的逻辑地址变换为内存中的物理地址。 我们需要实现从逻辑地址到物理地址的变换,即实现 从虚地址到实地址的变换。
▪内存扩充 内存“扩充”包含了存储器利用的提高和扩充两方
面的内容。为用户提供比内存物理空间大得多的地址 空间。比较典型的内存扩充是虚拟存储器。
第三章 存储管理 3.1 存储管理综述
正文
存储器分类
内存:CPU直接存取,存放正要执行的程序和数据, 访问速度快,价格贵,容量小。
外存:CPU不能直接访问,存放暂时不执行的程序 和数据,访问速度慢,容量大。
存储管理指内存管理
LOGO 1
第三章 存储管理 3.1 存储管理综述
正文
3.1.1 存储器的层次结构
CACHE用于解决 CPU与主存间的速度匹配问题,其 理论依据是程序访问的局部性原理。
LOGO 4
第三章 存储管理 3.1 存储管理综述
正文
为了使主存与cache之间映射,将主存与缓存都分在若 干个块,每个块包含若干个字,并使块的大小相等。
将主存n位地址分为高m位和低b位,缓存地址也分成 高c位和低b位。主存的块数M=2m远大于缓存的块数C=2c 块。
. 正文 例如,假定用户程序A的相对地址空间为0~3KB(0~3071),在程序
中地址为3000的地方,有一条调用子程序(其入口地址为100)的指令:
• 理想中的存储器
– 速度快 – 容量大 – 价格便宜
• 目前无法同 时满足三个 条件
• 多级存储器 结构
LOGO 2
第三章 存储管理 3.1 存储管理综述
正文
寄存器和主存又 叫
“可执行存储器”
可执行 存储器
辅存
计算机对所存信息访问机制 访问所耗时间
进程可在很少的时钟周期使 很少的时钟周期 用一条Load或store指令访 问可执行存储器
区域,也不知道自己的程序将会被放在内存的什么地方。
. 用户程序的
程序通过链接编辑,产生出相对于“0”计算的地址
逻辑地址空间 0
a 用户
空间,这个地址空间称为是用户程序的“相对地址空
程序的
间”,或“逻辑地址空间”,其地址称为“相对地址”
物理 地址空间
或“逻辑地址”。系统所接受的,就是这种相对于“0”
.编址的这用样户的程程序序。是不可能直接投入运行的,因为程序中 k
通过I/O设备访问辅存
远高于前者,一般相差3个 数量级甚至更多(因访问
中涉及到中断、设备驱LO动GO 3
程序以及物理设备的运行)
第三章 存储管理 3.1 存储管理综述
正文
3.1.2 高速缓冲存储器的工作原理
1、高速缓冲存储器 CACHE是一个高速度、小容量的缓冲存储器,存储
CPU最经常访问的指令或数据,一般用SRAM芯片构成, 其全部功能由硬件实现,对程序员是透明的。
a+k
的地址没有能够反映出它所在存储区的真正存储位置。
物理
逻辑
装入
地址
.2. 地址的重定位
地址
程序被装入到分配给它的内存储区时,必须对每
条指令里所涉及到的逻辑地址进行修改,使它们能够
正确地反映出所在的存储位置。这种把逻辑地址转换成物理地址的过程,称为L地O址GO的 11
“重定位”。
第三章 存储管理 3.2 固定分区存储管理
磁盘
可执行程序 代码
装入阶段
程序 地址空间
LOGO 10
第三章 存储管理 3.2 固定分区存储管理
正文
• 3.2.1 地址重定位
.1. 用户程序的两种地址和空间 内存单元的地址称为“绝对地址”或“物理地址”。从任何一个绝对地
.址开始的一段连续的内存空间,被称为“物理地址空间”,或“绝对地址空间内”存 。 在多道程序设计环境下,用户无法事先指定要占用内存的哪个
LOGO 9
第三章 存储管理 3.2 固定分区存储管理
正文 • 用户程序的四个处理阶段
1. 编辑阶段
用户
用汇编语言或某高级语言编写程序,是产生用户程 序的编辑阶段,该阶段的结果是得到“源程序”文件。
编辑阶段
2. 翻译阶段
源程序
为了程序的运行,先应使用汇编程序或编译程序对
源程序进行翻译处理,产生出称为“目标程序”的二进
LOGO 7
第三章 存储管理 3.1 存储管理综述
正文
▪内存的保护和共享 内存保护:就是确保多个进程都在各自分配到内 存区域内操作,互不干扰,防止一个进程破坏其他进 程的信息。
内存共享:内存允许同时有多个程序在运行-多 个进程,它们可能调用相同程序段或使用同一数据体, 从而节省内存空间,减少内外存的数据交换,提高系 统的效率