"这篇资料主要介绍了虚拟存储器在操作系统中的作用和存储管理的相关知识点,包括内存管理和多线程系统的特点。同时,提到了程序的装入、链接过程以及不同的装入方式。"
在操作系统中,虚拟存储器是一个关键概念,它使得程序可以使用比实际物理内存更大的地址空间。虚拟存储器的引入是为了克服主存容量限制,通过将部分程序和数据暂时存储在外存上,当需要时再调入内存执行。它的实际容量是由计算机的地址结构,即位宽决定的,例如32位系统和64位系统的虚拟内存容量就有显著差异。
存储管理的主要任务是对内存进行有效分配和回收,实现地址变换,扩大程序的可用内存(即“扩充”内存容量),并确保存储保护,防止不同程序间的相互干扰。其中,地址变换是虚拟存储器的核心,它允许程序使用逻辑地址而不是物理地址,由操作系统负责将逻辑地址映射到实际的物理内存地址。
现代计算机多线程系统是操作系统的一个重要特征,用户级线程和内核级线程是实现线程的两种方式。在单处理机、超线程和多核处理器上,多线程技术可以提高处理器的利用率和系统的并发性能。例如,Windows任务管理器可以展示这些线程和进程的运行情况。
在内存管理方面,有多种分配方式,如连续分配、分页、分段等。连续分配方式包括绝对装入、可重定位装入和动态运行时装入,它们分别在编译时、装入时和运行时完成地址转换。分页和分段存储管理方式则将程序划分为固定大小的页或段,便于管理和动态调度。此外,请求分页和请求分段存储管理方式引入了虚拟内存的概念,允许程序在需要时才加载部分页面或段,从而有效地利用有限的内存资源。
在虚拟存储器中,页面置换算法是决定何时和哪个页面替换回外存的关键。常见的页面置换算法有LRU(最近最少使用)、FIFO(先进先出)等。存储保护则是确保每个进程只能访问其自己的内存区域,防止数据泄露或破坏。
学习这部分知识时,需要理解程序的装入和链接过程,包括编译、链接和装入三个步骤,以及静态链接、装入时动态链接和运行时动态链接的区别。绝对装入方式适用于简单的单道程序环境,而可重定位装入方式则更适应多道程序环境,它允许程序在不同的内存位置运行。
虚拟存储器和存储管理是操作系统中不可或缺的部分,它们优化了内存的使用,提升了系统的效率和可靠性。理解和掌握这些知识对于理解和设计高效的操作系统至关重要。