哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

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

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

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

如何選擇嵌入式操作系統(tǒng)

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Colin Walls ? 2022-06-30 10:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

幾乎所有現(xiàn)代嵌入式系統(tǒng)都是使用某種操作系統(tǒng) (OS) 構建的。這意味著該操作系統(tǒng)的選擇往往發(fā)生在設計過程的早期。許多開發(fā)人員發(fā)現(xiàn)這個選擇過程具有挑戰(zhàn)性。您如何為您的特定應用選擇操作系統(tǒng)?

你需要一個操作系統(tǒng)嗎?

對于許多嵌入式應用程序,顯然需要一個操作系統(tǒng)。如果應用程序很復雜并且在高端處理器上運行,那么幾乎可以肯定操作系統(tǒng)是有益的。另一方面,在低端芯片上運行的簡單軟件根本不需要操作系統(tǒng)。還有另外兩種可能性:低端 CPU 上的復雜軟件和復雜處理器上的簡單軟件。在這兩種情況下,操作系統(tǒng)似乎都不會提供太多優(yōu)勢,而且實際上可能會妨礙效率。但是,圍繞多任務模型構建代碼是使其可擴展的好方法,從而在將來某個時候遷移到更強大的設備和/或需要為應用程序增加更多復雜性時最大限度地減少工作量。

pYYBAGK9DV-AH84fAAFIbNY1snA602.png

你在哪里可以獲得操作系統(tǒng)?

大致而言,有三種方法可以獲得嵌入式操作系統(tǒng):

自己寫一個

利用“免費”或開源產(chǎn)品

從商業(yè)供應商處購買/許可產(chǎn)品

選項(1)很少是一個好的選擇,因為您的特定需求不太可能如此專業(yè)以至于現(xiàn)有產(chǎn)品無法滿足它們。“重新發(fā)明輪子”從來不是一個明智的決定。唯一可能的例外可能是將編寫操作系統(tǒng)作為一項學術練習,以充分了解此類產(chǎn)品的工作原理。

選擇標準

操作系統(tǒng)的選擇取決于您可能會問自己或他人的一系列問題。很容易想象這完全是關于操作系統(tǒng)的技術問題,事實上,這些問題主導了這個過程。但是,需要考慮商業(yè)因素——比如成本——并且不能忽視個人經(jīng)驗等因素。

技術因素

操作系統(tǒng)的技術方面在選擇過程中占主導地位。在考慮其他參數(shù)之前,這些問題需要完全清楚。

您的應用程序是實時的嗎?

實時應用程序是響應時間至關重要的應用程序。它可能不快,但需要在可預測的(確定的)時間內(nèi)響應外部事件;它必須足夠快(或慢)。操作系統(tǒng)選擇的含義是實時操作系統(tǒng) (RTOS) 最有可能是正確的選擇,因為它是專門為滿足應用程序的要求而設計的。Linux 本質上不是實時的,但實時擴展可能使其成為一個可行的選擇。

內(nèi)存大小有限制嗎?

過去,嵌入式系統(tǒng)的內(nèi)存容量通常非常小——可能只有幾 K?,F(xiàn)在,有一個更加慷慨的規(guī)定,盡管帶有微控制器的片上內(nèi)存可能仍然非常有限。在設計簽署后向系統(tǒng)添加更多內(nèi)存并非易事。更重量級的操作系統(tǒng),如 Linux,非常需要內(nèi)存,因此空間限制是一個真正的挑戰(zhàn)。大多數(shù) RTOS 產(chǎn)品更輕量級并且可能具有可擴展性,這意味著內(nèi)存僅用于實際需要的功能。

CPU 功率有限制嗎?

CPU 的功率是衡量它在給定時間內(nèi)可以完成多少工作(可以執(zhí)行多少條指令)的指標。大多數(shù)嵌入式設計都會有一個有足夠功率的 CPU,但可能沒有多余的。任何一種操作系統(tǒng)都是開銷;它的執(zhí)行使用 CPU 能力,但不直接影響應用程序功能。將此開銷保持在最低限度通常很重要。操作系統(tǒng)的效率差異很大,但 RTOS 產(chǎn)品傾向于最節(jié)儉地使用 CPU。

設備功耗是個問題嗎?

嵌入式系統(tǒng)的功耗成為優(yōu)先事項越來越普遍。這通常用于保持電池壽命,但也可能出于環(huán)境考慮。從歷史上看,功耗被認為是純粹的硬件問題?,F(xiàn)在人們認識到,軟件可以極大地促進能源使用的優(yōu)化。

