如何選擇嵌入式操作系統(tǒng)
嵌入式操作系統(tǒng)是ARM CPU的軟件基礎,從8位/16位單片機發(fā) 展到以ARM CPU核為代表的32位嵌入式處理器,嵌入式操作系統(tǒng)將替代傳統(tǒng)的由手工編制的監(jiān)控程序或調度程序,成為重要的基礎組件。更重要的是嵌入式操作系統(tǒng)對應用 程序可以起到屏蔽的作用,使應用程序員面向操作系統(tǒng)級開發(fā)應用軟件,并易于在不同的ARM核的嵌入式處理器上移植。
嵌入式操作系統(tǒng)都具 有一定的實時性,易于裁剪和伸縮,可以適合于從ARM7到Xscale各種ARM CPU和各種檔次的應用,嵌入式操作系統(tǒng)可以使用廣泛流行的ARM開發(fā)工具,如ARM公司的SDT/ADS和RealView等,也可以使用開發(fā)軟件,如 GCC/GDB、KDE或Eclipe開發(fā)環(huán)境,市場上還有專用的開發(fā)工具,如Tornado、μC/View、μC/KA、CODE/Lab、 Metroworks等。
本文就目前國內在ARM CPU上廣泛采用的三種嵌入式操作系統(tǒng)(μC/OS-II、μCLinux和嵌入式Linux)作分析。
μC/OS-II嵌入式實時內核全世界數百種設備已經在使用μC/OS-II,包括手機、路由器、不間斷電源、飛行器、醫(yī)療設備和工業(yè)控制設備。μC /OS-II已經有ARM7TDMI、ARM9和Strong ARM等各種ARM CPU的移植,支持包含Atmel、Hynix、Intel、Motorola、Philips、Samsung、Sharp等公司的ARM核的 CPU.μC/OS-II的移植也相當容易,與CPU相關的代碼包裝在三個文件中,它們是os_cpu.h、os_cpu_a.asm和 os_cpu_c.c.μC/OS-II有60多個系統(tǒng)調用,覆蓋任務、定時器、信號量、事件標志、郵箱、隊列和內存管理,已經包含了傳統(tǒng)嵌入式操作系統(tǒng) 內核(如PSOS,VRTX)的功能,還支持互斥型信號量,這是90年代的嵌入式操作系統(tǒng)內核,如VxWorks和VRTXsa才有的技術。
μC/OS-II因為是可搶占的實時內核,所以μC/OS-II與商業(yè)嵌入式實時內核在性能上沒有什么差異,μC/OS-II沒有用戶態(tài)和內核態(tài),任務 (線程)或中斷和任務切換的響應可以很快,主要是和ARM CPU相關的。最新的2.7x版本還增加了算法以避免在移植中修改堆棧指針,這樣可以保證μC/OS-II在不同的CPU上運行更穩(wěn)定,移植更方便。μC /OS-II目前除了內核外還有商業(yè)化文件系統(tǒng)μC/FS,圖形系統(tǒng)μC/GUI以及任務調試工具μC/KA和μC/View,但是μC/OS-II自己 目前還沒有TCP/IP協(xié)議系統(tǒng)。
總的來說,μC/OS-II是一個非常容易學習,結構簡單,功能完備和實時性很強的嵌入式操作系統(tǒng)內 核,適合于各種嵌入式應用以及大專院校教學和科研。最后需要說明,μC/OS-II不是免費軟件,任何人學習使用μC/OS-II需要購買《嵌入式實時操 作系統(tǒng)μC/OS-II》一書,使用μC/OS-II的產品需要購買產品生產授權,購買了此授權的還可以得到開發(fā)期間的技術支持和升級服務。
評論