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

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

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

3天內不再提示

請問單片機能運行操作系統嗎?

無際單片機編程 ? 來源:無際單片機編程 ? 2023-03-08 14:03 ? 次閱讀

但是操作系統不是剛需,上操作系統比較占用單片機的資源,比如占用比較多的FLASH和RAM,間接增加了硬件成本,哪怕成本增加1毛錢,對于上量的產品,分分鐘是一個工程師的工資。

我做了單片機開發10幾年,大多數產品其實還是裸機編程,用到操作系統的比較少。

當然,這個跟產品功能有關,一般產品功能復雜、實時性要求苛刻的就會上操作系統。

目前用的比較多的就是實時操作系統,比如主流有uC/OS-II、FreeRTOSrt-thread

下面,簡單給大家說下3個系統各自優缺點,如有不對,請指正!

一、uC/OS-II

uC/OS-II 是 Micrium 公司開發的商業實時操作系統,它的內核設計非常穩定和可靠,更加注重調度算法和系統服務的豐富性,適合于需要更高實時性和穩定性的應用。

uC/OS-II 的優缺點如下:

特點:

對開發友好:資料多。

實時性:uC/OS-II 可以提供非常快速的中斷響應和任務切換,確保系統實時性。

可移植性:uC/OS-II 可以支持多種不同的處理器架構,使得應用程序更易于移植到不同的硬件平臺上。

可靠性:由于 uC/OS-II 的內核設計非常穩定和可靠,因此它被廣泛應用于各種不同的嵌入式系統中。

成熟的生態環境:由于 uC/OS-II 已經發布了很長時間,因此它的社區和生態環境非常成熟和完善,用戶可以方便地獲取文檔、示例和支持。

缺點:

商業授權費用:uC/OS-II 是一個商業實時操作系統,用戶需要購買商業授權才能使用。

資源占用:uC/OS-II占用單片機資源較多,需要較大的存儲空間和內存空間。

另外,開發者是可以剪裁的,也就是說你可以根據你產品的功能修改系統代碼做定制,前提是你已經吃透了系統的代碼,否則不要輕易嘗試,不然很容易給自己挖坑。

二、 FreeRTOS

FreeRTOS 是一個開源的實時操作系統,目前占有率高。

特點:

商業授權費用:可以免費商用

輕量級:FreeRTOS 的內核非常小巧,適合資源受限的單片機。

實時性:FreeRTOS 可以提供非常快速的中斷響應和任務切換,確保系統實時性。

可移植性:FreeRTOS 可以支持多種不同的處理器架構,使得應用程序更易于移植到不同的硬件平臺上。

社區支持:FreeRTOS 的社區非常活躍,有大量的開發人員參與開發和維護,使得 FreeRTOS 的生態環境非常完善。

良好的文檔和資料:FreeRTOS 的文檔和資料非常豐富,學習和使用 FreeRTOS 相對較為簡單。

缺點:

組件少:部分功能組件不夠完善,比如GUI(圖形界面)、TCP/IP、文件系統需外擴第三方。

三、rt-thread

這個是國內一款適合物聯網產品的實時操作系統,特點是資源占用極低(1.2KB RAM和3KB Flash),代碼架構做低功耗功能比較方便。

優點:

輕量級:RT-Thread 的內核非常小巧,適合資源受限的單片機。

實時性:RT-Thread 可以提供非常快速的中斷響應和任務切換,確保系統實時性。

可裁剪性:RT-Thread 可以按需選擇需要的組件,以減小系統占用的資源。

面向對象:RT-Thread 支持對象化編程,使得代碼更加清晰易懂。

跨平臺支持:RT-Thread 可以支持多種不同的處理器架構。

缺點:

生態相對不夠完善:相比一些成熟的嵌入式操作系統,RT-Thread 的社區和開發人員數量相對較少,生態環境相對不夠完善。

學習曲線較陡峭:RT-Thread 是一個相對較新的操作系統,它的文檔和資料相對較少,學習曲線相對較陡峭。

不適合大型系統:由于 RT-Thread 的內核設計初衷是輕量級和實時性,所以它不適合構建大型的嵌入式系統。

四、自己對RTOS的理解

最后聊一下,我對這些實時操作系統的理解。

我覺得實時操作系統,本質上就是一個實時性高的程序架構

實時就是能保證我的任務規定的時間內去執行,這用傳統while(1)輪詢方式是實現不了的。

程序架構就好比建房子時的地基,只有地基穩了,才能應對外在惡劣環境對房子造成的影響,比如臺風、地震。

我們寫程序也是一樣的,程序架構就是的”地基”,只有地基穩了,你的程序才能應對項目經理突如其來的改功能、換芯片方案,你的代碼才經得起折騰、產品功能做得穩定。

可惜啊,很多工程師并沒有寫程序架構的能力,因為對經驗和代碼水平要求比較嚴格。

所以一般復雜的項目,直接上現成的、穩定的實時操作系統就可以了。

這樣至少可以保證兩點:

1.程序架構上不出問題。

2.程序的實時性不出問題。

