你的位置:首页 > 知识课堂 > 正文

什么是虚拟存储器

发布时间:2012-12-07

       简单地说虚拟存储器是在具有层次结构存储器的计算机系统中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理贮存容量大得多,可寻址的“主存储器”。虚拟存储区的容量与物理主存大小无关,而受限于计算机的地址结构和可用磁盘容量。下面就为大家介绍一下虚拟存储器

                                                       虚拟存储器
                                                                         虚拟存储器

虚拟存储器的简介

       当 CPU 输出地址码的位数较多,而实际主存容量较小的情况下,微机系统可以将一部分辅存当作主存来使用的机制,就是虚拟存储器系统。虚拟存储器是建立在主存 - 辅存物理结构基础之上,由附加硬件装置及操作系统存储管理软件组成的一种存储体系, 它将主存和辅存的地址空间统一编址,形成一个庞大的存储空间。在这个大空间里,用户自由编程,完全不必考虑程序在主存是否装得下,或者放在辅存的程序将来在主存中的实际位置。编好的程序由计算机操作系统装入辅助存储器,程序运行时,附加的辅助硬件机构和存储管理软件会把辅存的程序一块块自动调入主存由 CPU 执行,或从主存调出。用户感觉到的不再是处处受主存容量限制的存储系统,而是好象具有一个容量充分大的存储器。
 
                                                            虚拟存储器
                                                                        虚拟存储器

虚拟存储器的工作原理

       虚拟存储器是由硬件和操作系统自动实现存储信息调度和管理的。它的工作过程包括6个步骤:
 
      ①中央处理器访问主存的逻辑地址分解成组号a和组内地址b,并对组号a进行地址变换,即将逻辑组号a作为索引,查地址变换表,以确定该组信息是否存放在主存内。

      ②如该组号已在主存内,则转而执行④;如果该组号不在主存内,则检查主存中是否有空闲区,如果没有,便将某个暂时不用的组调出送往辅存,以便将这组信息调入主存。
 
      ③从辅存读出所要的组,并送到主存空闲区,然后将那个空闲的物理组号a和逻辑组号a登录在地址变换表中。
 
      ④从地址变换表读出与逻辑组号a对应的物理组号a。
 
      ⑤从物理组号a和组内字节地址b得到物理地址。

      ⑥根据物理地址从主存中存取必要的信息。
 

  调度方式有分页式、段式、段页式3种。页式调度是将逻辑和物理地址空间都分成固定大小的页。主存按页顺序编号,而每个独立编址的程序空间有自己的页号顺序,通过调度辅存中程序的各页可以离散装入主存中不同的页面位置,并可据表一一对应检索。页式调度的优点是页内零头小,页表对程序员来说是透明的,地址变换快,调入操作简单;缺点是各页不是程序的独立模块,不便于实现程序和数据的保护。段式调度是按程序的逻辑结构划分地址空间,段的长度是随意的,并且允许伸长,它的优点是消除了内存零头,易于实现存储保护,便于程序动态装配;缺点是调入操作复杂。将这两种方法结合起来便构成段页式调度。在段页式调度中把物理空间分成页,程序按模块分段,每个段再分成与物理空间页同样小的页面。段页式调度综合了段式和页式的优点。其缺点是增加了硬件成本,软件也较复杂。大型通用计算机系统多数采用段页式调度。

                                                       虚拟存储器模型
                                                                      虚拟存储器模型

        我们都知道虚拟内存在计算机中的作用很大,电脑中所有运行的程序都需要经过内存来执行,如果执行的程序很大或很多,就会导致内存消耗殆尽。 对于虚拟内存主要设置两点,即内存大小和分页位置,内存大小就是设置虚拟内存最小为多少和最大为多少;而分页位置则是设置虚拟内存应使用那个分区中的硬盘空间。以上就是我为大家介绍的虚拟存储器,希望能给大家带来帮助!
 

特别推荐
技术文章更多>>
技术白皮书下载更多>>
热门搜索
 

关闭

 

关闭