女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于瑞薩64位MPU RZ/G2L進行32位應用軟件開發

瑞薩MCU小百科 ? 來源:瑞薩MCU小百科 ? 2025-06-26 15:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文主要介紹基于瑞薩64位MPU RZ/G2L進行32位應用軟件開發的介紹,用于解決客戶32位軟件移植相關問題,供客戶參考。

很多客戶在32bit開發平臺遷移過程中,會遇到Linux應用程序移植問題,老平臺應用程序是基于32bit ARMv7a處理器開發的,新平臺通常是基于64bit的ARMv8a的MPU平臺,比如RZ/G2L系列。有些客戶誤認為,切換到64bit Linux平臺,必須重新開發64bit應用程序,其實并不是必須的。

首先,在硬件層面:

64bit ARMv8a MPU是能兼容32bit ARMv7a應用程序的,也就是ARMv8a體系支持32bit(AArch32)和64bit(AArch64)兩套指令集,這兩套指令集或者說是工作模式,會根據具體的32/64bit應用程序自動切換,這是指令集層面的兼容,不是模擬或者翻譯,不會導致性能損失。這種設計,很大一部分原因,是為了保護客戶在32bit老平臺上面的投資。

其次,在軟件層面:

64bit MPU的Linux kernel運行在特權模式,應用程序運行在非特權的用戶空間。通常廠商僅僅移植64bit Linux kernel,如果移植32bit Linux kernel,很多底層64bit相關特性會不支持,特別是大尋址空間,而且只能支持32bit應用程序。64bit Linux kernel則能發揮MPU的全部性能,并能運行32bit和64bit應用程序(基于上述硬件層面的設計)。

ARM官方提供的ARMv8a相關設計框圖如下:

cdead4c6-4fe7-11f0-b715-92fbcf53809c.png

ELx

ARMv8a引入的Exception Level,數字越大,特權越高,類似ARMv7a的異常模式,EL0最低,運行應用程序。

圖中的AArch64 OS/AArch32 OS,指具體64/32bit操作系統kernel,通常是Linux kernel。OS運行于更高EL等級的Hypervisor的管理之下,AArch64 OS可以支持32或者64bit應用程序App,AArch32 OS則只能支持32bit應用程序。上面的設計,跟x86 Linux的設計非常相似,比如,64bit x86處理器也原生支持32bit和64bit兩種應用程序,64bit Linux系統,也能直接運行32bit App,微軟64bit Windows系統也是一樣的,用戶從來不用關心EXE是之前32位Windows下的老應用,還是新開發出來的64位應用軟件,直接雙擊運行即可。個人認為,ARMv8a很大程度上參考借鑒了64bit x86處理器的設計思路,因為ARMv8a是在2012年左右發布的,而64bit x86處理器在2003年左右就上市了。

下面介紹一下64bit RZ/G2L相關內容。RZ/G2L官方發布的Yocto系統,里面已經提供了64bit Linux kernel,并且集成了64bit和32bit的各種庫,還有適配好的64bit和32bit的工具鏈,在Yocto系統編譯完成之后,以core-image-qt為例進行說明:

1提取工具鏈安裝包

MACHINE=smarc-rzg2l bitbake core-image-qt -c populate_sdk

2安裝工具鏈到本機

sudo sh poky-glibc-x86_64-core-image-qt-aarch64-smarc-rzg2l-toolchain-3.1.26.sh

通常安裝到默認的/opt目錄下,安裝之后,如果需要使用工具鏈編譯32bit源碼,需要首先運行一個工具鏈所在目錄的腳本:

ce072ad6-4fe7-11f0-b715-92fbcf53809c.png

即圖中的environment-開頭的腳本文件,對于32bit App開發,運行:

source /opt/poky/3.1.26/environment-setup-armv7vet2hf-neon-vfpv4-pokymllib32-linux-gnueabi

即可準備好32bit App開發環境,可以使用:echo $CC等命令查看,相關環境變量已經設置好:

ce17cd14-4fe7-11f0-b715-92fbcf53809c.png

另一個environment-開頭的腳本,是用來設置64位App開發環境的。

另一方面,如果客戶愿意往64bit應用移植,也是可以的,因為64bit模式下,可以使用更加強大的指令集,還有海量的尋址空間。但是面臨的問題,主要是需要重新編譯源代碼,FPU相關配置選項可能失效,ARMv7a處理器的FPU相關配置是可選的,ARMv8a處理器則標配FPU,還有一點,就是代碼里面指針的處理,32bit應用程序中,可能使用了不可移植的數據類型如unsigned int保存指針,這是可以的,但是不加修改,編譯成64位應用程序的話,會出現警告或錯誤,地址數值截斷了32位,肯定是不安全的。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19842

    瀏覽量

    234072
  • Linux
    +關注

    關注

    87

    文章

    11492

    瀏覽量

    213188
  • MPU
    MPU
    +關注

    關注

    0

    文章

    410

    瀏覽量

    49767
  • 應用程序
    +關注

    關注

    38

    文章

    3328

    瀏覽量

    58864
  • 應用軟件
    +關注

    關注

    0

    文章

    53

    瀏覽量

    9266

