




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
uCLinux在UPNETRARM平臺上移植
uClinux源碼下載方法和交叉編譯工具的下載、生成方法。內核源碼的修改、剪裁和編譯過程。內核裁剪時的菜單選項的配置方法。內核及根文件系統的燒寫過程。本章主要內容第十二章目錄UP-NETARM3000嵌入式教學開發平臺介紹uClinux在UPNETARM300上的移植
Linux移植準備關于交叉編譯環境修改uCLinux內核源碼
Linux內核裁剪內核的編譯內核及根文件系統的燒寫
配置minicom
燒寫內核燒寫根文件系統第十二章目錄UP-NETARM3000嵌入式教學開發平臺介紹uClinux在UPNETARM300上的移植
Linux移植準備關于交叉編譯環境修改uCLinux內核源碼
Linux內核裁剪內核的編譯內核及根文件系統的燒寫
配置minicom
燒寫內核燒寫根文件系統
第十二章目錄UP-NETARM3000嵌入式教學開發平臺介紹uClinux在UPNETARM300上的移植
Linux移植準備關于交叉編譯環境修改uCLinux內核源碼
Linux內核裁剪內核的編譯內核及根文件系統的燒寫配置minicom
燒寫內核燒寫根文件系統
在Linux環境下,本章主要介紹了uClinux在UP-NETARM3000平臺的移植過程。
uClinux源碼下載方法和交叉編譯工具的下載、生成方法。內核源碼的修改、剪裁和編譯過程。內核裁剪時的菜單選項的配置方法。內核及根文件系統的燒寫過程。12.1UP-NETARM3000嵌入
式教學開發平臺介紹UP-NETARM3000平臺是博創興業科技有限公司,依托北京航空航天大學開發的。適用于嵌入式教學和開發。目前已應用于清華大學、北京航空航天大學等多所高校。該平臺是基于S3C44B0X
處理器,可以運行uC/OS-II和uClinux的系統。它由核心模塊和擴展模塊組成。12.1UP-NETARM3000嵌入
式教學開發平臺介紹核心模塊包括S3C44B0X嵌入式芯片、2MB線性引導Flash和8MBSDRAM;擴展模塊包括16MB非線性Flash、二個串口、一個USB口、一個JTAG通用接口、10M以太網口、觸摸屏、17鍵鍵盤、320×240STN彩色LCD、16MU盤、直流電機模塊、步進電機模塊、音頻模塊、CAN總線模塊、A/D和D/A模塊、LED顯示器、IIC接口和FPGA模塊。如圖12-1所示。
圖12-1UP-NETARM3000嵌入式教學開發平臺12.2uClinux在UPNETARM3000
上的移植12.2.1Linux移植準備其基本內容是:獲取某一版本的Linux內核源碼,根據具體目標平臺對這源碼進行必要的改寫(主要是修改體系結構相關部分)。然后添加一些外設的驅動,打造一款適合于自己目標平臺(可以是嵌入式便攜設備也可以是其它體系結構的PC機)的新操作系統,對該系統進行針對目標平臺的交叉編譯,生成一個內核映象文件。最后把該映象文件燒寫(安裝)到目標平臺中。
12.2.1Linux移植準備基本過程如下(以為例):1.到上下載內核及其關于
ARM平臺的補丁(如:)。2.給打補丁:zcat../patch-2.6.0-rmk1.gz|patch–p1(前面../表示補丁文件放在內核文件上一層目錄)。3.準備交叉編譯環境:交叉編譯環境工具鏈一般包括binutils
(含AS匯編器,LD鏈接器等),arm-gcc,glibc等。4.修改內核目錄下的makefile文件,主要是以下幾行:
12.2.1Linux移植準備注釋掉ARCH:=$(shelluname–m|sed–es/i.86/i386/-es/sun4u/sparc64/-es/arm.*/arm/-es/sa110/arm/)這一行;ARCH?=改為ARCH=arm;CROSS_COMPILE?=改為CROSS_COMPILE=
你的交叉編譯工具中arm-linux所在目錄/arm-linux-。5.此后就可以進行編譯。12.2.2關于交叉編譯環境所謂的交叉編譯就是:利用運行在某機器上的編譯器編譯某個源程序生成在另一臺機器上運行的目標代碼的過程。主要用到的編譯器是arm-gcc,它是gcc的arm改版。GCC輸出的是匯編語言程序,如果我們想要進一步編譯成我們想要的機器代碼,則還需要匯編器的幫助。GNU工具鏈中通常包含GNUBinutils,GNUGCC,GNUGLibc。Binutils中主要包含鏈接器ld和匯編器as。GNUGLibc提供了一個C庫,使得系統能完成基本的系統調用及其它的一些函數調用。12.2.2關于交叉編譯環境
下面介紹GCC交叉編譯器的生成過程。步驟如下:(1)取得Binutils、GCC、Glibc的源碼
可以到相關網站去獲得,并把這三個文件解壓到你自己的目錄如:/toolchain/gcc,/toolchain/bu,/toolchain/glibc。(2)配置并編譯Binutils,得到匯編器和連接器把Linux內核中GCC所必需的頭文件拷到GCC可以找到的目錄。如下操作:
cp–drinclude/asm-arm/toolchain/gcc/arm-linux/include/asm cp–drinclude/linux/toolchain/gcc/arm-linux/include/linux進入Binutils目錄:
./configure--target=arm-linux--prefix=/toolchain/bu makeLANGUAGES=”C” makeinstall12.2.2關于交叉編譯環境(3)配置并編譯GCC源代碼,生成GCC編譯器進入gcc/config/arm目錄
mvt-linuxt-linux-orig
//備份原來的t-linux文件修改t-linux文件把TARGET_LIBGCC2_CFLAGS=-fomit-frame-pointer–fPIC改為:
TARGET_LIBGCC2_CFLAGS=-fomit-frame-pointer-fPIC-Dinhibit_libc\-D__gthr_posix_h
(\是行連接符號)
進入GCC安裝目錄進行編譯 操作如下:
./configure\ --target=arm-linux\ --prefix=/toolchain/gcc\ --enable-languages=c\ --with-local-prefix=/toolchain/gcc/arm-linux\12.2.2關于交叉編譯環境 --without-headers\(\\不編譯頭文件)
--with-newlib\ --disable-shared make makeinstall(4)配置Glibc編譯生成Glibc的C函數庫CC=arm-linux-gccAR=arm-linux-arRANLIB=arm-linux-ranlib./configure\ --host=arm-linux\ --prefix=/toolchain/gcc/arm-linux\ --enable-add-ons\ --with-headers=/toolchain/gcc/arm-linux/include make makeinstall12.2.2關于交叉編譯環境(5)再次配置并編譯GCC源代碼,生成其它語言的編譯器如:C++等。恢復t-linux
文件cp/toolchian/gcc/config/arm/t-linux-orig/toolchian/gcc/config/arm/t-linux重新編譯
./configure\ --target=arm-linux\ --prefix=/toolchian/gcc\ --enable-languages=c,c++\ --with-local-prefix=/toolchian/gcc/arm-linux make makeinstall12.2.3修改ucLinux內核代碼
主要主要包含啟動代碼的修改,內核的鏈接及裝入,參數傳遞,內核引導幾個部分。(1)啟動代碼的修改在ARM的子目錄下可以找到一個boot目錄,在boot下有一個init.S的文件。init.S是用ARM匯編寫成的,它就是引導uCLinux內核在ARM平臺上啟動的初始化代碼。init.S定義了一個全局符號_start(默認的起始地址)。同時init.S也是整體內核二進制鏡像的起始標志。12.2.3修改ucLinux內核代碼init.S主要完成以下功能:定義數據段、代碼段、bbs(未初始化數據段)起始地址變量并對bbs段進行初始化。設置寄存器以初始化系統硬件。關閉中斷。初始化LCD顯示。將數據段數據復制到內存。跳轉到內核起始函數start_kernel繼續執行。對主寄存器的修改。12.2.3修改ucLinux內核代碼(2)內核的鏈接及裝入內核可執行文件是由許多鏈接在一起的目標文件組成的。以ELF為例,ELF文件有text(文本段)、data(數據段)和bbs等組成。這些段又由鏈接腳本(Linkerdescription)負責鏈接裝入。鏈接腳本又有輸入文件和輸出文件。輸出文件中輸出段告訴鏈接器如何分配存儲器。而輸入文件的輸入段則描述如何把輸入文件與存儲器映射。其形式如下:(輸出文件)
/* *Copyright(C)2000RussellKing *Thisprogramisfreesoftware;youcanredistributeitand/ormodify *itunderthetermsoftheGNUGeneralPublicLicenseversion2as *publishedbytheFreeSoftwareFoundation. */OUTPUT_ARCH(arm) //輸出為ARM格式ENTRY(_start) //定義入口點SECTIONS{.=LOAD_ADDR; //“.”表示當前計數器
_load_addr=.;.=TEXT_START; //文本段起始
_text=.;
.text:{ //把各個輸入文件中文本段合并到此
_start=.;*(.start)*(.text)*(.fixup)*(.gnu.warning)*(.rodata) *(.rodata.*)*(.glue_7)*(.glue_7t)input_data=.;arch/arm/boot/compressed/piggy.oinput_data_end=.;.=ALIGN(4);}_etext=.;//文本段結束(以下各段類似)
_got_start=.;.got :{*(.got)}_got_end=.;.got.plt :{*(.got.plt)}.data :{*(.data)}_edata=.;.=BSS_START;__bss_start=.;.bss :{*(.bss)}_end=.;
.stack(NOLOAD) :{*(.stack)}
.stab0 :{*(.stab)}.stabstr0 :{*(.stabstr)}.stab.excl0 :{*(.stab.excl)}.stab.exclstr0 :{*(.stab.exclstr)}.stab.index0 :{*(.stab.index)}.stab.indexstr0 :{*(.stab.indexstr)}ment0 :{*(ment)}}12.2.3修改ucLinux內核代碼(3)參數傳遞其中啟動代碼以參數形式把DRAM和Flash數量(指定系統中可用頁面的數目和文件系統大小)等信息傳給內核。
(4)內核引導設置陷阱、初始化中斷、初始化計時器和初始化控制臺等一系列操作,并使內核正確啟動。12.2.4ucLinux內核裁減
Linux內核的編譯菜單都是通過Config.in經由不同腳本解釋器產生.config。它包括“makeconfig”、“makemenuconfig”和“makexconfig”等版本。“makeconfig”以命令行方式進行配置“makemenuconfig”以菜單方式進行配置,且配置穩定可靠;“makexconfig”以基于圖形庫菜單方式進行配置,基于目前版本的xconfig比較成熟穩定;基于的xconfig菜單結構清晰,界面友好,但不夠穩定。
12.2.4ucLinux內核裁減
我們以界面不夠友好,但比較穩定的menuconfig為主進行介紹。在選擇相應的配置時,有三種選擇方式,它們分別代表的含義如下:Y:將該功能編譯進內核N:不將該功能編譯進內核M:將該功能編譯成可以在需要時動態插入到內核中的模塊
12.2.4ucLinux內核裁減makexconfig使用鼠標選擇對應的選項。
makemenuconfig使用空格鍵進行選取。在每一個選項前的括號,可以是中括號、尖括號和圓括號。中括號里要么是空,要么是“*”;而尖括號里可以是空、“*”和“M”;而圓括號的內容是在所提供的幾個選項中選擇一項。其中空表示不將該功能編譯進內核,“*”表示將該功能編譯進內核,“M”表示將該功能編譯成可以在需要時動態插入到內核中的模塊注意:其中有不少選項是目標板開發人員加的,對于陌生選項,自己不知道該選什么時建議使用默認值。12.2.4ucLinux內核裁減1.Codematurityleveloptions
代碼成熟度選項,它又有子項:
(1)promptfordevelopmentand/orincompletecode/drivers
該選項是對那些還在測試階段的代碼、驅動模塊等的支持。一般應該選這個選項,除非只是想使用LINUX中已經完全穩定的東西。但這樣有時對系統性能影響挺大。
(2)promptforobsoletecode/drivers
該項用于對那些已經陳舊的被現有文件替代了的驅動程序和代碼的支持,可以不選;除非你的機器配置比較舊,但那也會有不少問題。所以該項以基本不用,在新的版本中已被替換。12.2.4ucLinux內核裁減2.loadablemodulesupport
動態加載模塊支持選項,其子項有:
(1)enablemodulesupport
支持模塊加載功能,應該選上。
(2)setversioninformationonallmodulesymbols
該項用來支持跨內核版本的模塊支持。即為某個版本的內核編譯的模塊可以在另一個版本的內核下使用,我們一般用不上,所以不選。
(3)kernelmoduleloader
如果你啟用這個選項,你可以通過kerneld程序的幫助在需要的時候自動載入或卸載那些可載入式的模塊,我們一般會選上。12.2.4ucLinux內核裁減3.systemtype系統類型,主要是CPU類型以及與此相關的內容。如果你是進行交叉編譯,該項下的內容往往是經過相應目標平臺開發人員修改的。主要是針對該平臺的體系結構定義,這樣可以優化系統性能。如果你的內核版本支持你目標平臺所用的CPU
,那你就選上它。但不要選同系列中高于你所用的CPU型號,否則不支持。也可以在Config.in或KConfig中修改該項以支持你的目標平臺。在UP-NETARM300/3000平臺上你在該項上看到的是S3c44b0的ARM系列CPU。在UP-NETARM2410上看到的是S3C2410的ARM系列CPU
。其它選項是關于該芯片及平臺的一些結構定義。其他版本內核遇到的不會是這種情況,但一般包含processorfamily選項,它讓我們選擇CPU的類型,BIOS可以自檢到,留意一下你的系統的啟動信息。選上正確的CPU類型就行。12.2.4ucLinux內核裁減4.Generalsetup(1)supporthot-plugabledevieces
對可熱拔插的設備的支持,看情況選擇。若要對U盤等USB設備進行控制,建議選上。
(2)Networkingsupport
網絡支持,用到網絡設備當然要選上。
(3)SystemVIPC
支持SystemV的進程間通訊,選上。
(4)sysctlsupport
該項支持在不重啟情況下直接改變內核的參數。啟用該選項后內核大約會增大8K,如果你的內存太小,就別選。12.2.4ucLinux內核裁減(5)NWFPEmathemulation
一般要選一個模擬數學協處理器,選上。
(6)Powermanager
電源管理,給X86編譯內核時較有用可以選上,尤其是筆記本。給ARM編內核時可不選。其他的看情況,在該平臺上目前都用不著,不選。5.Networkingoption
網絡選項,它主要是關于一些網絡協議的選項。Linux號稱網絡操作系統,它最強大的功能,也就是在于對網絡功能的靈活支持。這部分內容相當多,根據具體情況,一般把以下幾項選上。
(1)packetsocket
包協議支持,有些應用程序使用Packet協議直接同網絡設備通訊,而不通過內核中的其它中介協議。同時它可以讓你在TCP不能用時找到一個通訊方法。12.2.4ucLinux內核裁減(2)unixdomainsocket
對基本UNIXsocket的支持。
(3)TCP/IPnetworking
對TCP/IP協議棧的支持,當然要。如果你的內核很在意大小,而且沒有什么網絡要求,也不跑類似XWindow之類基于UnixSocket的應用,那你可以不選,可節省大約144K空間。至于其它眾多的選項,這里挑一些對其意思簡單介紹一下:Networkfirewalls:是否讓內核支持采用網絡防火墻。Packetsocket:mmappedIO
選該項,則Packetsocket可以利用端口進行快速通訊的。IPadvancedrouter:如果你想把自己的Linux配成路由器功能,這項肯定要選。socketfilter:就是包過濾。12.2.4ucLinux內核裁減IPmulticasting:即網絡廣播協議的支持,可以一次一個packet送到好幾臺計算機的操作。IPsyncookies:一種保護措施,將各種TCP/IP的通信協議加密,防止Attacker攻擊用戶的計算機,并且可以紀錄企圖攻擊用戶的計算機的IP地址。IPmasquerading:這個選項可以在NetworkFirewalls選項被選后生效。masquerading可以將內部網絡的計算機送出去的封包,通過防火墻服務器直接傳遞給遠端的計算機,而遠端的計算機看到的就是接收到的防火墻服務器送過來的封包,而不是從內部的計算機送過來的。IPICMPmasquerading:一般masquerading
只提供處理TCP和UDP
packets,若要讓masqurerading
也能處理ICMPpackets,就把這選項選上。IPalwaysdefragment:可將接收到的packetfragments重新組合回原來那個封包。 12.2.4ucLinux內核裁減IPaccounting:統計IPpacket的流量,也就是網絡的流通情況。IPoptimizeasrouternothost:可以關閉copy&checksum技術,防止流量大的服務器的IPpackets丟失。IPtunneling:tunnel即隧道。這里是指用另外一種協議來封裝數據或包容協議類型,這樣就相當于在不同的協議之間打了條隧道,使得數據包可以被不同的協議接受和解釋,這樣我們可在不同網域中使用linux,且都不用改IP就可以直接上網了.對于嵌入式設備這點還是挺有用的。IPGREtunneling:它是(GenericRoutingEncapsulation)。選該項后可以支持在IPv4與IPv6之間的通訊。IPARPdaemonsupport:即對ARP的支持,它是把IP地址解析為物理地址。 IPReverseARP:RARP(逆向地址解析)協議,可提供bootp的功能,讓計算機從可以從網卡的BootRam啟動。這對于搭建無盤工作站是很有用的,但現在硬件價格下跌好像無盤工作站用的已經不多了。12.2.4ucLinux內核裁減IPDisablePathMTUDiscovery:MTU有助于處理擁擠的網絡MTU(MaximalTransferUnit)最大的傳輸單位,即一次送往網絡的信息大小。而PathMTUDiscovery的意思是當Linux發現一些機器的傳輸量比較小時,就會分送網絡信息給它。如此可以增加網絡的速度,所以大部分時候都選N,也就是Enable。TheIPXprotocol:IPX為Netware網絡使用的通訊協議.主要是NOVELL系統支持的。QoSand/orfairqueueing:QoS即(QualityOfService)這是一種排定某種封包先送的網絡線程表,可同時針對多個網絡封包處理并依優先處理順序來排序,稱之為packetschedulers
。此功能特別是針對實時系統時格外重要,當多個封包同時送到網絡設備時,Kernel可以適當的決定出哪一個封包必須優先處理。因此Kernel提供數種packetschedulingalgorithm。12.2.4ucLinux內核裁減6.Networkingdeveices(1)Dummynetdriversupport
啞(空)網絡設備支持.它可讓我們模擬出TCP/IP環境對SLIP或PPP的傳輸協議提供支持.選擇它Linux核心增大不大。如果沒有運行SLIP或PPP協議,就不用選它。
(2)Bondingdriversupport
bonding技術是用來把多塊網卡虛擬為一塊網卡的,使他們有一個共同的IP地址。
(3)UniversalTUN/TAPdevicedriversupport
用于支持TUNx/TAPx設備。
(4)SLIPsupport
這是MODEM族常用的一種通訊協議,必須通過一臺Server(叫ISP)獲取一個IP地址,然后利用這個IP地址,可以模擬以太網絡,使用有關TCP/IP的程序。12.2.4ucLinux內核裁減(5)PLIPsupport它和SLIP/PPP全都屬于點對點通訊,可以把兩臺電腦利用打印機的接接口串聯起來,然后,加入此通訊協議。(6)PPP(point-to-point)support點對點協議。(7)EQL(seriallineloadbalancing)support 兩臺機器通過SLIP或PPP協議,使用兩個MODEM,兩條線,進行通訊時,可以用這個Driver以便讓MODEM的速度提高兩倍。(8)TokenRingdriversupport對令牌環網的支持。(9)Ethertapnetworktap(10)Ethernet(10or100Mbit)十至百兆以太網設備。(11)ARCnetsupport 它是一種網卡但好像不流行基本沒用。12.2.4ucLinux內核裁減7.AmateurRadiosupport
這個選項用的不多,它是用來啟動無線網絡的,通過無線網絡我們可以利用公眾頻率來進行數據傳輸,如果你有相關無線網絡通訊設備就可以用它。8.IrDA(infrared)support
該項也屬于無線通訊的一種,用于啟動對紅外通訊的支持。目前在的內核里對它的支持內容更豐富了。9.ATA/ATAPI/MFM/RLLsupport
該項主要對ATA/ATAPI/MFM/RLL等協議的支持在嵌入式設備中,目前這些設備應用的還不多,但臺式機及筆記本用戶如果你有支持以上協議的硬盤或光驅就可選上它。在內核中這方面的支持內容也比較豐富。12.2.4ucLinux內核裁減10.SCSIdevicesupport 如果你有SCSI設備(SCSI控制卡、硬盤或光驅等)你選上這項。目前SCSI設備類型已經比較多,要具體區分它們你得先了解它們所使用的控制芯片類型。內核中對各類型SCSI設備已經有更具體詳細的支持。11.ISDNsupportISDN(IntegratedServicesDigitalNetworks) 它是一種高速的數字服務。通過專用ISDN線路加上裝在你電腦上的ISDN卡,利用SLIP或PPP協議進行通訊。所以你若想啟動該項支持ISDN通訊,你還應啟動前面提到的NetworkingDevices中的SLIP或PPP。12.2.4ucLinux內核裁減12.Consoledriverssupport
控制臺設備支持.目前安裝uClinux/Linux的設備幾乎都是帶控制臺的,所以這項是必選項,還有幾個子項:
(1)VGAtextconsole
一般臺式機選該項,支持VGA顯示設備。
(2)SupportFrameBufferdevices
該項支持FrameBuffer設備。FrameBuffer技術在內核被全面采用,它通過開辟一塊內存空間模擬顯示設備。以UP-NETARM3000為例,你應選上:①supportforframebufferdevices②S3C44B0XLCDsupport③Advancedlowleveldriveroptions④8bpppacketpixelssupport該項在UP-NETARM2410平臺上改為320×2408bit256colorSTNLCDsupport12.2.4ucLinux內核裁減13.parallelportsupport對并行口的設備的支持。LINUX可以支持PLIP協議(利用并行口的網絡通訊協定)、并口的打印機、ZIP磁盤驅動器、掃描儀等。如果有打印機,在選擇利用并口通訊時要小心,因為它們可能會互相干擾。14.MemoryTechnologyDevice(MTD)support
MTD包含flash和RAM等存儲設備。MTD在現在的嵌入式設備中應用的相當多,也特別重要。選中該項可以對MTD進行動態支持這里按UP-NETARM3000平臺做一些解釋:12.2.4ucLinux內核裁減(1)MTDpartitioningsupport
選上該項可支持對MTD的分區操作。在對嵌入式設備的操作系統移植過程中往往要對MTD進行分區,然后在各分區放置不同的數據,以讓系統能被正確引導啟動。
(2)DirectchardeviceaccesstoMTDdevices
選該項為系統的所有MTD設備提供一個字符設備,通過該字符設備能直接對MTD設備進行讀寫以及利用ioctl()函數來獲取該MTD設備的相關信息。
(3)CachingblockdeviceaccesstoMTDdevices許多flash芯片其擦除的塊太大,因此作為塊設備使用效率大打折扣。選上該項后,它支持利用RAM芯片作為緩存來使用MTD設備,這時對于MTD設備塊設備就相當于它的一個用戶,通過JFFS文件系統的控制。可以模擬成一個小型塊設備,具有讀、寫、擦除和校驗等功能。12.2.4ucLinux內核裁減
(4)NANDflashdevicedrivers
子項中有幾項是關于MTD設備驅動的,平臺選擇的是NANDflash,所以選上它。選上后,在其二級子項中還要選上: ①NANDdevicessupport ②verifyNANDpageswrites支持頁校驗。 ③NANDflashdeviceonARMboard15.PlugandPlaysupport
這是對PNP(即插即用)設備的支持。16.blockdevices
塊設備。該項下也有好幾個子項,主要是關于各種塊設備的支持,至少把RAM的支持項選上,如在我們UP-NETARM3000平臺上我們要選上:12.2.4ucLinux內核裁減RAMdisksupportInitialRAMdisk(initrd)support17.
文件系統在Linux中是非常重要的,該項下的子項也非常多。
(1)Quotasupport
份額分配支持,擇該項則系統支持對每個用戶使用的磁盤空間進行限制。
(2)Kernelautomountersupport
在有NFS文件系統的支持下,選擇該項使內核可以支持對一些遠端文件系統的自動掛栽。
(3)Kernelautomounterversion4support
V3版本的升級,它兼容V3
。12.2.4ucLinux內核裁減(4)Reiserfssupport
ReiserFS這種文件系統以日志方式,不僅把文件名,而且把文件本身保存在一個“平衡樹”里,其速度與ETX2差不多,但比傳統的文件系統架構更為高效,尤其適合大目錄下文件的情況。(5)ROMsupport
它是一個非常小的只讀文件系統,主要用于安裝盤及根文件系統。(6)JFSsupport
這是IBM的一個日志文件系統。(7)Secondextendedfssupport
著名的EXT2(二版擴展文件系統),除非你是用DOS模擬器否則得選它。12.2.4ucLinux內核裁減(8)Ext3journallingsupport
其實是EXT2的日志版,我們通常叫它EXT3。
(9)JournallingFlashv2(jffs2)support
Flash日志文件系統,目前UP-NETARM3000的uCliux支持該文件系統。
(10)ISO9660CDROMsupport
光驅的支持。
(11)/procsupport
這是虛擬文件系統,能夠提供當前系統的狀態信息。它運行時在內存生成,不占任何硬盤空間,通過CAT命令可以讀到其文件的相關信息。12.2.4ucLinux內核裁減(12)/devsupport
它是類似于/proc的一個文件系統,也是虛擬的,主要用于支持devfs(設備文件系統)。把它選上,就可以不依賴于傳統的主次設備號的方式來管理設備,而是由devfs自動管理。(13)NFS
網絡文件系統。①NFSsupport
對網絡文件系統的支持,NFS通過SLIP、PLIP、PPP或以太網進行網絡文件管理。②NFSserversupport
選這項可以把你的Linux配置為NFS
server。③SMBsupport
它是用于和局域網中相連的Windows機器建立連接的,相當于網上鄰居。這些協議都需要在TCP/IP被啟用后才有效。12.2.4ucLinux內核裁減(14)NativeLanguageSupport
它是對各國語言的支持。18.characterdevices
LINUX支持很多特殊的字符設備,所以該項下的子項也特別多。
(1)virtualterminal
虛擬終端,選上。
(2)supportforconsoleonvirtualterminal
虛擬終端控制臺,選上。
(3)non-standarserialportsupport
非標準串口設備的支持。
如果你的平臺上有一些非標準串口設備需要支持,就選上它。
(4)Serialdrivers
串口設置,一般選上自己開發平臺相關的串口就行。在UP-NETARM3000上選S3C44B0
serial
portsupport和supportfor
consoleonS3C44B0serialport。12.2.4ucLinux內核裁減(5)UNIX98PTYsupportPTY(pseudoterminal)偽終端,它是軟件設備由主從兩部分組成。從設備與具體的硬件終端綁定,而主設備則由一個進程控制向從設備寫入或讀出數據,其典型應用如telnet服務器和xterms等。
(6)IICsupport
對IIC設備的支持。
(7)aMice
就是對鼠標的支持。
(8)Joysticks
對一些游戲手柄的支持。
(9)QIC-02tapesupport
對一些非SCSI的磁帶設備支持。
(10)watchdogcardsupport
對看門狗定時設備的支持。12.2.4ucLinux內核裁減(11)/dev/nvramsupport
這是一種和BIOS配合工作的RAM設備,我們常稱它為“CMOS
RAM”,而NVRAM主要是在Ataris機器上的稱法。通過設備名/dev/nvram可以讀寫該部分內存內容,它通常保存一些機器運行必需的重要數據,而且保證掉電后能繼續保存。
(12)EnhancedRealTimeClockSupport在每臺PC機上都內建了一個時鐘,它可以產生出從1Hz到8192Hz的信號。在多CPU的機器中這項必選。
(13)/dev/agpgart(AGPSupport)
AGP
(AcceleratedGraphicsPort)
通過它可以溝通顯卡與其它設備。如果有AGP設備就選上它,嵌入式系統中目前用的還不多,但臺式機AGP設備已相當普及。12.2.4ucLinux內核裁減(14)SiemensR3964linediscipline
這項主要是支持利用SiemensR3964的包協議進行同步通訊的。
(15)DirectRenderingManager(XFree864.1.0andhigherDRIsupport)
選該項后則在內核級提供對XFree864.0的DRI(DirectRender
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農業生產技術交流與合作意向書
- 2025年心理發展與教育策略的實務能力測試題及答案
- 2025年網絡應用與網站建設考試題及答案
- 2025年臨床醫學專業實踐技能考試試題及答案
- 2025年家庭教育指導師職業能力測試試卷及答案
- 2025年海洋生態保護相關知識考試試卷及答案
- 2025年甘肅省特崗教師招聘2261人筆試參考題庫及完整答案詳解1套
- 2025年甘肅省民航機場集團校園招聘45人筆試備考試題參考答案詳解
- 特教學校安全管理制度
- 特殊醫用耗材管理制度
- 幼兒園病媒生物防制培訓方案
- “影子教育”之全球擴張教育公平、質量、發展中的利弊談
- JB T 8925-2008滾動軸承汽車萬向節十字軸總成技術條件
- (word版)2024年成人高考語文試題及答案
- MOOC Spark編程基礎-廈門大學 中國大學慕課答案
- 大易通用能力測評題庫
- 聯邦學習技術在人工智能中的應用與發展前景
- 地塊控制性詳細規劃說明書
- 工程招標代理服務投標方案(技術方案)
- 【博物館文創營銷方案2600字】
- 分體空調施工方案及分體空調施工組織設計
評論
0/150
提交評論