亚洲一级簧片_性 毛片_国产乱子视频_久久影城_强伦女教师视频_成人精品久久

電腦物理內(nèi)存可用

發(fā)布時(shí)間: 2023-04-10 16:28 閱讀: 文章來源:轉(zhuǎn)載

物理內(nèi)存就是你的機(jī)器本身內(nèi)存了(如內(nèi)存條的大小)。物理內(nèi)存就是CPU的地址線可以直接進(jìn)行尋址的內(nèi)存空間大小。比如8086只有20根地址線,那么它的尋址空間就是1MB,我們就說8086能支持1MB的物理內(nèi)存,及時(shí)我們安裝了128M的內(nèi)存條在板子上,我們也只能說8086擁有1MB的物理內(nèi)存空間。同理我們現(xiàn)在大部分使用的是32位的機(jī)子,32位的386以上CPU就可以支持最大4GB的物理內(nèi)存空間了。

虛擬內(nèi)存技術(shù),即拿出一部分硬盤空間來充當(dāng)內(nèi)存使用,當(dāng)內(nèi)存占用完時(shí),電腦就會(huì)自動(dòng)調(diào)用硬盤來充當(dāng)內(nèi)存,以緩解內(nèi)存的緊張。比如說當(dāng)電腦要讀取一個(gè)比物理內(nèi)存還要大的文件時(shí),就要用到虛擬內(nèi)存,文件被內(nèi)存讀取之后就會(huì)先儲(chǔ)存到虛擬內(nèi)存,等待內(nèi)存把文件全部儲(chǔ)存到虛擬內(nèi)存之后,就把虛擬內(nèi)里儲(chǔ)存的文件釋放到原來的目錄里了。

計(jì)算機(jī)的內(nèi)存大小等于實(shí)際物理內(nèi)存容量加上“分頁文件”(就是交換文件)的大小。

RAM 就是高速緩存,通電就具有記憶功能,斷電就失去,也就是運(yùn)行內(nèi)存,就是用來存放臨時(shí)文件,而“內(nèi)存”就是RAM的一種物理硬件,廣義來說兩者也可以說是同一概念。而虛擬內(nèi)存是系統(tǒng)利用硬盤分出來的具有輔助內(nèi)存工作的虛擬RAM,不是硬件,但又依靠硬盤。

內(nèi)存就是RAM。虛擬內(nèi)存并不是把硬盤當(dāng)作內(nèi)存,而是在硬盤上創(chuàng)建的交換文件。

當(dāng)物理內(nèi)存用完后,虛擬內(nèi)存管理器選擇最近沒有用過的,低優(yōu)先級(jí)的內(nèi)存部分寫到交換文件(頁面文件)上,并將需要訪問內(nèi)存的程序的內(nèi)容從頁面文件中換入到物理內(nèi)存。

正在運(yùn)行的一個(gè)進(jìn)程,他所需的內(nèi)存是有可能大于內(nèi)存條容量之和的,比如你的內(nèi)存條是256M,你的程序卻要?jiǎng)?chuàng)建一個(gè)2G的數(shù)據(jù)區(qū),那么不是所有數(shù)據(jù)都能一起加載到內(nèi)存(物理內(nèi)存)中,勢(shì)必有一部分?jǐn)?shù)據(jù)要放到其他介質(zhì)中(比如硬盤),待進(jìn)程需要訪問那部分?jǐn)?shù)據(jù)時(shí),在通過調(diào)度進(jìn)入物理內(nèi)存。所以,虛擬內(nèi)存是進(jìn)程運(yùn)行時(shí)所有內(nèi)存空間的總和,并且可能有一部分不在物理內(nèi)存中,而物理內(nèi)存就是我們平時(shí)所了解的內(nèi)存條。有的地方呢,也叫這個(gè)虛擬內(nèi)存為內(nèi)存交換區(qū)。關(guān)鍵的是不要把虛擬內(nèi)存跟真實(shí)的插在主板上的內(nèi)存條相掛鉤,虛擬內(nèi)存它是“虛擬的”不存在,假的啦,它只是內(nèi)存管理的一種抽象!

什么是虛擬內(nèi)存地址和物理內(nèi)存地址呢。假設(shè)你的計(jì)算機(jī)是32位,那么它的地址總線是32位的,也就是它可以尋址00xFFFFFFFF(4G)的地址空間,但如果你的計(jì)算機(jī)只有256M的物理內(nèi)存0x0x0FFFFFFF(256M),同時(shí)你的進(jìn)程產(chǎn)生了一個(gè)不在這256M地址空間中的地址,那么計(jì)算機(jī)該如何處理呢?回答這個(gè)問題前,先說明計(jì)算機(jī)的內(nèi)存分頁機(jī)制。

