Virtual kernel memory layout記錄

在arm linux 內(nèi)核啟動后谜疤,會出現(xiàn)Virtual kernel memory layout


QQ圖片20180517173416.png
Memory: 509624K/524288K available (6144K kernel code, 390K rwdata, 1372K rodata, 1024K init, 164K bss, 14664K reserved, 0K cma-reserved)
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    vmalloc : 0xa0800000 - 0xff800000   (1520 MB)
    lowmem  : 0x80000000 - 0xa0000000   ( 512 MB)
    modules : 0x7f000000 - 0x80000000   (  16 MB)
      .text : 0x(ptrval) - 0x(ptrval)   (7136 kB)
      .init : 0x(ptrval) - 0x(ptrval)   (1024 kB)
      .data : 0x(ptrval) - 0x(ptrval)   ( 391 kB)
       .bss : 0x(ptrval) - 0x(ptrval)   ( 165 kB)
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1

這是linux 的虛擬內(nèi)核內(nèi)存布局

  • vector 如果CPU支持向量重定向(控制寄存器的V位),則CPU中斷向量被映射到這里。
  • fixmap 固定映射區(qū)寂汇,用來分配大頁內(nèi)存
  • vmalloc虛擬內(nèi)存申請的地址范圍,實際大小VMALLOC_END=0xf0000000 must be aligned to a 2MB boundary.
    VMALLOC_END必須在2MB的邊界上對齊。
  • lowmem 直接物理內(nèi)存映射區(qū)楼誓,它映射平臺的RAM蹦掐,通常所有的平臺都使用1:1的映射關(guān)系。這里是245MB喷好。大小=總物理內(nèi)存大小減去其他分區(qū)總和。0x80000000也就是PAGE_OFFSET內(nèi)核鏡像起始虛擬地址读跷。
  • modules 內(nèi)核模塊空間梗搅,內(nèi)核模塊通過insmod命令加載,會動態(tài)的映射到這里
  • .text 內(nèi)核映像text函數(shù)的代碼段
  • .init 內(nèi)核映像(系統(tǒng)啟動過程中以__init宏標識的函數(shù)占用的空間被vmlinux.lds標識為__init_begin__init_end啟動init進程前被釋放掉)init函數(shù)的init段效览,內(nèi)核映像(同上) text函數(shù)的代碼段
  • .data 內(nèi)核映像 data函數(shù)的代碼段
  • .bss 內(nèi)核映像 bss函數(shù)的數(shù)據(jù)段
QQ圖片20180517174756.png

在內(nèi)核進行page初始化以及mmu配置之前无切,首先需要知道整個memory map。

  • PAGE_OFFSET
    Start address of Kernel space
    0xC000_0000

  • lowmem
    Kernel direct-mapped RAM region (1:1 mapping)
    Maximum 896M

  • HIGH_MEMORY
    End address of lowmem
    PAGE_OFFSET + MEMORY_SIZE

  • pkmap
    用來把HIGHMEM page 永久映射到 kernel space
    2MB (這個大小每個平臺不一樣)
    kmap() / kunmap()

  • Page gap
    To against out-of-bounds errors
    8MB

  • vmalloc
    vmalloc() / ioremap() space

  • DMA
    DMA memory mapping region

  • Fixmap
    kmap()可能會進入睡眠丐枉,所以不能用在中斷上下文等地方.
    所以Fixmap就是用于在中斷上下文中把 highmem映射到內(nèi)核空間的.
    Mapping HIGHMEM pages atomically
    kmap_atomic() :Fixmap在使用這個函數(shù)哆键,所以可以在中斷上下文中使用

  • Vector
    CPU vectors are mapped here

  • Modules
    Kernel modules inserted via insmod are placed here
    16MB (14MB, if HIGHMEM is enabled)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市瘦锹,隨后出現(xiàn)的幾起案子籍嘹,更是在濱河造成了極大的恐慌闪盔,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件辱士,死亡現(xiàn)場離奇詭異泪掀,居然都是意外死亡,警方通過查閱死者的電腦和手機颂碘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進店門异赫,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人凭涂,你說我怎么就攤上這事祝辣。” “怎么了切油?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵蝙斜,是天一觀的道長。 經(jīng)常有香客問我澎胡,道長孕荠,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任攻谁,我火速辦了婚禮稚伍,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘戚宦。我一直安慰自己个曙,他們只是感情好,可當我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布受楼。 她就那樣靜靜地躺著垦搬,像睡著了一般。 火紅的嫁衣襯著肌膚如雪艳汽。 梳的紋絲不亂的頭發(fā)上猴贰,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機與錄音河狐,去河邊找鬼米绕。 笑死,一個胖子當著我的面吹牛馋艺,可吹牛的內(nèi)容都是我干的栅干。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼捐祠,長吁一口氣:“原來是場噩夢啊……” “哼碱鳞!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起雏赦,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤劫笙,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后星岗,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體填大,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年俏橘,在試婚紗的時候發(fā)現(xiàn)自己被綠了允华。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡寥掐,死狀恐怖靴寂,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情召耘,我是刑警寧澤百炬,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站污它,受9級特大地震影響剖踊,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜衫贬,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一德澈、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧固惯,春花似錦梆造、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至供常,卻和暖如春摊聋,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背栈暇。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工麻裁, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人源祈。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓煎源,卻偏偏與公主長得像,于是被迫代替她去往敵國和親香缺。 傳聞我的和親對象是個殘疾皇子手销,可洞房花燭夜當晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容