簡單來說,代碼越小,所需的內(nèi)存就越少,從而節(jié)省電力。同樣,代碼的效率對必要的 CPU 能力有影響。RTOS 可能是緊湊和高效的。

許多系統(tǒng)包括電源管理功能。這可能只是低功耗模式(如睡眠和掛起)的可用性,但更高級的電源管理正在變得普遍。這可能包括外圍設備的選擇性斷電以及 CPU 電壓和時鐘頻率的控制。Linux 和許多 RTOS 產(chǎn)品都支持電源管理。

您的系統(tǒng)是否有晦澀或自定義的外圍設備?

嵌入式應用程序中一些最具挑戰(zhàn)性的代碼是外圍設備的接口。使用操作系統(tǒng)時,這通常封裝在驅動程序中。大多數(shù) RTOS 都提供了適用于許多標準設備的驅動程序。Linux 的功能更多,包括對許多相當晦澀的硬件的支持。

如果您有自定義外圍設備,顯然將無法獲得支持,因此需要自定義驅動程序。RTOS 供應商通常會在這方面提供良好的支持。Linux 驅動程序開發(fā)專業(yè)知識相當廣泛。

你有內(nèi)存管理單元(MMU)嗎?

大多數(shù)高端嵌入式 CPU 都有一個 MMU,至少作為一個選項。這允許重新映射和/或保護存儲區(qū)域。MMU 對于部署 Linux 是必不可少的;如果沒有可用的 MMU,則不能選擇 Linux。RTOS 通常不需要MMU,但如果可用,可以通過促進“輕量級進程模型”(也稱為“線程保護模式”)來使用 MMU。

應用程序安全是一個問題嗎?

一些嵌入式應用程序具有安全意識——必須保護代碼免受外部干擾。這可以看作是保護每個任務免受其他任務的影響。Linux 等采用的進程模型使用 MMU,是提高安全性的一種非常好的方法。如果 RTOS 可以使用 MMU,如上所述,這提供了幾乎相同的安全性和更少的開銷。

您的應用程序是否需要安全認證

在許多行業(yè)——如航空航天、醫(yī)療、汽車和工業(yè)——都有安全認證計劃。獲得認證的過程既復雜又昂貴。通常需要整個應用程序的所有源代碼——包括操作系統(tǒng)。因此,擁有操作系統(tǒng)源代碼是必不可少的;源代碼并不總是可用的。在某種程度上,要認證的代碼大小會影響過程的成本,因此操作系統(tǒng)越小越好。

通常不可能只對操作系統(tǒng)進行認證——對整個應用程序進行評估。但是,一些 RTOS 供應商可以提供“預認證包”,其中提供了有關操作系統(tǒng)所需的大部分初始文檔。當然,選擇具有在類似應用領域使用和認證的“跟蹤記錄”的操作系統(tǒng)也是明智之舉。

商業(yè)因素

盡管工程師喜歡嵌入式軟件開發(fā)的技術挑戰(zhàn),但此類項目也受到商業(yè)考慮。一切都取決于金錢。實施一個操作系統(tǒng)需要花錢,但是它是獲得的:

內(nèi)部開發(fā)顯然要花錢

商業(yè)產(chǎn)品有價格

開源不是“免費的”;有實施成本和持續(xù)維護

商業(yè)操作系統(tǒng)產(chǎn)品提供各種商業(yè)模式。例如,每個發(fā)貨單位的起始付款和持續(xù)特許權使用費可能較低,或者預付費用可能較高且沒有持續(xù)特許權使用費。可接受的型號取決于售價和預計的出貨量。

其他注意事項

操作系統(tǒng)選擇過程中可能容易被忽視的一個方面是借鑒過去的經(jīng)驗。您和您的團隊之前可能使用過一個或多個操作系統(tǒng),這可能會產(chǎn)生重大影響。

例如,一個操作系統(tǒng)的 API 的詳細知識需要一些時間來獲得,因此能夠重用這些知識是一個很大的好處。如果 API 是專有的,這可能是指向特定產(chǎn)品的強指針。如果 API 是標準,如 POSIX,您仍然可以選擇。當然,使用混亂且不靈活的 API 的糟糕體驗可能會產(chǎn)生相反的效果!

與特定供應商合作的經(jīng)驗是另一個因素。他們的技術支持好嗎?文檔是否符合要求?源代碼是否可用并得到很好的評論?

多核系統(tǒng)和操作系統(tǒng)選擇

