⑴ 什麼是存儲虛擬化
存儲虛擬化(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設置”-“安全設置”-“本地策略”-“安全選項”,在右側窗口中找到並雙擊“關機:清理虛擬內存頁面文件”項,在彈出窗口中勾選“已啟用”並確認操作,就完成了相應的設置。
啟用該策略後,當系統關機時,便會自動向頁面文件中填充無意義的數據文件,從而起到保護數據安全的目的。不過要注意,該策略將會延長系統關機時間(具體時間視虛擬內存大小而定)。