目前市場上流行的嵌入式操做系統

  1. VxWorks
  VxWorks是美國風河公司(WindRiver)於1983年設計開發的一種實時 嵌入式操做系統(RTOS),是目前嵌入式系統中使用最普遍、市 場佔有率最高的操做系統。它支持多種處理器,如x8六、i960、Sun Sparc、Motorola MC68xxx、MIPS RX000、POWER PC等,大多數的VxWorks API是專有的。
  VxWork以其良好的持續發展能力、高性能的內核、友好的用戶開發環境、高可靠性和實時性被普遍地應用在通訊、軍事、航空、航天等高精尖技術及實時 性要求極高的領域中,如衛星通訊、軍事演習、彈道制導、飛機導航等。在美國的 F-1六、FA-18 戰鬥機、B-2隱形轟炸機和愛國者導彈上,甚至連1997年4月在火星表面登錄的火星探測器上也使用到了VxWorks。
  VxWorks 的實時性作得很是好,其系統自己的開銷也很小,進程調度、進程間通訊、中斷處理等系統公用程序精練而有效,延遲很短。VxWorks 提供的多任務機制中對任務的控制採用了佔先式(preemptive priority scheduling)和輪轉調度(round-robin scheduling)機制,充分保證了可靠的實時性,使一樣的硬件配置能知足更強的實時性要求,爲應用的開發留下了更大的餘地。
  因爲VxWorks的高度靈活性,用戶能夠很容易地對這一操做系統進行定製或作適當開發,來知足本身的實際應用須要。
  2. Nucleus
  Nucleus實時操做系統是Accelerater Technology 公司開發的嵌入式RTOS,產品只需一次性購買Licenses 就能夠得到操做系統的源碼,而且免產品版稅。Nucleus 的另外一大好處是程序員不用寫BSP 。由於操做系統已經開放給程序員,不一樣的目標板在操做系統啓動時能夠經過修改源碼進行不一樣的配置。
  Nucleus對CPU的支持能力比較強,支持當前流行的大多數RISC、CISC、DSP 處理器,好比80x86實時保護模式、68xxx、PowerPC、i960、MIPS、SH、ARM、ColdFire等幾百種CPU。Nucleus 內核很是小巧,只有4KB~20KB,穩定性高。
  Nucleus PLUS 採用了軟件組件的方法,每一個組件具備單一而明確的目的,一般由幾個C及彙編語言模塊構成,提供清晰的外部接口,對組件的引用就是經過這些接口完成。因爲採用了軟件組件的方法,Nucleus PLUS各個組件很是易於替換和複用。
  Nucleus PLUS 除提供功能強大的內核操做系統外,還提供種類豐富的功能模塊,例如用於通訊系統的局域和廣域網絡模塊、支持圖形應用的實時化Windows模塊、支持 Internet的Web產品模塊、工控機實時BIOS 模塊、圖形化用戶接口以及應用軟件性能分析模塊等,用戶能夠根據本身的應用來選擇不一樣的應用模塊。
  另外,Nucleus獲得許多第三方工具廠商和方案提供商的支持,如ARM、Lauterbach、TI、Infineon、高通、IAR、 Tasking等。目前Nucleus在國內獲得普遍的應用,特別是在手機制造行業,幾乎全部的手機廠商都採用了Nucleus解決方案。
  3. Windows CE
  Microsoft Windows CE是從總體上爲有限資源的平臺設計的多線程、完整優先權、多任務的操做系統。它的模塊化設計容許它對從掌上電腦到專用的工業控制器的用戶電子設備進行定製。
  Windows CE操做系統的基本核心須要至少200KB的ROM。它支持Win32 API的子集,支持多種的用戶界面硬件,同時提供熟悉的開發模式和工具。
  Windows CE有五個主要的模塊。
  ●內核模塊:支持像進程、線程處理及內存管理這樣的的基本服務。
  ●內核系統接口模塊:容許應用軟件訪問操做系統提供的服務。
  ●文件系統模塊:支持DOS等格式的文件系統。
  ●圖形窗口和事件子系統模塊:控制圖形和Windows相關的外貌。
  ●通訊模塊:容許同其餘的設備進行信息交換。

  Windows CE操做系統提供與PC相似的界面和主要應用程序,使熟悉PC機Windows系統的用戶能很快學會它的使用。 html

  4. 嵌入式Linux
  自由免費軟件Linux是一個相似於Unix的操做系統。嵌入式Linux因爲代碼開放及強大的網絡功能,在嵌入式產品的開發中具有巨大的潛力。
  嵌入式Linux的優勢以下:
  ●Linux是由不少體積小且性能高的微內核系統組成。在內核代碼徹底開放的前提下,不一樣領域和不一樣層次的用戶能夠根據本身的應用須要方便地對內核進行改造,以低成本設計開發出知足本身須要的嵌入式系統。
  ●Linux誕生於因特網時代並具備Unix的特性,強大的網絡功能保證了它支持全部標準的因特網協議,能夠利用Linux的網絡協議棧開發嵌入式的 TCP/IP網絡協議棧。此外,Linux還支持ext二、fat1六、fat3二、romfs等文件系統,爲開發嵌入式系統打下了很好的基礎。
  ●Linux具有一整套工具鏈,容易自行創建嵌入式系統的開發環境和交叉運行環境,能夠跨越嵌入式系統開發中仿真工具的障礙。Linux也符合IEEE POSIX.1標準,使應用程序具備較好的可移植性。
  ●傳統的嵌入式程序調試和調試工具是用在線仿真器(ICE)實現的。它經過取代目標板的微處理器,給目標程序提供一個完整的仿真環境,完成監視和調試 程序,但通常價格比較昂貴。使用嵌入式Linux,一旦軟硬件可以支持正常的串口功能,即便不用仿真器,也能夠很好地進行開發和調試工做,從而節省一筆不 小的開發費用。嵌入式Linux爲開發者提供了一套完整的工具鏈。它利用GNU的gcc作編譯器,用gdb、kgdb、xgdb作調試工具,可以很方便地 實現從操做系統到應用軟件各個級別的調試。
  ●Linux具備普遍的硬件支持特性。不管是RISC仍是CISC、32位仍是64位等各類處理器,Linux都能運行。Linux支持各類主流硬件 設備和最新硬件技術,甚至能夠在沒有存儲管理單元(MMU)的處理器上運行(如μCLinux)。這意味着嵌入式Linux將來將具備更普遍的應用前景。
  嵌入式Linux也存在着一些不足:
  ●實時性是嵌入式操做系統的基本要求。因爲Linux還不是一個真正的實時操做系統,內核不支持事件優先級和佔先實時特性,因此在開發嵌入式Linux的過程當中,首要問題是擴展Linux的實時性能。
  ●Linux內核的全部部分都集中在一塊兒,並且全部的部件在一塊兒編譯鏈接。這樣雖然能使系統的各部分直接溝通,有效地縮短任務之間的切換時間,提升系統的響應速度和CPU的利用率,但在系統比較大時體積也比較大,與嵌入式系統容量小、資源有限的特色不符。
  ●Linux須要佔用較多存儲器。雖然這能夠經過減小一些沒必要要的功能來彌補,但可能會很浪費時間,並且容易帶來很大的麻煩。許多Linux的應用程序都要用到虛擬內存,這在許多嵌入式系統中是沒有價值的。
  ●提供完整的集成開發環境是每個嵌入式系統開發人員所期待的。Linux在基於圖形界面的特定系統定製平臺的研究上,與Windows操做系統相比還存在差距。所以,要使嵌入式Linux在嵌入式操做系統領域中的優點更加明顯,總體集成開發環境還有待提升和完善。
  5. QNX
  QNX是加拿大QNX公司的一個實時的、可擴充的操做系統,它部分遵循POSIX相關標準,如POSIX.1b的實時擴展。它提供了一個很小的微內核 以及一些可選的配合進程。其內核僅提供4種服務:進程調度、進程間通訊、底層網絡通訊和中斷處理,其進程在獨立的地址空間運行。全部其餘OS服務,都實現 爲協做的用戶進程,所以QNX內核很是小巧(QNX4.x大約爲12KB)並且運行速度極快。這個靈活的結構可使用戶根據實際的需求,將系統配置成微小 的嵌入式操做系統或是包括幾百個處理器的超級虛擬機操做系統。
  6. μC/OS-II
  μC/OS-II 是一種可移植、可固化、可裁剪及可剝奪的多任務實時內核。本書將以μC/OS-II爲例介紹嵌入式操做系統,關於μC/OS-II將在第5章中做進一步介紹。 程序員

相關文章
相關標籤/搜索