使用多核設計實現(xiàn)嵌入式系統(tǒng)正變得越來越普遍。從軟件的角度來看,有兩種多核系統(tǒng):

對稱多處理 (SMP),其中所有內(nèi)核都是相同的,并且單個操作系統(tǒng)在所有內(nèi)核上運行。

非對稱多處理 (AMP),其中內(nèi)核不一定相同,并且每個內(nèi)核都運行自己的操作系統(tǒng)。

對于 SMP 系統(tǒng),操作系統(tǒng)的選擇是按照本文迄今為止描述的方式進行的,另外一個因素是操作系統(tǒng)必須支持 SMP 功能。Linux 以 SMP 形式提供,許多 RTOS 產(chǎn)品也提供它作為選項。

對于 AMP 系統(tǒng),需要根據(jù)其特定要求使用上述方法為每個內(nèi)核選擇操作系統(tǒng)。

結論

總的來說,可以看出對于選擇嵌入式操作系統(tǒng)的問題沒有真正簡單的答案。有許多相互關聯(lián)的因素。不僅要關注技術方面的考慮,還要考慮商業(yè)問題和過去的經(jīng)驗,這一點很重要。

對于臺式計算機,有大約四種操作系統(tǒng)可供選擇。在嵌入式世界中,至少有幾十個。這是為什么?簡而言之,臺式計算機都大同小異,但每個嵌入式系統(tǒng)都不同。這種差異既是技術上的,也是商業(yè)上的。因此需要詳細的選擇過程。

