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

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

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

何時需要使用RTOS

麥克泰技術(shù) ? 來源:麥克泰技術(shù) ? 2025-01-21 14:36 ? 次閱讀

嵌入式開發(fā)人員在開始新項目時面臨越來越多的挑戰(zhàn)。在萬物互聯(lián)時代到來之前,嵌入式系統(tǒng)幾乎沒有或沒有安全對策。如今,開發(fā)人員必須專注于增強(qiáng)嵌入式安全性,以防止在線對手和側(cè)通道攻擊,即使它們有致力于延長電池壽命并配置響應(yīng)迅速且直觀的用戶界面。

多年來,對程序結(jié)構(gòu)的態(tài)度也發(fā)生了變化,從簡單的循環(huán)到使用狀態(tài)機(jī),對于復(fù)雜的系統(tǒng),需要使用嵌入式實(shí)時操作系統(tǒng)RTOS)。多核設(shè)備的廣泛使用也影響了開發(fā)人員構(gòu)建應(yīng)用程序的方式。

使用RTOS可以在嵌入式系統(tǒng)中帶來許多好處,包括更好的資源管理、可預(yù)測的應(yīng)用程序行為和改進(jìn)的響應(yīng)性。然而,采用RTOS需要重新思考程序結(jié)構(gòu),關(guān)于基于RTOS的開發(fā)產(chǎn)業(yè)界仍然存在一些誤解。資深媒體人Robert Huntley與Segger、Zephyr Project和北歐半導(dǎo)體(Nordic)的高管進(jìn)行了交談,了解到更多關(guān)于開發(fā)人員必須做出的關(guān)鍵決策,以及如何簡化從傳統(tǒng)程序結(jié)構(gòu)向RTOS的過渡。

現(xiàn)存結(jié)構(gòu)的作用

一個根本問題是,現(xiàn)存程序結(jié)構(gòu)是否以及在哪里仍然有效。嵌入式RTOS供應(yīng)商Segger(德國)的合作伙伴營銷經(jīng)理Dirk Akemann說:“這里仍然有時間片輪轉(zhuǎn)的位置,但它越來越不受歡迎,這個問題與小資源MCU仍然相關(guān)。”

Linux基金會嵌入式系統(tǒng)副總裁兼Linux托管開源Zephyr項目主任Kate Stewart也提出了類似的觀點(diǎn)?!斑@一切都取決于系統(tǒng)設(shè)計,”她說,“這是關(guān)于弄清楚嵌入式系統(tǒng)如何與硬件配合使用,以及您是否必須對任務(wù)和調(diào)度有精確性要求?!?/p>

Stewart說:“如果約束很簡單,那么你可以使用循環(huán)。然而,如果您的設(shè)計使用更復(fù)雜的環(huán)境,想要利用安全、安全和通信協(xié)議,并且需要時間限制,則RTOS是必要的?!?/p>

當(dāng)被問及大學(xué)是否在向?qū)W生開發(fā)人員講授使用RTOS的好處和如何使用時,Akemann表示有工作要做。他說:“一個計算機(jī)科學(xué)程序員,他們基本上知道如何編程,但這與嵌入式設(shè)計中的具體要求無關(guān),而且真正解決這一問題的課程仍然很少,從電氣工程專業(yè)的角度來看,它是相似的問題。”

RTOS具有可移植性

在實(shí)施基于RTOS的開發(fā)方法時,需要做出一些關(guān)鍵決定。Stewart說:“你必須了解的第一件事是在系統(tǒng)內(nèi)工作所需的資源限制。你完成任務(wù)的處理器配置是什么?你需要消耗多少電力?然后還有考慮,您是否有完成任務(wù)所需的通信等內(nèi)容要求,啟動過程中是否有時間考慮因素,以及您可能需要的采樣率是多少。另一個因素是設(shè)備是否必須與人機(jī)交互。”

Akemann指出了代碼可移植性越來越重要?!叭绻性谠S多不同平臺上運(yùn)行的RTOS,當(dāng)您選擇的MCU不再可用或出現(xiàn)供應(yīng)鏈問題時,您可以切換芯片。然而,請記住,如果你不使用RTOS,你的可移植性就會消失。”

