回覆列表
  • 1 # 使用者1430558932451

    嵌入式作業系統EOS(EmbeddedOperatingSystem)是一種用途廣泛的系統軟體,過去它主要應用於工業控制和國防系統領域。EOS負責嵌人系統的全部軟、硬體資源的分配、排程工作,控制協調併發活動;它必須體現其所在系統的特徵,能夠透過裝卸某些模組來達到系統所要求的功能。目前,已推出一些應用比較成功的EOS產品系列。隨著Internet技術的發展、資訊家電的普及應用及EOS的微型化和專業化,EOS開始從單一的弱功能向高專業化的強功能方向發展。嵌人式作業系統在系統實時高效性、硬體的相關依賴性、軟體固態化以及應用的專用性等方面具有較為突出的特點。EOS是相對於一般作業系統而言的,它除具備了一般作業系統最基本的功能,如任務排程、同步機制、中斷處理、檔案功能等外,還有以下特點: (1)可裝卸性。開放性、可伸縮性的體系結構。 (2)強實時性。EOS實時性一般較強,可用於各種裝置控制當中。 (3)統一的介面。提供各種裝置驅動接日. (4)操作方便、簡單、提供友好的圖形GUI,圖形介面,追求易學易用. (5)提供強大的網路功能,支援TCP門P協議及其它協議,提供TCP/UDP/IP/PPP協議支援及統一的MAC訪問層介面,為各種移動計算裝置預留介面. (6)強穩定性,弱互動性。嵌入式系統一旦開始執行就不需要使用者過多的干預,這就要負責系統管理的EOS臭有較強的穩定性。嵌入式作業系統的使用者接日一般不提供操作命令,它透過系統呼叫命令向用戶程式提供服務。 (7)固化程式碼。在嵌入系統中,嵌入式作業系統和應用軟體被固化在嵌入式系統計算機的ROM中。輔助儲存器在嵌入式系統中很少使用,因此,嵌入式作業系統的檔案管理功能應該能夠很容易地拆卸,而用各種記憶體檔案系統. (8)更好的硬體適應性,也就是良好的移植性. 國際上用於資訊電器的嵌入式作業系統有40種左右。現在,市場上非常流行的EOS產品,包括3Corn公司下屬子公司的PalmOS,全球佔有份額達50%,MicroS。fi公司的Wind。wsCE不過29%。在美國市場,PalmOS更以80%的佔有率遠超WindowsCE。開放原始碼的Linux很適於做資訊家電的開發. 比如:中科紅旗軟體技術有限公司開發的紅旗嵌入式Linux和美商網虎公司開發的基於Xlinux的嵌人式作業系統“夸克”。“夸克”是目前全世界最小的Linux,它有兩個很突出的特點,就是體積小和使用GCS編碼。 常見的嵌入式系統有:Linux、uClinux、WinCE、PalmOS、Symbian、eCos、uCOS-II、VxWorks、pSOS、Nucleus、ThreadX、Rtems、QNX、INTEGRITY、OSE、CExecutive. 嵌入式作業系統的發展 1.引言 嵌入式作業系統與嵌入式系統密不可分。嵌入式系統主要由嵌入式微處理器、外圍硬體裝置、嵌入式作業系統以及使用者的應用程式等四個部分組成,它是集軟硬體於一體的可獨立工作的“器件”。 嵌入式技術的發展,大致經歷了四個階段[1]。 第一階段是以單晶片為核心的可程式設計控制器形式的系統,同時具有與監測、伺服、指示裝置相配合的功能。這種系統大部分應用於一些專業性極強的工業控制系統中,一般沒有作業系統的支援,透過組合語言程式設計對系統進行直接控制,執行結束後清除記憶體。 第二階段是以嵌入式CPU為基礎、以簡單作業系統為核心的嵌入式系統。這一階段的作業系統具有一定的相容性和擴充套件性,但使用者介面不夠友好。 第三階段是以嵌入式作業系統為標誌的嵌入式系統。這一階段系統的主要特點是:嵌入式作業系統能運行於各種不同型別的微處理器上,相容性好;作業系統核心精小、效率高,並且具有高度的模組化和擴充套件性;具備檔案和目錄管理、裝置支援、多工、網路支援、圖形視窗以及使用者介面等功能;具有大量的應用程式介面(API),開發應用程式簡單;嵌入式應用軟體豐富。 第四階段是以基於Internet為標誌的嵌入式系統,這是一個正在迅速發展的階段。目前大多數嵌入式系統還孤立於Internet之外,但隨著Internet的發展以及Internet技術與資訊家電、工業控制技術等結合日益密切,嵌入式裝置與Internet的結合將代表著嵌入式技術的真正未來[2]。 嵌入式系統的發展對嵌入式作業系統提出了更高的要求。因此,對嵌入式作業系統的結構、設計、使用者介面等諸多方面進行深入研究,將有助於嵌入式系統的應用和發展。 2.嵌入式作業系統的特點 2.1嵌入式系統的開發人員對作業系統的依賴性 早期的硬體裝置很簡單,軟體的程式設計和除錯工具也很原始,與硬體系統配套的軟體都必須從頭編寫。程式大都採用宏組合語言,除錯是一件很麻煩的事。隨著系統越來越複雜,作業系統就顯得很必要。 (1)作業系統能有效管理越來越複雜的系統資源。 (2)作業系統能夠把硬體虛擬化,使得開發人員從繁忙的驅動程式移植和維護中解脫出來。 (3)作業系統能夠提供庫函式、驅動程式、工具集以及應用程式。 在70年代的後期,出現了嵌入式系統的作業系統。在80年代末,市場上出現了幾個著名的商業嵌入式作業系統,包括Vxwork、Neculeus、QNX和WindowsCE等,這些系統提供效能良好的開發環境,提高了應用系統的開發效率。 2.2嵌入式作業系統的特點 與其他型別的作業系統相比,嵌入式作業系統具有以下一些特點。 (1)體積小。嵌入式系統有別於一般的計算機處理系統,它不具備像硬碟那樣大容量的儲存介質,而大多使用快閃記憶體(FlashMemory)作為儲存介質。這就要求嵌入式作業系統只能執行在有限的記憶體中,不能使用虛擬記憶體,中斷的使用也受到限制。因此,嵌入式作業系統必須結構緊湊,體積微小。 (2)實時性。大多數嵌入式系統都是實時系統,而且多是強實時多工系統,要求相應的嵌入式作業系統也必須是實時作業系統(RTOS)[8]。實時作業系統作為作業系統的一個重要分支已成為研究的一個熱點,主要探討實時多工排程演算法和可排程性、死鎖解除等問題。 (3)特殊的開發除錯環境。提供完整的整合開發環境是每一個嵌入式系統開發人員所期待的。一個完整的嵌入式系統的整合開發環境一般需要提供的工具是編譯/聯結器、核心除錯/跟蹤器和整合圖形介面開發平臺。其中的整合圖形介面開發平臺包括編輯器、偵錯程式、軟體模擬器和監視器等。 3.嵌入式作業系統的發展狀況 國外嵌入式作業系統已經從簡單走向成熟,主要有Vxwork、QNX、PalmOS、WindowsCE等。國內的嵌入式作業系統研究開發有2種類型,一類是基於國外作業系統二次開發完成的,如海信的基於WindowsCE的機頂盒系統;另一類是中國自主開發的嵌入式作業系統,如凱思集團公司自主研製開發的嵌入式作業系統HopenOS(“女媧計劃”)等。 WindowsCE核心較小,能作為一種嵌入式作業系統應用到工業控制等領域。其優點在於便攜性、提供對微處理器的選擇以及非強行的電源管理功能。內建的標準通訊能力使WindowsCE能夠訪問Internet並收發E_mail或瀏覽Web。除此之外,WindowsCE特有的與Windows類似的使用者介面使終端使用者易於使用。WindowsCE的缺點是速度慢、效率低、價格偏高、開發應用程式相對較難。 3Com公司的PalmOS在掌上電腦和PDA市場上獨佔其霸主地位,它有開放的作業系統應用程式介面(API),開發商可根據需要自行開發所需的應用程式。 QNX是由加拿大QSSL公司開發的分散式實時作業系統,它由微核心和一組共操作的程序組成,具有高度的伸縮性,可靈活地剪裁,最小配置只佔用幾十KB記憶體。因此,可以廣泛地嵌入到智慧機器、智慧儀器儀表、機頂盒、通訊裝置、PDA等應用中去[6][7]。 HopenOS是凱思集團自主研製開發的嵌入式作業系統,由一個體積很小的核心及一些可以根據需要進行定製的系統模組組成。其核心HopenKernel一般為10KB左右大小,佔用空間小,並具有實時、多工、多執行緒的系統特徵。 在眾多的實時作業系統和嵌入式作業系統產品中,WindRiver公司的VxWorks是較為有特色的一種實時作業系統[5]。VxWorks支援各種工業標準,包括POSIX、ANSIC和TCP/IP網路協議。VxWorks執行系統的核心是一個高效率的微核心,該微核心支援各種實時功能,包括快速多工處理、中斷支援、搶佔式和輪轉式排程。微核心設計減輕了系統負載並可快速響應外部事件。在美國宇航局的“極地登陸者”號、“深空二號”和火星氣候軌道器等登陸火星探測器上,就採用了VxWorks,負責火星探測器全部飛行控制,包括飛行糾正、載體自旋和降落時的高度控制等,而且還負責資料收集和與地球的通訊工作。目前在全世界裝有VxWorks系統的智慧裝置數以百萬計,其應用範圍遍及網際網路、電信和資料通訊、數字影像、網路、醫學、計算機外設、汽車、火控、導航與制導、航空、指揮、控制、通訊和情報、聲納與雷達、空間與導彈系統、模擬和測試等眾多領域。 4.Linux 4.1嵌入式Linux的應用開發前景 Linux是個與生俱來的網路作業系統,成熟而且穩定。Linux是原始碼開放軟體,不存在黑箱技術,任何人都可以修改它,或者用它開發自己的產品。Linux系統是可以定製的,系統核心目前已經可以做得很小。一個帶有中文系統及圖形化介面的核心程式也可以做到不足1MB,而且同樣穩定。Linux作為一種可裁減的軟體平臺系統,是發展未來嵌入裝置產品的絕佳資源,遍佈全球的眾多Linux愛好者又能給予Linux開發者強大的技術支援。因此,Linux作為嵌入式系統新的選擇,是非常有發展前途的。 (1)與硬體晶片的緊密結合 後PC時代的智慧裝置已經逐漸地模糊了硬體與軟體的界限,SOC系統(SystemOnChip)的發展就是這種軟硬體無縫結合趨勢的證明。隨著處理器片內微碼的發展,在將來可能出現在處理器片內嵌進作業系統的程式碼模組。 嵌入式Linux的一大特點是:與硬體晶片(如SOC等)的緊密結合。它不是一個純軟體的Linux系統,而比一般作業系統更加接近於硬體。嵌入式Linux的進一步發展,逐步地具備了嵌入式RTOS的一切特徵:實時性及與嵌入式處理器的緊密結合。 (2)開放的原始碼 嵌入式Linux的另一大特點是:程式碼的開放性。程式碼的開放性是與後PC時代的智慧裝置的多樣性相適應的。程式碼的開放性主要體現在原始碼可獲得上,Linux程式碼開發就像是“集市式”開發,任意選擇並按自己的意願整合出新的產品。 對於嵌入式Linux,事實上是把BIOS層的功能實現在Linux的driver層。目前,在Linux領域,已經出現了專門為Linux作業系統定製的自由軟體的BIOS程式碼,並在多款主機板上實現此類的BIOS層功能。 (3)嵌入式Linux與硬體晶片的緊密結合 對於許多資訊家電的應用來說,嵌入的效能指標是最難滿足的,只有靠提高晶片的整合度與裝配密度來解決。嵌入式Linux與標準Linux的一個重要區別是嵌入式Linux與硬體晶片的緊密結合。這是一個不可逾越的難點,也是嵌入式Linux技術的關鍵之處。嵌入式Linux和商用專用RTOS一樣,需要編寫BSP(BoardSupportPackage),這相當於編寫PC的BIOS。這不僅僅是嵌入式Linux的難點,也是使用商用專用RTOS開發的難點。硬體晶片(SOC晶片或者是嵌入式處理器)的多樣性也決定了程式碼開放的嵌入式Linux的成功。嵌入式系統的發展,必然導致軟硬體無縫結合的趨勢,逐漸地模糊了硬體與軟體的界限,在將來可能出現SOC片內的作業系統程式碼模組。 隨著處理器片內微碼的發展,在將來應出現在處理器片內嵌進作業系統的程式碼模組,很顯然模組將具有安全性好、健壯性強、程式碼執行效率高等特點。著眼於未來的嵌入式系統的發展,我們基於對嵌入式Linux技術的深入研究,對嵌入式處理器及SOC系統的深刻理解和研究;對EDA技術的深入研究;對模擬數字混合積體電路晶片的深入研究;對SOC片內進行嵌入式Linux作業系統程式碼的植入研究。此類的研究有可能減輕系統開發者對BSP開發的難度要求,並使得嵌入式Linux能夠成為普及的嵌入式作業系統,而大大提高嵌入式Linux的易用性,提高其開發出的高智慧裝置的安全性、穩定性,同時也大大提高智慧裝置的計算能力、處理能力。 4.2部分嵌入式Linux產品[3][4] 嵌入式Linux一般是按照嵌入式目標系統的要求而設計,由一個體積很小的核心及一些可以根據需要進行隨意裁減的系統模組組成。一般來說整個系統所佔用的空間不會超過幾M大小。目前,國外不少大學、研究機構和知名公司都加入了嵌入式Linux的開發工作,較成熟的嵌入式Linux產品不斷湧現。 由美國新墨西哥理工學院開發的基於標準Linux的嵌入式作業系統RTLinux,已成功地應用於太空梭的空間資料採集、科學儀器測控、電影特技影象處理等領域。RTLinux開發者並沒有針對實時作業系統的特性重寫Linux的核心,這樣做工作量會非常大,而且要保證相容性也非常困難。為此,RTLinux提供了一個精巧的實時核心,並把標準的Linux核心作為實時核心的一個程序同用戶的實時程序一起排程,這樣做的好處是對Linux的改動量最小,充分利用了Linux平臺下現有的豐富的軟體資源。 由嵌入式Linux行業主要廠商之一Lineo推出的Embedix,是根據嵌入式應用系統的特點重新設計的Linux發行版本。Embedix提供了超過25種的Linux系統服務,包括Web伺服器等。系統需要最小8M記憶體,3M只讀記憶體或快閃記憶體。Embedix基於Linux2.2核心,並已經成功地移植到了IntelX86和PowerPC處理器系列上。 由美國網虎公司推出的XLinux,號稱是世界上最小的嵌入式Linux系統,核心只有143K位元組,而且還在不斷減小。 致力於中國產嵌入式Linux作業系統和應用軟體開發的廣州博利思軟體公司推出的嵌入式Linux中文作業系統POCKETIX,基於標準的Linux核心,幷包括一些可以根據需要進行定製的系統模組。支援標準乙太網和TCP/IP協議、支援標準的XWindow,中文支援採用國際化標準,提供桌面和視窗管理功能、帶WEB瀏覽器和檔案管理器,並支援智慧拼音和五筆字型輸入。可適應個人PDA、WAP手機、機頂盒等廣泛的智慧資訊產品。 4.3開發嵌入式Linux的幾個問題 (1)Linux的移植。如果Linux不支援選用的平臺,就需要把Linux核心中與硬體平臺相關的部分改寫,使之支援所選用的平臺。 (2)核心的裁剪。嵌入式產品的可用資源比較少,所以它的核心相對嵌入式系統來說就顯得有點大,需要進行剪裁到可利用的大小。 (3)桌面系統。現代的作業系統如果沒有一個友好的介面是沒有說服力的。現在的桌上型電腦Linux系統使用了傳統的XWindow系統的模式—Client/Server結構。和硬體有關的部分即是Server端,實現一個標準的顯示介面;應用程式透過對Server的服務請求,實現程式的顯示。在此之上,實現視窗的管理功能。但XWindow對於嵌入式系統來說顯得很龐大。現在國內有MiniGUI,國外有MicroWindow,都在致力於嵌入式LinuxGUI的開發。適用於嵌入式Linux上的XWindow的工作也在進行。 (4)驅動程式的開發。Linux核心更新的很快,許多最新的硬體驅動很快就被支援。但嵌入式系統應用領域是多種多樣的,所選用的硬體裝置也不同,並且不可能都有Linux的驅動程式,因此,裝置驅動程式的開發也是重要的工作。 (5)應用軟體的開發。 (6)中文的支援。 5.結束語 目前,絕大部分嵌入式系統的硬體平臺還掌握在外國公司的手中,中國產的嵌入式作業系統在技術含量、相容性、市場運作模式等方面也還有很多工作要做,我們應該在跟蹤國外嵌入式作業系統的最新技術的同時,堅持自主產權,力爭找到自己的突破點,探索出一條自己的發展道路。

  • 中秋節和大豐收的關聯?
  • 你認為有哪些不火卻特別好看的動漫?