選擇ARM CPU的作業系統(轉)
選擇ARM CPU的作業系統(轉)[@more@] 摘 要: 本文就目前國內在ARM CPU上廣泛採用的三種嵌入式作業系統μC/OS-II、μCLinux和嵌入式Linux作分析,提供選擇一個合適的嵌入式作業系統的依據。
關鍵詞: 嵌入式作業系統;μC/OS-II;μCLinux;嵌入式Linux
嵌入式作業系統是ARM CPU的軟體基礎,從8位/16位微控制器發展到以ARM CPU核為代表的32位嵌入式處理器,嵌入式作業系統將替代傳統的由手工編制的監控程式或排程程式,成為重要的基礎元件。更重要的是嵌入式作業系統對應用程式可以起到遮蔽的作用,使應用程式設計師面向作業系統級開發應用軟體,並易於在不同的ARM核的嵌入式處理器上移植。
嵌入式作業系統都具有一定的實時性,易於裁剪和伸縮,可以適合於從ARM7到Xscale各種ARM CPU和各種檔次的應用,嵌入式作業系統可以使用廣泛流行的ARM開發工具,如ARM公司的SDT/ADS和RealView等,也可以使用開發軟體,如GCC/GDB、KDE或Eclipe開發環境,市場上還有專用的開發工具,如Tornado、μC/View、μC/KA、CODE/Lab、Metroworks等。
本文就目前國內在ARM CPU上廣泛採用的三種嵌入式作業系統(μC/OS-II、μCLinux和嵌入式Linux)作分析。
μC/OS-II嵌入式實時核心
全世界數百種裝置已經在使用μC/OS-II,包括手機、路由器、不間斷電源、飛行器、醫療裝置和工業控制裝置。μ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多個系統呼叫,覆蓋任務、定時器、訊號量、事件標誌、郵箱、佇列和記憶體管理,已經包含了傳統嵌入式作業系統核心(如PSOS,VRTX)的功能,還支援互斥型訊號量,這是90年代的嵌入式作業系統核心,如VxWorks和VRTXsa才有的技術。
μC/OS-II因為是可搶佔的實時核心,所以μC/OS-II與商業嵌入式實時核心在效能上沒有什麼差異,μC/OS-II沒有使用者態和核心態,任務(執行緒)或中斷和任務切換的響應可以很快,主要是和ARM CPU相關的。最新的2.7x版本還增加了演算法以避免在移植中修改堆疊指標,這樣可以保證μC/OS-II在不同的CPU上執行更穩定,移植更方便。μC/OS-II目前除了核心外還有商業化檔案系統μC/FS,圖形系統μC/GUI以及任務除錯工具μC/KA和μC/View,但是μC/OS-II自己目前還沒有TCP/IP協議系統。
總的來說,μC/OS-II是一個非常容易學習,結構簡單,功能完備和實時性很強的嵌入式作業系統核心,適合於各種嵌入式應用以及大專院校教學和科研。最後需要說明,μC/OS-II不是免費軟體,任何人學習使用μC/OS-II需要購買《嵌入式實時作業系統μC/OS-II》一書,使用μC/OS-II的產品需要購買產品生產授權,購買了此授權的還可以得到開發期間的技術支援和升級服務。
μCLinux作業系統
μCLinux是Linux小型化後,適合於沒有MMU(記憶體管理單元)的微處理器晶片而裁剪成的作業系統,如果ARM CPU系列中的ARM7 TDMI、ARM940T等產品希望使用Linux作業系統,只能用μCLinux,當然,μCLinux也支援Motorola Dragonball、Coldfire等其它中低端嵌入式處理器。
μCLinux保持了傳統Linux作業系統的主要特性,包括穩定、強大的網路和檔案系統的支援,μCLinux裁剪了大量的Linux核心以縮小尺寸,適合象512k/b RAM、1M/b Flash這樣小容量、低成本的嵌入式系統。μCLinux系統小型化的另一簡化是採用了μCLib庫替代Linux的Glib庫,使用μCLib可以大大減少應用程式的程式碼尺寸,對於中小型嵌入式應用,μCLib功能可以滿足需要,所以目前即使是某些採用Linux 2.4
關鍵詞: 嵌入式作業系統;μC/OS-II;μCLinux;嵌入式Linux
嵌入式作業系統是ARM CPU的軟體基礎,從8位/16位微控制器發展到以ARM CPU核為代表的32位嵌入式處理器,嵌入式作業系統將替代傳統的由手工編制的監控程式或排程程式,成為重要的基礎元件。更重要的是嵌入式作業系統對應用程式可以起到遮蔽的作用,使應用程式設計師面向作業系統級開發應用軟體,並易於在不同的ARM核的嵌入式處理器上移植。
嵌入式作業系統都具有一定的實時性,易於裁剪和伸縮,可以適合於從ARM7到Xscale各種ARM CPU和各種檔次的應用,嵌入式作業系統可以使用廣泛流行的ARM開發工具,如ARM公司的SDT/ADS和RealView等,也可以使用開發軟體,如GCC/GDB、KDE或Eclipe開發環境,市場上還有專用的開發工具,如Tornado、μC/View、μC/KA、CODE/Lab、Metroworks等。
本文就目前國內在ARM CPU上廣泛採用的三種嵌入式作業系統(μC/OS-II、μCLinux和嵌入式Linux)作分析。
μC/OS-II嵌入式實時核心
全世界數百種裝置已經在使用μC/OS-II,包括手機、路由器、不間斷電源、飛行器、醫療裝置和工業控制裝置。μ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多個系統呼叫,覆蓋任務、定時器、訊號量、事件標誌、郵箱、佇列和記憶體管理,已經包含了傳統嵌入式作業系統核心(如PSOS,VRTX)的功能,還支援互斥型訊號量,這是90年代的嵌入式作業系統核心,如VxWorks和VRTXsa才有的技術。
μC/OS-II因為是可搶佔的實時核心,所以μC/OS-II與商業嵌入式實時核心在效能上沒有什麼差異,μC/OS-II沒有使用者態和核心態,任務(執行緒)或中斷和任務切換的響應可以很快,主要是和ARM CPU相關的。最新的2.7x版本還增加了演算法以避免在移植中修改堆疊指標,這樣可以保證μC/OS-II在不同的CPU上執行更穩定,移植更方便。μC/OS-II目前除了核心外還有商業化檔案系統μC/FS,圖形系統μC/GUI以及任務除錯工具μC/KA和μC/View,但是μC/OS-II自己目前還沒有TCP/IP協議系統。
總的來說,μC/OS-II是一個非常容易學習,結構簡單,功能完備和實時性很強的嵌入式作業系統核心,適合於各種嵌入式應用以及大專院校教學和科研。最後需要說明,μC/OS-II不是免費軟體,任何人學習使用μC/OS-II需要購買《嵌入式實時作業系統μC/OS-II》一書,使用μC/OS-II的產品需要購買產品生產授權,購買了此授權的還可以得到開發期間的技術支援和升級服務。
μCLinux作業系統
μCLinux是Linux小型化後,適合於沒有MMU(記憶體管理單元)的微處理器晶片而裁剪成的作業系統,如果ARM CPU系列中的ARM7 TDMI、ARM940T等產品希望使用Linux作業系統,只能用μCLinux,當然,μCLinux也支援Motorola Dragonball、Coldfire等其它中低端嵌入式處理器。
μCLinux保持了傳統Linux作業系統的主要特性,包括穩定、強大的網路和檔案系統的支援,μCLinux裁剪了大量的Linux核心以縮小尺寸,適合象512k/b RAM、1M/b Flash這樣小容量、低成本的嵌入式系統。μCLinux系統小型化的另一簡化是採用了μCLib庫替代Linux的Glib庫,使用μCLib可以大大減少應用程式的程式碼尺寸,對於中小型嵌入式應用,μCLib功能可以滿足需要,所以目前即使是某些採用Linux 2.4
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-959846/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 作業系統的選擇作業系統
- oracle 作業系統的選擇Oracle作業系統
- Unix還是Windows?作業系統選擇因素(轉)Windows作業系統
- Linux作業系統下Xwindow的語言選擇(轉)Linux作業系統
- 作業系統篇-cpu作業系統
- win10 去除選擇作業系統方法 win10如何去除多餘的作業系統選項Win10作業系統
- 工作學習中如何選擇作業系統?如何學習linux作業系統作業系統Linux
- 香港伺服器如何選擇合適的作業系統?伺服器作業系統
- 國產化之虛擬ARM64-CPU安裝銀河麒麟作業系統作業系統
- 如何選擇阿里云云伺服器ECS作業系統阿里伺服器作業系統
- Windows or Linux?作業系統有那些作用,要如何選擇WindowsLinux作業系統
- 面向雲時代的龍蜥作業系統 是 CentOS 替代的最佳選擇作業系統CentOS
- 企業如何選擇crm系統
- Windows-or-Linux?作業系統有那些作用,要如何選擇WindowsLinux作業系統
- 作業系統列表(轉)作業系統
- 製造業如何選擇CRM系統
- 租用香港伺服器選擇什麼作業系統好?這4種系統皆可!伺服器作業系統
- Mac、Windows、Linux三大作業系統,如何進行選擇?MacWindowsLinux作業系統
- CRM系統是企業數字化轉型最佳選擇
- CPU、指令集、體系結構以及作業系統作業系統
- 不得不說 選擇路由器從選擇CPU開始(轉)路由器
- UNIX作業系統的歷史(轉)作業系統
- 選擇困難症必看!雲伺服器如何選擇作業系統,Windows和Linux哪個更好?伺服器作業系統WindowsLinux
- 服裝生產製作型企業如何選擇ERP管理系統
- 伺服器作業系統windows和linux怎麼選擇合適自己的伺服器作業系統WindowsLinux
- 如何選擇一款適合自己的作業系統?Linux還是Windows?作業系統LinuxWindows
- 小型企業該如何選擇CRM系統?
- 小微企業如何選擇CRM系統
- Java企業系統架構選擇考量Java架構
- 麒麟作業系統核心同其他作業系統核心的相似性分析(轉)作業系統
- 企業該選擇什麼樣的CRM系統
- 模切行業選擇ERP系統的方案行業
- 選擇適合出海企業的客服系統方案
- 如何選擇適合自己企業的MES系統
- 企業如何選擇合適的CRM系統 CRM系統推薦
- 作業系統(1)——作業系統概述作業系統
- 作業系統(一):作業系統概述作業系統
- WindowsXP作業系統十例&#(轉)Windows作業系統