在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Linux虛擬地址空間和物理地址空間的關系

麥辣雞腿堡 ? 來源:嵌入式Linux充電站 ? 作者:Vincent ? 2023-10-08 11:40 ? 次閱讀

很多人接觸Linux的內存管理是從malloc()這個C語言庫函數開始,也是從那時開始就知道了虛擬內存的概念。但很多人可能并不知道虛擬地址是如何轉換成物理地址的,今天帶你搞懂虛擬地址到物理地址的轉換過程,這其實也是MMU的工作原理

我們知道,在Linux中,每個進程都有自己獨立的地址空間,且互不干擾。每個進程的地址空間又分為用戶空間和內核空間,但這些地址空間使用的都是虛擬地址,它們和物理地址空間關系是怎樣的呢?虛擬地址空間和物理地址空間的關系如下:

圖片

對于不同的進程,面對的都是同一個內核,其內核空間的地址對應的物理地址都是一樣的,因此進程1和進程2中內核空間都映射到了相同的物理內存PA1上。

而不同進程的用戶空間是不一樣的,即便相同的虛擬地址,也會被映射到不同的物理地址上。如圖中兩個進程相同用戶空間的地址0x123456分別被映射到了PA2和PA3物理地址上。

那么如何完成上述虛擬地址到物理地址的轉換呢?

完成虛擬地址到物理地址的轉換,我們需要借助一個硬件——MMU。

MMU: Memory manager unit,內存管理單元,負責將虛擬地址(VA)轉為物理地址(PA)。

分頁機制

在Linux系統上,現在用到的內存管理機制,大部分是分頁機制。在分頁機制出現之前,還出現過動態分區法、分段機制。

動態分區法是還沒用引入虛擬地址之前使用的,使用的都是物理內存,屬于非常早期的機制。分段機制則引入了虛擬地址的概念,而分頁機制在分段機制后出現,主要解決分段機制內存碎片的問題。本篇以分頁機制講解虛擬地址到物理地址的轉換,下面介紹分頁機制的一些基本概念。

分頁機制的基本概念:

分頁:將內存劃分為固定長度的單元,每個單元就是一頁

頁:對于虛擬地址空間,將地址空間劃分為固定大小單元的單元,每個單元稱為一頁

頁幀:對于物理地址空間,將地址空間分為固定大小的單元,每個單元稱為頁幀

VPN:Virtual Page Number,虛擬頁面號

PFN:Physical Frame Number,物理頁幀號

分頁管理內存的核心問題就是虛擬地址頁到物理地址頁幀的映射關系

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11304

    瀏覽量

    209523
  • 內存
    +關注

    關注

    8

    文章

    3025

    瀏覽量

    74056
  • C語言
    +關注

    關注

    180

    文章

    7604

    瀏覽量

    136841
  • 函數
    +關注

    關注

    3

    文章

    4331

    瀏覽量

    62622