計(jì)算機(jī)會(huì)對(duì)虛擬內(nèi)存地址空間(32位為4G)分頁產(chǎn)生頁(page),對(duì)物理內(nèi)存地址空間(假設(shè)256M)分頁產(chǎn)生頁幀(page frame),這個(gè)頁和頁幀的大小是一樣大的,所以呢,在這里,虛擬內(nèi)存頁的個(gè)數(shù)勢(shì)必要大于物理內(nèi)存頁幀的個(gè)數(shù)。在計(jì)算機(jī)上有一個(gè)頁表(page table),就是映射虛擬內(nèi)存頁到物理內(nèi)存頁的,更確切的說是頁號(hào)到頁幀號(hào)的映射,而且是一對(duì)一的映射。但是問題來了,虛擬內(nèi)存頁的個(gè)數(shù) > 物理內(nèi)存頁幀的個(gè)數(shù),豈不是有些虛擬內(nèi)存頁的地址永遠(yuǎn)沒有對(duì)應(yīng)的物理內(nèi)存地址空間?不是的,操作系統(tǒng)是這樣處理的。操作系統(tǒng)有個(gè)頁面失效(page fault)功能。操作系統(tǒng)找到一個(gè)最少使用的頁幀,讓他失效,并把它寫入磁盤,隨后把需要訪問的頁放到頁幀中,并修改頁表中的映射,這樣就保證所有的頁都有被調(diào)度的可能了。這就是處理虛擬內(nèi)存地址到物理內(nèi)存的步驟。

什么是虛擬內(nèi)存地址和物理內(nèi)存地址?

虛擬內(nèi)存地址由頁號(hào)(與頁表中的頁號(hào)關(guān)聯(lián))和偏移量組成。頁號(hào)就不必解釋了,上面已經(jīng)說了,頁號(hào)對(duì)應(yīng)的映射到一個(gè)頁幀。那么,說說偏移量。偏移量就是我上面說的頁(或者頁幀)的大小,即這個(gè)頁(或者頁幀)到底能存多少數(shù)據(jù)。舉個(gè)例子,有一個(gè)虛擬地址它的頁號(hào)是4,偏移量是20,那么他的尋址過程是這樣的:首先到頁表中找到頁號(hào)4對(duì)應(yīng)的頁幀號(hào)(比如為8),如果頁不在內(nèi)存中,則用失效機(jī)制調(diào)入頁,否則把頁幀號(hào)和偏移量傳給MMU(CPU的內(nèi)存管理單元)組成一個(gè)物理上真正存在的地址,接著就是訪問物理內(nèi)存中的數(shù)據(jù)了??偨Y(jié)起來說,虛擬內(nèi)存地址的大小是與地址總線位數(shù)相關(guān),物理內(nèi)存地址的大小跟物理內(nèi)存條的容量相關(guān)。

可以認(rèn)為虛擬空間都被映射到了磁盤空間中,(事實(shí)上也是按需要映射到磁盤空間上,通過mmap),并且由頁表記錄映射位置,當(dāng)訪問到某個(gè)地址的時(shí)候,通過頁表中的有效位,可以得知此數(shù)據(jù)是否在內(nèi)存中,如果不是,則通過缺頁異常,將磁盤對(duì)應(yīng)的數(shù)據(jù)拷貝到內(nèi)存中,如果沒有空閑內(nèi)存,則選擇犧牲頁面,替換其他頁面。

mmap是用來建立從虛擬空間到磁盤空間的映射的,可以將一個(gè)虛擬空間地址映射到一個(gè)磁盤文件上,當(dāng)不設(shè)置這個(gè)地址時(shí),則由系統(tǒng)自動(dòng)設(shè)置,函數(shù)返回對(duì)應(yīng)的內(nèi)存地址(虛擬地址),當(dāng)訪問這個(gè)地址的時(shí)候,就需要把磁盤上的內(nèi)容拷貝到內(nèi)存了,然后就可以讀或者寫,最后通過manmap可以將內(nèi)存上的數(shù)據(jù)換回到磁盤,也就是解除虛擬空間和內(nèi)存空間的映射,這也是一種讀寫磁盤文件的方法,也是一種進(jìn)程共享數(shù)據(jù)的方法 共享內(nèi)存

???展開全文
相關(guān)文章
主站蜘蛛池模板: 日韩av福利 | 国产一区二区高清 | 麻豆精品国产传媒mv男同 | 欧美精品在线一区 | 男人天堂av网 | 精品久久久久久久人人人人传媒 | 成年人视频在线免费观看 | 国产露脸国语对白在线 | av大片免费看 | 久久免费国产精品 | 亚洲一区二区av | 亚洲一区二区三区在线免费观看 | 91日韩在线| 国产曰批免费观看久久久 | 日韩视频在线一区二区 | 国产精品日韩欧美一区二区三区 | 99精品欧美一区二区蜜桃免费 | 国产a视频| 蜜桃精品久久久久久久免费影院 | 高潮白浆女日韩av免费看 | 99精品欧美一区二区三区 | 亚洲成人av影片 | 国产日韩欧美视频 | 国产精品亚洲片在线播放 | 亚洲在线一区二区三区 | 亚洲天堂av网 | 精品欧美一区二区三区 | 精品久久久久久久久久久久久久久 | 欧一区二区 | 91久久精品国产 | 日韩a级毛片免费观看久久 精品一区二区在线播放 | 成人不卡| 黄色av网站在线观看 | 久久曰视频 | av免费在线网站 | 亚洲一区综合 | 免费精品视频 | 亚洲aa在线 | 成人福利在线视频 | 免费成人av | 东北寡妇特级毛片免费 |