在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

通過vmRT-Thread和VirtIO-SCMI攻克硬件分割依賴難點 | 前沿觀點

RT-Thread官方賬號 ? 2025-06-24 19:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

硬件分割依賴難點是現(xiàn)代嵌入式系統(tǒng)物聯(lián)網(wǎng)設(shè)備開發(fā)中常見的問題。在多任務(wù)或多應(yīng)用的系統(tǒng)中,不同任務(wù)或應(yīng)用需要訪問不同的硬件資源,傳統(tǒng)的系統(tǒng)設(shè)計中,硬件資源的分配往往與軟件緊密耦合,導(dǎo)致軟件的可移植性和可擴展性受限。同時,硬件資源的共享訪問可能導(dǎo)致資源競爭和沖突,進(jìn)而影響系統(tǒng)的穩(wěn)定性和安全性。特別是在安全關(guān)鍵的應(yīng)用場景(如汽車電子工業(yè)控制等)中,這種問題尤為突出。


RT-Thread睿賽德通過vmRT-Thread和VirtIO-SCMI的方式,提供一種攻克硬件分割依賴難點的思路,希望對大家有所幫助,也歡迎大家在留言中或者掃碼小睿助手繼續(xù)交流。


嵌入式虛擬化環(huán)境中,外設(shè)硬分割(Partition/Passthrough)是充分發(fā)揮虛擬化硬件性能的重要手段。然而早期實現(xiàn)中,操作系統(tǒng)存在以下難題:

驅(qū)動需求繁復(fù):虛擬機操作系統(tǒng)本身需要移植大量驅(qū)動,此類驅(qū)動本身較復(fù)雜。

虛擬機行為不可控:存在多個虛擬機依賴同一個外設(shè)的情況,由于無法保證多個虛擬機并發(fā)訪問同一個物理資源為原子操作,行為不可控易導(dǎo)致不安全。

耦合嚴(yán)重且缺乏標(biāo)準(zhǔn):可移植性差,固件更新困難;多操作系統(tǒng)(OS)/虛擬化下資源控制混亂,無法實現(xiàn)高級功耗與性能策略協(xié)同。


為解決上述問題,本文將介紹一種基于SCMI協(xié)議實現(xiàn)的依賴資源共享的虛擬化框架(VirtIO-SCMI),其架構(gòu)如下圖所示:

bac9b5e8-50ef-11f0-986f-92fbcf53809c.png

在vmRT-Thread中,普通虛擬機作為VirtIO-SCMI前端,僅轉(zhuǎn)發(fā)硬件操作請求;驅(qū)動虛擬機作為后端,解析請求并校驗權(quán)限后,通過procfs/ioctl操作真實硬件,兩者均通過VirtIO通道通信

同時,VirtIO-SCMI目前存在部分限制與要求:前端虛擬機需要選擇合適的內(nèi)核版本,后端虛擬機需要提供操作真實的硬件的procfs或者ioctl接口,并確保并發(fā)訪問的原子性。

基于上述情況,vmRT-Thread可進(jìn)行如下具體操作:

示例1

將VirtIO-SCMI前端虛擬機中某個uart中的clk,reset,pinctrl替換為VirtIO-SCMI。

大致步驟如下:

  1. VirtIO-SCMI前端虛擬機需要修改設(shè)備樹:
  • 首先需要增加scmi的clk,reset,pinctrl的子協(xié)議設(shè)備樹節(jié)點

