跟我一起學RT Thread之重定位

2021-10-19 09:54:06 字數 535 閱讀 8761

5.重定位的本質

bss段:不需要重定位,因為程式裡根本不儲存bss段,使用前把bss段對應的空間清零即可

一開始,程式可能並不位於它的鏈結位址上,為什麼它可以執行重定位的操作?

位置無關碼:這段**扔在任何位置都可以執行,跟它所在的位置無關

怎麼寫出位置無關碼:

不要訪問全域性變數、靜態變數

不使用字串

這一切

重定位,最重要的就是拷貝,注意是拷貝,也就是複製乙份。

這一切

把**段、唯讀資料段、資料段,移動到它的鏈結位址處。

也就是複製

資料複製的三要素:源、目的、長度。

這3要素怎麼得到?

在gcc中,使用鏈結指令碼來描述。

在keil中,跟鏈結指令碼對應的是雜湊檔案,雜湊的意思就是"分散排列"。

在stm32f103這類資源緊缺的mcu微控制器晶元中:

但是,在資源豐富的mpu板子上:

基於這些特點,在mpu板子上

跟我一起學攝影

咦 好巧!我也是攝影愛好者。咱們一起學習吧。或許你也有這樣的體驗,並茂的文章更能讓人快速進入學習狀態,更何況是攝影,必須有圖。下面是我彙總的資料,必須深入淺出,拒絕一切晦澀難懂。學習課本 1.佳能官網 能系統學習攝影知識,從入門 初級 中級 高階 高階。每個頁面講解乙個知識點,結合實際的拍攝效果,深...

跟我一起學python 跟我一起學人工智慧(一)

跟我一起學人工智慧 一 文 小步 系列第一講正式開課啦,課程全都是可以實操的乾貨,到後面ai演算法 python 可以結合做出乙個簡單的人工智慧應用 因本人也對ai領域涉足不久,如文章有不妥之處還請各位大神與我多多交流,此系列文章也屬於我學習ai過程中的總結,我也會做到盡量寫出只要是高中畢業就能看懂...

跟我一起學OpenGL texture 紋理

前面學習了畫普通的圖形,但是顏色比較單一,有什麼好的方法讓圖形顏色更加豐富,更加真實呢?texture 中文譯為紋理 就可以扮演這一角色,本節則簡單說明texture的使用。執行下面的程式,便可出現乙個黑白相間的棋盤 1 include 2 include 3 include 4 using nam...