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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 嵌入式Linux操作系統(tǒng)的廣泛應用分析

          嵌入式Linux操作系統(tǒng)的廣泛應用分析

          作者: 時間:2012-05-22 來源:網絡 收藏

          現在廣泛用于各類計算應用,不僅包括微型腕表、手持設備(PDA和蜂窩電話)、因特網裝置、瘦客戶機、防火墻、工業(yè)機器人和電話基礎設施設備,甚至還包括了基于集群的超級計算機。讓我們看一下用作系統(tǒng)需要提供哪些功能,以及它在目前可用的選擇中最具吸引力的原因所在。
          linux文章專題:linux詳解(linux不再難懂) 系統(tǒng)的出現

          用于控制設備的計算機,也叫做系統(tǒng),它的歷史幾乎和計算機自身的歷史一樣長。它們最初于六十年代晚期在通訊中被用于控制機電電話交換機。由于在過去的十多年里,計算機產業(yè)不斷朝著更小的系統(tǒng)方向發(fā)展,嵌入式系統(tǒng)也與之一起為這些小型機器提供了更多的功能。漸漸地,就需要把這些嵌入式系統(tǒng)連接到某種網絡上,因而也就產生了對網絡棧的要求,這提高了系統(tǒng)的復雜程度并要求更多的存儲器和接口,還有,您猜對了,的服務。

          七十年代晚期出現了用作嵌入式系統(tǒng)的現成的操作系統(tǒng),現在有許多可行的選擇方案。其中,一些主要的競爭者開始嶄露頭角,比如,VxWorks、pSOS、Neculeus和WindowsCE。

          在嵌入式系統(tǒng)中使用Linux的優(yōu)點和缺點

          雖然大多數Linux系統(tǒng)運行在PC平臺上,但Linux也可以作為嵌入式系統(tǒng)的可靠主力。Linux流行的“back-to- basics”方法使得它的安裝和管理比UNIX更加簡單靈活,這對于那些UNIX專家們來說又是一個優(yōu)點,他們已經因為Linux中有許多命令和編程接口同傳統(tǒng)的UNIX一樣而賞識了。

          典型的壓縮包裝Linux系統(tǒng)經過打包,在擁有硬盤和大容量內存的PC機上運行,嵌入式系統(tǒng)可不要這么高的配置。一個功能完備的Linux內核要求大約1MB內存。而Linux微內核只占用其中很小一部分內存,包括虛擬內存和所有核心的操作系統(tǒng)功能在內,只需占用PentiumCPU系統(tǒng)的100K內存。只要有500K的內存,一個有網絡棧和基本實用程序的完全的Linux系統(tǒng)就可以在一臺8位總線(SX)的Intel386微處理器上運行的很好了。由于內存要求常常是需要的應用所決定的,比如Web服務器或者SNMP代理,Linux系統(tǒng)甚至可以僅使用256KBROM和512KBRAM進行工作。因此它是一個瞄準嵌入式市場的輕量級操作系統(tǒng)。

          與傳統(tǒng)的實時操作系統(tǒng)相比(RTOS),采用象嵌入式Linux這樣的開放源碼的操作系統(tǒng)的另外一個好處是Linux開發(fā)團體看來會比RTOS的供應商更快地支持新的IP協(xié)議和其它協(xié)議。例如,用于Linux的設備驅動程序要比用于商業(yè)操作系統(tǒng)的設備驅動程序多,如網絡接口卡(NIC)驅動程序以及并口和串口驅動程序。

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

          閃存

          快閃 RAM 內存是大多數 Palm 設備用來存儲操作系統(tǒng)的專用的存儲器。它具有允許操作系統(tǒng)升級的優(yōu)點,還可以用于數字式蜂窩電話、數字式照相機、LAN 交換機、PC 卡、數字式機頂盒、嵌入式控制器和其它小型設備。嵌入式系統(tǒng),如嵌入式 Linux,不要求有磁盤驅動器,盡管可能使用其它的內存組織方式。因此如果,打個比方,Linux 用完了閃存,它就可以將其中一部分作為只讀的文件系統(tǒng)來存儲額外的程序和靜態(tài)數據。

          核心 Linux 操作系統(tǒng)本身的微內核體系結構相當簡單。網絡和文件系統(tǒng)以模塊形式置于微內核的上層。驅動程序和其它部件可在運行時作為可加載模塊編譯到或者是添加到內核。這為構造定制的可嵌入系統(tǒng)提供了高度模塊化的構件方法。而在典型情況下該系統(tǒng)需結合定制的驅動程序和應用程序以提供附加功能。

          嵌入式系統(tǒng)也常常要求通用的功能,為了避免重復勞動,這些功能的實現運用了許多現成的程序和驅動程序,它們可以用于公共外設和應用。Linux 可以在外設范圍廣泛的多數微處理器上運行,并早已經有了現成的應用庫。

          Linux 用于嵌入式的因特網設備也是很合適的,原因是它支持多處理器系統(tǒng),該特性使 Linux 具有了伸縮性。因而設計人員可以選擇在雙處理器系統(tǒng)上運行實時應用,提高整體的處理能力。例如,您可以在一個處理器運行 GUI,同時在另一個處理器上運行 Linux 系統(tǒng)。

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

          另一方面,現成的 RTOS 完全是為實時性能而設計的,它通過在由用戶而非系統(tǒng)級進程啟動時分配給某個進程以高于其它進程的優(yōu)先級的方式來實現可靠性。進程在操作系統(tǒng)看來就是在內存里或硬盤驅動器上執(zhí)行的程序。給他們指定進程 ID 或者數字標識符為的是讓操作系統(tǒng)跟蹤正在執(zhí)行的程序和這些程序的相關聯(lián)的優(yōu)先等級。這樣的方式保證了 RTOS 時間能比 Linux 提供更高的可靠性(可預見性)。但最重要的,這還是一種更加經濟的選擇。

          不同類型的嵌入式 Linux 系統(tǒng)

          已經有許多嵌入式 Linux 系統(tǒng)的示例;可以有把握地說,某種形式的 Linux 能在幾乎任一臺執(zhí)行代碼的計算機上運行。例如,ELKS(可嵌入 Linux 內核子集)方案計劃在 Palm Pilot 上使用 Linux。下面列出了一些更加廣為人知的小型嵌入式 Linux 版本:

          ETLinux — 設計用于在小型工業(yè)計算機,尤其是 PC/104 模塊上運行的 Linux 的完全分發(fā)版。

          LEM — 運行在 386 上的小型(8 MB)多用戶、網絡 Linux 版本。

          LOAF — “Linux On A Floppy”分發(fā)版,運行在 386 上。

          uClinux — 在沒有 MMU 的系統(tǒng)上運行的 Linux。目前支持 Motorola 68K、MCF5206 和 MCF5207 ColdFire 微處理器。

          uLinux — 在 386 上運行的 tiny Linux 分發(fā)版。

          ThinLinux — 面向專用的照相機服務器、X-10 控制器、MP3 播放器和其它類似的嵌入式應用的最小化的 Linux 分發(fā)版。

          軟件和硬件要求

          許多的用戶接口工具和程序增強了 Linux 基本內核的多功能性。就此而論,可以把 Linux 看作是這樣一個連續(xù)范圍,從只有存儲器管理、任務轉換和定時器服務最小化的微內核一直到完整的一系列文件系統(tǒng)和網絡服務的功能完善的服務器。

          最小的嵌入式 Linux 系統(tǒng)僅需要三個基本元素:

          引導實用程序

          Linux 微內核,由內存管理、進程管理和定時服務構成。

          初始化過程

          要實現最低限度的工作能力,您還需要添加。

          硬件驅動程序

          一個或多個應用進程,以提供所需功能。

          隨著要求的增加,您可能還需要:

          一個文件系統(tǒng)(可能是在 ROM 或者是 RAM 里);

          TCP/IP 網絡棧;

          儲存半瞬態(tài)數據和提供交換空間的磁盤;

          32 位內置 CPU(所有完全的 Linux 系統(tǒng)都需要);

          相關的硬件方案。

          下面是一些現有的為 Linux 操作系統(tǒng)定制的嵌入式硬件方案。

          PLEB:帶有 ARM SA-1100 / ArmLinux Ucsimm / Uclinux Flash EPROM 的袖珍 Linux 嵌入式機器Linux Lab: Linux Lab 方案旨在幫助人們開發(fā) Linux 數據采集和過程控制軟件。它計劃提供從硬件支持到應用開發(fā)的廣闊范圍內應用的標準化開發(fā)環(huán)境。

          控制器域網:Linux GPIB 的控制器域網(CAN)總線驅動程序;Linux GPIB 包是一個對普通 GPIB(IEEE 488.1)硬件的支持包。驅動程序支持 National Instruments AT-GPIB、TNT488.2 以及 PCII 和 PCIIa 板。這個包里有完整的開發(fā)環(huán)境,包括測試和配置工具、庫以及對 tcl 和 python 語言的支持。  

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          linux相關文章:linux教程



          上一頁 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); })();