firmware {scmi {compatible ="arm,scmi-virtio";#address-cells = <0x01>;#size-cells = <0x00>;scmi_clk: protocol@14 {reg = <0x14>;#clock-cells = <1>;};scmi_reset: protocol@16 {reg = <0x16>;#reset-cells = <1>;};scmi_pinctrl: protocol@19 {reg = <0x19>;uartA_0_pins: uartA_pins@0 {groups ="X","Y";function ="1_uartA";bias-pull-up;drive-strength = <10>;};uartB_1_pins: uartB_pins@1 {groups ="M","N";function ="1_gpio_in";};};};};

  • 然后對應(yīng)串口的設(shè)備樹節(jié)點,需要引用scmi的clk,reset,pinctrl的子協(xié)議設(shè)備樹節(jié)點,其中clk,reset還需要通過參數(shù)來提供索引號。

uart@xxxxxx {clocks = <&scmi_clk U>;resets = <&scmi_reset V>;pinctrl-0 = <&uartA_0_pins>;pinctrl-1 = <&uartB_1_pins>;status ="okay";};

  1. VirtIO-SCMI后端虛擬機需要修改VirtIO-SCMI Backend Service的配置文件,配置文件主要包含硬件的描述信息,索引關(guān)系,以及權(quán)限等等。
  2. VirtIO-SCMI后端虛擬機啟動VirtIO-SCMI Backend Service,然后再啟動VirtIO-SCMI前端虛擬機,可以看到VirtIO-SCMI前端虛擬機的串口可以正常工作。

示例2

將VirtIO-SCMI前端虛擬機中某些CPU的頻率替換為VirtIO-SCMI。

大致步驟如下:

  1. VirtIO-SCMI前端虛擬機需要修改設(shè)備樹:
  • 首先需要增加scmi的perf的子協(xié)議設(shè)備樹節(jié)點

firmware {scmi {compatible ="arm,scmi-virtio";#address-cells = <0x01>;#size-cells = <0x00>;scmi_perf: protocol@13 {reg = <0x13>;phandle = <0x04>;};};};

  • 然后對應(yīng)CPU的設(shè)備樹節(jié)點中的頻率屬性需要引用scmiperf子協(xié)議設(shè)備樹節(jié)點,同時還需要通過參數(shù)來提供索引號。

cpus {cpu@0 {clocks = <&scmi_perf C>;};};

  1. VirtIO-SCMI后端虛擬機需要VirtIO-SCMI Backend Service的配置文件,配置文件主要包含硬件的描述信息,索引關(guān)系,以及權(quán)限等等。
  2. VirtIO-SCMI后端虛擬機啟動VirtIO-SCMI Backend Service,然后再啟動VirtIO-SCMI前端虛擬機。
  3. VirtIO-SCMI前端虛擬機首先配置CPU0頻率為固定頻率408MHZ,然后通過coremak測試跑分效果;然后再配置CPU0頻率為固定頻率2.4GHZ,然后通過coremak測試跑分效果;進(jìn)行對比,對比之后可以看到CPU固定頻率提升之后,跑分測試分?jǐn)?shù)從3011.594639提升到17049.329393,符合預(yù)期。
baea8a98-50ef-11f0-986f-92fbcf53809c.png

效果圖1

bb107316-50ef-11f0-986f-92fbcf53809c.png

效果圖2

該方法基于VirtIO-SCMI的嵌入式虛擬化解決方案,通過將硬件資源訪問虛擬化,使前端虛擬機只需通過VirtIO-SCMI協(xié)議轉(zhuǎn)發(fā)請求,而后端驅(qū)動虛擬機通過procfs/ioctl統(tǒng)一處理真實硬件操作,既實現(xiàn)了多虛擬機間的資源隔離與安全管控,又避免了重復(fù)移植clock/power等驅(qū)動,為車載、物聯(lián)網(wǎng)等需要嚴(yán)格外設(shè)隔離的場景提供新路徑。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    3673

    瀏覽量

    131143
  • 硬件
    +關(guān)注

    關(guān)注

    11

    文章

    3473

    瀏覽量

    67348
  • RT-Thread
    +關(guān)注

    關(guān)注

    32

    文章

    1387

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    凡億Allegro Skill布線功能-檢查跨分割

    能會導(dǎo)致設(shè)計中的缺陷和問題。為了克服這一挑戰(zhàn),可以利用凡億skill中的“檢查跨分割”命令。這個工具能夠幫助設(shè)計者快速而準(zhǔn)確地識別出高速信號參考平面的跨分割問題,從而避免了人工檢查時可能出現(xiàn)的疏漏。通過使用這種自動化
    的頭像 發(fā)表于 06-19 11:50 ?558次閱讀
    凡億Allegro Skill布線功能-檢查跨<b class='flag-5'>分割</b>

    通過vmRT-Thread和ROS2賦能機器人智能開發(fā)

    隨著機器人技術(shù)的快速迭代升級,協(xié)作機器人、復(fù)合移動機器人和人形機器人等新興應(yīng)用場景對實時控制與智能決策的深度融合提出了迫切需求。然而,當(dāng)前機器人操作系統(tǒng)架構(gòu)面臨以下關(guān)鍵挑戰(zhàn):算力瓶頸制約智能化發(fā)展:傳統(tǒng)控制系統(tǒng)算力不足,難以有效支撐語音識別、手勢交互、動態(tài)避障、力控優(yōu)化、地圖構(gòu)建、位姿計算等智能化需求。系統(tǒng)集成復(fù)雜度高:傳統(tǒng)方案采用多主機分布式架構(gòu),導(dǎo)致系統(tǒng)
    的頭像 發(fā)表于 06-09 09:23 ?752次閱讀
    <b class='flag-5'>通過</b><b class='flag-5'>vmRT-Thread</b>和ROS2賦能機器人智能開發(fā)

    Thread認(rèn)證

    Thread是一種基于IPv6標(biāo)準(zhǔn)的mesh網(wǎng)絡(luò)協(xié)議,沒有單點故障。Thread的目標(biāo)是通過可靠、安全、可擴展的方式來連接低功耗設(shè)備。和互聯(lián)網(wǎng)一樣,Thread運行在互聯(lián)網(wǎng)協(xié)議(IP)
    發(fā)表于 05-27 22:50

    RT-Thread睿賽德亮相深圳機器人產(chǎn)業(yè)大會,聚焦機器人軟件系統(tǒng)技術(shù)前沿 | 新聞速遞

    近日,由開源中國社區(qū)主辦的"未來智造:機器人軟件系統(tǒng)技術(shù)前沿"源創(chuàng)會在深圳會展中心成功舉辦。會議聚焦機器人軟件系統(tǒng)前沿技術(shù),吸引了150余位行業(yè)專家與技術(shù)開發(fā)者參與交流
    的頭像 發(fā)表于 05-20 18:15 ?393次閱讀
    RT-<b class='flag-5'>Thread</b>睿賽德亮相深圳機器人產(chǎn)業(yè)大會,聚焦機器人軟件系統(tǒng)技術(shù)<b class='flag-5'>前沿</b> | 新聞速遞

    通過vmRT-Thread和MCP賦能具身智能開發(fā)

    ,而運動控制仍依賴分離式MCU,通信鏈路長、時延大。通信方式低效:傳統(tǒng)使用串口、網(wǎng)絡(luò)Socket或CAN等方式連接Linux與MCU,不僅通信開銷大,且存在不穩(wěn)定
    的頭像 發(fā)表于 05-09 12:05 ?400次閱讀
    <b class='flag-5'>通過</b><b class='flag-5'>vmRT-Thread</b>和MCP賦能具身智能開發(fā)

    2024年Thread的重要亮點

    Thread Group近期通過本篇博文來總結(jié)2024年取得的驚人進(jìn)步和成就。目前,Thread會員基礎(chǔ)已近 200 家公司,從去年1月份參加CES 2024,到7月份慶祝成立 10 周年,再到
    的頭像 發(fā)表于 01-14 09:30 ?627次閱讀

    eBPF技術(shù)實踐之virtio-net網(wǎng)卡隊列可觀測

    在系統(tǒng)領(lǐng)域中,最具挑戰(zhàn)性的問題通常是組件之間的邊界定位。其中,virtio-net前后端的定界尤為困難。當(dāng)網(wǎng)絡(luò)報文從內(nèi)核發(fā)送到virtio-net后端,或者從virtio-net后端發(fā)送到內(nèi)核
    的頭像 發(fā)表于 11-14 11:18 ?650次閱讀
    eBPF技術(shù)實踐之<b class='flag-5'>virtio</b>-net網(wǎng)卡隊列可觀測

    畫面分割器怎么調(diào)試

    畫面分割器,通常指的是視頻畫面分割器,它是一種可以將一個視頻信號分割成多個小畫面的設(shè)備。這種設(shè)備廣泛應(yīng)用于監(jiān)控系統(tǒng)、視頻會議、多畫面顯示等場景。調(diào)試畫面分割器是一個技術(shù)性很強的工作,需
    的頭像 發(fā)表于 10-17 09:32 ?1014次閱讀

    畫面分割器怎么連接

    器的基本原理 畫面分割器的工作原理是通過數(shù)字信號處理技術(shù),將多個視頻信號源(如攝像頭、DVR等)的圖像數(shù)據(jù)進(jìn)行處理,然后在一個監(jiān)視器上以分割的形式顯示出來。這些分割可以是1畫面、4畫面
    的頭像 發(fā)表于 10-17 09:29 ?947次閱讀

    畫面分割器和分屏器有什么區(qū)別

    : 技術(shù)實現(xiàn): 畫面分割器: 畫面分割器是一種硬件設(shè)備,它通過硬件電路實現(xiàn)對多個視頻信號的合并。畫面分割器通常包含一個或多個視頻輸入端口,用
    的頭像 發(fā)表于 10-17 09:25 ?1743次閱讀

    圖像分割和語義分割的區(qū)別與聯(lián)系

    、亮度等。圖像分割的目的是將圖像中感興趣的部分與背景分離,以便進(jìn)行進(jìn)一步的處理和分析。 1.1 圖像分割的類型 圖像分割可以分為以下幾類: 基于閾值的分割
    的頭像 發(fā)表于 07-17 09:55 ?1883次閱讀

    圖像分割與語義分割中的CNN模型綜述

    圖像分割與語義分割是計算機視覺領(lǐng)域的重要任務(wù),旨在將圖像劃分為多個具有特定語義含義的區(qū)域或?qū)ο蟆>矸e神經(jīng)網(wǎng)絡(luò)(CNN)作為深度學(xué)習(xí)的一種核心模型,在圖像分割與語義分割中發(fā)揮著至關(guān)重要的
    的頭像 發(fā)表于 07-09 11:51 ?1921次閱讀

    機器人視覺技術(shù)中常見的圖像分割方法

    、場景理解、導(dǎo)航和交互等任務(wù)至關(guān)重要。以下是一些常見的圖像分割方法: 閾值分割法(Thresholding) 閾值分割法是一種基于像素強度的簡單圖像分割方法。
    的頭像 發(fā)表于 07-09 09:31 ?1401次閱讀

    機器人視覺技術(shù)中圖像分割方法有哪些

    和分析。本文將詳細(xì)介紹圖像分割的各種方法,包括傳統(tǒng)的圖像處理方法和基于深度學(xué)習(xí)的方法。 閾值分割法 閾值分割法是一種基于像素的圖像分割方法,它通過
    的頭像 發(fā)表于 07-04 11:34 ?1695次閱讀

    lvgl移植到RT-Thread Nano后進(jìn)入硬件錯誤中斷的原因?

    使用的是RT-Thread Nano的最新版,第一次移植,不知道是不是因為這個lvgl只能移植到標(biāo)準(zhǔn)版里? 嘗試過給lvgl的線程分配更大的棧,但是依舊會卡死在硬件錯誤中斷里。但只要把用戶的ui
    發(fā)表于 07-04 07:40
    主站蜘蛛池模板: 日韩美女影院 | 国产综合免费视频 | 美女视频黄的免费视频网页 | 高清欧美一级在线观看 | 亚洲欧洲一区二区三区在线观看 | 5278欧美一区 | 天天射天天爽 | 精品女同 | 一区二区三区免费视频播放器 | 欧美性精品 | 天天综合欧美 | 黄网站免费大全 | 亚洲性一区 | 国产精品久久久久久久久ktv | 亚洲精品美女在线观看 | 美女午夜| 五月天毛片 | 天堂中文资源在线地址 | 免费看黄在线 | 日本黄色小视频 | 天天狠天天天天透在线 | 美女视频大全美女视频黄 | 天天色成人| 在线欧美国产 | 久久婷婷国产精品香蕉 | 国产中文99视频在线观看 | 欧美日韩a级a | 天天槽任我槽免费 | 日本高清色视频www 日本高清色视频在线观看免费 | 日日噜噜噜夜夜爽爽狠狠图片 | 色婷婷丁香 | 超级狂色而且免费又超好看 | 国产在线一卡二卡 | 在线观看三级网站 | 亚洲一区二区三区在线视频 | 一区二区免费看 | 国产日日操 | 人人爱人人插 | 狠狠色狠狠干 | 亚洲电影二区 | 俄罗斯美女在线观看一区 |