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

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

從進(jìn)程的角度看內(nèi)存

麥辣雞腿堡 ? 來源:TrustZone ? 作者:TrustZone ? 2023-10-30 18:02 ? 次閱讀

在windows下的可執(zhí)行文件的格式為.exe,而Linux的下的是ELF。這是一種文件格式,就是告訴你文件是怎么存儲(chǔ)的。

整個(gè)ELF的圖看看

圖片

這些內(nèi)容和內(nèi)核空間定義也差不多。

代碼段(.text):程序源代碼編譯后的機(jī)器指令被存放在這個(gè)代碼段里。

數(shù)據(jù)段(.data):存放已初始化的全局變量和已初始化的局部靜態(tài)變量。

bss段(.bss):用來存放未初始化的全局變量以及未初始化的局部靜態(tài)變量。

寫一個(gè)程序,其實(shí)是依賴很多的其他的程序,因此自己寫的程序需要編譯鏈接后才能使用。

時(shí)起到輔助作用,暫時(shí)先不用關(guān)注它們。程序在編譯鏈接時(shí)會(huì)盡量把相同權(quán)限屬性的段分配在同一個(gè)空間里,例如,把可讀可執(zhí)行的段放在一起,包括代碼段、init段等;把可讀可寫的段放在一起,包括.data段和.bss段等。ELF把這些屬性相似并且鏈接在一起的段叫作分段(Segment),進(jìn)程在裝載時(shí)是按照這些分段來映射可執(zhí)行文件的。

描述這些分段的結(jié)構(gòu)叫作程序頭(Program Header),它描述了ELF文件是如何映射到進(jìn)程地址空間的,這是我們比較關(guān)心的。

可以使用objdump或者readelf工具來查看ELF文件包含哪些段。

我們可以通過“readelf -l”命令來查看這些程序頭。

在看的時(shí)候主要關(guān)注LOAD類型的分段,其他的都是在LOAD的時(shí)候起到輔助作用。

這是都是靜態(tài)的。

在如果你想去看看靜態(tài)的,可以通過proc文件系統(tǒng)來看看Linux內(nèi)核的運(yùn)行情況。每個(gè)進(jìn)程運(yùn)行之后,在/proc/pid/maps節(jié)點(diǎn)會(huì)列出當(dāng)前進(jìn)程的地址映射情況。

圖片

第1行中顯示了地址0x10000~0x870000這段進(jìn)程地址空間,它的屬性是只讀并且可執(zhí)行的,由此我們知道它是代碼段,也就是之前看到的代碼段的程序頭。

第2行中顯示了地址0x96000~0x98000,它的屬性是可讀可寫的進(jìn)程地址空間,也就是我們之前看到的數(shù)據(jù)段的程序頭。

第 3 行中顯示了地址0x98000~0xbb000,這段進(jìn)程地址空間叫作堆空間(Heap),也就是通常使用malloc分配的內(nèi)存,大小是140KB。test進(jìn)程主要使用malloc分配100KB的內(nèi)存,這里看到Linux內(nèi)核會(huì)分配比100KB稍微大一點(diǎn)的內(nèi)存空間。

第4行顯示test進(jìn)程的棧(stack)空間。

第5行是Sigpage的進(jìn)程地址空間,Sigpage是ARM體系結(jié)構(gòu)中特有的頁面。

第6行是ARM中高端映射的異常向量(vectors)。

這里說的進(jìn)程地址空間,在 Linux 內(nèi)核中使用一個(gè)叫作 VMA的術(shù)語來描述,它是vm_area_struct數(shù)據(jù)結(jié)構(gòu)的簡(jiǎn)稱,在虛擬內(nèi)存管理部分會(huì)詳細(xì)介紹它。另外,/proc/pid/smaps節(jié)點(diǎn)會(huì)提供更多的地址映射的細(xì)節(jié),以代碼段的VMA和堆的VMA為例。

