虛擬記憶體是什麼意思工作原理是什麼

  虛擬記憶體是計算機系統記憶體管理的一種技術。那麼你對虛擬記憶體瞭解多少呢?以下是由小編整理關於什麼是虛擬記憶體的內容,希望大家喜歡!

  虛擬記憶體的介紹

  虛擬記憶體是計算機系統記憶體管理的一種技術。它使得應用程式認為它擁有連續的可用的記憶體***一個連續完整的地址空間***,而實際上,它通常是被分隔成多個實體記憶體碎片,還有部分暫時儲存在外部磁碟儲存器上,在需要時進行資料交換。目前,大多數作業系統都使用了虛擬記憶體,如Windows家族的“虛擬記憶體”;Linux的“交換空間”等。

  Windows 8/8.1 作業系統如出現開機時卡在Windows徽標頁面,無法進入系統,必須強制關機再重啟才能開啟時,可適當調整虛擬記憶體設定解決。

  虛擬記憶體的工作原理

  虛擬儲存器是由硬體和作業系統自動實現儲存資訊排程和管理的。它的工作過程包括6個步驟:

  ①中央處理器訪問主存的邏輯地址分解成組號a和組內地址b,並對組號a進行地址變換,即將邏輯組號a作為索引,查地址變換表,以確定該組資訊是否存放在主存內。

  ②如該組號已在主存內,則轉而執行④;如果該組號不在主存內,則檢查主存中是否有空閒區,如果沒有,便將某個暫時不用的組調出送往輔存,以便將這組資訊調入主存。

  ③從輔存讀出所要的組,並送到主存空閒區,然後將那個空閒的物理組號a和邏輯組號a登入在地址變換表中。

  ④從地址變換表讀出與邏輯組號a對應的物理組號a。

  ⑤從物理組號a和組內位元組地址b得到實體地址。

  ⑥根據實體地址從主存中存取必要的資訊。

  排程方式有分頁式、段式、段頁式3種。頁式排程是將邏輯和實體地址空間都分成固定大小的頁。主存按頁順序編號,而每個獨立編址的程式空間有自己的頁號順序,通過排程輔存中程式的各頁可以離散裝入主存中不同的頁面位置,並可據表一一對應檢索。頁式排程的優點是頁內零頭小,頁表對程式設計師來說是透明的,地址變換快,調入操作簡單;缺點是各頁不是程式的獨立模組,不便於實現程式和資料的保護。段式排程是按程式的邏輯結構劃分地址空間,段的長度是隨意的,並且允許伸長,它的優點是消除了記憶體零頭,易於實現儲存保護,便於程式動態裝配;缺點是調入操作複雜。將這兩種方法結合起來便構成段頁式排程。在段頁式排程中把物理空間分成頁,程式按模組分段,每個段再分成與物理空間頁同樣小的頁面。段頁式排程綜合了段式和頁式的優點。其缺點是增加了硬體成本,軟體也較複雜。大型通用計算機系統多數採用段頁式排程。

  虛擬記憶體不足原因

  【1】、感染病毒:有些病毒發作時會佔用大量記憶體空間,導致系統出現記憶體不足問題。

  【2】、虛擬記憶體設定不當:通常,應設定為實體記憶體大小的2倍。若設定過小,則會影響系統程式的正常執行。此時便需重設虛擬記憶體數值,以“Windows XP”為例,右擊“我的電腦”,選擇“屬性”,在“高階”標籤頁點選“效能”框中的“設定”按鈕,切換至“高階”標籤頁,後在“虛擬記憶體”框中點選“更改”按鈕,接著重設虛擬記憶體數值,再點“設定”並“確定”,完後重啟系統即可。

  【3】、系統盤空間不足:在預設情況下,虛擬記憶體是以名為“Pagefile.sys”的交換檔案存於硬碟的系統分割槽中。若系統盤剩餘容量過小,即會出現該問題。系統盤至少應留有300MB的可用空間,當然此數值需據使用者的實際需要而定。儘量不要將各種應用軟體裝在系統盤,以保證有足夠的空間供虛擬記憶體檔案使用,且最好將虛擬記憶體檔案安放至非系統盤內。

  【4】、System使用者許可權設定不當:基於NT核心的Windows系統啟動時,System使用者會為系統建立虛擬記憶體檔案。有些使用者為了系統的安全,採用NTFS檔案系統,但卻取消了System使用者在系統盤“寫入”和“修改”的許可權,這樣就無法為系統建立虛擬記憶體檔案,執行大型程式時,也會出現此類問題。對策:重新賦予System使用者“寫入”和“修改”的許可權即可。***注:該僅限於使用NTFS檔案系統的使用者。***

  虛擬記憶體使用技巧

  對於虛擬記憶體如何設定的問題,微軟已經給我們提供了官方的解決辦法,對於一般情況下,我們推薦採用如下的設定方法:

  頁面檔案,檔案的大小由你對系統的設定決定。具體設定方法如下:開啟"我的電腦"的"屬性"設定視窗,切換到"高階"選項卡,在"啟動和故障恢復"視窗的"寫入除錯資訊"欄,如果你採用的是試和錯誤報告了。所以折中的辦法是在系統盤設定較小的頁面檔案,只要夠用就行了。

  記憶體,其最小值設定為實體記憶體的1.5倍,最大值設定為實體記憶體的3倍,該分割槽專門用來儲存頁面檔案,不要再存放其它任何檔案。之所以單獨劃分一個分割槽用來設定虛擬記憶體,主要是基於兩點考慮:其一,由於該分割槽上沒有其它檔案,這樣分割槽不會產生磁碟碎片,這樣能保證頁面檔案的資料讀寫不受磁碟碎片的干擾;其二,按照Windows對記憶體的管理技術,Windows會優先使用不經常訪問的分割槽上的頁面檔案,這樣也減少了讀取系統盤裡的頁面檔案的機會,減輕了系統盤的壓力。

  頁面檔案,則其它硬碟分割槽不設定任何頁面檔案。因為過多的分割槽設定頁面檔案,這樣會導致,硬碟磁頭反覆的在不同的分割槽來回讀取。這樣既耽誤了系統速率,也會減少硬碟的壽命。當然,如果你有多個硬碟,則可以為每個硬碟都建立一個頁面檔案。當資訊分佈在多個頁面檔案上時,硬碟控制器可以同時在多個硬碟上執行讀取和寫入操作。這樣系統性能將得到提高。

  需要注意!設定過大的虛擬記憶體將導致關機過慢甚至幾十分鐘,例如2G電腦設定16G虛擬記憶體雖然增加了電腦效能但是關機可能需要幾分鐘。


虛擬記憶體工作原理