新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 低固存嵌入式系統(tǒng)的uClinux小型化方法

低固存嵌入式系統(tǒng)的uClinux小型化方法

作者: 時(shí)間:2011-06-21 來源:網(wǎng)絡(luò) 收藏

在許多中,往往只有低容量的固存,比如MCF5282芯片內(nèi)只有512k FLASH,而有些微處理器固存可能更低。在不外擴(kuò)固存容量,降低穩(wěn)定性的條件下,特別是在干擾源嚴(yán)重的工控環(huán)境下,采用短小、精煉的操作將具有非常大的實(shí)用意義。文中以下內(nèi)容將針對(duì)低固存系統(tǒng),討論的幾種特殊簡化,應(yīng)用這些,將非常有助于開發(fā)者開發(fā)出適合于自已的嵌入式系統(tǒng)。

本文引用地址:http://m.butianyuan.cn/article/150585.htm

  1 內(nèi)核移植

  移植前首先要搭建交叉編譯平臺(tái),安裝交叉編譯工具鏈,包括GCC,Binutils,uClibc。準(zhǔn)備就緒后即可開始進(jìn)行移植操作,移植過程中最大困難是如何減小系統(tǒng)的大小。為此文中從以下兩個(gè)方面著手:內(nèi)核配置級(jí)裁剪和內(nèi)核源代碼級(jí)裁剪。

  1.1 內(nèi)核配置級(jí)裁剪

  Linux內(nèi)核采用模塊化的設(shè)計(jì),即很多功能塊可以獨(dú)立地加上或卸下,開發(fā)人員在設(shè)計(jì)內(nèi)核時(shí)把這些內(nèi)核模塊作為可選的選項(xiàng),可以在編譯系統(tǒng)內(nèi)核時(shí)指定。因此一種較通用的做法是對(duì)Linux內(nèi)核重新編譯,在編譯時(shí)仔細(xì)地選擇嵌入式設(shè)備所需要的功能支持模塊,同時(shí)刪除不需要的功能。通過對(duì)內(nèi)核的重新配置,可以使系統(tǒng)運(yùn)行所需要的內(nèi)核顯著減小,從而縮減資源使用量。對(duì)于內(nèi)核中不支持的設(shè)備,可以自已編制設(shè)備驅(qū)動(dòng)程序,然后添加進(jìn)內(nèi)核。配置完內(nèi)核,接下來需要對(duì)內(nèi)核源代碼文件的依賴性和完整性進(jìn)行檢驗(yàn),并進(jìn)行編譯。

  1.2 內(nèi)核源代碼級(jí)裁剪

  Linux核心包括:進(jìn)程管理模塊、內(nèi)存管理模塊、文件系統(tǒng)、設(shè)備驅(qū)動(dòng)模塊、網(wǎng)絡(luò)模塊。在內(nèi)核中文件系統(tǒng)和設(shè)備驅(qū)動(dòng)程序占了大比重,約1/3以上,所以去除不必要的文件系統(tǒng)和設(shè)備驅(qū)動(dòng)程序?qū)?huì)使內(nèi)核大小有較大范圍的縮減,這已在上一步驟中實(shí)現(xiàn)。所以文件系統(tǒng)的裁剪是重中之重??紤]到制作整個(gè)根文件系統(tǒng)的高昂代價(jià),約有700kbyte大小,而一般嵌入式微處理器的FLASH一般小于512kbyte,根本就不可能固化,所以為了縮減系統(tǒng)的大小必須刪除根文件系統(tǒng),同時(shí)也導(dǎo)致內(nèi)核與應(yīng)用程序必須一體化。要?jiǎng)h除根文件系統(tǒng),并不是簡單刪除源代碼,而是一個(gè)錯(cuò)綜復(fù)雜的宏大工程。整個(gè)系統(tǒng)的框架如圖1所示。

  

  在本系統(tǒng)中刪除了根文件系統(tǒng),但仍保留VFS,主要保持VFS向上層提供統(tǒng)一接口,隱藏下層具體細(xì)節(jié)等作用,方便開發(fā)應(yīng)用程序。同時(shí)針對(duì)文件規(guī)模小、數(shù)量少的嵌入式系統(tǒng)VFS在這里要減小它的規(guī)模和簡化它的功能。規(guī)模的減小工作主要靠刪除在嵌入式設(shè)備不支持的物理文件系統(tǒng)、設(shè)備驅(qū)動(dòng)程序及其系統(tǒng)調(diào)用的源碼。功能的簡化主要靠簡化部分?jǐn)?shù)據(jù)結(jié)構(gòu)和系統(tǒng)調(diào)用,這樣可以進(jìn)一步使系統(tǒng)規(guī)模精簡。ReFS文件系統(tǒng),是根據(jù)嵌入式系統(tǒng)的特性開發(fā)的一種新的文件系統(tǒng)。具體參見第3節(jié)新型文件系統(tǒng)(ReFS)開發(fā)。

  由于根文件系統(tǒng)的缺失帶來一些重大影響,分析如下。

  

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

linux相關(guān)文章:linux教程



上一頁 1 2 3 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