直播推薦
企業(yè)動(dòng)態(tài)
- 紛享銷客發(fā)布首個(gè)企業(yè)級(jí)智能CRM平臺(tái)ShareAI
- 揭秘西企業(yè)數(shù)字化+低碳化轉(zhuǎn)型“工具箱”:西門(mén)子X(jué)celerator
- 企業(yè)AI賦能數(shù)智制造,用友U9 cloud世界級(jí)云ERP煥新升級(jí)
- 《“智“領(lǐng)石化,“質(zhì)“造未來(lái)——威圖石化行業(yè)數(shù)智化實(shí)踐白皮書(shū)》隆重發(fā)布
- 攜手共贏!德國(guó)Agfa搭載瑞典IPCO鋼帶,實(shí)現(xiàn)印刷設(shè)備振動(dòng)銳減6倍,提升印刷速度與精度
- 創(chuàng)四方集團(tuán)榮獲“知名商標(biāo)品牌閃亮”證書(shū),助力品牌戰(zhàn)略升級(jí)
- 皇冠CAD(CrownCAD)2025 R3版本來(lái)了,率先開(kāi)啟C“Ai”D時(shí)代!
- 電費(fèi)砍半!中國(guó)制冷展:海爾發(fā)布AI建筑最新成果
推薦展會(huì)
*****************************************************
1.ELF格式文件的結(jié)構(gòu)
1.1映像文件組成部分
**一個(gè)映像文件有一個(gè)或多個(gè)域組成
**每個(gè)域包含一個(gè)或多個(gè)輸ARM基礎(chǔ)知識(shí)出段
**每個(gè)輸出段包含一個(gè)或多個(gè)輸入段
**各輸入段中包含了目標(biāo)文件中的代碼和數(shù)據(jù)
輸入段中包含了四類內(nèi)容:代碼、已經(jīng)初始化的數(shù)據(jù)、未經(jīng)初始化的存儲(chǔ)區(qū)域、內(nèi)容初始化成0的存儲(chǔ)區(qū)域。每個(gè)輸入段ARM基礎(chǔ)知識(shí)有相應(yīng)的屬性,可以為只讀的(RO)、可讀寫(xiě)的(RW)以及初始化成0的(ZI)。ARM連接器根據(jù)個(gè)輸入段的屬性將這些輸入段分組,再組成不同的輸出段及域。一個(gè)輸出段中包含了一系列的具有相同的RO、RW和ZI屬性的輸入段。輸出段的屬性與其中包含的輸入段的屬性相同。在一個(gè)輸出段的內(nèi)部,各輸入段是按照一定的規(guī)則排序的,這將在1.3節(jié)油詳細(xì)地介紹。一個(gè)域中包含1-3個(gè)輸出段,其中個(gè)輸出段的屬性各不相同。各輸出段的排列順序是由其屬性決定的。其中RO屬性的輸出段排在zui前面,其次是RW屬性的輸出段,zui后是ZI屬性的輸出段。一個(gè)域通常映射到一個(gè)物理存儲(chǔ)器ARM基礎(chǔ)知識(shí)上,如ROM或RAM。
1.2ARM映像文件各組成部分的地址ARM基礎(chǔ)知識(shí)影射
ARM映像文件各組成部分在存儲(chǔ)系統(tǒng)中的地址有兩種:一種是映像文件位于存儲(chǔ)器中時(shí)(也就是該映像文件運(yùn)行之前)的地址,稱之為加載地址;一種是映像文件運(yùn)行時(shí)的地址,稱之為運(yùn)行時(shí)地址。之所以有這兩種地址,是因?yàn)橛诚裎募谶\(yùn)行時(shí),其中的有些域是可以移動(dòng)的新的存儲(chǔ)區(qū)域。比如,已經(jīng)初始化的RW屬性的數(shù)據(jù)所在的段ARM基礎(chǔ)知識(shí)運(yùn)行之前可能保存系統(tǒng)的ROM中,在運(yùn)行時(shí),他被移動(dòng)至RAM中。通常,一個(gè)映像文件包含若干個(gè)域,各域又包含若干的輸出段。ARM連接器需要知道如下的信息,已決定如何生成相應(yīng)的映像文件。
**分組信息 決定如何將個(gè)輸入段組織成相應(yīng)的輸出段和域。
**定位信息 決定個(gè)域在存儲(chǔ)空間地址中的ARM基礎(chǔ)知識(shí)起始地址。
根據(jù)映像文件中地址映射的復(fù)雜程度,有兩種方法來(lái)告訴arm連接器這些相關(guān)信息。對(duì)于映像文件中地址映射關(guān)系比較簡(jiǎn)單的情況,可以使用命令行選項(xiàng);對(duì)于映像文件中地址映射關(guān)系比較復(fù)雜的情況,可以使用一個(gè)配置文件。
2.arm映像文件的ARM基礎(chǔ)知識(shí)入口點(diǎn)
2.1arm映像文件的入口點(diǎn)有兩種類型:一種是映像文件運(yùn)行時(shí)的入口點(diǎn),稱為初始入口點(diǎn)(initial entry point),另一種是普通入口點(diǎn)(entry point).初始入口點(diǎn)是映像文件運(yùn)行時(shí)的入口點(diǎn),每個(gè)映像文件只有一個(gè)*的初始入口點(diǎn),它保存在ELF頭文件中。如果映像文件是被操作系統(tǒng)加載的,操作系統(tǒng)是通過(guò)跳轉(zhuǎn)到該初始入口點(diǎn)處來(lái)加載該映像文件。普通的入口點(diǎn)是在匯編中用ENTRY偽操作定義。他通常用于標(biāo)志該段代碼是通過(guò)異常中斷處理程序進(jìn)入的。這樣連接器刪除無(wú)用的段時(shí)不會(huì)將該段代碼刪除。一個(gè)映像文件中可以定義多個(gè)普通入口點(diǎn)。應(yīng)該ARM基礎(chǔ)知識(shí)注意的是,初始入口點(diǎn)可以使普通入口點(diǎn),但也可以不是普通入ARM基礎(chǔ)知識(shí)口點(diǎn)。
2.2定義初始入口點(diǎn)
初始入口點(diǎn)必須滿足下面ARM基礎(chǔ)知識(shí)兩個(gè)條件:
**初始入口點(diǎn)必須位于映像文件的運(yùn)行時(shí)域內(nèi)。
**飽含初始入口點(diǎn)的運(yùn)行時(shí)域不能被覆蓋,他的加載地址和運(yùn)行地址必須是相同的??梢允褂眠B接選項(xiàng)-entry address來(lái)映像文件的初始入口點(diǎn)。這時(shí),address了映像文件的初始入口點(diǎn)的地址值。
對(duì)于地址0x0處為rom的嵌入式應(yīng)用系統(tǒng),可以使用-entry 0x0來(lái)映像文件的初始入口點(diǎn)。這樣當(dāng)系統(tǒng)復(fù)位后,自動(dòng)跳轉(zhuǎn)到該入口開(kāi)始執(zhí)行。如果映像文件是被一個(gè)加載器加載的,該映像文件該映像文件必須包含一個(gè)初始化入口點(diǎn)。這種映像文件通常還包含了其他普通入口點(diǎn),這些普通入口點(diǎn)一般為異常中斷處理程序ARM基礎(chǔ)知識(shí)的入口地址。當(dāng)用戶沒(méi)有-entry address時(shí),連接器根據(jù)下面的規(guī)則決定映像文件的初始ARM基礎(chǔ)知識(shí)入口點(diǎn)。
**如果輸入的目標(biāo)文件中只有一個(gè)普通入口點(diǎn),該普通入口點(diǎn)被連接器當(dāng)成映像文件的初始入口點(diǎn)。
**如果輸入的目標(biāo)文件中沒(méi)有一個(gè)普通入口點(diǎn),或者其中的普通入口點(diǎn)多于一個(gè),則連接器生成的映像文件中不包含初始入口點(diǎn),并產(chǎn)生警告信息。
2.3普通入口點(diǎn)的用法
普通入口點(diǎn)是在匯編中用ARM基礎(chǔ)知識(shí)ENTRY
偽操作定義。在嵌入式應(yīng)用中,各異常中斷的處理程序入口使用普通入口點(diǎn)標(biāo)示。這樣連接器在刪除無(wú)用段時(shí)不會(huì)將該段代碼刪除。一個(gè)映像文件中可以定義多個(gè)普通入口點(diǎn)。沒(méi)有連接選項(xiàng)-entry addres時(shí),如果輸入的目標(biāo)文件中只有一個(gè)普通入口點(diǎn),該入口點(diǎn)被連接器當(dāng)成映像文件的初始入口點(diǎn)。
免責(zé)聲明
- 凡本網(wǎng)注明"來(lái)源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請(qǐng)必須注明智能制造網(wǎng),http://towegas.com。違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
- 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔(dān)責(zé)任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責(zé)任。
- 本網(wǎng)轉(zhuǎn)載并注明自其它來(lái)源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品來(lái)源,并自負(fù)版權(quán)等法律責(zé)任。
- 如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
2025第十一屆中國(guó)國(guó)際機(jī)電產(chǎn)品交易會(huì) 暨先進(jìn)制造業(yè)博覽會(huì)
展會(huì)城市:合肥市展會(huì)時(shí)間:2025-09-20