计算机操作系统第四章讨论了存储器管理的各个方面。第四章主要包括以下内容:程序的装入和链接、连续分配方式、基本分页存储管理方式、基本分段存储管理方式、虚拟存储器的基本概念、请求分页存储管理方式、页面置换算法和请求分段存储管理方式。
在存储器管理中,程序的装入和链接是一个关键步骤。绝对装入方式是一种常见的装入方式,它要求程序中使用的地址是绝对地址。这样的地址可以在编译或汇编时给出,也可以由程序员直接赋予。然而,如果程序中的地址要修改,可能需要改变所有的地址,这对程序员来说是非常麻烦的。因此,一种更常见的方式是使用符号地址,在编译或汇编时将这些符号地址转换为绝对地址。这种方式称为可重定位装入方式。
另一种装入方式是动态运行时装入方式。这种方式允许在程序运行过程中将一部分代码或数据装入内存。这种方式的好处是可以根据程序需要动态地分配内存,从而节省了存储器空间。在动态运行时装入方式中,装入的代码或数据可以在程序执行过程中被替换或卸载,从而使程序具有更大的灵活性和扩展性。
连续分配方式是一种简单的存储器分配方式。在连续分配方式中,内存被划分为多个连续的区域,每个区域用于分配一个进程或作业。然而,连续分配方式存在一些问题,比如内存碎片和内存分配效率低下。为了解决这些问题,引入了基本分页存储管理方式和基本分段存储管理方式。
基本分页存储管理方式将内存划分为固定大小的页框,将进程的地址空间划分为固定大小的页。每个页与页框一一对应。当进程需要访问某个页时,操作系统将该页调入内存,并将其映射到一个空闲的页框中。这种方式可以避免内存碎片问题,并提高内存的利用率。此外,基本分页存储管理方式还引入了页面置换算法,以处理内存不足的情况。
基本分段存储管理方式将进程的地址空间划分为多个段,每个段用于存储不同类型的数据或代码。每个段的大小可以根据需要进行动态调整。这种方式可以更好地满足程序的灵活性需求,但也会带来一些问题,比如外部碎片和段内碎片。
为了克服以上分页和分段管理方式的局限性,引入了虚拟存储器的概念。虚拟存储器将主存和辅存结合起来,使得程序可以像访问主存一样访问辅存中的数据。这样可以极大地扩展程序的地址空间,并允许进程在主存和辅存之间进行数据的交换。
最后,请求分页存储管理方式和请求分段存储管理方式是在虚拟存储器的基础上进一步发展的。这两种方式通过将进程的地址空间划分为多个固定大小的块来简化地址映射和管理。请求分页存储管理方式使用页表来实现逻辑地址到物理地址的映射,而请求分段存储管理方式则使用段表来实现。页面置换算法在这两种方式中都有应用。
总之,存储器管理是计算机操作系统中的关键部分。通过合理的装入和链接方式,以及有效的存储器分配和地址映射方式,可以优化程序的执行效率,提高存储资源的利用率,并提供更大的灵活性和扩展性。虚拟存储器的引入以及相关的分页和分段管理方式,进一步推动了存储器管理的发展。