⑴ 什么是存储虚拟化
存储虚拟化(StorageVirtualization)最通俗的理解就是对存储硬件资源进行抽象化表现。通过将一个(或多个)目标(Target)服务或功能与其它附加的功能集成,统一提供有用的全面功能服务。典型的虚拟化包括如下一些情况:屏蔽系统的复杂性,增加或集成新的功能,仿真、整合或分解现有的服务功能等。虚拟化是作用在一个或者多个实体上的,而这些实体则是用来提供存储资源或/及服务的。在虚拟化领域流传着一个故事:一个好的虚拟化解决方案就好像游历一个虚拟现实的主题公园。当游客想象他正在城市上空滑翔时,传感器就会把相应的真实感觉传递给游客,并同时隐藏真实的力学环境。
同样,一个好的虚拟化工具可以对企业的存储设备做相同的工作,只不过过程也许会反过来首先建立一个框架,让数据感觉自己是存储在一个真实的物理环境里,之后操作者就可以任意改变数据存储的位置了,同时保证数据的集中安全。虚拟化技术到底是什么?其实广义上来说,就是通过映射或抽象的方式屏蔽物理设备复杂性,增加一个管理层面,激活一种资源并使之更易于透明控制。它可以有效简化基础设施的管理,增加IT资源的利用率和能力,比如服务器、网络或存储。存储虚拟化是一种贯穿于整个IT环境、用于简化本来可能会相对复杂的底层基础架构的技术。存储虚拟化的思想是将资源的逻辑映像与物理存储分开,从而为系统和管理员提供一幅简化、无缝的资源虚拟视图。
⑵ 虚拟存储技术的虚拟存储的概念
所谓虚拟存储,就是把内存与外存有机的结合起来使用,从而得到一个容量很大的“内存”,这就称之为虚拟存储。
⑶ 虚拟存储的介绍
根据程序执行的互斥性和局部性两个特点,我们允许作业装入的时候只装入一部分,另一部分放在磁盘上,当需要的时候再装入到主存,这样以来,在一个小的主存空间就可以运行一个比它大的作业。同时,用户编程的时候也摆脱了一定要编写小于主存容量的作业的限制。也就是说,用户的逻辑地址空间可以比主存的绝对地址空间要大。对用户来说,好像计算机系统具有一个容量很大的主存储器,称为“虚拟存储器”。虚拟存储(Storage Virtualization)是指将多个不同类型、独立存在的物理存储体,通过软、硬件技术,集成转化为一个逻辑上的虚拟的存储单元,集中管理供用户统一使用。这个虚拟逻辑存储单元的存储容量是它所集中管理的各物理存储体的存储量的总和,而它具有的访问带宽则在一定程度上接近各个物理存储体的访问带宽之和。
⑷ 虚拟存储系统的虚拟存储的概念
所谓虚拟存储,就是把多个存储介质模块(如硬盘、RAID)通过一定的手段集中管理起来,所有的存储模块在一个存储池(Storage Pool)中得到统一管理,从主机和工作站的角度,看到就不是多个硬盘,而是一个分区或者卷,就好象是一个超大容量(如1T以上)的硬盘。这种可以将多种、多个存储设备统一管理起来,为使用者提供大容量、高数据传输性能的存储系统,就称之为虚拟存储。
⑸ 虚拟存储系统的虚拟存储技术的实现方式
目前实现虚拟存储主要分为如下几种: 服务器厂商会在服务器端实施虚拟存储。同样,软件厂商也会在服务器平台上实施虚拟存储。这些虚拟存储的实施都是通过服务器端将镜像映射到外围存储设备上,除了分配数据外,对外围存储设备没有任何控制。服务器端一般是通过逻辑卷管理来实现虚拟存储技术。逻辑卷管理为从物理存储映射到逻辑上的卷提供了一个虚拟层。服务器只需要处理逻辑卷,而不用管理存储设备的物理参数。
用这种构建虚拟存储系统,服务器端是一性能瓶颈,因此在多媒体处理领域几乎很少采用。 另一种实施虚拟的地方是存储设备本身。这种虚拟存储一般是存储厂商实施的,但是很可能使用厂商独家的存储产品。为避免这种不兼容性,厂商也许会和服务器、软件或网络厂商进行合作。当虚拟存储实施在设备端时,逻辑(虚拟)环境和物理设备同在一个控制范围中,这样做的益处在于:虚拟磁盘高度有效地使用磁盘容量,虚拟磁带高度有效地使用磁带介质。
在存储子系统端的虚拟存储设备主要通过大规模的RAID子系统和多个I/O通道连接到服务器上,智能控制器提供LUN访问控制、缓存和其他如数据复制等的管理功能。这种方式的优点在于存储设备管理员对设备有完全的控制权,而且通过与服务器系统分开,可以将存储的管理与多种服务器操作系统隔离,并且可以很容易地调整硬件参数。 网络厂商会在网络设备端实施虚拟存储,通过网络将逻辑镜像映射到外围存储设备,除了分配数据外,对外围存储设备没有任何控制。在网络端实施虚拟存储具有其合理性,因为它的实施既不是在服务器端,也不是在存储设备端,而是介于两个环境之间,可能是最“开放”的虚拟实施环境,最有可能支持任何的服务器、操作系统、应用和存储设备。从技术上讲,在网络端实施虚拟存储的结构形式有以下两种:即对称式与非对称式虚拟存储。
从目前的虚拟存储技术和产品的实际情况来看,基于主机和基于存储的方法对于初期的采用者来说魅力最大,因为他们不需要任何附加硬件,但对于异构存储系统和操作系统而言,系统的运行效果并不是很好。基于互联设备的方法处于两者之间,它回避了一些安全性问题,存储虚拟化的功能较强,能减轻单一主机的负载,同时可获得很好的可扩充性。
不管采用何种虚拟存储技术,其目的都使为了提供一个高性能、安全、稳定、可靠、可扩展的存储网络平台,满足节目制作网络系统的苛刻要求。根据综合的性能价格比来说,一般情况下,在基于主机和基于存储设备的虚拟存储技术能够保证系统的数据处理能力要求时,优先考虑,因为这两种虚拟存储技术构架方便、管理简单、维护容易、产品相对成熟、性能价格比高。在单纯的基于存储设备的虚拟存储技术无法保证存储系统性能要求的情况下,我们可以考虑采用基于互连设备的虚拟存储技术。
⑹ 什么是虚拟存储器
虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。
功能:基本分页 + “请求调页”和“页面置换”功能。
换入和换出基本单位都是长度固定的页面。请求分页技术的基本思想是:当一个进程的部分页面在内存时就可调度它运行;在运行过程中若用到的页面尚未在内存,则把它们动态换入内存。这样,就减少了对换时间和所需内存数量,允许增加程序的道数。
请求分页技术是在简单分页技术基础上发展起来的,两者根本区别是:请求分页提供虚拟存储器,而简单分页系统并未提供虚拟存储器。
(6)虚拟存储方式图片扩展阅读
虚拟存储器地址变换基本上有3种形虚拟存储器工作过程式:全联想变换、直接变换和组联想变换。替换规则用来确定替换主存中哪一部分,以便腾空部分主存,存放来自辅存要调入的那部分内容。常见的替换算法有4种:
①随机算法:用软件或硬件随机数产生器确定替换的页面。
②先进先出:先调入主存的页面先替换。
③近期最少使用算法(LRU,Least Recently Used):替换最长时间不用的页面。
④最优算法:替换最长时间以后才使用的页面。这是理想化的算法,只能作为衡量其他各种算法优劣的标准。
虚拟存储器的效率是系统性能评价的重要内容,它与主存容量、页面大小、命中率,程序局部性和替换算法等因素有关。
⑺ 存储虚拟化的三种方法
基于主机的虚拟存储依赖于代理或管理软件,它们安装在一个或多个主机上,实现存储虚拟化的控制和管理。由于控制软件是运行在主机上,这就会占用主机的处理时间。因此,这种方法的可扩充性较差,实际运行的性能不是很好。基于主机的方法也有可能影响到系统的稳定性和安全性,因为有可能导致不经意间越权访问到受保护的数据。这种方法要求在主机上安装适当的控制软件,因此一个主机的故障可能影响整个SAN系统中数据的完整性。软件控制的存储虚拟化还可能由于不同存储厂商软硬件的差异而带来不必要的互操作性开销,所以这种方法的灵活性也比较差。
但是,因为不需要任何附加硬件,基于主机的虚拟化方法最容易实现,其设备成本最低。使用这种方法的供应商趋向于成为存储管理领域的软件厂商,而且目前已经有成熟的软件产品。这些软件可以提供便于使用的图形接口,方便地用于SAN的管理和虚拟化,在主机和小型SAN结构中有着良好的负载平衡机制。从这个意义上看,基于主机的存储虚拟化是一种性价比不错的方法。 基于存储设备的存储虚拟化方法依赖于提供相关功能的存储模块。如果没有第三方的虚拟软件,基于存储的虚拟化经常只能提供一种不完全的存储虚拟化解决方案。对于包含多厂商存储设备的SAN存储系统,这种方法的运行效果并不是很好。依赖于存储供应商的功能模块将会在系统中排斥JBODS(JustaBunchofDisks,简单的硬盘组)和简单存储设备的使用,因为这些设备并没有提供存储虚拟化的功能。当然,利用这种方法意味着最终将锁定某一家单独的存储供应商。
基于存储的虚拟化方法也有一些优势:在存储系统中这种方法较容易实现,容易和某个特定存储供应商的设备相协调,所以更容易管理,同时它对用户或管理人员都是透明的。但是,我们必须注意到,因为缺乏足够的软件进行支持,这就使得解决方案更难以客户化(customzing)和监控。 基于网络的虚拟化方法是在网络设备之间实现存储虚拟化功能,具体有下面几种方式:
1.基于互联设备的虚拟化
基于互联设备的方法如果是对称的,那么控制信息和数据走在同一条通道上;如果是不对称的,控制信息和数据走在不同的路径上。在对称的方式下,互联设备可能成为瓶颈,但是多重设备管理和负载平衡机制可以减缓瓶颈的矛盾。同时,多重设备管理环境中,当一个设备发生故障时,也比较容易支持服务器实现故障接替。但是,这将产生多个SAN孤岛,因为一个设备仅控制与它所连接的存储系统。非对称式虚拟存储比对称式更具有可扩展性,因为数据和控制信息的路径是分离的。
基于互联设备的虚拟化方法能够在专用服务器上运行,使用标准操作系统,例如Windows、SunSolaris、Linux或供应商提供的操作系统。这种方法运行在标准操作系统中,具有基于主机方法的诸多优势——易使用、设备便宜。许多基于设备的虚拟化提供商也提供附加的功能模块来改善系统的整体性能,能够获得比标准操作系统更好的性能和更完善的功能,但需要更高的硬件成本。
但是,基于设备的方法也继承了基于主机虚拟化方法的一些缺陷,因为它仍然需要一个运行在主机上的代理软件或基于主机的适配器,任何主机的故障或不适当的主机配置都可能导致访问到不被保护的数据。同时,在异构操作系统间的互操作性仍然是一个问题。
2. 基于路由器的虚拟化
基于路由器的方法是在路由器固件上实现存储虚拟化功能。供应商通常也提供运行在主机上的附加软件来进一步增强存储管理能力。在此方法中,路由器被放置于每个主机到存储网络的数据通道中,用来截取网络中任何一个从主机到存储系统的命令。由于路由器潜在地为每一台主机服务,大多数控制模块存在于路由器的固件中,相对于基于主机和大多数基于互联设备的方法,这种方法的性能更好、效果更佳。由于不依赖于在每个主机上运行的代理服务器,这种方法比基于主机或基于设备的方法具有更好的安全性。当连接主机到存储网络的路由器出现故障时,仍然可能导致主机上的数据不能被访问。但是只有联结于故障路由器的主机才会受到影响,其他主机仍然可以通过其他路由器访问存储系统。路由器的冗余可以支持动态多路径,这也为上述故障问题提供了一个解决方法。由于路由器经常作为协议转换的桥梁,基于路由器的方法也可以在异构操作系统和多供应商存储环境之间提供互操作性。
⑻ 什么是虚拟存储器它的原理是是什么
虚拟内存别称虚拟存储器(Virtual Memory),是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续的可用的内存(一个连续完整的地址空间)。
工作原理:
虚拟存储器是由硬件和操作系统自动实现存储信息调度和管理的。它的工作过程包括6个步骤:[3]
①中央处理器访问主存的逻辑地址分解成组号a和组内地址b,并对组号a进行地址变换,即将逻辑组号a作为索引,查地址变换表,以确定该组信息是否存放在主存内。
②如该组号已在主存内,则转而执行;如果该组号不在主存内,则检查主存中是否有空闲区,如果没有,便将某个暂时不用的组调出送往辅存,以便将这组信息调入主存。
③从辅存读出所要的组,并送到主存空闲区,然后将那个空闲的物理组号a和逻辑组号a登录在地址变换表中。
④从地址变换表读出与逻辑组号a对应的物理组号a。
⑤从物理组号a和组内字节地址b得到物理地址。
⑥根据物理地址从主存中存取必要的信息。
(8)虚拟存储方式图片扩展阅读:
虚拟内存不只是“用磁盘空间来扩展物理内存”的意思——这只是扩充内存级别以使其包含硬盘驱动器而已。把内存扩展到磁盘只是使用虚拟内存技术的一个结果,它的作用也可以通过覆盖或者把处于不活动状态的程序以及它们的数据全部交换到磁盘上等方式来实现。
对虚拟内存的定义是基于对地址空间的重定义的,即把地址空间定义为“连续的虚拟内存地址”,以借此“欺骗”程序,使它们以为自己正在使用一大块的“连续”地址。
现代所有用于一般应用的操作系统都对普通的应用程序使用虚拟内存技术,例如文字处理软件,电子制表软件,多媒体播放器等等。
老一些的操作系统,如DOS和1980年代的Windows,或者那些1960年代的大型机,一般都没有虚拟内存的功能——但是Atlas,B5000和苹果公司的Lisa都是很值得注意的例外。
那些需要快速访问或者反应时间非常一致的嵌入式系统,和其他的具有特殊应用的计算机系统,可能会为了避免让运算结果的可预测性降低,而选择不使用虚拟内存。
⑼ 虚拟存储技术的虚拟存储的分类
目前虚拟存储的发展尚无统一标准,从虚拟化存储的拓扑结构来讲主要有两种方式:即对称式与非对称式。对称式虚拟存储技术是指虚拟存储控制设备与存储软件系统、交换设备集成为一个整体,内嵌在网络数据传输路径中;非对称式虚拟存储技术是指虚拟存储控制设备独立于数据传输路径之外。从虚拟化存储的实现原理来讲也有两种方式;即数据块虚拟与虚拟文件系统。具体如下: 图1对称式虚拟存储解决方案的示意图
在图1所示的对称式虚拟存储结构图中,存储控制设备 High Speed Traffic Directors(HSTD)与存储池子系统Storage Pool集成在一起,组成SAN Appliance。可以看到在该方案中存储控制设备HSTD在主机与存储池数据交换的过程中起到核心作用。该方案的虚拟存储过程是这样的:由HSTD内嵌的存储管理系统将存储池中的物理硬盘虚拟为逻辑存储单元(LUN),并进行端口映射(指定某一个LUN能被哪些端口所见),主机端将各可见的存储单元映射为操作系统可识别的盘符。当主机向SAN Appliance写入数据时,用户只需要将数据写入位置指定为自己映射的盘符(LUN),数据经过HSTD的高速并行端口,先写入高速缓存,HSTD中的存储管理系统自动完成目标位置由LUN到物理硬盘的转换,在此过程中用户见到的只是虚拟逻辑单元,而不关心每个LUN的具体物理组织结构。该方案具有以下主要特点:
(1)采用大容量高速缓存,显着提高数据传输速度。
缓存是存储系统中广泛采用的位于主机与存储设备之间的I/O路径上的中间介质。当主机从存储设备中读取数据时,会把与当前数据存储位置相连的数据读到缓存中,并把多次调用的数据保留在缓存中;当主机读数据时,在很大几率上能够从缓存中找到所需要的数据。直接从缓存上读出。而从缓存读取数据时的速度只受到电信号传播速度的影响(等于光速),因此大大高于从硬盘读数据时盘片机械转动的速度。当主机向存储设备写入数据时,先把数据写入缓存中,待主机端写入动作停止,再从缓存中将数据写入硬盘,同样高于直接写入硬盘的速度
(2)多端口并行技术,消除了I/O瓶颈。
传统的FC存储设备中控制端口与逻辑盘之间是固定关系,访问一块硬盘只能通过控制它的控制器端口。在对称式虚拟存储设备中,SAN Appliance的存储端口与LUN的关系是虚拟的,也就是说多台主机可以通过多个存储端口(最多8个)并发访问同一个LUN;在光纤通道100MB/带宽的大前提下,并行工作的端口数量越多,数据带宽就越高。
(3)逻辑存储单元提供了高速的磁盘访问速度。
在视频应用环境中,应用程序读写数据时以固定大小的数据块为单位(从512byte到1MB之间)。而存储系统为了保证应用程序的带宽需求,往往设计为传输512byte以上的数据块大小时才能达到其最佳I/O性能。在传统SAN结构中,当容量需求增大时,唯一的解决办法是多块磁盘(物理或逻辑的)绑定为带区集,实现大容量LUN。在对称式虚拟存储系统中,为主机提供真正的超大容量、高性能LUN,而不是用带区集方式实现的性能较差的逻辑卷。与带区集相比,Power LUN具有很多优势,如大块的I/O block会真正被存储系统所接受,有效提高数据传输速度;并且由于没有带区集的处理过程,主机CPU可以解除很大负担,提高了主机的性能。
(4)成对的HSTD系统的容错性能。
在对称式虚拟存储系统中,HSTD是数据I/O的必经之地,存储池是数据存放地。由于存储池中的数据具有容错机制保障安全,因此用户自然会想到HSTD是否有容错保护。象许多大型存储系统一样,在成熟的对称式虚拟存储系统中,HSTD是成对配制的,每对HSTD之间是通过SAN Appliance内嵌的网络管理服务实现缓存数据一致和相互通信的。
(5)在SAN Appliance之上可方便的连接交换设备,实现超大规模Fabric结构的SAN。
因为系统保持了标准的SAN结构,为系统的扩展和互连提供了技术保障,所以在SAN Appliance之上可方便的连接交换设备,实现超大规模Fabric结构的SAN。 图2非对称式虚拟存储系统示意图
在图2所示的非对称式虚拟存储系统结构图中,网络中的每一台主机和虚拟存储管理设备均连接到磁盘阵列,其中主机的数据路径通过FC交换设备到达磁盘阵列;虚拟存储设备对网络上连接的磁盘阵列进行虚拟化操作,将各存储阵列中的LUN虚拟为逻辑带区集(Strip),并对网络上的每一台主机指定对每一个Strip的访问权限(可写、可读、禁止访问)。当主机要访问某个Strip时,首先要访问虚拟存储设备,读取Strip信息和访问权限,然后再通过交换设备访问实际的Strip中的数据。在此过程中,主机只会识别到逻辑的Strip,而不会直接识别到物理硬盘。这种方案具有如下特点:
(1)将不同物理硬盘阵列中的容量进行逻辑组合,实现虚拟的带区集,将多个阵列控制器端口绑定,在一定程度上提高了系统的可用带宽。
(2)在交换机端口数量足够的情况下,可在一个网络内安装两台虚拟存储设备,实现Strip信息和访问权限的冗余。
但是该方案存在如下一些不足:
(1)该方案本质上是带区集——磁盘阵列结构,一旦带区集中的某个磁盘阵列控制器损坏,或者这个阵列到交换机路径上的铜缆、GBIC损坏,都会导致一个虚拟的LUN离线,而带区集本身是没有容错能力的,一个LUN的损坏就意味着整个Strip里面数据的丢失。
(2)由于该方案的带宽提高是通过阵列端口绑定来实现的,而普通光纤通道阵列控制器的有效带宽仅在40MB/S左右,因此要达到几百兆的带宽就意味着要调用十几台阵列,这样就会占用几十个交换机端口,在只有一两台交换机的中小型网络中,这是不可实现的。
(3)由于各种品牌、型号的磁盘阵列其性能不完全相同,如果出于虚拟化的目的将不同品牌、型号的阵列进行绑定,会带来一个问题:即数据写入或读出时各并发数据流的速度不同,这就意味着原来的数据包顺序在传输完毕后被打乱,系统需要占用时间和资源去重新进行数据包排序整理,这会严重影响系统性能。
3.数据块虚拟与虚拟文件系统
以上从拓扑结构角度分析了对称式与非对称式虚拟存储方案的异同,实际从虚拟化存储的实现原理来讲也有两种方式;即数据块虚拟与虚拟文件系统。
数据块虚拟存储方案着重解决数据传输过程中的冲突和延时问题。在多交换机组成的大型Fabric结构的SAN中,由于多台主机通过多个交换机端口访问存储设备,延时和数据块冲突问题非常严重。数据块虚拟存储方案利用虚拟的多端口并行技术,为多台客户机提供了极高的带宽,最大限度上减少了延时与冲突的发生,在实际应用中,数据块虚拟存储方案以对称式拓扑结构为表现形式。
虚拟文件系统存储方案着重解决大规模网络中文件共享的安全机制问题。通过对不同的站点指定不同的访问权限,保证网络文件的安全。在实际应用中,虚拟文件系统存储方案以非对称式拓扑结构为表现形式。
⑽ 笔记本电脑设置虚拟内存有什么方法
虚拟内存,在Windows操作系统中并不起眼。对于大部分用户来说,都觉得没有需要去了解这一神秘的角色。下面是我为大家介绍笔记本电脑设置虚拟内存的方法,欢迎大家阅读。
笔记本电脑怎么设置虚拟内存
虚拟内存的概念是相对于物理内存而言的,当系统的物理内存空间入不敷出时,操作系统就会在硬盘上开辟一块磁盘空间当作内存使用,这部分硬盘空间就叫做虚拟内存。
虚拟内存这四个字,虽说时常在各种场合看到,但究竟什么是虚拟内存呢?恐怕能够准确说出其概念的人并不多,那么就让我们先来了解一下虚拟内存的概念吧。
我们都知道,电脑正在运行的程序以及程序运行过程中产生的数据,都必须经过物理内存来执行。但如果执行很大的程序,又或是同时执行很多程序,那么就会使电脑的物理内存消耗殆尽,从而对系统的稳定、运行速度造成严重影响。
当然,增加物理内存可以解决问题,但这只是暂时性的解决。一味的增加内存条,不仅操作系统管理不了(对于Win98等操作系统,内存超过512M后会造成系统不稳定;对于WinXP等操作系统,内存超过2G也会产生各种问题),而且额外的费用也会高得惊人。
针对这一情况,微软在Windows操作系统中引入了虚拟内存技术,即将一部分硬盘空间充当物理内存使用,当物理内存吃紧时,系统就会自动调用硬盘的一部分空间,将数据写入硬盘,以缓解内存的紧张。
举个最简单的例子,电脑的内存为512M,系统正常启动后,剩余内存为200M,此时运行一个需占用300M内存的程序,那么系统就会在用完200M内存后,自动将剩余的100M数据存储到硬盘,即虚拟内存中。待程序执行完毕后,这部分占用的硬盘空间又将被自动释放。当然,这只是最基本的虚拟内存使用原理,实际的调用还涉及到许多系统底层因素,在此处便不详细深入了。
前面说了,虚拟内存出现于硬盘中,那么,它的具体位置又在何处呢?打开系统安装分区,便可以在根目录中看到一个名为pagefile.sys的文件,这就是我们一直在讲的虚拟内存了。在很多情况下, 我们也按照其文件名称,将其称之为“页面文件”。
提示:如果打开系统安装分区后看不到pagefile.sys,就需要打开“文件夹选项”,取消“隐藏受保护的操作系统文件”项的选择便可。
一、虚拟内存不足六大诱因
当我们执行一些程序时,系统会弹出虚拟内存不足的提示,这该如何是好?增加虚拟内存容量?又或是增加一条内存?先别急,还是来了解一下虚拟内存不足的六大诱因吧。
诱因一:运行需要大量内存的程序
当我们运行Photoshop、AutoCAD之类的大型程序,并处理一些大文件,又或是执行渲染等操作时,系统的虚拟内存便会在瞬时间被消耗。
对于这种情况,增加虚拟内存容量是唯一的解决办法。
诱因二:同时运行的程序过多
是不是我们不运行类似Photoshop的大型程序就不会产生虚拟内存不足的情况呢?其实,如果你同时运行的程度过多(10个以上),也会产生虚拟内存不足的现象。你只需要直接关闭一些不必要的程序即可释放出大量的虚拟内存。
诱因三:跟随系统启动的程序与服务
除了我们主动运行的程序之外,一些随系统启动的程序和服务,也占用了相当多的虚拟内存。对此,我们可以执行“开始”-“运行”,输入“msconfig”后回车进入“系统配置实用程序”,在“服务”和“启动”选项卡中取消无用启动项目的选择即可。
诱因四:虚拟内存所在磁盘空间不足
由于虚拟内存保存于磁盘,因此如果磁盘空间的剩余容量不足以达到要求,就会产生虚拟内存不足的问题。对磁盘进行整理腾出足够空间,或是将虚拟内存移动到容量较大的分区,都是不错的解决办法。
诱因五:虚拟内存设置有误
默认情况下,操作系统会自动对虚拟内存进行管理。但是默认的虚拟内存设置,往往并不贴近用户的真实需求。对虚拟内存进行设置将是必须的,这部分内容我们将在Part3中进行详细说明。
诱因六:遭受病毒攻击
病毒的危害,也是造成虚拟内存不足的原因之一。如果经过排查,发现虚拟内存不足不是由于前面五种原因而起,那就有必要使用杀毒软件对系统进行彻底杀毒了,例如McAfee、卡巴斯基等杀毒软件都是不错的选择。
二、如何查看虚拟内存的使用情况?
虚拟内存的使用情况可以在“任务管理器”中进行查看。同时按下“Ctrl+Shift+Esc”键,在弹出的“任务管理器”中切换到“进程”选项卡。点击“查看”-“选择列”,在弹出的“选择列”窗口中勾选“虚拟内存大小”项并点击“确定”按钮。此时,在“进程”选项卡的最右侧,就出现了“虚拟内存大小”的数据列,对应当前运行的每一个进程,其使用的虚拟内存容量都将实时显示。
虚拟内存的状况是否良好,将直接对系统的稳定、速度产生影响。对于内存,我们有许多优化软件可以使用,但对于虚拟内存优化又该如何进行呢?接下来,笔者就将从硬件(即承载虚拟内存的硬盘)、软件(即使用虚拟内存的操作系统)及安全三方面,对虚拟内存的优化进行详细的介绍。
提示:如无特别说明,以下设置均在Windows XP SP2为操作平台。
三、挖掘硬盘性能,给虚拟内存提速
因为虚拟内存文件(pagefile.sys)存放于硬盘,即硬盘为虚拟内存的承载体,硬盘性能提高了,虚拟内存的性能自然也就能有所提高。
与物理内存相比,硬盘的运行速度自然要慢很多,这也直接决定了虚拟内存的速度。一块7200转、16M缓存的硬盘,与一块5400转、2M缓存的硬盘,其提供的虚拟内存速度的差距是十分明显的。
此外,出于系统稳定、安全等方面的考虑,Windows操作系统并没有将硬盘设置为性能最佳,要挖掘硬盘性能,还需要我们进行手工的设置。
1、启用磁盘写入缓存
1)打开“控制面板”,双击“系统”项,在弹出的“系统属性”窗口中切换到“硬盘”选项卡,单击“设备管理器”按钮,弹出“设备管理器”窗口。
2)在“设备管理器”目录中,展开“磁盘驱动器”项,双击当前正在使用的磁盘。
3)切换到“策略”选项卡,勾选“启用磁盘上的写入缓存”,点击“确定”按钮,便完成了磁盘写入缓存的开启。
经过以上操作,磁盘写入缓存将被激活,从而提高硬盘的读写速度。需要注意的是,写入缓存开启后,如果计算机突然断电,可能会造成无法挽回的数据丢失。因此如果你的计算机经常需要处理一些重要文件,那么最好是配备一个UPS,尽可能避免上述情况发生。当然,要是你的计算机只是用于电影、游戏等娱乐用途,那么开启这项功能,也无关紧要。
2、打开Ultra MDA
1)按照启用磁盘写入缓存的操作,打开“设备管理器”。
2)展开“IDE ATA/ATAPI 控制器”项,双击“主要IDE通道”项,在弹出“主要IDE通道属性”窗口中切换到“高级设置”选项卡,将“传送模式”修改为“DMA(若可用)”。
3)重复第二步中的操作,将“次要IDE通道”项中的“传送模式”修改为“DMA(若可用)”。
经过以上操作,磁盘的数据传送模式被修改为DMA,将有效的提升数据读写速度。
3、设置系统运行缓存
1)打开“系统属性”窗口,切换到“高级”选项卡,随即弹出“性能选项”窗口。
2)在“性能选项”窗口中切换到“高级”选项卡,在“内存使用”处的值由“程序”改为“系统缓存”。点击“确定”按钮,便完成了“系统缓存”的设置操作。
通过上述操作,操作系统将会把4M左右的物理内存用作磁盘读写缓存,提高物理内存与虚拟内存之间的数据交换速度。与速度的提升相比,4M的内存牺牲还是值得的。当然,要是你的内存很小,只有128M或256M,那么还是乖乖地使用默认设置,以免对系统运行造成不必要的负面影响。
四、合理设置虚拟内存,让系统健步如飞
完成了硬件方面的设置,让我们把目光投向软件设置。在Windows操作系统中,虽然与虚拟内存直接相关的设置项并不多,而且表面看起来也非常简单。但如果真正深入地去探究,这里面还是有着不小的学问。
(一)如何修改虚拟内存?
在“控制面板”中双击“系统”项,在弹出的“系统属性”窗口中切换到“高级”选项卡,单击“性能”处的“设置”按钮,在弹出的“性能选项”窗口中切换到“高级”选项卡,单击“虚拟内存”处的“更改”按钮,就可以在弹出的“虚拟内存”窗口中对虚拟内存的保存位置,大小进行修改了。需要注意的是,对虚拟内存进行任意修改后,都需单击“设置”按钮确认操作,否则修改将不起作用。
(二)确定虚拟内存保存位置
默认情况下,Windows自动将虚拟内存安排在系统分区中,在大部分情况下,这样的设置没有什么问题。但如果你的计算机情况特殊,就需要我们进行特殊的设置了。从笔者的使用经验来看,有三点是需要我们注意的。
1、将虚拟内存设置于较快的硬盘
如果计算机中安装了多块硬盘,建议将虚拟内存设置在速度较快的硬盘上。
2、不设置于读写操作频繁的分区
一般情况下,系统分区中安装操作系统,应用程序则安装于另一个分区,显然,这两个分区都是读写操作十分频繁的。如果将虚拟内存设置于这两个分区,那么,磁盘的读写操作必将增多,受限于磁盘性能,虚拟内存的速度也将受到直接影响。因此,不建议将虚拟内存设置于类似的读写操作较频繁的分区。我们不妨划分一个容量较小的分区,专供虚拟内存使用。
3、确保虚拟内存所在分区容量
举个简单的例子,虚拟内存所在分区的剩余容量为300M,而虚拟内存设置为500M,很明显,受限于分区容量,虚拟内存的容量最大也只能达到300M,而不是设置中的500M。对于这种情况,一是可以删除该分区中的无用文件,二是直接将虚拟内存设置到空间较大的分区中。
(三)虚拟内存大小的合理设置
安装好操作系统,Windows便会自动分配虚拟内存的容量,最小值为物理内存的1.5倍 ,最大值则为物理内存的3倍。可以说,这样的设置方法,有一定的道理,但却并不适用于每一台计算机。
举个例子来说明这个问题。假设有A和B两台计算机,A的物理内存为128M,B的物理内存为1G,Windows分配给它们的虚拟内存区间分别是192M-384M,以及1536M-3072M。当我们运行Photoshop,并打开一个300M的图片文件,这时计算机A的内存(包括物理内存与虚拟内存)马上告急,而计算机B则在没有开始使用虚拟内存的情况下很快速地打开了图片文件。
因此计算机的不同,虚拟内存大小的设置方法也不尽相同,笼统的设置为1.5-3倍 ,并没有考虑到计算机的实际情况,产生的实际效果自然可想而知了。那么,我们又该如何精确的对虚拟内存大小进行设置呢?首先,需要了解计算机对虚拟内存的真实需求情况,然后才能对虚拟内存做出设置。
1)打开“系统属性”窗口,将虚拟内存的最小值与最大值均设置为一个固定值,例如300M。
2) 依次打开“控制面板”-“管理工具”-“性能”,在弹出的“性能”窗口中,依次展开 “性能日志和警报”-“计数器日志”,在右侧窗口中点击鼠标右键,在弹出菜单中选择“新建日志设置”项。
3)在弹出窗口中随意填写日志名称,例如“test”,在随即出现的test窗口中单击“添加计数器”按钮。
4)在弹出的“添加计数器”窗口中,将“性能对象”列表设置为“Paging File”;勾选“从列表选择计数器”,并在列表中单击选择“% Usage Peak”项;勾选“从列表选择范例”,并在列表中单击选择“_Total”项。单击“添加”按钮便成功添加了计数,然后单击“关闭”按钮,将“添加计数器”窗口关闭。
5) 回到test窗口,切换到“日志文件”选项卡,将“日志文件类型”下拉列表中的值设置为“文本文件”,以便在其后能够方便的查看日志文件中的数据。
6) 完成在test窗口中的操作后,单击“确定”按钮回到“性能”主窗口中,可以看到,在右侧的列表中,已经出现了一个名为test的日志项,并且默认处于运行状态中。
7) 象平时一样对计算机进行各种正常的操作,例如浏览网页、看电影、玩游戏等等。运行一段时间以后,打开日志文件所在目录(默认为系统分区下的PerfLogs目录),可以看到目录中存在一个名为test_000001.csv的日志文件。
8) 双击该文件,查看每一行数据中最后一个值,这个数值便是虚拟内存的使用百分比,由于此前我们将虚拟内存固定为300M,因此在本例中,虚拟内存的实际使用为300M*5%,即15M左右。
9) 打开“虚拟内存”设置窗口,将最小值设置为15M,而最大值则以最小值的2-3倍为佳。 (四)适时整理虚拟内存
由于虚拟内存构建于磁盘之上,磁盘使用久后,自然而然地会产生碎片,在影响磁盘性能的同时,还涉及到了虚拟内存。不少朋友会想到使用碎片整理程序对磁盘碎片进行整理,从而提升虚拟内存速度。但不管是哪种碎片整理软件(包括系统自带的碎片整理软件),均不能对正在使用中的页面文件进行碎片整理。因此,若想对虚拟内存所占用的磁盘空间进行整理,还需要用到其它的方法。
1、双系统整理法
既然Windows不允许对正在使用的虚拟内存进行碎片整理,那我们便可以绕一个圈子,即在双操作系统环境中,当我们使用A操作系统时,就可以对B操作系统的页面文件所在分区进行碎片整理操作;反过来,使用B操作系统时,也可以对A的页面文件进行整理。但这样的前提是系统中安装了双系统,在很多情况下并不适用。
2、临时移动虚拟内存
打开虚拟内存设置窗口,将虚拟内存全部设置到该分区中,重启电脑后,再对原虚拟内存设置分区进行碎片整理,由于虚拟内存已经转移,因此碎片整理可以顺利完成。当该分区的整理完成之后,再将虚拟内存重新移动即可。
提示:如果此前划分了一个专门的小分区给虚拟内存使用,那么此处的碎片整理将会方便很多。
3、使用专业软件整理
上述两种方法,都需要数步的操作,对于初学者来说,未免有些麻烦。因此,笔者推荐一款名为PageDefrag的软件,以方便的实现对虚拟内存的整理。
1)下载PageDefrag(下载地址:http://family1.chinaok.com/down/200702/pagedfrg.rar),该软件为绿色软件,无需安装即可运行。
2) 运行PageDefrag后,在软件主窗口中列出了其能够优化的各个项目,当然也包括了我们的目标——pagefile.sys。
3) 单击选择pagefile.sys,在Defragmentation Control(整理控制)给出了两种选择,一是Defragment at next boot项(系统下一次启动时整理),二是Defragment every boot(每次启动时整理),一般的,选择第一项即可。
4)点击OK按钮,即完成了软件的设置。当下一次系统启动时,软件便会对虚拟内存文件进行碎片整理,以提高其运行速度。
(五)加速虚拟内存,安全不容忽视
在提升虚拟内存速度的同时,可别忘了安全二字。由于在运行过程中,有很大一部分数据存储于虚拟内存,即硬盘上,而在系统关闭时,这些数据并不会被自动删除。一旦碰到了“有心人”,略施小计便可以从虚拟内存文件中得到想要的数据。因此,如果你的计算机涉及到一些需要保密的工作,那么对于虚拟内存的安全问题也不可轻视。
既然担心残存于页面文件中的数据文件被窃取,因此我们也围绕着页面文件动起了脑筋。自动删除页面文件,自然是最好的,但似乎Windows并没有提供该功能。这样,我们让Windows在关闭系统之前,用无意义的数据来填充整个页面文件,这样一来,即使他人得到了页面文件中的数据,也将是废物一堆。
1)点击“开始”-“运行”,输入gpedit.msc,打开“组策略编辑器”。
2)在左侧功能栏中依次展开“计算机配置”-“Windows设置”-“安全设置”-“本地策略”-“安全选项”,在右侧窗口中找到并双击“关机:清理虚拟内存页面文件”项,在弹出窗口中勾选“已启用”并确认操作,就完成了相应的设置。
启用该策略后,当系统关机时,便会自动向页面文件中填充无意义的数据文件,从而起到保护数据安全的目的。不过要注意,该策略将会延长系统关机时间(具体时间视虚拟内存大小而定)。