存储器管理
计算机操作系统学习笔记(四)-存储器管理
存储器管理
1、分页存储中页、块、页表、快表定义是什么?在地址变换过程中的作用;
分页存储是操作系统中的一种内存管理方式。在分页存储中,物理内存被划分为大小固定的块,即页面。每个页面都有自己的页号和页长,页内地址是相对地址。每个进程的地址空间被分成若干逻辑段,每段又被划分成若干大小固定的页。页表记录了每个页在内存中的起始位置(又称“基址”)和页的长度。快表是存放在高速缓存存储器中的部分页表,用于加速地址变换过程,减少直接访问主存的次数。下面是它们的定义和作用:
页:将用户进程的(逻辑)地址空间划分为固定且大小相等的一个个区域。
块:物理内存被划分为大小固定的块,即页面。
页表:记录了每个页在内存中的起始位置(又称“基址”)和页的长度,用于实现逻辑地址到物理地址的映射关系。
快表:存放在高速缓存存储器中的部分页表,用于加速地址变换过程,减少直接访问主存的次数。
在地址变换过程中,页表和快表的作用如下:
页表:在用动态重定位方式装入作业时,利用页表做地址转换工作。当CPU访问一个逻辑地址时,通过页表将逻辑地址转换为物理地址。
快表:存放最近访问的页所对应的页框号,用于加速地址变换过程,减少直接访问主存的次数。当CPU访问一个逻辑地址时,先在快表中查找,如果找到则直接得到物理地址;否则再在页表中查找,得到物理地址后将其存入快表中,以便下次访问时直接得到物理地址。
2、分段与分页存储的对比有什么差异?
分段和分页是操作系统中的两种内存管理方式。
分页存储的页是物理单位,分页存储是离散型分配;分段存储中的段是信息的逻辑单位,通常包含一组相对完整的信息
分段是将程序分为若干个段,每个段的大小不固定,逻辑上连续的地址空间被划分为一个个段,每个段都有自己的段号和段长,段内地址是相对地址。分页是将程序分为若干个页,每个页的大小固定,物理上不连续的地址空间被划分为一个个页,每个页都有自己的页号和页长,页内地址是相对地址。
分段的作业地址空间是二维的,在标识一个地址时,既需给出段名,又需给出段内地址;分页的作业地址空间是一维的,只须利用一个记忆符,即可表示一地址。
分段的优点是能够更好地实现信息的共享,因为段的大小不固定,可以根据需要动态地分配内存,而且段表比页表短,可以缩短查找时间,提高访问速度;
分页的优点是能够更好地利用内存,因为页的大小固定,不会产生外碎片,更有效地利用了内存,但会产生一些内碎片,即分配给进程的最后一个页往往不能正好用完。
3、分段的地址结构是1维的吗?段的大小是否必须相等?
分段是操作系统中的一种内存管理方式,其地址结构是二维的。程序员在标识一个地址时,既需给出段名,又需给出段内地址。段的大小不必相等,可以根据需要动态地分配内存。
4、段页式存储管理中,物理内存是被划分为段,还是被划分为块来分配?
段页式存储管理中,物理内存是被划分为块来分配。在段页式存储管理中,一个进程的地址空间首先被分成若干逻辑段,每段都有自己的段号,然后再将每一段划分成若干大小固定的页。对内存空间的管理仍然和分页存储管理一样,将其分成若干和页面大小相同的存储块,对内存的分配以存储块为单位。因此,物理内存是被划分为块,而不是被划分为段来分配。
5、已知某分页系统,主存容量为128KB,分成64块,对一个4页大的作业,其0、1、2、3页分别被分配到主存的2、5、7、11块中。该系统的分页大小为多少?作业的总长度是多少?将逻辑地址2023、5500转换成物理地址是多少?
该分页系统的分页大小为 2KB。作业的总长度为 16KB。
逻辑地址2023转换成物理地址得到 11019
将逻辑地址5500转换成物理地址得到 28676