新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > linux內存管理理解

        linux內存管理理解

        作者: 時間:2016-09-12 來源:網絡 收藏

        slab/kmalloc/vmalloc都是內核分配虛擬地址空間的方法,不是物理地址的方法

        本文引用地址:http://www.104case.com/article/201609/304178.htm

        get_free_page/allocate_page這些都是內核分配物理空間的,但是最終又要重新映射為虛擬地址空間vremap

        用戶態的虛擬地址空間的分配是new/malloc,最終都是要到內核去分配

        高速緩存

        它保存的是虛擬地址到指令或者數據的映射關系,不是物理地址到指令和數據的映射

        TLB

        它保存的是虛擬地址到物理地址的轉換的緩存,也就是MMU轉換的緩存

        這其中它可能采用的是組關聯,全關聯等映射方法

        頁表

        內核頁表和進程頁表,在系統有很大的內存的時候,不可能采用一級頁表,否則頁表占用的頁的數量太多,而且不一定都使用到,所以采用了多級頁表,類似段頁,linux常用的是3級頁表。



        關鍵詞: Linux 內存管理

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 伊吾县| 吉首市| 门源| 延吉市| 博罗县| 长泰县| 大足县| 马公市| 海城市| 徐州市| 兰考县| 武城县| 苍梧县| 剑阁县| 瓮安县| 宁远县| 海南省| 乐平市| 青田县| 大港区| 泊头市| 吉隆县| 宜宾县| 中阳县| 岑巩县| 岳阳县| 定南县| 琼中| 普洱| 余姚市| 辽阳市| 嵩明县| 包头市| 彝良县| 靖宇县| 平乐县| 彭州市| 榆林市| 宜川县| 城步| 肃南|