在每個開發項目的初期,你都必須選擇軟件開發的基礎。雖然有很多選擇,但它們通常分為三類:裸機、實時操作系統(RTOS)或通用操作系統(GPOS)。
裸機系統不使用操作系統,應用程序代碼在沒有操作系統支持的情況下直接在硬件上運行,你的代碼直接與硬件交互并訪問硬件。
RTOS(實時操作系統)旨在提供實時應用環境,提供可預測的執行時間和時間敏感的應用平臺。他們的關鍵特征是響應能力和確定性。
GPOS旨在運行各種軟件應用程序,這樣的操作系統的特點是用戶界面友好和能提供廣泛服務,GPOS的例子包括Windows、Linux和MacOS。
你為電子系統的開發選擇一個操作系統,它可能會對成本、上市時間甚至質量產生嚴重影響。讓我們看看如何在裸機、RTOS和GPOS之間進行選擇。
何時選擇裸機?
當處理器硬件受資源限制時,裸機解決方案效果很好。受限的資源包括處理器總線寬度、RAM、FLASH和處理器速度。例如,你會發現在8位和16位微控制器上很少支持RTOS。你還會發現,很少有操作系統適合32K字節的閃存空間或只有2K字節內存的處理器。
資源限制并不是選擇裸機的唯一考慮因素。如果你的系統具有高度受限的實時需求,你可能還想選擇裸機解決方案。操作系統通常具有與內核相關的開銷,這可能會導致抖動和響應時間延遲。直接訪問硬件可以幫助你管理定時并保證確定性,同時確保低延遲。
裸機解決方案最適合基于低端微控制器的系統,這些系統是具有嚴格實時要求的非聯網系統。
何時選擇RTOS?
當你的硬件不受資源限制時,RTOS是一個很好的解決方案,這里包括32位微控制器和低端應用處理器等硬件系統。要使用RTOS,你的系統應該至少有64K字節的閃存,4k字節的RAM和80 MHz或以上的處理器時鐘。雖然你可能能夠用更少的資源,但你將花更多的時間與RTOS和硬件較勁,而不是開發你的應用程序。
RTOS通常用于比裸機系統具有更復雜定時要求的系統。這些系統通常需要管理實時需求,同時處理TCP/IP、MQTT、USB、Wi-Fi等通信協議。雖然可以使用裸機解決方案開發這種類型的系統,但擁有RTOS簡化了設計,加快了上市時間,并使軟件維護更容易。
RTOS的另一個關鍵方面是操作系統為軟件開發添加的功能,例如任務管理、任務同步、調度和任務間通信。RTOS可以允許你優先處理可以相互搶占的任務,允許更復雜的應用程序設計。
RTOS解決方案最適合中高性能微控制器和低端應用處理器,這些處理器的高可靠性和時序至關重要。
何時選擇GPOS?
當你使用應用處理器或完整的微處理器時,通用操作系統非常適合。當你考慮使用GPOS時,你很可能會使用一些嵌入式Linux。硬件通常是一個32位應用處理器,以200 MHz或更高的總線速度運行,具有兆字節的內存存儲和RAM,至少是不少于千兆字節。
GPOS是復雜應用的絕佳解決方案,具有不太關鍵的定時和確定性。GPOS通常提供廣泛的服務,例如友好的用戶界面、通信協議、軟件更新的便利性等。這些功能可以幫助你在沒有底層硬件知識的情況下更好地管理系統。它們也往往更容易管理。更多的開發人員擁有GPOS領域的領域知識,但是使用GPOS開發的電子產品通常比微控制器RTOS或者裸機解決方案貴得多。
GPOS解決方案最適合確定性和系統定時不關鍵的應用微處理器的場景。
結論
在為你的電子系統選擇嵌入式軟件的時候,你會發現有三種通用解決方案:裸機、RTOS和GPOS。最佳解決方案取決于你使用的硬件、你想要的可靠性以及系統的時序要求。在某些情況下,你可能會發現不止一個適合。在這些情況下,你必須考慮你的開發成本以及長期維護和支持。
不要忘記考慮系統的可擴展性及其未來擴展的潛力??赡苄枰磥碛邪l展的系統,支撐更復雜的功能或額外的硬件,可以更好地由能夠處理這種增長的操作系統提供服務。最后,考慮每個選項可用的社區和供應商支持,因為這可能會顯著影響你在系統生命周期內進行故障排除、更新和維護的能力。
-
處理器
+關注
關注
68文章
18512瀏覽量
223332 -
嵌入式
+關注
關注
5001文章
18394瀏覽量
291027 -
RAM
+關注
關注
7文章
1330瀏覽量
113831 -
RTOS
+關注
關注
20文章
780瀏覽量
118877 -
裸機
+關注
關注
0文章
37瀏覽量
6178
原文標題:如何在裸機、RTOS和GPOS之間進行選擇
文章出處:【微信號:麥克泰技術,微信公眾號:麥克泰技術】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論