收藏 人收藏

    評論

    相關推薦

    鴻蒙內核源碼分析:物理地址的映射

    到不同的實際物理內存空間上。CPU只知道虛擬地址,向虛擬地址要數據,但在其保護模式下很悲催地址信號在路上被MMU攔截了,MMU把
    的頭像 發表于 11-03 10:28 ?2106次閱讀

    操作系統中的邏輯地址物理地址

    本文是關于操作系統中邏輯地址物理地址之間的區別。計算機操作系統中的內存使用兩種不同類型的地址物理地址是內存的實際地址,如RAM,
    發表于 09-14 14:26 ?4020次閱讀

    請問ARM虛擬地址 物理地址 加載地址 運行地址的聯系是什么?

    簡單的理解:ARM的加載地址即程序在Flash的存儲位置。運行地址即內存中運行時的位置。虛擬地址物理地址在MMU中映射,那么這四者之間的聯系是什么?
    發表于 04-25 03:16

    為什么MMU的地址映射中物理地址會跳變?

    關于MMU的地址映射,32位的cpu有4G的虛擬地址空間,將它分為4096個小塊,每個小塊是1M,用描述符進行虛擬地址物理地址之間
    發表于 08-22 05:45

    linux虛擬地址如何轉物理地址

    linux虛擬地址物理地址
    發表于 05-13 09:31

    【HarmonyOS】虛擬地址<->物理地址是如何映射的

    到不同的實際物理內存空間上。CPU只知道虛擬地址,向虛擬地址要數據,但在其保護模式下很悲催地址信號在路上被MMU攔截了,MMU把
    發表于 11-03 16:20

    物理地址虛擬地址的轉換步驟

    上是不行的,在Linux上,如果想要操作硬件,需要先把物理地址轉換成虛擬地址,因為Linux使能了MMU,所以我們在Linux上不能直接操作
    發表于 12-24 07:42

    linux kernel實現物理地址虛擬地址空間的切換方法

    1、arm linux 臨時頁表的建立linux kernel的主要特點之一就是運行在虛擬地址空間上,但是怎么才能實現物理地址
    發表于 05-13 10:21

    用戶態得到虛擬地址對應的物理地址

    一般我們不需要從用戶態得到進程虛擬地址對應的物理地址,因為一般來說用戶進程是完全不關心物理地址的。
    的頭像 發表于 10-10 14:10 ?2515次閱讀
    用戶態得到<b class='flag-5'>虛擬地址</b>對應的<b class='flag-5'>物理地址</b>

    鴻蒙內核中虛擬地址物理地址之間是如何映射的

    內存空間上。CPU只知道虛擬地址,向虛擬地址要數據,但在其保護模式下很悲催地址信號在路上被MMU攔截了,MMU把虛擬地址換成了
    發表于 11-19 14:45 ?9次下載
    鴻蒙內核中<b class='flag-5'>虛擬地址</b>與<b class='flag-5'>物理地址</b>之間是如何映射的

    虛擬地址物理地址等眾多地址及MMU相關知識

    虛擬地址物理地址等眾多地址及MMU相關知識先聊聊存儲器STM32單片機存儲器關于編譯器生成的文件數據在存儲器上的存儲結構物理地址虛擬地址
    發表于 12-08 12:36 ?12次下載
    <b class='flag-5'>虛擬地址</b><b class='flag-5'>物理地址</b>等眾多<b class='flag-5'>地址</b>及MMU相關知識

    虛擬地址翻譯物理地址的流程有哪些呢?

    現代的操作系統將可執行文件加載后,創建了進程,進程中每一條指令和數據都被分配了一個虛擬地址,CPU獲取到這個虛擬地址后,需要翻譯成內存的物理地址后,才能訪問指令和數據
    的頭像 發表于 08-14 10:30 ?1316次閱讀
    <b class='flag-5'>虛擬地址</b>翻譯<b class='flag-5'>物理地址</b>的流程有哪些呢?

    Linux系統為什么需要引入虛擬地址

    ,這 4GB 的內存空間按照 3:1 的比例進行分配,其中用戶進程享有 3G 的空間,而內核獨自享有剩下的1G 空間,如下所示: 虛擬地址會通過硬件MMU(內存管理單元)映射到實際的
    的頭像 發表于 10-07 17:28 ?953次閱讀
    <b class='flag-5'>Linux</b>系統為什么需要引入<b class='flag-5'>虛擬地址</b>

    Linux虛擬地址物理地址轉換過程

    虛擬地址物理地址轉換過程 虛擬地址物理地址都被劃分了兩部分: 虛擬地址虛擬頁面號VPN和
    的頭像 發表于 10-08 11:45 ?1969次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>虛擬地址</b>到<b class='flag-5'>物理地址</b>轉換過程

    MMU虛擬地址空間布局

    當然虛擬地址空間劃分不只是如此。因為目前應用程序沒有那么大的內存需求,所以ARM64處理器不支持完全的64位虛擬地址,實際支持情況如下。 (1)-虛擬地址位寬
    的頭像 發表于 11-26 16:35 ?890次閱讀
    主站蜘蛛池模板: 五月天婷婷色综合| 苦瓜se影院在线视频网站| 久久精品波多野结衣| 一区二区三区视频网站| 性 色 黄 一级| 久久综合性| 日本超黄视频| 亚洲综合精品一区二区三区中文| 午夜老司机福利| 成人在线视频网| 波多野结衣一级毛片| 亚洲婷婷综合色高清在线| 精品卡1卡2卡三卡免费网站视频| 日本加勒比视频在线观看| 老师叫我下面含着精子去上课| 欧美伊人久久大香线蕉综合69| 午夜影视在线免费观看| 67pao强力打造| 日本大黄视频| 日本在线黄色网址| jizz免费一区二区三区| 狠狠色丁香婷婷综合久久片| 国产精品莉莉欧美自在线线| 亚洲成在人线影视天堂网| 丁香婷婷亚洲六月综合色| 欧美成人性色区| 日本精品高清一区二区2021| 天天视频在线观看免费| 美女扒尿口给男人桶到爽| 久久vs国产综合色大全| 操您啦| 四虎国产在线| 天天骑夜夜操| 99热.com| 东莞a级毛片| 亚洲一区色| 久久国产精品99久久久久久老狼| 国产成人综合亚洲怡春院| 四虎成人精品在永久在线观看| 伊人天伊人天天网综合视频| 日本不卡一区|