原文標題:64位MPU Linux環境下32位應用開發

文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于電子RZ/G2L的FET-G2LD-C核心板和OK-G2LD-C開發板評測

    基于電子RZ/G2L處理器開發的FET-G2LD-C核心板和OK-
    發表于 05-30 17:24 ?1325次閱讀
    基于<b class='flag-5'>瑞</b><b class='flag-5'>薩</b>電子<b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>的FET-<b class='flag-5'>G2</b>LD-C核心板和OK-<b class='flag-5'>G2</b>LD-C<b class='flag-5'>開發</b>板評測

    RZ/G2L串口SCI的使用(上)

    RZ/G2L的串口簡稱SCI,全稱Serial Communication Interface。
    的頭像 發表于 01-17 12:19 ?2063次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b>串口SCI的使用(上)

    【米爾RZ/G2L開發板-試用體驗】開箱

    感謝 感謝電子發燒友論壇、感謝米爾電子,把米爾RZ/G2L開發板試用話動的機會給了我。雖然周五就收到了
    發表于 05-14 19:41

    【米爾RZ/G2L開發板-試用體驗】開箱 + 開機

    感謝 感謝電子發燒友論壇、感謝米爾電子,把米爾RZ/G2L開發板試用話動的機會給了我。最近事情比較多,趕在這個空擋時間完成開箱報告。 開
    發表于 05-18 19:33

    【米爾RZ/G2L開發板-試用體驗】米爾-RZG2L - 64雙核MPU開發板開箱測評

    剛收到米爾RZ/G2L開發板打開包裝后看到的很大的一塊黑色PCB,做工精美的開發板,給人眼前
    發表于 05-22 21:53

    【米爾RZ/G2L開發板-試用體驗】米爾RZ/G2L開發板開箱視頻

    今天剛剛收到米爾RZ/G2L開發板,拆開包裹后給人的感覺是驚艷,板卡設計真的很棒,來看看視頻做個簡單了解吧。 更多板卡可以登
    發表于 05-22 21:58

    150套開發板免費送!還有5G手機拿?米爾RZ/G2L開發板創意秀

    為感謝廣大客戶一直以來的支持,推動嵌入式行業技術發展,鼓勵工程師勇于創新探索的精神,促進64MPU的生態,米爾電子聯合共同發起“米
    發表于 05-24 16:36

    【米爾RZ/G2L開發板-試用體驗】米爾RZ/G2L開發板使用SSH登錄

    收到的米爾RZ/G2L開發板上電測試一下SSH登錄方式和其它測試! SSH登錄 在使用之前,需要事先連接網絡,筆者這里使用的是以太
    發表于 06-11 21:47

    【米爾RZ/G2L開發板-試用體驗】認識一下米爾RZ/G2L開發板的核心板

    收到米爾RZ/G2L開發板后一直對米爾旗下開發板的做工感到非常精致,同時也有著很強大的功能,
    發表于 07-29 00:21

    電子推全新RZ/G2L MPU,可實現降低整體系統成本

    全球半導體解決方案供應商電子集團(TSE:6723)今日宣布,擴大其通用64微處理器(MPURZ
    的頭像 發表于 01-19 15:16 ?3232次閱讀

    米爾RZ/G2L開發板-初體驗

    介紹米爾RZ/G2L開發
    的頭像 發表于 05-15 09:10 ?1351次閱讀
    米爾<b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b><b class='flag-5'>開發</b>板-初體驗

    米爾RZ/G2L開發板 TF卡讀寫速度測試

    米爾RZ/G2L開發板TF卡讀寫測試
    的頭像 發表于 05-22 09:07 ?1814次閱讀
    米爾<b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b><b class='flag-5'>開發</b>板 TF卡讀寫速度測試

    米爾RZ/G2L開發板 安裝交叉編譯器

    米爾RZ/G2L開發板安裝交叉編譯器
    的頭像 發表于 05-26 22:05 ?2536次閱讀
    米爾<b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RZ</b>/<b class='flag-5'>G2L</b><b class='flag-5'>開發</b>板 安裝交叉編譯器

    米爾RZ/G2L開發米派雙核A55Remi Pi學習板兼容樹莓派擴展模塊

    RemiPi第一款MPU生態板卡兼容樹莓派擴展模塊RZ/
    發表于 01-29 17:05 ?7次下載

    電子RZ MPU家族精品RZ/N2L產品介紹

    生態合作伙伴RT-Thread推出了一款高性能、多功能以太網MPU開發板EtherKit,搭載
    的頭像 發表于 12-23 14:10 ?641次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b>電子<b class='flag-5'>RZ</b> <b class='flag-5'>MPU</b>家族精品<b class='flag-5'>RZ</b>/N<b class='flag-5'>2L</b>產品介紹