91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

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

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

3天內不再提示

空間隔離操作系統μC/OS-MPU中段的定位

麥克泰技術 ? 來源:麥克泰技術 ? 2023-01-04 14:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

介紹

本應用筆記描述了使用 GCC 環境時,數據段的定位實現。

μC/OS-MPU介紹

μC/OS-MPU基于 μC/OS-II,增加了內存保護擴展,這種保護稱為“空間保護”,隔離 μC/OS-II 內核與任務?;讦藽/OS-MPU,為任務提供了一個受保護的運行環境,其他任務不會干擾或損壞任務的內存,避免非法訪問。

· 空間保護

空間保護旨在保護應用程序的內存不被其他任務破壞。下圖展示了一個包含三個進程的系統,以說明空間保護的實現。

b3713fc2-8bf4-11ed-bfe3-dac502259ad0.jpg

通常,μC/OS-II 內部變量和線程(任務)放到進程#0。進程#1包含 2個線程。進程#2包含 3個線程,線程可以訪問共享內存區域(shared memory)。進程#3是2個線程的集合,并且有權訪問共享內存區域。

段的組織

在基于μC/OS-MPU的應用中,進程中的所有全局數據位于同一個段。下圖展示了單個段的數據組織:

b3844a0e-8bf4-11ed-bfe3-dac502259ad0.png

在啟動階段,運行環境的啟動函數將初始化數據(initialized data)從 ROM 復制到 RAM ,并清零未初始化數據(uninitialized data)。事實上,每個進程都有自己的段,在項目中,該組織結構可能存在多次。

· 未初始化數據

使用宏SP_MEM()放置變量,基于GCC鏈接器命令文件,將變量放置到段”.sec.bss”中。

示例:全局變量 Task1Stk[] 和 SyncSem 放置到段”sec01”中未初始化數據域。

b38efdaa-8bf4-11ed-bfe3-dac502259ad0.png

將已有代碼集成到μC/OS-MPU系統時,可以基于文件放置數據,僅需調整鏈接命令文件。

示例:基于提供的GCC鏈接命令文件模板,紅色部分的行表示將文件 myfile.c中未初始化數據放置到段”secA0”中的未初始化數據域。

b3a48cf6-8bf4-11ed-bfe3-dac502259ad0.png

在啟動階段,我們需要清零段中未初始化數據域。為了簡化實現,系統提供了一些有用的宏SP_INIT_)。

示例:在調用函數 MyInitData()時,段” sec01”和”secA0”中未初始化數據域清零。注意:函數”_zero_init”可能是啟動環境外部提供的:

b3ab8056-8bf4-11ed-bfe3-dac502259ad0.png

· 初始化數據

使用SP_MEM()將變量放置在段”.sec.data”中。

示例:全局變量”MyNumber”和”MyValue”放到段” sec01”中的初始化數據域。此外,數據的值被放置在ROM中的數據區域。

b3b3cc20-8bf4-11ed-bfe3-dac502259ad0.png

將已有代碼集成到μC/OS-MPU系統時,也可以基于文件放置數據,僅需調整鏈接器命令文件。

示例:根據提供的GCC鏈接命令文件模板,紅色顯示的行表示將文件 myfile.c中的初始化數據放置到段” secA0”中的初始化數據域。

b3c0e694-8bf4-11ed-bfe3-dac502259ad0.png

在啟動階段,我們需要復制段中的初始化數據域。為了簡化實現,系統提供一些有用的宏SP_INIT_)。

示例:調用函數 MyInitData()時,段” sec01”和” secA0”中的初始化數據域,將從 ROM 復制到 RAM。

注意:函數"_data_init"可能不是啟動環境提供的:

b3c998ac-8bf4-11ed-bfe3-dac502259ad0.png

審核編輯 :李倩

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

    關注

    37

    文章

    7152

    瀏覽量

    125591
  • GCC
    GCC
    +關注

    關注

    0

    文章

    111

    瀏覽量

    25406
  • 線程
    +關注

    關注

    0

    文章

    508

    瀏覽量

    20213

