[問題] 想請問 binary 在記憶體的執行過程

看板ASM (組合語言)作者 (非常念舊)時間3年前 (2021/01/06 23:11), 編輯推噓4(4010)
留言14則, 5人參與, 3年前最新討論串1/2 (看更多)
我是看了openAMP 的 github project 的 lib,裡面有關於master bootup retmote的lib。master bootup remote 是用 remote給的 *.elf檔。 只是我好奇,能不能只用自己製作的*.bin 來給 remote bootup 其實,我最主要想問的是,*.bin在記憶體中的分布,也是.text, .data, .bss這些嗎? 如果透由 *.elf 當然能透過 loader parsing elf 格式找到各 section 並把他 載入至記憶體特定位置。那 *.bin沒有格式(也許還是vendor自己加了有的沒的資訊), loader該怎麼知道要如何將它載到記憶體 並從哪個entry point 執行? 我只知道 loader 需要知道 *.bin有哪些是 vendor的資訊,那entry point呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.115.82.67 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1609945893.A.BF5.html

01/07 19:28, 3年前 , 1F
可能可能 你需要把計概/作業系統/編譯器 的解釋看一看
01/07 19:28, 1F

01/07 19:28, 3年前 , 2F
bin / hex 都是機械碼
01/07 19:28, 2F

01/07 23:19, 3年前 , 3F
從那裡開始執行 取決於處理器 通常是將開機裝置(flash)
01/07 23:19, 3F

01/07 23:19, 3年前 , 4F
指定位置的程式碼 搬到處理器內部ram(scratchpad)開始執
01/07 23:19, 4F

01/07 23:19, 3年前 , 5F
01/07 23:19, 5F

01/07 23:19, 3年前 , 6F
也有直接在flash執行的處理器
01/07 23:19, 6F

01/13 08:40, 3年前 , 7F
程式設計師自我修練那本去看看
01/13 08:40, 7F

01/29 17:38, 3年前 , 8F
印象中MCU燒錄是MCU裡面還有個bootload,HOST根據特定
01/29 17:38, 8F

01/29 17:39, 3年前 , 9F
封包傳給IC,bootload就會自己搬去flash了,怎麼搬就看
01/29 17:39, 9F

01/29 17:40, 3年前 , 10F
flash的規格了,不太知道你的環境...
01/29 17:40, 10F

01/29 17:42, 3年前 , 11F
你如果講的細一點可能大家比較能幫助你
01/29 17:42, 11F

02/08 20:56, 3年前 , 12F
更低階的MCU連BOOTLOAD都沒有,程式開始就是由0x00h開始
02/08 20:56, 12F

02/08 20:56, 3年前 , 13F
跑到Flash(或EPROM)最後
02/08 20:56, 13F

02/08 20:57, 3年前 , 14F
燒錄完全由HOST這邊控制
02/08 20:57, 14F
文章代碼(AID): #1VzTCblr (ASM)
文章代碼(AID): #1VzTCblr (ASM)