精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

淺談RAM 執行應用程序

454398 ? 來源:瑞薩電子 ? 作者:瑞薩電子 ? 2021-06-20 18:22 ? 次閱讀

許多應用程序需要從 RAM 中執行代碼,例如出于安全原因或例如在引導加載程序用于閃存自編程的情況下。通常這樣的應用程序必須分為兩部分:

將從閃存執行的主要部分。這部分代表主要應用程序,例如引導加載程序

主應用程序中的圖像將在運行時復制到 RAM

pYYBAGDPFmuARZ76AABH62H65tw604.png

軟件概念

考慮到上述概念,開發需要考慮幾個問題:

如何創建將存儲在閃存中但在運行時從 RAM 執行的應用程序?

如何調試在不同項目中構建的應用程序?

公共資源

兩個應用程序的分離需要如何處理公共資源,例如 RAM。

RAM
– 堆棧和堆定義(兩個應用程序一個堆棧和一個堆;每個應用程序單獨的堆棧)
– SADDR 和數據 RAM 應根據應用程序要求進行分區

選項字節
——選項字節將在應用程序之一中定義。此選項字節中的所有配置(例如看門狗)應對兩個應用程序都有效,因為它不能在運行時更改

中斷
——通過使用自編程庫,可以對 RAM 中的所有中斷使用通用中斷服務程序

下圖說明了兩個應用程序的內存映射。這里堆棧用作兩個應用程序的公共資源。

poYBAGDPFn2AIj0iAABpbpWXdgo872.png

兩個應用程序的內存映射(ROM、RAM)

創建一個從 RAM 執行的應用程序

本章介紹如何設置一個應用程序,該應用程序將通過主應用程序閃存中的映像加載并從 RAM 執行。請注意,以下描述的配置基于兩個應用程序的一個公共堆棧。

內存映射

由于 RAM 中的應用程序是獨立應用程序,因此必須相應地定義編譯器/匯編器使用的所有標準段,如 RCODE、XCODE、FAR_I、FAR_CONST 等。與普通應用程序相比的不同之處在于,該應用程序將從 RAM 而非閃存執行。這意味著這些段最初位于圖像(閃存)中,稍后將逐段復制到 RAM 并從那里執行。請注意,如果應用程序有多個片段,則無法直接復制整個圖像。

pYYBAGDPFoaAFMBgAACvyWHzDVU581.png

這樣做的原因是圖像中的段位置可能與 RAM 中的位置不同,因此必須逐段復制所有段。由于應用程序將從 RAM 中執行,因此必須通知鏈接器該段將放置在閃存中,但從 RAM 中執行。這可以通過將在下一章中介紹的鏈接器功能“分散加載”來完成。

編輯:hfy

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

    關注

    8

    文章

    1367

    瀏覽量

    114541
收藏 人收藏

    評論

    相關推薦

    使用uboot引導應用程序

    uboot默認是支持執行應用程序的,就像引導內核一樣,我們也可以自己寫一個應用程序,讓uboot啟動時引導。
    發表于 11-16 14:00 ?979次閱讀

    如何配置ARM KEIL uVision5以在TLE9879 EVALKIT上的RAM中加載和執行應用程序的指導或步驟?

    KEIL uVision5 以在 TLE9879 EVALKIT上的 RAM 中加載和執行應用程序的指導或步驟?
    發表于 01-31 06:46

    淺談Web應用程序的壓力測試

    淺談Web應用程序的壓力測試摘要:壓力測試是Web應用程序測試必不可少的一項工作。現以一個用ASP.NET開發的信息管理系統為例,詳細論述如何使用ACT對W eb應用程序進行壓力測試。
    發表于 10-10 15:23

    怎么優化應用程序的閃存和RAM使用

    我試圖優化我的應用程序的閃存和RAM使用。我使用的是433W收音機。我注意到BRCMYPATCHAMAMBUF位于RAM部分。它嚴格地需要嗎?我看到聲明是const,但它仍然在我的應用程序
    發表于 09-20 16:36

    為什么要將flash操作代碼拷貝到ram執行

    升級。比較特別的是,需要將flash操作代碼拷貝到ram執行,這是為什么?bootloader程序所在flash空間設置為被保護狀態,不會誤擦除,而且運行到哪個函數自然會把函數壓棧到RAM
    發表于 07-16 06:10

    MCU應用程序架構的相關資料推薦

    ,對mcu ram 有一定的要求。詳細介紹順序執行法這種方式較為簡單,實時性,并行性要求不高的情況下是一種不錯的選擇,程序設計簡單,思路較為清晰,但是當應用程序較為復雜的情況下,如果.
    發表于 11-03 09:22

    i.MXRT1176是否可以在執行應用程序時寫入NOR閃存?

    的 MCU,所以我不清楚我是否可以在執行應用程序時寫入它。 我可以簡單地寫入閃存還是在寫入時必須從 RAM執行程序
    發表于 03-24 08:08

    在MAXQ8913微控制器中從RAM執行應用程序

    在MAXQ8913微控制器中從RAM執行應用程序 MAXQ8913及其它MAXQ®微控制器采用的Harvard存儲器映射架構為用戶提供了
    發表于 01-11 17:56 ?1150次閱讀
    在MAXQ8913微控制器中從<b class='flag-5'>RAM</b><b class='flag-5'>執行</b><b class='flag-5'>應用程序</b>

    ARM應用程序構架_順序執行模板

    ARM嵌入式應用程序架構設計實例精講--ARM應用程序構架01順序執行模板
    發表于 07-08 11:08 ?6次下載

    ARM應用程序構架01順序執行模板

    電子專業單片機相關知識學習教材資料——ARM應用程序構架01順序執行模板
    發表于 09-13 17:23 ?0次下載

    真的可以在執行Linux應用程序的同時播放DVD質量的媒體嗎?

    真的可以在執行Linux應用程序的同時播放DVD質量的媒體嗎?
    發表于 05-13 11:39 ?2次下載
    真的可以在<b class='flag-5'>執行</b>Linux<b class='flag-5'>應用程序</b>的同時播放DVD質量的媒體嗎?

    MCU應用程序架構整理(轉)

    辦法,對mcu ram 有一定的要求。詳細介紹順序執行法這種方式較為簡單,實時性,并行性要求不高的情況下是一種不錯的選擇,程序設計簡單,思路較為清晰,但是當應用程序較為復雜的情況下,如
    發表于 10-28 11:06 ?17次下載
    MCU<b class='flag-5'>應用程序</b>架構整理(轉)

    MCU應用程序架構

    大致應用程序的架構有三種: 1. 簡單的前后臺順序執行程序,這類寫法是大多數人使用的方法,不需用思考程序的具體架構,直接通過執行順序編寫應用程序
    發表于 10-29 10:36 ?11次下載
    MCU<b class='flag-5'>應用程序</b>架構

    設計和執行用于監控電力的傳感器網絡應用程序

    電子發燒友網站提供《設計和執行用于監控電力的傳感器網絡應用程序.zip》資料免費下載
    發表于 07-11 16:26 ?0次下載
    設計和<b class='flag-5'>執行</b>用于監控電力的傳感器網絡<b class='flag-5'>應用程序</b>

    怎么使用uboot引導應用程序

    uboot默認是支持執行應用程序的,就像引導內核一樣,我們也可以自己寫一個應用程序,讓uboot啟動時引導。
    的頭像 發表于 02-17 16:01 ?1468次閱讀
    怎么使用uboot引導<b class='flag-5'>應用程序</b>?