原文標題:空間隔離操作系統μC/OS-MPU中段的定位

文章出處:【微信號:麥克泰技術,微信公眾號:麥克泰技術】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    投入超十億!四周完成芯片適配!理想宣布開源自研汽車操作系統

    電子發燒友網報道(文/梁浩斌)在最近的2025中關村論壇年會上,理想汽車董事長兼CEO李想宣布,將自研汽車操作系統“理想星環OS”全面開源。過去車企自研操作系統其實也有一些案例,不過確實沒有開源
    的頭像 發表于 03-30 01:29 ?2108次閱讀
    投入超十億!四周完成芯片適配!理想宣布開源自研汽車<b class='flag-5'>操作系統</b>

    理想汽車智駕操作系統解讀

    [首發于智駕最前沿微信公眾號]在智能網聯與生成式AI技術深度融合的浪潮下,汽車操作系統已經從最初的簡單資源管理平臺,演化為承載感知決策、執行控制與安全防護的智能化中樞。理想汽車自主研發的星環OS
    的頭像 發表于 05-13 10:54 ?319次閱讀
    理想汽車智駕<b class='flag-5'>操作系統</b>解讀

    光庭信息推出下一代整車操作系統A2OS

    ,正式推出面向中央計算架構、支持人機協同開發的下一代整車操作系統A2OS(AI × Automotive OS),賦能下一代域控軟件解決方案的快速研發,顯著提升整車智能化水平。 A2OS
    的頭像 發表于 04-29 17:37 ?569次閱讀
    光庭信息推出下一代整車<b class='flag-5'>操作系統</b>A2<b class='flag-5'>OS</b>

    中國汽車報:睿賽德攜“程翧整車基礎軟件OS”亮相操作系統年會

    3月29日,開源操作系統年度技術會議(OS2ATC2025)在京召開。2013年至今,OS2ATC已成功舉辦12屆。聚焦本次技術盛會,圍繞“智能系統”主題,本次會議匯聚了國內一線
    的頭像 發表于 04-01 21:00 ?463次閱讀
    中國汽車報:睿賽德攜“程翧整車基礎軟件<b class='flag-5'>OS</b>”亮相<b class='flag-5'>操作系統</b>年會

    理想汽車開源操作系統的特點及優勢

    前天,李想官宣了理想自研汽車操作系統「理想星環OS」開源。今天,在2025中國電動汽車百人會論壇上,李想進一步分享了「理想星環OS」的特點及優勢。
    的頭像 發表于 04-01 16:12 ?433次閱讀

    如何在APM32F407開發板上應用uC/OS-III實時操作系統

    最近我開始學習 uC/OS-III 實時操作系統,并著手將其移植到APM32F407 開發板上。在這個過程中,我遇到了許多有趣的挑戰和發現,也感受到了操作系統帶來的強大功能和靈活性。
    的頭像 發表于 04-01 09:39 ?776次閱讀
    如何在APM32F407開發板上應用uC/<b class='flag-5'>OS</b>-III實時<b class='flag-5'>操作系統</b>

    SEGGER發布下一代安全實時操作系統embOS-Ultra-MPU

    2025年3月,SEGGER發布滿足周期定時分辨率要求的下一代安全實時操作系統embOS-Ultra-MPU,該系統基于成熟的embOS-Classic-MPU和embOS-Ultra
    的頭像 發表于 03-31 14:56 ?499次閱讀

    國產銀河麒麟操作系統V10和星光麒麟V1.0操作系統如何選擇?

    國產銀河麒麟操作系統和星光麒麟操作系統都是由中國電子旗下科技企業麒麟軟件有限公司(簡稱“麒麟軟件”)開發的國產自主可控的操作系統。麒麟軟件介紹:麒麟軟件以安全可信操作系統技術為核心,面
    的頭像 發表于 01-24 09:14 ?2254次閱讀
    國產銀河麒麟<b class='flag-5'>操作系統</b>V10和星光麒麟V1.0<b class='flag-5'>操作系統</b>如何選擇?

    普華車用操作系統與黑芝麻智能武當C1200家族芯片完成適配

    普華靈智安全車控操作系統(AUTOSAR CP)和普華靈思智能駕駛操作系統(AUTOSAR AP)已與黑芝麻智能武當C1200家族芯片完成適配。
    的頭像 發表于 01-06 14:16 ?698次閱讀
    普華車用<b class='flag-5'>操作系統</b>與黑芝麻智能武當<b class='flag-5'>C</b>1200家族芯片完成適配

    linux是實時系統還是分時操作系統

    大家平時玩單片機基本上對于μC/OS、FreeRTOS、ThreadX這些操作系統非常熟悉了,他們都屬于實時操作系統(RTOS),在工業領域比較廣泛;然而對于linux這樣的基于時間片
    的頭像 發表于 11-11 11:43 ?1184次閱讀

    新手學操作系統(第一周)

    1.介紹計算機、OS與應用程序之間的關系,計算機的硬件是底層的基礎,操作系統在其之上管理硬件資源,應用程序則通過操作系統來實現其功能;2.推薦參考學習書籍;3.實踐環境的介紹
    的頭像 發表于 10-08 11:33 ?489次閱讀
    新手學<b class='flag-5'>操作系統</b>(第一周)

    龍蜥社區引領開源操作系統新紀元:Anolis OS 23發布,裝機量破800萬

    在8月30日盛大舉行的第二屆龍蜥操作系統大會上,領先的開源操作系統根社區——龍蜥社區宣布了一項振奮人心的里程碑成就:其旗艦產品Anolis OS及其衍生版本在全球范圍內的裝機量已成功突破800萬套
    的頭像 發表于 08-30 15:09 ?847次閱讀

    為了學習內核開發,大佬手搓了一個輕量級操作系統YiYiYa OS

    管理器 接口層(C標準庫) 接口層為操作系統內核向外核提供的基本功能。通過libc和libmusl可選,實現基本的標準庫,方便開發者直接移植代碼或者適配應用app。 內核層 內核層則為核心領域業務。每
    發表于 08-30 14:57

    為了學習內核開發,大佬手搓了一個輕量級操作系統YiYiYa OS

    、gpio、i2c、spi驅動等 系統移植教程 作者本人及團隊自制的開源掌機FunKey所采用的操作系統就是基于Linux內核和YiYiYa OS,YiYiYa
    發表于 08-27 10:08

    操作系統的內存布局介紹

    32位操作系統的內存布局很經典,很多書籍都是以32位系統為例子去講解的。32位的系統可訪問的地址空間為4GB,用戶空間為1GB ~ 3GB,
    的頭像 發表于 08-07 15:47 ?899次閱讀
    <b class='flag-5'>操作系統</b>的內存布局介紹
    主站蜘蛛池模板: 在线观看视频免费入口 | 日韩免费一级片 | 日本二区免费一片黄2019 | 狂野欧美性猛交xxxx免费 | 久久草在线精品 | 亚洲狠狠色丁香婷婷综合 | 好硬好湿好爽再深一点h | aa亚洲| 亚洲综合久久久久久888 | 2014天堂| 欧美系列在线播放 | 美女毛片在线观看 | 操的好爽| tube69xxxxhd日本 | videos另类重口tv | 中文在线最新版天堂 | 天天操夜夜摸 | 女同久久| 亚洲狠狠网站色噜噜 | 亚欧有色亚欧乱色视频 | 91青草视频 | 在线免费看片a | 免看一级a毛片一片成人不卡 | 性做久久久久久久久 | 黄 色 录像成 人播放免费99网 | 狠狠色丁香婷婷综合激情 | 天天怕夜夜怕狠狠怕 | 欧洲无线区一二区 | 2021韩国理论片ok电影天堂 | 天天亚洲 | 日韩操 | 成人伊人亚洲人综合网站222 | 草逼网址 | 四虎4hu影库永久地址 | 欧美人与动欧交视频 | 一品毛片| 51久久 | 亚洲欧洲一区二区三区在线观看 | 亚洲第一黄色网 | 在线免费观看一区二区三区 | 色www视频永久免费软件 |