首次使用RTOS的開發(fā)人員面臨著學(xué)習(xí)曲線,但Akemann表示,這不是不可逾越的。他說:“通常,客戶會實(shí)施相當(dāng)笨重的一個應(yīng)用程序,但根據(jù)我的經(jīng)驗(yàn),他們很快就習(xí)慣了。Segger通過為我們的embOS RTOS提供一份包含許多示例的手冊來提供幫助。最初,人們只編寫一個超級循環(huán)應(yīng)用程序,并在將任務(wù)分配給特定進(jìn)程之前將所有內(nèi)容都放在一個任務(wù)中。他們甚至可能認(rèn)為操作系統(tǒng)中存在一些魔力,操作系統(tǒng)將讓他們有機(jī)會比以前做得更多。情況并非如此,但通常情況下,客戶會很快習(xí)慣這種現(xiàn)實(shí)。”

糾正誤解

關(guān)于RTOS的一個常見誤解是,與類似的裸機(jī)方法相比,內(nèi)存要求要高得多。Stewart反駁說“Linux基金會的開源RTOS Zephyr項目只需要10kB就可以運(yùn)行一個Blinky應(yīng)用程序(閃爍LED而不是顯示“你好,世界”),然后您可以使用Zephyr Kconfig文件和設(shè)備樹來添加您需要的其余部分,一切都已經(jīng)集成到代碼庫中?!?/p>

Stewart還駁斥了RTOS是一個黑匣子的假設(shè),她觀察到:“當(dāng)事情出錯時,你需要有透明度和理解能力,這就是你通過開源RTOS獲得的。因此,當(dāng)事情不成功時,你可以把你的分析放到一個新的層級去做。”

Akemann談到了這樣的想法,即使用RTOS可以比沒有RTOS做更多事情,同時在這個過程中對硬件施加“小限制”。他說RTOS將“增加一點(diǎn)執(zhí)行時間,因?yàn)樾枰a執(zhí)行才能從一個任務(wù)切換到另一個任務(wù)”。

Akemann說,“另一個誤解是,RTOS是一個完整的操作系統(tǒng),就像Windows或Linux一樣。嵌入式RTOS并非如此,它通常只是調(diào)度器本身。它不附帶IP堆棧、USB堆?;蛑С制渌鈬O(shè)備的協(xié)議。當(dāng)然,一些供應(yīng)商提供這些堆棧,但我們經(jīng)常從客戶那里聽到的誤解是,他們想要一個完整的操作系統(tǒng)”包括來自單一來源的一切中間件。

硬件抽象

北歐半導(dǎo)體(挪威)的開發(fā)人員營銷經(jīng)理Ali Aljaani就開發(fā)人員如何接受RTOS概念提供了見解。“對于開發(fā)人員來說,這是一個相當(dāng)大的話題?!彼f,“如果你設(shè)身處地為來自嵌入式大學(xué)課程的開發(fā)人員著想,你控制硬件的方法就是寫寄存器。與將硬件設(shè)備參數(shù)放入頭文件中不同,使用RTOS,硬件是從源代碼中抽象出來的,就Zephyr而言,所有內(nèi)容都被抽象成設(shè)備樹,因此當(dāng)您選擇目標(biāo)時,它會選擇該硬件的設(shè)備樹?!?/p>

Aljaani說,Nordic認(rèn)識到需要對從裸機(jī)方法切換到RTOS的工程師進(jìn)行教育和指導(dǎo),并做出了相應(yīng)的響應(yīng)?!半S著硬件的不斷改進(jìn)、多個內(nèi)核和豐富的外圍設(shè)備,如果你想在裸機(jī)上做類似過程間通信的事情,那就是一場噩夢。我們決定對教育進(jìn)行大量投資,并成立了北歐開發(fā)者學(xué)院。”Aljaani說“例如,我們的NR Connect SDK基礎(chǔ)知識課程解釋了Zephyr的行為,Zephyr是我們使用的核心RTOS組件,以及Kconfig和設(shè)備樹的概念。這些需要都是動手操作的,所以我們從用一個很小的源代碼解釋想法開始,并繼續(xù)構(gòu)建?!?/p>