不過用現成的也是有缺點的,就是RTOS的功能很多,有很多你產品壓根用不上,但是你沒辦法,你又不會剪裁,這樣就會浪費你很多單片機資源。

所以這幾年我做項目,一直是用自己寫的程序架構,然后程序實時性通過人工去規避。

7617a564-ba9b-11ed-bfe3-dac502259ad0.png

763a835e-ba9b-11ed-bfe3-dac502259ad0.png

比如任務初始化、創建、調度管理。

還有實時操作系統一些實用功能,比如隊列,也是產品常用的,只是我自己寫了更簡化的代碼。

76707504-ba9b-11ed-bfe3-dac502259ad0.png






審核編輯:劉清

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

    關注

    6032

    文章

    44522

    瀏覽量

    633163
  • RAM
    RAM
    +關注

    關注

    8

    文章

    1367

    瀏覽量

    114536
  • 操作系統
    +關注

    關注

    37

    文章

    6743

    瀏覽量

    123196
  • FreeRTOS
    +關注

    關注

    12

    文章

    483

    瀏覽量

    62016

原文標題:單片機能運行操作系統嗎?

文章出處:【微信號:nanshuqg,微信公眾號:無際單片機編程】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    運行在51單片機上的操作系統

    運行在51單片機上的操作系統
    發表于 02-10 12:53

    單片機小型操作系統多任務并行的原理

    型號,什么時候有空了我再寫個51單片機的程序)。有這個系列單片機開發板的可以單步運行看看任務切換過程中“偷換”堆棧內容的過程。(后面將分享我在這個平臺下寫的一個簡單的時間片輪轉的小操作系統
    發表于 10-18 10:59

    51單片機操作系統資料包

    附件里面有關于51單片機操作系統的資料!對大家學習單片機操作系統很有幫助!
    發表于 07-21 20:10

    國內首創實用的單片機操作系統

    多少年了,在單片機領域,全世界有多少人想搞適合單片機操作系統,至今沒有搞成功。而今天,我們可以驕傲地說,我們中國人搞成了!這就是TreeOS 1.0單片機
    發表于 07-30 10:01

    單片機操作系統

    本帖最后由 hkcj 于 2016-10-4 21:06 編輯 大二party,最近在研究單片機操作系統方面的知識,結合書本照貓畫虎了一個簡單的操作系統,但我想在空閑任務里放入計算CPU使用率的代碼,這要怎么編
    發表于 10-04 20:53

    請問雙線程單片機操作系統原理是什么?

    最近在接觸一個雙線程的單片機操作系統。但單片機不都是單線程的嗎?如果真是雙線程的,原理是什么?有沒有大佬能解釋下
    發表于 01-14 21:54

    51單片機操作系統有哪些

    51單片機操作系統有哪些,星光操作系統是基于51單片機的嵌入式操作系統,為單片機開發提供軟件平臺
    發表于 07-21 06:39

    FreeRTOS從單片機操作系統

    轉載【連載】從單片機操作系統③——走進FreeRTOS【1】 從單片機操作系統①我們熟悉的單片機編程:這種結構基本上都是在main函數開
    發表于 08-23 07:03

    請問一下RT-Thread操作系統運行在什么里面?

    請問一下rt thread操作系統運行在什么里面?是上位機還是運行在移植的單片機里面
    發表于 02-15 10:35

    51單片機可以跑操作系統嗎?

    據說單片機可以上操作系統,那51單片機可以上操作系統嗎,感覺51單片機性能那么差,還能跑操作系統
    發表于 11-06 06:59

    51單片機多任務操作系統的原理與實現

    51單片機多任務操作系統的原理與實現,在51單片機上模擬操作系統
    發表于 02-28 15:09 ?16次下載

    C51單片機上移植UCOS操作系統的詳細資料和程序免費下載

    本文檔的主要內容詳細介紹的是C51單片機上移植UCOS操作系統的詳細資料和程序免費下載。學習研究操作系統原理以及運行機制很有幫助。
    發表于 09-03 08:00 ?28次下載
    C51<b class='flag-5'>單片機</b>上移植UCOS<b class='flag-5'>操作系統</b>的詳細資料和程序免費下載

    單片機中嵌入操作系統有哪些優缺點

     近年來,在單片機系統中嵌入操作系統已經成為人們越來越關心的一個話題。本文通過對一種源碼公開的單片機嵌入式實時操作系統μC/OS-II為例,
    發表于 08-05 17:34 ?1次下載
    在<b class='flag-5'>單片機</b>中嵌入<b class='flag-5'>操作系統</b>有哪些優缺點

    單片機編程和操作系統綜述

    本文分為兩部分——“單片機編程篇”和“操作系統篇”。單片機編程篇主要介紹單片機的各種編程結構,及其實現方法。是在假設已經可以驅動單片機和各個
    發表于 05-08 11:12 ?40次下載

    單片機操作系統有哪些

    單片機操作系統(RTOS)是一種專門設計用于單片機操作系統,它可以提供任務調度、內存管理、設備驅動等功能,幫助程序員更高效地開發嵌入式系統
    的頭像 發表于 12-08 16:18 ?4937次閱讀