好吊视频一区二区三区-国产精品V欧美精品V日韩精品-老司机亚洲精品影院-国产精品视频免费播放

物聯傳媒 旗下網站
登錄 注冊
RFID世界網 >  新聞中心  >  行業動態  >  正文

物聯網能否落地?可裁剪嵌入式OS成關鍵

作者: 潘少紅
來源:IT168
日期:2010-03-31 09:01:06
摘要: 隨著物聯網應用的普及,智能化、網絡化將會無所不在。隨著價格低廉、結構小巧的CPU和連接穩定可靠的外設硬件大量使用,限制嵌入式系統發展的瓶頸就突出表現在軟件方面。因此,一旦嵌入式處理器和外圍硬件選定了,那么工作最多的就集中在嵌入式軟件的選擇和研發,嵌入式軟件的嵌入式操作系統和應用軟件就成了重中之中。
  英特爾愿景中四個最具成長力的百億美元部門分別是消費電子、移動互聯網終端(MID)、上網本和嵌入式通訊,而其中最被看好、成長空間最大的是嵌入式通訊。英特爾為什么如此重視嵌入式通訊?原因是根據Intel的數據統計,目前世界上大概有20億個設備可接入互聯網,而到2020年將有150億個設備可接入互聯網。 

  據國際電信聯盟(ITU)提出的一個設備互聯概念,可分成四個階段:第一個階段是大型機、主機;第二個階段是臺式機、筆記本跟互聯網相聯;第三個階段是近年的新現象,手機聯上移動互聯網;而第四個階段則是更多樣化的設備都可以聯網,它們聯網以后會是一個新的嵌入式設備互聯網時代,也就是目前風靡一時的“物聯網”的概念。 

  一.物聯網概念已落地,核心技術有待突破 

  (1)什么是“物聯網”時代? 

  對于大多數人來說,物聯網是一個較為新鮮的概念。物聯網(The Internet of Thing),就是“物物相連的互聯網”。它是指通過射頻識別(RFID)、紅外感應器、全球定位系統、激光掃描器等信息傳感設備,把任何物品與互聯網連接起來,進行信息交換和通訊,以實現智能化識別、定位、跟蹤、監控和管理的一種網絡。據美國咨詢機構FORRESTER預測,物聯網將會是繼計算機、互聯網與移動通信網之后的世界信息產業第四次浪潮。目前物聯網產業已被中國正式列為國家五大新興戰略性產業之一。 

  據有關資料介紹,發展物聯網的關鍵在于射頻標簽、傳感器、嵌入式系統及傳輸數據計算等領域。其中,嵌入式系統是以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適用于應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。因此,嵌入式系統一般指非PC系統,它包括硬件和軟件兩部分。硬件包括微處理器、存儲器及外設器件和I/O端口等。軟件部分包括操作系統軟件(OS)和應用程序,應用過程控制著系統的運作和行為,而操作系統控制著應用程序與硬件的交互作用。 

  (2)物聯網設備操作系統的特點 

  隨著物聯網應用的普及,智能化、網絡化將會無所不在。隨著價格低廉、結構小巧的CPU和連接穩定可靠的外設硬件大量使用,限制嵌入式系統發展的瓶頸就突出表現在軟件方面。因此,一旦嵌入式處理器和外圍硬件選定了,那么工作最多的就集中在嵌入式軟件的選擇和研發,嵌入式軟件的嵌入式操作系統和應用軟件就成了重中之中。而嵌入式操作系統是與應用環境密切相關的,因此物聯網設備需要的是一套高度簡練、界面友善、質量可靠、易開發、多任務,并且價格低廉的操作系統。 

  在嵌入式軟件只中最核心的莫過于RTOS(Real Time Operating System,實時操作系統)。所以,無論是嵌入式Linux、VxWorks系統或者Windows CE操作系統,想要在物聯網嵌入式操作系統市場大展身手,首先必須是要強化可裁剪性。就是因為物聯網設備的硬件和軟件都必須要更高效率地設計,量體裁衣、去除冗余,力爭在小型設備上實現更高的性能,才能更具有競爭力。 

  二.為什么嵌入式系統關注可剪裁性? 

  嵌入式技術之所以能夠快速發展,一個重要的原因就是嵌入式技術具有技術可剪裁的靈活性。無論是軟件嵌入可剪裁還是硬件嵌入可剪裁,采用可剪裁技術都可以把復雜的系統設計變為獨立模塊的設計。但也正因為可剪裁技術的飛速發展,使得現有嵌入式系統設計平臺面臨著各種不同的挑戰。 

  (1)量體裁衣,輕松應對設備軟件的特殊挑戰 

  一般來說,軟件與硬件必須相輔相成的。但對于服務器、桌面或者筆記本PC來說,軟件與硬件的協調是比較容易做到的,因為這些設備的硬件環境都是標準化的;而對于物聯網設備來說,硬件環境則是千差萬別的,因此也造成了軟件環境的千差萬別。因此,物聯網嵌入式系統被描述為:以應用為中心、軟件硬件可裁剪的、適應應用系統對功能、可靠性、成本、體積、功耗等嚴格綜合性需要的專用電腦系統。它由嵌入式硬件和嵌入式軟件兩部分組成。嵌入式操作系統位于硬件和應用軟件之間,為上層應用提供基礎服務,是嵌入式系統的核心和靈魂。 

  例如,從硬件環境來看,桌面操作系統具有標準化的CPU、存儲和I/O架構,而嵌入式環境中的RTOS硬件環境只有標準化的CPU,沒有標準化的存儲、I/O和顯示器架構,因此許多模塊在特定的硬件中并不會用到。從應用環境來看,桌面操作系統面向復雜多變的應用,而RTOS面向單一設備的單一應用,操作系統中的許多部件因此可以裁剪掉,以便節省內存,在降低成本的同時提高可靠性。因此,考慮到物聯網設備的多樣性,為適應不同的要求,無論在硬件方面還是在軟件方面,嵌入式系統必須具有很強的可裁剪性,并且便于修改。 

  (2)什么是操作系統的可裁剪性? 

  由于物聯網設備目標系統的多樣性,致使在設計中經常出現需要通過裁剪來獲得一個滿意的操作系統。因為可裁剪性帶給用戶的一個最直接的好處是硬件成本降低,這對于成本敏感的應用具有重要的現實意義。由于設備中只包含應用程序用到的那部分操作系統功能,這就使得系統變得簡單、易把握,從而提高系統的可靠性。但有人認為,嵌入式開發者如果擁有了軟件的源代碼,就可以按照自己的需求對其進行任意裁剪,就等于擁有了可裁剪性,這是一個很大的誤解。刪掉部分源代碼之后,將會給整個系統帶來什么影響,這是很難預估的,也可能會給系統的可靠性帶來極大的隱患。所以如果一個軟件平臺只能依靠手工的方式去掉一些源代碼,這根本就不是可裁剪性。 

  因此,操作系統的可裁剪性是指一個規模大且功能齊全的操作系統,在結構上保證了用戶可在其中有選擇地保留某些模塊,而刪減掉一些模塊的性能。簡單的說,是指以優秀的模塊化設計為基礎,隨時利用軟件配置方法實現軟件構件的“即插即用”。因此,操作系統的可裁剪性也常被叫做操作系統的可配置性。配置方法一般有兩種:一種是在系統進行編譯連接時進行配置;另一種是在系統運行時進行配置。 

  在編譯連接時的配置方法一般都是通過條件編譯來實現的,即在操作系統中都有一個配置文件,在這個文件中系統的設計者可通過對一些配置常數的設置來選擇使用或不使用的模塊。也就是說,在對系統編譯連接時,編譯系統會按配置常數的設置值對與之對應的模塊進行編譯或不編譯;那些不被編譯的模塊就自然地不包含在系統中而被刪掉了,這樣可以大大減小系統所占用的內存。條件編譯是實現系統裁剪的有效手段,但這需要一個前提條件,即用戶要獲得待裁剪的操作系統的源代碼。 

  在運行時對系統進行配置,是指依靠系統在初始化運行階段執行一些條件轉移語句來實現的。只不過這些條件語句是根據事先由目標系統開發人員編寫的配置文件中的一些參數來跳轉的。這樣就可實現了系統功能上的裁剪,但不是物理上的裁剪。也就是說,被裁剪的模塊的代碼仍然還存在,只不過未被執行。所以,這種方法不能減少系統所占用的內存,只是使運行速度有某種程度的提高。但這種裁剪方法的優點是,目標系統開發人員可以沒有源代碼,并且操作起來很方便,因此是商品軟件經常采用的方法。 



  三.主流嵌入式操作系統可剪裁性的比較 

  物聯網嵌入式操作系統 EOS(Embedded Operating System)并不是簡單嵌入的操作系統,它除了具有通用操作系統的基本特點外,在小巧、可裝卸等方面必須要有突出的特點。作為在嵌入式操作系統市場上通用的三種系統:Linux、VxWorks、Windows CE在可剪裁性方面有自己的特點。下面在這里對這幾種系統的特點做一一分析。 

  (1)VxWorks操作系統 

  VxWorks操作系統是風河公司開發的一種嵌入式實時操作系統。VxWorks的可裁剪性特點是開發者可以根據自己應用程序的需要來選擇操作系統中的部件,用戶沒用到的功能模塊都可以去掉。VxWorks之所以具有良好的可裁剪性和可擴展性,是因為 VxWorks采用了精心設計的三層結構:最小內核、基本內核和基本操作系統,以簡潔的微內核作為最底層,逐層擴展到完整的VxWorks配置。 

  隨著層次的上升,相應配置所支持的功能逐漸復雜多樣,這些配置工作可以采用風河公司Workbench或者vxpri實現。其原因是VxWorks的設計是以構件和參數的形式進行的,只是其中的構件都是以預先編譯庫的形式存在,通過符號參照表與系統連接起來。例如,VxWorks允許軟件開發人員剔除操作系統中當前應用軟件不會用到的部分,甚至可以用其它第三方的模塊來取代操作系統中的某個模塊。除了部件和部件捆綁,VxWorks中還有“Profile”可以用來對VxWorks進行配置,這是一個重要的特色。Profile提供了一種便捷的方式,來構成操作系統的不同配置基礎,以便適應不同的物聯網設備產品開發。 

  (2)Windows CE系統 

  Windows CE是微軟開發的一個緊湊的、高效和可擴展的操作系統。WinCE的可剪裁特點是利用模塊化設計方法。Wince的模塊化設計使得它能夠在大量的平臺上定制使用,開發者可以使用滿足平臺系統需求的最小軟件模塊和組件集合來設計嵌入式系統平臺,從而使內存用量最小并最大可能地提供操作系統的性能。它的模塊化設計允許開發者對設備進行定制。但從技術角度上講,Windows CE作為嵌入式操作系統有很多的缺陷:沒有開放源代碼,使應用開發人員很難實現產品的真正定制;在效率、功耗方面的表現并不出色,而且和Windows一樣占用過多的系統內存。另外,版權許可費也是廠商不得不考慮的因素。 

  (3)嵌入式Linux系統 

  Linux是 Unix操作系統的克隆,遵循 GPL聲明可以自由修改和傳播,是一個自由的操作系統。因此,Linux能在嵌入式系統方面大放光芒,這與 Linux具有良好的內核可剪裁開源特性是分不開的。例如,Linux在內核結構的設計中就考慮適應系統的可裁減性的要求,而Windows CE在內核結構的設計中并未考慮適應系統的高度可裁減性的要求。加上Linux源代碼是公開的,它讓你能夠深入到系統底層,可以任意修改以滿足自己的應用,并且查錯也很容易,如果你愿意并且有這個能力的話。這為開發者編寫和剪裁屬于自己專有硬件的程序帶來很大的方便。 

  但在運行 Linux時的一個缺點是Linux體系提供實時性能時需要添加實時軟件模塊,而這些模塊運行的內核空間正是操作系統實現調度策略、硬件中斷異常和執行程序的部分。由于這些實時軟件模塊是在內核空間運行的,因此代碼錯誤可能會破壞操作系統從而影響整個系統的可靠性,這對于物聯網嵌入式設備在可剪裁應用時將是一個非常嚴重的弱點。