麥克泰技術(shù)是SEGGER在中國的代理商,具有超過20年嵌入式實(shí)時操作系統(tǒng)和工具的市場、服務(wù)和培訓(xùn)經(jīng)驗(yàn),已經(jīng)錄制許多RTOS視頻課程并撰寫博客文章,包括開源μC/OS,FreeRTOS和安全商業(yè)操作系統(tǒng)embOS,SafeRTOS和Flexible Safety RTOS,了解更多產(chǎn)品信息聯(lián)系麥克泰技術(shù)Info@bmrtech.com。

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

    關(guān)注

    5143

    文章

    19565

    瀏覽量

    315541
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11470

    瀏覽量

    212974
  • RTOS
    +關(guān)注

    關(guān)注

    24

    文章

    844

    瀏覽量

    120846

原文標(biāo)題:專家談何時放棄裸機(jī)開始使用RTOS

文章出處:【微信號:麥克泰技術(shù),微信公眾號:麥克泰技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

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

    詳解RTOS中的Hook函數(shù)

    Hook函數(shù)是RTOS中的一個關(guān)鍵特性,通過該函數(shù),用戶可以增強(qiáng)對任務(wù)管理的控制,定義系統(tǒng)行為。
    的頭像 發(fā)表于 03-24 16:14 ?306次閱讀

    RTOS中的本地存儲指針使用

    本地存儲指針是RTOS中的一個重要特性,增強(qiáng)了任務(wù)管理和數(shù)據(jù)處理能力。在RTOS上下文中,本地存儲是指存儲在本地的特定任務(wù)或?qū)ο蟮臄?shù)據(jù)。通常與任務(wù)本地存儲(Task Local Storage,TLS)有關(guān),其中數(shù)據(jù)存儲在任務(wù)控制塊(TCB)中,允許每個任務(wù)具有私有的、特
    的頭像 發(fā)表于 02-28 16:33 ?870次閱讀
    <b class='flag-5'>RTOS</b>中的本地存儲指針使用

    如果需要使用DMD進(jìn)行成像控制,需要用到哪些部件?

    我想問一下,如果需要使用DMD進(jìn)行成像控制,需要用到哪些部件?是只需要控制板和DMD芯片么?那么評估模塊是用來干什么的呢?
    發(fā)表于 02-28 06:40

    需要使用SPDIF接口輸出模擬信號輸入,DIT4192怎么實(shí)現(xiàn)這個設(shè)計?

    需要使用SPDIF接口輸出模擬信號輸入,想使用DIT4192這個芯片,但是不知道電路怎么設(shè)計,請各位大俠知道一下!還有就是DIT4192是否需要軟件支持!
    發(fā)表于 10-30 06:45

    要使TAS5754 正常工作,需要哪些步驟?

    剛接手一塊TAS5754芯片官方好像沒有詳細(xì)的使用手冊文檔 我在這里求教各位大神 要使TAS5754 正常工作 需要哪些步驟
    發(fā)表于 10-24 08:09

    深入解析Zephyr RTOS的技術(shù)細(xì)節(jié)

    Zephyr是一個針對資源受限設(shè)備優(yōu)化的小型、可縮放、多體系架構(gòu)實(shí)時操作系統(tǒng)(RTOS)。Zephyr由Linux基金會維護(hù)[1],是一個以構(gòu)建業(yè)界最佳的RTOS為目標(biāo)的開源合作項目。近年來
    的頭像 發(fā)表于 10-22 16:47 ?1920次閱讀
    深入解析Zephyr <b class='flag-5'>RTOS</b>的技術(shù)細(xì)節(jié)

    RTOS正在縮小與Linux的差距

    RTOS與Linux的物聯(lián)網(wǎng)設(shè)備操作系統(tǒng)之爭已經(jīng)持續(xù)了很多年。Linux以其強(qiáng)大的計算能力和豐富的軟件生態(tài),在需要復(fù)雜處理和軟件支持的物聯(lián)網(wǎng)設(shè)備上占據(jù)一席之地;RTOS憑借實(shí)時響應(yīng)和資源節(jié)約的特性
    的頭像 發(fā)表于 09-10 08:07 ?1024次閱讀
    <b class='flag-5'>RTOS</b>正在縮小與Linux的差距

    freertos和rtos區(qū)別是什么

    FreeRTOS 和 RTOS(實(shí)時操作系統(tǒng))是兩個不同的概念,但它們之間有緊密的聯(lián)系。FreeRTOS 是一個特定的開源實(shí)時操作系統(tǒng),而 RTOS 是實(shí)時操作系統(tǒng)的一般概念。 概念定義 RTOS
    的頭像 發(fā)表于 09-02 14:18 ?2748次閱讀

    RTOS與Linux有什么區(qū)別

    RTOS(Real-Time Operating System,實(shí)時操作系統(tǒng))與Linux是兩種在不同應(yīng)用場景下發(fā)揮重要作用的操作系統(tǒng),它們在設(shè)計理念、功能特性、應(yīng)用場景以及性能表現(xiàn)等方面存在顯著差異。以下是對RTOS與Linux區(qū)別的詳細(xì)分析。
    的頭像 發(fā)表于 08-20 16:05 ?6312次閱讀

    RTOS的特性和類型

    實(shí)時操作系統(tǒng)(RTOS)是一種可運(yùn)行實(shí)時計算應(yīng)用程序的軟件平臺,用于處理具有明確時間約束的事件和數(shù)據(jù)。與通用操作系統(tǒng)(GPOS)不同,RTOS必須在有限的硬件資源上調(diào)度應(yīng)用程序之間的處理和數(shù)據(jù)共享
    的頭像 發(fā)表于 08-20 11:29 ?1340次閱讀

    RTOS開發(fā)最佳實(shí)踐

    基于RTOS編寫應(yīng)用程序時,有一些要注意事項。在本節(jié)中,您將學(xué)習(xí)RTOS開發(fā)最佳實(shí)踐,例如POSIX合規(guī)性、安全性和功能安全認(rèn)證。
    的頭像 發(fā)表于 08-20 11:24 ?787次閱讀

    什么是實(shí)時操作系統(tǒng)(3)-在 RTOS 中可以期待什么?

    RTOS使用各種機(jī)制來管理任務(wù)、事件和內(nèi)存,以確保嵌入式系統(tǒng)滿足時間約束。在本節(jié)中,您將了解構(gòu)建嵌入式應(yīng)用程序時需要考慮的RTOS功能,例如確定性、空間和時間分離、調(diào)度、內(nèi)存管理和進(jìn)程間通信。
    的頭像 發(fā)表于 07-23 12:00 ?1401次閱讀
    什么是實(shí)時操作系統(tǒng)(3)-在 <b class='flag-5'>RTOS</b> 中可以期待什么?

    ESP8266_RTOS_SDK編譯錯誤的原因?

    需要使用 gpio 功能,所以想生成驅(qū)動程序庫。 我遵循了方法 1,Readme.md 存在于 driver_lib 中。但它會導(dǎo)致錯誤。 請幫忙
    發(fā)表于 07-12 08:04

    將ADF移植到RTOS上大概都需要哪些步驟?一般移植周期多久呢?

    1 ADF是免費(fèi)的開源軟件嗎? 2 將ADF移植到RTOS上大概都需要哪些步驟?一般移植周期多久呢?
    發(fā)表于 06-28 08:03

    什么情況下需要使用接地電阻柜

    什么情況下需要使用接地電阻柜?中性點(diǎn)電阻柜不接地時,中性點(diǎn)接地方式一般為不接地、直接接地和通過消弧線圈或小電阻接地。接地電阻測試需要將接地引下線接至大地,但大地電阻因季節(jié)變化而不同,需要用數(shù)字鉗形表
    的頭像 發(fā)表于 06-18 08:36 ?477次閱讀

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品