成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

漫畫解說 “內存映射”

存儲 存儲軟件
虛擬內存地址就好比每個班的學號,而物理內存地址就好比真實的學生。因為每個學號都對應不同的學生,所以虛擬內存地址也要映射到物理內存地址。

[[396240]]

本文轉載自微信公眾號「Linux內核那些事」,作者songsong001。轉載本文請聯系Linux內核那些事公眾號。

 

虛擬內存空間與物理內存空間

虛擬內存地址就好比每個班的學號,而物理內存地址就好比真實的學生。因為每個學號都對應不同的學生,所以虛擬內存地址也要映射到物理內存地址。

虛擬內存與物理內存的映射關系是通過 頁表 來關聯的,如下圖:

但 頁表 并不是按字節來進行映射的,而是按照 內存頁 為單位進行映射,一般一個 內存頁 的大小為 4KB(為什么要加一般呢,這是因為除了4KB,還有其他大小的內存頁,如2MB,4MB,1GB等),頁表 的每一個 頁表項 都保存著物理內存頁的地址。

所以,4GB 的虛擬內存空間需要 1MB 大小的頁表來關聯(因為 4GB / 4KB = 1MB)。也就是說,0 ~ 4095 的虛擬內存地址都是使用 頁表 的第一個 頁表項 來映射的,而 4096 ~ 8191 的虛擬內存地址使用 頁表 的第二個 頁表項 來映射的,以此類推...

那么,通過什么樣的算法能把 0 ~ 4095 的虛擬內存地址轉換為頁表的第一個頁表項呢?其實很簡單,只需要把虛擬內存地址的高端 20 位作為頁表的索引,而把低端 12 位作為內存頁中的偏移量即可,如下圖:

在上圖中,還看到了一個 cr3 的東西,這是 CPU 中的一個寄存器,用于保存 頁表 的物理內存地址,通過這個寄存器就能找到進程的 頁表 了。

現在對內存映射的原理有了比較清晰的了解了,但現在有個問題,每個進程都要 1MB 大小的頁表,那不是很浪費內存嗎?的確是,因為進程很多虛擬內存地址并不會用到,為了節省頁表使用的內存,x86 CPU 把頁表分為 2 級,如下圖:

如上圖所示,把原來的 頁表 劃分為 頁目錄 和 頁表,它們的大小均為 4KB。而虛擬內存地址的高 10 位作為頁目錄的索引,而中間 10 位作為頁表的索引,低 12 位還是作為物理內存頁的偏移量。

把原來的 頁表 劃分為兩級后,進程有些不使用的虛擬內存地址就不需要進行映射,從而節省了內存的使用。

 

責任編輯:武曉燕 來源: Linux內核那些事
相關推薦

2013-10-12 13:01:51

Linux運維內存管理

2009-07-24 10:00:38

.NET 4.0內存映

2011-04-25 17:15:39

MongodbMMAP

2012-06-20 14:16:36

Java內存映射

2023-03-01 10:37:51

2020-09-17 08:28:08

內存映射反向

2010-05-10 14:15:54

DNS負載均衡

2010-08-26 13:38:45

DHCP冗余

2009-01-09 22:29:38

服務器虛擬化磁盤陣列

2010-07-06 10:00:08

UML部署圖

2010-09-02 14:42:04

DHCP Relay

2009-08-13 14:21:04

.NET內存映射文件

2021-11-11 05:00:02

JavaMmap內存

2021-12-03 16:20:26

鴻蒙HarmonyOS應用

2018-10-10 14:14:51

Linux內存映射

2023-06-28 08:27:49

CLR斷點C#

2010-02-04 15:01:07

Android架構

2009-09-23 15:37:52

Hibernate 原

2010-10-15 10:33:37

2010-02-05 16:58:18

Android服務
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲免费在线播放 | 久久久久久亚洲 | 毛片一级网站 | av天天爽 | 亚洲成人精品国产 | 日韩福利 | 福利视频一二区 | 在线日韩精品视频 | 亚洲精品一二三区 | 91视频电影| 欧美一级三级在线观看 | 一级片av | 久久久亚洲一区 | 亚洲成人免费视频在线 | 国产 日韩 欧美 在线 | 日韩欧美理论片 | 午夜影视大全 | 中文字幕高清 | 日韩在线观看一区 | av手机在线播放 | 欧美区日韩区 | 国产精品大片在线观看 | 色久电影 | 一区二区三区欧美在线 | 欧美视频三区 | 日韩高清中文字幕 | 午夜小电影 | 欧美黄在线观看 | 亚洲日本欧美日韩高观看 | 男人天堂久久久 | 亚洲自拍一区在线观看 | 色婷婷综合久久久中字幕精品久久 | 成人妇女免费播放久久久 | 91免费观看国产 | 欧美激情亚洲天堂 | 国产精品久久久久久婷婷天堂 | 在线观看视频一区 | 欧美精品网站 | 日韩一区二区三区视频在线播放 | 97av视频在线 | 亚洲欧美一区二区三区国产精品 |