審核編輯:郭婷

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

    關注

    5208

    文章

    20620

    瀏覽量

    336637
  • Linux
    +關注

    關注

    88

    文章

    11806

    瀏覽量

    219482
  • 操作系統(tǒng)

    關注

    37

    文章

    7431

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    什么是嵌入式應用開發(fā)?

    概述 所謂的嵌入式應用開發(fā)就是在嵌入式操作系統(tǒng)下進行開發(fā)、軟硬件綜合開發(fā) ?嵌入式應用開發(fā)?是指在嵌入式
    發(fā)表于 01-12 16:13

    arm嵌入式主板優(yōu)缺點

    Windows CE、Linux等主流的嵌入式操作系統(tǒng)。   ARM的優(yōu)點   一、高可靠性、高穩(wěn)定性:在工業(yè)控制領域,性能穩(wěn)定可靠是自動控制基本的要求,ARM嵌入式主板有著很特殊的優(yōu)勢。第一
    發(fā)表于 01-08 07:08

    什么是嵌入式操作系統(tǒng)

    要理解嵌入式操作系統(tǒng)(Embedded Operating System,簡稱 RTOS/EOS),我們可以從本質定義→核心區(qū)別→實際作用→典型特征→嵌入式開發(fā)場景適配,五個維度來拆解, 一
    發(fā)表于 12-09 10:33

    嵌入式應掌握的幾種能力

    1. 編程語言 基本掌握嵌入式必備的編程語言。C語言為主,C++為輔。在資源有限的情況下,大多數(shù)嵌入式產(chǎn)品還是使用C語言為主的,特別是底層驅動開發(fā)。上層應用開發(fā)大多用C,在一些資源比較充足的平臺
    發(fā)表于 12-08 06:05

    嵌入式系統(tǒng)的定義和應用領域

    。盡管有些嵌入式系統(tǒng)可能包含操作系統(tǒng),但大多數(shù)情況下,它們僅由一個程序來控制整個邏輯。 從更專業(yè)的角度來看,嵌入式系統(tǒng)可以被定義為:以應用
    發(fā)表于 11-17 06:49

    單片機的操作系統(tǒng)

    單片機操作系統(tǒng)主要分為實時操作系統(tǒng)(RTOS)和嵌入式操作系統(tǒng)兩類,以下是常見選擇: 實時操作系統(tǒng)
    發(fā)表于 11-14 06:18

    嵌入式實時操作系統(tǒng)的特點

    實時嵌入式操作系統(tǒng)(Real-Time Embedded Operating System)是專門設計用于嵌入式系統(tǒng)的實時操作系統(tǒng)。
    發(fā)表于 11-13 06:30

    嵌入式實時操作系統(tǒng)及應用開發(fā)(第三版)羅蕾主編光盤鏡像百度云鏈接

    嵌入式實時操作系統(tǒng)及應用開發(fā)(第三版)羅蕾主編光盤鏡像百度云鏈接通過網(wǎng)盤分享的文件:嵌入式系統(tǒng)配套光盤.iso鏈接: https://pan.baidu.com/s/1R3IprlRn
    發(fā)表于 11-12 16:20

    如何采用SAFERTOS和ESM保護嵌入式系統(tǒng)安全

    信任根的重要組成部分是實時操作系統(tǒng)(RTOS),它為應用程序的運行提供了一個安全的平臺。嵌入式系統(tǒng)的具體安全要求取決于其架構以及所面臨的威脅。在本博客中,我們將探討RTOS的安全性,以SAFERTOS及其增強安全模塊(ESM)作
    的頭像 發(fā)表于 10-24 15:51 ?1599次閱讀

    【好書推薦】RT-Thread第22本相關書籍!《嵌入式實時操作系統(tǒng)開發(fā)實踐》| 技術集結

    隨著物聯(lián)網(wǎng)、智能家居與工業(yè)控制等領域的快速發(fā)展,嵌入式實時操作系統(tǒng)的應用愈發(fā)廣泛。RT-Thread作為國產(chǎn)開源RTOS的代表,憑借其出色的實時性、組件化設計和強大的生態(tài)體系,已成為眾多工程師和高校
    的頭像 發(fā)表于 10-16 18:46 ?824次閱讀
    【好書推薦】RT-Thread第22本相關書籍!《<b class='flag-5'>嵌入式</b>實時<b class='flag-5'>操作系統(tǒng)</b>開發(fā)實踐》| 技術集結

    入行嵌入式應該怎么準備?

    知識: 一、C/C++編程C/C++是嵌入式系統(tǒng)開發(fā)中最常用的編程語言。熟練掌握C/C++語言將使你能夠理解和編寫底層驅動程序、操作系統(tǒng)以及與硬件交互的代碼。對于嵌入式
    發(fā)表于 08-06 10:34

    Linux嵌入式和單片機嵌入式的區(qū)別?

    Linux嵌入式與單片機嵌入式在多個方面存在顯著的區(qū)別,以下是詳細的比較和歸納: 一、基本概念 1. Linux嵌入式: 定義:將Linux操作系統(tǒng)運行在
    發(fā)表于 06-20 09:46

    嵌入式開發(fā),如何選擇適合的系統(tǒng)

    嵌入式ARM開發(fā)中,面對多種操作系統(tǒng)選擇,如何做出最適合項目的決策?本文將為您梳理常見系統(tǒng)的特性,幫助您快速了解它們的優(yōu)缺點,以便更好地選擇
    的頭像 發(fā)表于 05-20 11:32 ?1278次閱讀
    <b class='flag-5'>嵌入式</b>開發(fā),如何<b class='flag-5'>選擇</b>適合的<b class='flag-5'>系統(tǒng)</b>?

    嵌入式開發(fā)入門指南:從零開始學習嵌入式

    特定功能的計算機系統(tǒng),廣泛應用于智能家居、工業(yè)控制、醫(yī)療設備、車載系統(tǒng)等領域。 2. 學習嵌入式開發(fā)的前置知識熟悉C語言編程掌握基本的數(shù)據(jù)結構與算法了解數(shù)字電路與微控制器原理熟悉Linux操作
    發(fā)表于 05-15 09:29

    飛凌嵌入式攜手中移物聯(lián),譜寫全國產(chǎn)化方案新生態(tài)

    4月22日,飛凌嵌入式“2025嵌入式及邊緣AI技術論壇”在深圳成功舉辦。中移物聯(lián)網(wǎng)有限公司(以下簡稱“中移物聯(lián)”)攜OneOS操作系統(tǒng)與飛凌嵌入式共同推出的工業(yè)級核心板亮相會議展區(qū),
    的頭像 發(fā)表于 05-07 11:26 ?2684次閱讀
    飛凌<b class='flag-5'>嵌入式</b>攜手中移物聯(lián),譜寫全國產(chǎn)化方案新生態(tài)
    县级市| 寿阳县| 郎溪县| 东明县| 天台县| 柏乡县| 南岸区| 沈阳市| 斗六市| 兴文县| 靖江市| 临夏县| 平原县| 河间市| 儋州市| 依安县| 屯昌县| 浮山县| 洪湖市| 温泉县| 凤台县| 东方市| 安新县| 莱阳市| 洛扎县| 辽中县| 黄梅县| 金阳县| 酉阳| 杭州市| 蒙山县| 温宿县| 鄂伦春自治旗| 磴口县| 郁南县| 刚察县| 闻喜县| 凤城市| 九台市| 乡宁县| 漠河县|