新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > PC/104平臺嵌入式Linux系統核心定制方法

        PC/104平臺嵌入式Linux系統核心定制方法

        作者: 時間:2008-11-26 來源:網絡 收藏

          

          摘 要:基于/104平臺的嵌入式Linux技術在海洋自動觀測系統中具有廣泛的應用前景,Linux核心方法的研究是嵌入式Linux系統研制的關鍵工作。本文結合/104平臺嵌入式Linux系統的研制,詳細論述了Linux內核和文件系統的方法。

          關鍵詞:Linux;內核;文件系統;

          本文就如何對Linux系統的核心實現進行論述,主要內容包括Linux內核部分和文件系統,系統定制的硬件平臺是/104單片機。之所以將Linux內核定制、文件系統定制單獨討論,是因為在基于任何平臺的Linux系統定制過程中,其內核和文件系統的定制工作都具有相似的特征和相似的過程。

          在基于PC/104平臺的嵌入式Linux研制過程中,進行核心定制的主要目的是從需求出發使系統最大程度地滿足應用的需要、最大程度地適應系統硬件平臺、最優化地支持系統外圍設備和應用程序,并且盡量減少對系統資源的占用、減少系統功耗,增強系統的安全性、穩定性、可靠性,另外使系統真正地實現產權自主化。

          內核定制

          一般操作系統的內核從體系結構角度可以劃分為兩種:微內核體系結構、單內核體系結構。微內核體系結構只在內核中包括了一些基本的內核功能,其它部分在用戶內存空間運行,這種結構需要在各層之間進行調用,因此會有一定的消耗,使執行效率不如單內核體系結構。Linux采用單內核體系結構,內核的所有部分都集中在一起,這樣能使系統的各部分直接溝通,有效地縮短任務之間的切換時間,提高了系統的響應速度,實時性好并提高了CPU的利用率,但在系統比較大的時候體積也比較大,與嵌入式系統容量小、資源有限的特點不符合,因此需要進行非常精細的定制以適應嵌入式系統的需要。

          內核版本

          Linux的源程序是完全公開的,任何人只要遵循GPL,就可以對內核加以修改并發布給他人使用。Linux的開發采用的是雙樹系統。一個樹是穩定樹(stable tree),另一個樹是非穩定樹(unstable tree)或稱開發樹(development tree)。一些新特性、實驗性改進等都將首先在開發樹中進行,如果在開發樹中所做的改進也可以應用于穩定樹,那么在開發樹中經過測試以后,在穩定樹中將進行相同的改進。一旦開發樹經過了足夠的發展,開發樹就會成為新的穩定樹。開發樹就體現在源程序的版本號中;源程序版本號的形式為x.y.z,對于穩定樹來說,y是偶數;對于開發樹來說,y比相應的穩定樹大一(是奇數)。到目前為止,穩定樹的最高版本是2.4.21,開發樹的最新版本是2.5.73。本項目采用的內核版本是2.2.20,選擇2.2.20版本內核的主要原因有:

          a.版本為2.0及以前內核中的設備驅動不如2.2版本的全面;

          b.版本為2.2的內核增加了很多新特性;

          c.新的版本為2.4的內核對PC/104的CPU塊支持不好;

          d.由于不明原因版本為214的內核對PC/104 ;

          e.版本為2.4內核相對龐大,編譯后的內核文件也相對較大;

          f.版本為2.2的內核已完全能夠滿足本項目的需要。

          目前,大多數面向數據采集的嵌入式Linux研制工作都是基于版本2.0/2.2內核進行的。實際上,內核版本的提升,其復雜度也隨之升高,也會給嵌入式系統的定制工作帶來很多的困難。

          內核設置

          內核設置工作可以通過直接修改內核源代碼中的Make file文件、Config.in文件和內核源代碼根目錄下的.config文件來完成。內核源代碼中的每個目錄都有各自的用途,每個子目錄下也都有相應的Make file文件。例如,在目錄drivers/block/ Config.in文件中有如下語句:


        上一頁 1 2 3 4 5 6 7 8 9 10 11 12 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 乌拉特中旗| 中山市| 故城县| 宜春市| 张家川| 德令哈市| 永兴县| 康定县| 洛隆县| 宜春市| 襄樊市| 巴塘县| 长顺县| 芷江| 花莲市| 中卫市| 和静县| 甘孜县| 稻城县| 阳谷县| 大石桥市| 乌拉特后旗| 锦州市| 盐山县| 墨竹工卡县| 九寨沟县| 香格里拉县| 揭西县| 曲周县| 麻江县| 平山县| 永嘉县| 轮台县| 敦化市| 保定市| 高碑店市| 汕尾市| 东光县| 福清市| 石门县| 南部县|