大剑无锋之简单介绍一下虚拟内存【面试推荐】
內(nèi)存是程序得以運(yùn)行的基礎(chǔ),如何在有限的內(nèi)存空間中運(yùn)行較大的應(yīng)用程序,曾經(jīng)是一個難題,為了解決這個問題設(shè)計(jì)了許多方案,其中最成功的當(dāng)屬虛擬內(nèi)存技術(shù)。
虛擬內(nèi)存技術(shù)可以讓系統(tǒng)看上去具有比實(shí)際物理內(nèi)存大得多的內(nèi)存空間并為實(shí)現(xiàn)多道程序的執(zhí)行創(chuàng)造了條件。
現(xiàn)代操作系統(tǒng)提供了一種對主存的抽象能力叫做虛擬內(nèi)存,虛擬內(nèi)存為每個進(jìn)程提供了一個非常大的、一致的、私有的地址空間。
虛擬內(nèi)存提供了三個關(guān)鍵能力
- 虛擬內(nèi)存將主存看成是一個存儲在磁盤空間上的地址空間的高速緩存,主存中只保存活動區(qū)域并根據(jù)需要在磁盤和主存之間來回傳送數(shù)據(jù)。
- 虛擬內(nèi)存為進(jìn)程提供了一致的地址空間簡化了內(nèi)存管理
- 虛擬內(nèi)存保護(hù)了每個進(jìn)程的地址空間不被其它進(jìn)程破壞
虛擬內(nèi)存別稱虛擬存儲器(Virtual Memory)。電腦中所運(yùn)行的程序均需經(jīng)由內(nèi)存執(zhí)行,若執(zhí)行的程序占用內(nèi)存很大或很多,則會導(dǎo)致內(nèi)存消耗殆盡。為解決該問題,Windows中運(yùn)用了虛擬內(nèi)存技術(shù),即勻出一部分硬盤空間來充當(dāng)內(nèi)存使用。當(dāng)內(nèi)存耗盡時,電腦就會自動調(diào)用硬盤來充當(dāng)內(nèi)存,以緩解內(nèi)存的緊張。若計(jì)算機(jī)運(yùn)行程序或操作所需的隨機(jī)存儲器(RAM)不足時,則 Windows 會用虛擬存儲器進(jìn)行補(bǔ)償。它將計(jì)算機(jī)的RAM和硬盤上的臨時空間組合。當(dāng)RAM運(yùn)行速率緩慢時,它便將數(shù)據(jù)從RAM移動到稱為“分頁文件”的空間中。將數(shù)據(jù)移入分頁文件可釋放RAM,以便完成工作。 一般而言,計(jì)算機(jī)的RAM容量越大,程序運(yùn)行得越快。若計(jì)算機(jī)的速率由于RAM可用空間匱乏而減緩,則可嘗試通過增加虛擬內(nèi)存來進(jìn)行補(bǔ)償。但是,計(jì)算機(jī)從RAM讀取數(shù)據(jù)的速率要比從硬盤讀取數(shù)據(jù)的速率快,因而擴(kuò)增RAM容量(可加內(nèi)存條)是最佳選擇。?
虛擬內(nèi)存是Windows 為作為內(nèi)存使用的一部分硬盤空間。虛擬內(nèi)存在硬盤上其實(shí)就是為一個碩大無比的文件,文件名是PageFile.Sys,通常狀態(tài)下是看不到的。必須關(guān)閉資源管理器對系統(tǒng)文件的保護(hù)功能才能看到這個文件。虛擬內(nèi)存有時候也被稱為是“頁面文件”就是從這個文件的文件名中來的。?[2]?
內(nèi)存在計(jì)算機(jī)中的作用很大,電腦中所有運(yùn)行的程序都需要經(jīng)過內(nèi)存來執(zhí)行,如果執(zhí)行的程序很大或很多,就會導(dǎo)致內(nèi)存消耗殆盡。為了解決這個問題,WINDOWS運(yùn)用了虛擬內(nèi)存技術(shù),即拿出一部分硬盤空間來充當(dāng)內(nèi)存使用,這部分空間即稱為虛擬內(nèi)存,虛擬內(nèi)存在硬盤上的存在形式就是 PAGEFILE.SYS這個頁面文件。
總結(jié)
以上是生活随笔為你收集整理的大剑无锋之简单介绍一下虚拟内存【面试推荐】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 你真正的去了解过Linux吗?不单单是一
- 下一篇: 每日两SQL(8),欢迎交流~