另外,/proc/pid/smaps節(jié)點(diǎn)會(huì)提供更多的地址映射的細(xì)節(jié),以代碼段的VMA和堆的VMA為例。

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1410

    瀏覽量

    41145
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11469

    瀏覽量

    212900
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    8

    文章

    3111

    瀏覽量

    75025
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4891

    瀏覽量

    70306
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Linux 內(nèi)核的角度談線程棧和進(jìn)程

    虛擬地址通過頁表(Page Table)映射到物理內(nèi)存,頁表由操作系統(tǒng)維護(hù),并被處理器的內(nèi)存管理單元(MMU)硬件引用。 每個(gè)進(jìn)程都擁有一套屬于它自己的頁表,因此對(duì)于每個(gè)進(jìn)程而言都好像
    的頭像 發(fā)表于 09-25 15:23 ?2689次閱讀
    <b class='flag-5'>從</b> Linux 內(nèi)核的<b class='flag-5'>角度</b>談線程棧和<b class='flag-5'>進(jìn)程</b>棧

    如何EMI角度PCB layout 法規(guī)

    ` 如何EMI角度PCB layout 法規(guī)如何從EMI角度PCB Layout 法則有以下幾個(gè)重點(diǎn)Point 1: 先了解導(dǎo)線或傳輸線的幅射或天線效應(yīng) 對(duì)應(yīng)國際法規(guī)EMI幅射量
    發(fā)表于 02-19 18:36

    Linux上對(duì)進(jìn)程進(jìn)行內(nèi)存分析和內(nèi)存泄漏定位

    。(棧)5、采用mmap方式映射到虛擬地址空間中的內(nèi)存段這是我的機(jī)器上,redis 進(jìn)程的情況,第一行:r-xp可知其權(quán)限為只讀、可執(zhí)行,該段內(nèi)存地址對(duì)應(yīng)于執(zhí)行文件的代碼段,程序的代
    發(fā)表于 07-09 08:15

    架構(gòu)的角度如何寫好代碼 + 我的思考

    架構(gòu)漫談(八):架構(gòu)的角度如何寫好代碼 + 我的思考
    發(fā)表于 06-18 06:16

    如何安全的角度自動(dòng)駕駛

    安全的角度自動(dòng)駕駛
    發(fā)表于 01-25 06:42

    步進(jìn)電機(jī)驅(qū)動(dòng)IC的角度步進(jìn)電機(jī)

    步進(jìn)電機(jī)驅(qū)動(dòng)IC的角度步進(jìn)電機(jī),歸納相關(guān)知識(shí)點(diǎn)。一、單極性與雙極性電機(jī): 單極性電機(jī),由單極性IC驅(qū)動(dòng)。其一端接Vcc,另一端由IC控制連接或斷開。 而雙極性電機(jī),由雙極性IC驅(qū)動(dòng)。雙端都由IC控制。二、單極性電機(jī)的內(nèi)部結(jié)構(gòu)
    發(fā)表于 08-31 06:31

    進(jìn)程間通信之共享內(nèi)存

    8.5.1 共享內(nèi)存概述 可以說,共享內(nèi)存是一種最為高效的進(jìn)程間通信方式。因?yàn)?b class='flag-5'>進(jìn)程可以直接讀寫內(nèi)存,不需要任何數(shù)據(jù)的復(fù)制。為了在多個(gè)
    發(fā)表于 10-18 16:08 ?1次下載
    <b class='flag-5'>進(jìn)程</b>間通信之共享<b class='flag-5'>內(nèi)存</b>

    純粹軟件技術(shù)的角度Windows CE

    純粹軟件技術(shù)的角度Windows CE,則可以說Windows CE就是嵌入式的Windows,雖然Windows CE不是微軟唯一的一款嵌入式操作系統(tǒng)產(chǎn)品,但無疑是最有代表性的一款。在純粹技術(shù)的方面,Windows CE和
    的頭像 發(fā)表于 09-30 09:43 ?2743次閱讀
    <b class='flag-5'>從</b>純粹軟件技術(shù)的<b class='flag-5'>角度</b><b class='flag-5'>看</b>Windows CE

    編譯原理的角度C語言如何轉(zhuǎn)換成匯編語言的?

    編譯原理的角度C語言是如何轉(zhuǎn)換成匯編語言的?
    的頭像 發(fā)表于 02-25 15:52 ?2969次閱讀
    <b class='flag-5'>從</b>編譯原理的<b class='flag-5'>角度</b><b class='flag-5'>看</b>C語言如何轉(zhuǎn)換成匯編語言的?

    進(jìn)程虛擬內(nèi)存布局以及進(jìn)程的虛擬內(nèi)存分配釋放流程,涉及的代碼

    我們計(jì)劃通過一系列文章來介紹虛擬內(nèi)存分配/釋放,缺頁處理,內(nèi)存壓縮/回收,內(nèi)存分配器等知識(shí),梳理虛擬內(nèi)存的管理。本章節(jié)結(jié)合代碼介紹進(jìn)程虛擬
    的頭像 發(fā)表于 06-28 09:38 ?4599次閱讀

    鴻蒙內(nèi)核源碼分析:進(jìn)程是內(nèi)核的資源管理單元

    系統(tǒng)的角度進(jìn)程是資源管理單元。進(jìn)程可以使用或等待CPU、使用內(nèi)存空間等系統(tǒng)資源,并獨(dú)立于其
    發(fā)表于 11-24 17:52 ?23次下載
    鴻蒙內(nèi)核源碼分析:<b class='flag-5'>進(jìn)程</b>是內(nèi)核的資源管理單元

    SMT焊接角度BGA封裝的優(yōu)勢(shì)

    smt焊接的角度,BGA芯片的貼裝公差為0.3mm,比以往的QFP芯片的貼裝精度要求0.08mm要低得多。一般來講在小拇指大小甚至更小的空間上做SMT貼片打樣貼裝,那么更大的貼裝公差就意味著更高的可靠性和貼裝精度。
    的頭像 發(fā)表于 07-11 10:47 ?767次閱讀

    摩托車怎么就干不過小電驢了?線路板的角度差別

    摩托車怎么就干不過小電驢了?線路板的角度差別
    的頭像 發(fā)表于 10-30 16:06 ?747次閱讀

    軟件角度看看內(nèi)存

    關(guān)于內(nèi)存軟件的角度去查看,其實(shí)作為一個(gè)軟件程序員,大多數(shù)對(duì)這個(gè)維度的接觸還是蠻多的。linux中有個(gè)free命令,其就是查看系統(tǒng)內(nèi)存的情況。 free命令的選項(xiàng)也比較簡(jiǎn)單,常用的參
    的頭像 發(fā)表于 10-30 17:41 ?999次閱讀
    <b class='flag-5'>從</b>軟件<b class='flag-5'>角度</b>看看<b class='flag-5'>內(nèi)存</b>

    線程、進(jìn)程、多線程、多進(jìn)程和多任務(wù)之間有何關(guān)系?

    進(jìn)程是程序執(zhí)行時(shí)的一個(gè)實(shí)例,即它是程序已經(jīng)執(zhí)行到課中程度的數(shù)據(jù)結(jié)構(gòu)的匯集。內(nèi)核的觀點(diǎn)進(jìn)程的目的就是擔(dān)當(dāng)分配系統(tǒng)資源(CPU時(shí)間、內(nèi)存
    的頭像 發(fā)表于 01-11 13:39 ?569次閱讀
    線程、<b class='flag-5'>進(jìn)程</b>、多線程、多<b class='flag-5'>進(jìn)程</b>和多任務(wù)之間有何關(guān)系?
    主站蜘蛛池模板: 国产三级精品在线 | 国模私拍在线观看 | 亚洲线精品一区二区三区 | 狠狠燥| 婷婷综合五月 | 一级视频免费观看 | 香港三级在线视频 | 二级黄的全免费视频 | 黄.www| 国产精品三区四区 | 午夜大片免费完整在线看 | 理论免费 | 天天做天天爱天天大综合 | 性视频一区 | 一区国产传媒国产精品 | 天天干天天舔天天操 | 亚洲综合亚洲综合网成人 | 456成人网| 日本黄色视屏 | 午夜在线观看网站 | 四虎影院在线看 | 操你啦网站 | tom影院亚洲国产 | xxx黄色片| 免费人成黄页在线观看日本 | 国产亚洲精品激情都市 | 国产精品黄网站免费观看 | 男人不识本网站上遍色站也枉然 | 欧美视频一区在线观看 | 黄色免费在线视频 | 国产人免费人成免费视频 | 99久久99久久久99精品齐 | 青草青视频在线观看 | 欧洲亚洲国产精华液 | 天天色天天操天天 | 在线午夜 | 天天干夜干| 一级毛片一级毛片一级毛片aa | 久久国产乱子伦精品免费一 | 午夜视频在线免费观看 | 九九热在线视频观看 |