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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于PC/104平臺嵌入式Linux系統(tǒng)核心定制方法

          基于PC/104平臺嵌入式Linux系統(tǒng)核心定制方法

          作者: 時間:2012-04-05 來源:網(wǎng)絡 收藏

          字符設備。其中有:
          I2C support: I2C是Philips極力推動的微控制應用中使用的低速串行總線協(xié)議。如果要選擇下面的Video For ,該項必選。
          Mice:鼠標。現(xiàn)在可以支持總線、串口、PS/2、CT82C710 mouseport、PC110 digitizerpad。
          Joysticks:手柄支持。Watchdog Cards:如果把這個選中,那么就會在/dev下創(chuàng)建一個名為watchdog的文件,它可以記錄系統(tǒng)的運行情況,一直到系統(tǒng)重新啟動的1min左右。有了這個文件,就可以恢復系統(tǒng)到重啟前的狀態(tài)了。
          Video For :支持有關的音頻/視頻卡。
          Ftape,the floppy tape device driver:
          PCMCIA character device support:上邊介紹了。

          (21)Filesy stems。介紹以下幾項:
          Quota support: Quota可以限制每個用戶可以使用的硬盤空間的上限,在多用戶共同使用一臺主機的情況中十分有效。
          DOSFAT fssupport: DOSFAT文件格式的支持,可以支持FAT16、FAT32。
          ISO 9660CD-ROM file system support:光盤使用的就是ISO9660的文件格式。
          NTFS file system support:ntfs是NT使用的文件格式。
          /proc file system support:/proc是Lnux提供給用戶和系統(tǒng)進行交互的通道,應該選上,否則有些功能沒法正確執(zhí)行。
          還有另外3個大類是:Network File Systems(網(wǎng)絡)、Partition Types(分區(qū)類型)、
          NativeLanguageSupport(本地語言支持)。值得一提的是NetworkFileSystems里面的兩種:NFS和SMB分別是和Windows相互以網(wǎng)絡鄰居的形式訪問對方所使用的文件系統(tǒng)。

          (22)Console drivers控制臺驅動。一般使用VGA text console就可以了,標準的80325的文本控制臺。
          (23)Sound聲卡驅動。
          (24)USB supprotUSB支持。很多USB設備,比如鼠標、調制解調器、打印機、掃描儀等,在Linux都可以得到支持。 (25)Kernel hacking配置此選項可以在系統(tǒng)崩潰時,也可以進行一定的工作了。但對于普通用戶是用不著這個功能的。

          編譯

          配置結束后就可以編譯了,內核編譯只有幾個指令,但是內核編譯的時間可能會很長。在執(zhí)行內核配置之前可以先執(zhí)行#make mrproper命令,檢查內核源程序,以發(fā)現(xiàn)內核文件是否完備。
          內核編譯的命令如下:
          #maked ep:使內核正確設置所有模塊的依賴關系。
          make clean:清除所有已存在的目標文件,已存在的目標文件主要由上次內核編譯形成,如果忘記做這一步,生成的內核將會非常龐大。
          #make zImage/zdisk/bzImage/zlilo:生成一個經(jīng)過壓縮的內核。如果要制作成啟動盤就使用make zdisk,而make zlilo則把生成的內核加入LLO中,不過在最初幾次編譯內核時不要使用此項,以免系統(tǒng)因生成的內核有故障而不能啟動。make bzImage用于生成超過1M文件大小的內核,makezImage生成小于1M的內核。內核文件是經(jīng)過壓縮處理的。如果內核中使用了可裝卸的模塊,則需要依次運行以下指令:
          #make modules:編譯內核模塊。
          #make modules_install:安裝內核模塊。

          編譯后的內核文件存放在arch/i386/boot/目錄下。以下為一個內核編譯配置腳本,采用該腳本編譯的內核可運行于當前所有x86平臺,不具備網(wǎng)絡和串口支持,內核編譯后的大小在200K以內。
          #基于x86體系結構
          CONFIG_X86=y
          #是內核中最新功能(或處于實驗中的功能) 可用
          CONFIG_EXPERIMENTAL=y
          #選擇處理器類型和數(shù)學處理器仿真
          CONFIG_M386=y
          CONFIG_MATH_EMULATION=y
          #設置進程間通信協(xié)議
          CONFIG_SYSVIPC=y
          CONFIG_SYSCTL=y
          #設置可支持的二進制文件格式
          CONFIG_BINFMT_ELF=y
          #塊設備支持,CFC和DOC在此設置不同
          #設置內核支持DE驅動器
          CONFIG_BLK_DEV_DE=y
          CONFIG_BLK_DEV_DEDISK=y
          CONFIG_BLK_DEV_CMD640=y
          CONFIG_BLK_DEV_RZ1000=y
          CONFIG_BLK_DEV_DEPCI=y
          CONFIG_BLK_DEV_DEDMA=y
          CONFIG_IDEDMA_AUTO=y
          CONFIG_BLK_DEV_CS5530=y
          CONFIG_BLK_DEV_LOOP=y
          CONFIG_PARDE_PARPORT=y
          #字符設備設置
          CONFIG_VT=y
          #文件系統(tǒng)設置
          #支持/proc、ext2文件系統(tǒng)
          CONFIG_PROC_FS=y
          CONFIG_EXT2_FS=y
          #支持字符型終端
          CONFIG_VGA_CONSOLE=y

          網(wǎng)絡與串口通信功能

          Linux 內核內置對網(wǎng)絡和串口的支持,具體到內核編譯,只要設置部分內核參數(shù)即可。以下是網(wǎng)絡設備的支持,需要注意的是其中PCI設備支持選項和以太網(wǎng)設備支持選項,如果選擇網(wǎng)卡,這兩類設備都必須被支持。網(wǎng)卡的驅動程序如果未包含到內核,則可以模塊形式加載。
          CONFIG_NET=y
          CONFIG_PCI=y
          CONFIG_PCI_GOANY=y
          CONFIG_PCI_BIOS=y
          CONFIG_PCI_DIRECT=y
          CONFIG_PCI_QUIRKS=y
          CONFIG_PCI_OLD_PROC=y
          CONFIG_NETLINK=y
          CONFIG_INET=y
          CONFIG_NET_ETHERNET=y

          以下是串口設置參數(shù),如果單純支持兩個串口,則設置CONFIG_SERIAL項即可。在系統(tǒng)需要4個以上串口支持,或需要基于串口的終端控制時,需要設置余下3個參數(shù)。
          CONFIG_SERIAL=y
          #CONFIG_SERIAL_CONSOLE
          #CONFIG_SERIAL_EXTENDED
          #CONFIG_SERIAL_NONSTANDARD
          本項目中僅設置兩個串口支持。

          文件系統(tǒng)定制

          Linux 操作系統(tǒng)為方便管理把外存抽象成一個可隨時訪問的塊,為方便管理和使用又在塊設備層上再作抽象,把塊設備抽象成為文件系統(tǒng),由文件系統(tǒng)管理塊設備上的數(shù)據(jù)等,文件系統(tǒng)有很多種,不同文件系統(tǒng)有不同的管理方式,造成系統(tǒng)不兼容,為解決這個問題,在文件系統(tǒng)上又作一次抽象,提出了虛擬文件系統(tǒng)的概念。 Linux虛擬文件系統(tǒng)為用戶提供了一個公共的接口,而不需要了解物理設備或邏輯系統(tǒng)的細節(jié),系統(tǒng)允許系統(tǒng)管理員將在任何物理設備上的邏輯文件系統(tǒng)掛接在文件目錄中。

          目錄結構

          Linux文件系統(tǒng)符合 FHS(Filesystem Hierarchy Standard)標準,由一些目錄和文件組成。根據(jù)安裝的方式不同,這些目錄可能是不同的文件系統(tǒng)。通常,一個系統(tǒng)可以有多個文件系統(tǒng)組成:根分區(qū)文件系統(tǒng)(/),和安裝在/usr下的文件系統(tǒng),還有其他安裝在/home、/var文件系統(tǒng)。
          Linux目錄結構起始與根目錄,其中包含以下目錄:
          /vmlinuz
          內核文件,內核文件的位置可由系統(tǒng)引導程序指定。
          /bin
          包含系統(tǒng)可執(zhí)行程序,可以在這個目錄下找到linux常用的命令。
          /boot
          存放系統(tǒng)啟動時所需的各項文件。
          /dev
          包含所有的設備文件,這些設備是和系統(tǒng)的硬件有一定相互對應關系的特殊文件,分為塊設備、字符設備和特殊設備,dev是設備(device)的英文縮寫。目錄中包含了所有Linux系統(tǒng)中使用的外部設備,但是這里并不是放的外部設備的驅動程序,它實際上是一個訪問這些外部設備的標識。在Linux系統(tǒng)中,對外部設備的訪問和訪問一個文件、一個目錄沒有任何區(qū)別。
          /cdrom
          用于將光驅文件系統(tǒng)加載到這個目錄下。
          /etc
          Linux系統(tǒng)的絕大部分配置文件都存放在這里。比如網(wǎng)絡配置文件,文件系統(tǒng),XWindow配置文件,設備配置信息,設置用戶信息等都在這個目錄下。
          /sbin
          存放系統(tǒng)程序。和/bin目錄類似,但這些文件往往是用來進行系統(tǒng)管理或提供系統(tǒng)服務的,一般只有root才有運行的權限。
          /home
          存放一般用戶個人目錄的主目錄,如果建立一個用戶,用戶名是“xx”,那么在/home目錄下就有一個對應的/home/xx路徑。
          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評論


          相關推薦

          技術專區(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); })();