<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 如何選擇嵌入式操作系統(tǒng)

          如何選擇嵌入式操作系統(tǒng)

          作者: 時間:2013-04-01 來源:網絡 收藏

          本文引用地址:http://www.ex-cimer.com/article/257170.htm

          CPU的軟件基礎,從8位/16位單片機發(fā) 展到以 CPU核為代表的32位嵌入式處理器,將替代傳統(tǒng)的由手工編制的監(jiān)控程序或調度程序,成為重要的基礎組件。更重要的是對應用 程序可以起到屏蔽的作用,使應用程序員面向操作系統(tǒng)級開發(fā)應用軟件,并易于在不同的核的嵌入式處理器上移植。

          嵌入式操作系統(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和)作分析。

          μ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ā)期間的技術支持和升級服務。


          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();