虚拟存储器有什么好处?虚拟存储器对换技术介绍
扫描二维码
随时随地手机看文章
存储器有很多具体的类别,比如说高速缓冲存储器、随机存取存储器、只读存储器、半导体存储器等等。为增进大家对存储器的认识,本文将对虚拟存储器、虚拟存储器对换技术、虚拟存储器限制予以介绍。如果你对虚拟存储器具有兴趣,不妨继续往下阅读哦。
一、什么是虚拟存储器
虚拟存储器(Virtual Memory):在具有层次结构存储器的计算机系统中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理贮存容量大得多,可寻址的“主存储器”。虚拟存储区的容量与物理主存大小无关,而受限于计算机的地址结构和可用磁盘容量。根据所用的存储器映像算法,虚拟存储器管理方式主要有段式、页式、和段页式三种。
虚拟存储器(VirtualMemory)是用户能作为可编址内存对待的虚拟存储空间,它使用户逻辑存储器与物理存储器分离,是操作系统给用户提供的一个比真实内存空间大得多的地址空间。就是说,虚拟存储器并不是实际的内存,它的大小比内存空间大得多;用户感觉所能使用的“内存”非常大,这是操作系统对逻辑内存的扩充。
实现虚拟存储技术的物质基础是二级存储器结构和动态地址转换机构。经过操作系统的改造,将内存和外存有机地联系在一起,在用户面前呈现一个足以满足编程需要的特大内存空间。
虚拟存储器实质上是把用户地址空间和实际的存储空间区分开来,当作两个不同的概念。动态地址转换机构在程序运行时把逻辑地址转换成物理地址,以实现动态定位。
二、引入虚拟存储器的好处
①用户编制程序时不必考虑内存容量的限制,只要按照实际问题的需要来确定合适的算法和数据结构就可简化程序设计的任务。
②由于每个进程只有一部分装入内存,因而占用内存空间较少,在一定容量的内存中就可同时装入更多的进程,也相应增加了CPU的利用率和系统的吞吐量。
为了给用户(特别是大作业用户)提供方便,操作系统应把各级存储器统一管理起来。就是说,应该把一个程序当前正在使用的部分放在内存中,而其余部分放在磁盘上,在这种情况下启动进程执行。操作系统根据程序执行时的要求和内存的实际使用情况,使用对换技术随机地对每个程序进行换入/换出。
三、虚拟存储器对换技术
对换技术也称作交换技术。它的实现方式就类似于日常生活中几个单位租用一个会议厅那样,甲单位租用时间到了,就退出会议厅,由乙单位使用;乙单位到时后,也退出去,由丙单位使用,等等。如甲单位还需使用,就再租用,由管理者安排占用时间。
多道程序环境中也采用对换技术。此时,内存中保留多个进程。当内存空间不足以容纳要求进入内存的进程时,系统就把内存中暂时不能运行的进程(包括程序和数据)换出到外存上,腾出内存空间,把具备运行条件的进程从外存换到内存中。在UNIX/Linux系统中对内存的管理就利用了这种多道程序的对换技术。
四、虚拟存储器限制
应注意,虚拟存储器虽然给用户提供了特大地址空间,用户在编程时一般不必考虑可用空间有多大,但虚拟存储器的容量不是无限大的。它主要受到两方面的限制:
①指令中表示地址的字长。机器指令中表示地址的二进制位数是有限的,如果地址单元以字节编址,且表示地址的字长是16位,则可以表示的地址空间最大是64KB。如果表示地址的字长是32位,则可以表示的地址空间最大是4GB。
②外存的容量。从实现观点来看,用户的程序和数据都必须完整地保存在外存(如硬盘)中。然而,外存容量、传送速度和使用频率等方面都受到物理因素的限制。就是说,磁盘的容量有限,并非真正“无穷大”,其传送速度也不是“无限快”,所以,虚拟空间不可能无限大。
以上就是小编这次想要和大家分享的有关的虚拟存储器的内容,希望大家对本次分享的内容已经具有一定的了解。如果您想要看不同类别的文章,可以在网页顶部选择相应的频道哦。