




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、滁滁州州學(xué)學(xué)院院課課程程設(shè)設(shè)計計報報告告課程名稱:課程名稱: 操作系統(tǒng) 設(shè)計題目設(shè)計題目: Linux 內(nèi)核編譯與裁剪 系系 別:別: 計算機科學(xué)與技術(shù)系 專專 業(yè):業(yè): 計算機科學(xué)與技術(shù)專業(yè) 組組 別:別: 第十組 起止日期起止日期: 2011 年 5 月 20 日 2011 年 6 月 22 日 指導(dǎo)教師指導(dǎo)教師: 馬麗生 計算機科學(xué)與技術(shù)系二計算機科學(xué)與技術(shù)系二九年制九年制課程設(shè)計任務(wù)書課程設(shè)計題目Linux 內(nèi)核編譯和裁剪組長楊超學(xué)號2021210965班級09 計科系別計算機科學(xué)與技術(shù)專業(yè)計算機科學(xué)與技術(shù)組員項鵬程,徐鑫,周小航,鐘鑫鑫指導(dǎo)教師馬麗生課程設(shè)計目的通過該實驗了解和掌握
2、Linux 內(nèi)核進行裁剪和編譯以及升級的主要操作方法和步驟。課程設(shè)計所需環(huán)境軟件:操作系統(tǒng) Windows XP、Linux硬件:最低 CPU 速度:233MHz,推薦 CPU 速度:550MHz最小內(nèi)存要求: 128M,推薦最小內(nèi)存:256M課程設(shè)計任務(wù)要求。課程設(shè)計工作進度方案序號起止日期工 作 內(nèi) 容分工情況2011-5-202011-6-12收集實現(xiàn)所需的資料,分析討論所要進行的實驗主要工作由徐鑫,周小航同學(xué)完成,全體參與討論2011-6-132011-6-17該階段主要做 Linux 內(nèi)核的一般編譯和裁剪主要由小組全體同學(xué)協(xié)助項鵬程完成2011-6-182011-6-20實現(xiàn)的升級主
3、要由小組全體同學(xué)協(xié)助楊超完成2011-6-212011-6-22實驗材料整理,課程設(shè)計報告的完成主要由小組全體同學(xué)協(xié)助鐘鑫鑫完成指導(dǎo)教師簽字: 年 月 日教研室審核意見:教研室主任簽字: 年 月 日目目 錄錄引引言言.4需需求求分分析析.42.1 課程設(shè)計題目.42.2 課程設(shè)計任務(wù)及要求.42.3 軟硬件運行環(huán)境.42.4 開發(fā)工具.43 3. .詳詳細(xì)細(xì)設(shè)設(shè)計計.53.1 LINUX內(nèi)核的裁剪.53.1.1 內(nèi)核支持編譯模式.53.1.2. 裁剪系統(tǒng)內(nèi)核應(yīng)遵循的步驟.53.2 配置系統(tǒng)內(nèi)核.63.2.1 配置內(nèi)容.73.2.2 配制方法.93.3 編譯系統(tǒng)內(nèi)核.153.4 啟用新系統(tǒng)內(nèi)核.
4、16備份正在使用的系統(tǒng)內(nèi)核.16多配置啟動的配置文件修改.163.5 LINUX內(nèi)核升級.17準(zhǔn)備工作.17配置工作.18編譯工作.33啟動新內(nèi)核.354 4. . 課課程程設(shè)設(shè)計計總總結(jié)結(jié)與與體體會會.37總結(jié).37體會.375 5. .致致謝謝.37參參考考文文獻(xiàn)獻(xiàn).37引言引言Linux 作為一個免費、自由軟件,內(nèi)核版本不斷升級。新的內(nèi)核修訂了舊內(nèi)核的 bug,并增加了許多新的特性。同時也使得 Linux 系統(tǒng)更加穩(wěn)定、更加平安,進一步滿足用戶的要求。如果用戶想要使用這些新特性,或想根據(jù)自己的系統(tǒng)度身定制一個更高效,更穩(wěn)定的內(nèi)核,就需要根據(jù)自己的需要進行重新裁剪、編譯內(nèi)核。 需求分析需求
5、分析 課程設(shè)計題目課程設(shè)計題目Linux 內(nèi)核編譯和裁剪 課程設(shè)計任務(wù)及要求課程設(shè)計任務(wù)及要求。 軟硬件運行環(huán)境軟硬件運行環(huán)境軟件操作系統(tǒng) Windows XP、Linux硬件最低 CPU 速度:233MHz,推薦 CPU 速度:550MHz最小內(nèi)存要求: 128M,推薦最小內(nèi)存:256M 開發(fā)工具開發(fā)工具Linux 開發(fā)平臺 3.3.詳細(xì)設(shè)計詳細(xì)設(shè)計3.13.1 LinuxLinux 內(nèi)核的裁剪內(nèi)核的裁剪 內(nèi)核支持內(nèi)核支持編譯編譯模式模式 Linux 對于計算機硬件、網(wǎng)絡(luò)和文件系統(tǒng)等部件的驅(qū)動程序支持既可以放在系統(tǒng)內(nèi)核中,也可以作為一個可加載的模塊modules使用。當(dāng)驅(qū)動程序放在系統(tǒng)內(nèi)核中
6、時,Linux 假定該硬件是存在于系統(tǒng)中的;而作為可加載模塊使用時,只有在知道該硬件存在于系統(tǒng)時才會作為系統(tǒng)內(nèi)核的一局部,當(dāng) Linux 檢測到硬件時,該模塊才被參加到系統(tǒng)內(nèi)核中。如果把驅(qū)動程序編譯到內(nèi)核中,在內(nèi)核啟動時就可以自動支持相應(yīng)局部的功能,這樣做的優(yōu)點是方便、速度快,機器一旦啟動,你就可以使用這局部功能了;缺點是會使內(nèi)核變得龐大,無論是否需要這局部功能,它都會存在;這可能會增加被系統(tǒng)攻擊者利用的漏洞。一般把經(jīng)常使用的局部直接編譯到內(nèi)核中,比方網(wǎng)卡等。如果編譯成模塊,就會生成對應(yīng)的.o 模塊文件,系統(tǒng)啟動時它并不在內(nèi)存中,它是在使用的時候由用戶執(zhí)行 insmod 命令來動態(tài)加載,這樣做
7、的優(yōu)點是不會使內(nèi)核過分龐大,缺點是你得自己來調(diào)用這些模塊。3.1.2.3.1.2. 裁剪系統(tǒng)內(nèi)核應(yīng)遵循的步驟裁剪系統(tǒng)內(nèi)核應(yīng)遵循的步驟Linux 系統(tǒng)內(nèi)核的裁減涉及到模塊間的依賴關(guān)系、內(nèi)核的配置和編譯等多個步驟,任何一個步驟的失誤都有可能導(dǎo)致裁減、編譯失敗。其根本步驟如下:檢查編譯器的版本刪除過時的目標(biāo)文件重新設(shè)置系統(tǒng)內(nèi)核重新編譯系統(tǒng)內(nèi)核備份正在使用的系統(tǒng)內(nèi)核試用新的系統(tǒng)內(nèi)核1 1 檢查編譯器的版本檢查編譯器的版本用低版本的編譯器去編譯高版本的內(nèi)核有可能不能編譯或使內(nèi)核不能使用。要查看編譯器版本,可以執(zhí)行命令: #gcc v進入系統(tǒng)內(nèi)核源代碼目錄。一般系統(tǒng)內(nèi)核的源代碼放在 /usr/src/ 目
8、錄下。用 ls l 命令查看可能顯示如下:#ls l /usr/srcTotal 3linux-8drwxr-xr-x 15 root root 1024 May 14 11:37 linux-8drwxr-xr-x 3 root root 1024 May 4 14:38 sendmail 其中,是一個鏈接文件,它的鏈接目標(biāo)是指向 linux-8 目錄,因此、就是進入 linux-2.4.20-8 目錄。2 2 刪除過時的目標(biāo)文件刪除過時的目標(biāo)文件 進入 /usr/src/linux-8 目錄,運行 make mrproper 命令以去除過時、舊的目標(biāo)文件。這是因為經(jīng)過屢次編譯后系統(tǒng)會留下局
9、部目標(biāo)文件,如果沒有去除干凈可能造本錢次編譯出錯。如果沒有編譯過或者是系統(tǒng)升級的新解壓縮目錄,那么這一步驟可以省略主要是本課題所需要的硬件設(shè)計與軟件設(shè)計,包含建立設(shè)計所需的數(shù)學(xué)模型并列出必要的計算公式、計算過程及說明,硬件電路的設(shè)計與實現(xiàn),寫出設(shè)計計算結(jié)果;繪出計算機程序框圖,寫出自編的程序。 配置系統(tǒng)內(nèi)核配置系統(tǒng)內(nèi)核無論是內(nèi)核裁減還是內(nèi)核升級都要重新配置系統(tǒng)內(nèi)核。共有三種方式來運行配置內(nèi)核的命令:設(shè)置屏幕的類型 命令 文本 make config 窗口菜單NCurses make menuconfig X 圖形 make xconfig 第 1 種 make config 是命令行方式,使用
10、與修改都較為不便,一般不推薦使用。第 2 種 make menuconfig 是窗口菜單方式,采用窗口菜單進行人機交互,并可隨時獲得幫助;它占用的內(nèi)存較少,適合在字符終端下使用,如圖-1 所示。-1 menuconfig 主屏幕第 3 種 make xconfig 是圖形用戶界面,采用圖形窗口按鈕進行人機交互,整個設(shè)置界面簡潔明了、使用非常方便且?guī)椭募踩菀撰@取,適合在 X Windows 下使用,如圖 2 所示。 xconfig 主屏幕一般在 /usr/src/linux-8/ 目錄下運行設(shè)置命令。在窗口菜單NCurses下,用戶可以利用光標(biāo)鍵移動到選項、再用空格鍵或鼠標(biāo)選中顯示*號來進行
11、設(shè)置并可以任意回退做修改。在 X 圖形下用戶可以通過鼠標(biāo)單擊按鈕來進行配置并可以任意回退做修改。在文本類型下那么不能,因為它只在整個設(shè)置過程中一直向你提問。 配置內(nèi)容配置內(nèi)容配置系統(tǒng)內(nèi)核的目的是建立一個適合大小、滿足需求的系統(tǒng)內(nèi)核;因此,用戶必須根據(jù)自己所設(shè)計系統(tǒng)的需要對 Linux 系統(tǒng)支持的硬件和軟件進行適當(dāng)裁減,即從配置內(nèi)容中選擇相應(yīng)的硬件類型和適宜的設(shè)備驅(qū)動程序。不同的內(nèi)核版本顯示的配置內(nèi)容有所不同,這里以 Linux 內(nèi)核 2-4-20 版本為例說明。配置內(nèi)容共有 35 個類別,如表 3.-1 所示:編號類別含義1Code maturity level options代碼成熟級別2L
12、oadable module support可裝載模塊支持3Processor type and features處理器類型與特征4General setup一般設(shè)置5Memory Technology DeviceMTD 設(shè)備支持6Parallel port support并行口支持7Plug and Play configuration即插即用支持8Block devices塊設(shè)備支持9Multi-device supportRAID and LVM多設(shè)備支持10Cryptography support密碼系統(tǒng)支持11Networking options網(wǎng)絡(luò)選項12Telephony Su
13、pport 支持13ATA/IDE/MFM/RLL support多種接口存儲設(shè)備支持14SCSI supportSCSI 設(shè)備的支持15Fusion MPT device supportFusion MPT 設(shè)備支持16IEEE 1394FireWiresupportIEEE 1394 防火墻設(shè)備支持17I2O device supportI2O 設(shè)備支持18Network device support網(wǎng)絡(luò)設(shè)備支持19Amateur Radio support業(yè)余無線電支持20IrDAinfraredsupport紅外線支持21ISDN subsystemISDN 子系統(tǒng)22Old CD-R
14、OM driversnot SCSI、not IDE非 SCSI/IDE 接口的 CD-ROM 設(shè)備23input core support輸入核心支持24Character devices字符設(shè)備25Multimedia devices多媒體設(shè)備26Crypto Hardware supportCrypto 硬件支持27File systems文件系統(tǒng)28Console drivers控制臺驅(qū)動29Sound聲卡驅(qū)動30USB supprotUSB 支持31Additional device driver support附加設(shè)備驅(qū)動支持32Bluetooth support藍(lán)牙支持33pro
15、filing supportProfiling 支持34Kernel hacking內(nèi)核分析35Library routines庫例程3.2.23.2.2 配制方法配制方法以運行 xconfig 設(shè)置程序為例說明配置方法。在 xconfig 主屏幕上有許多設(shè)置選項,但在內(nèi)核裁減中許多項選擇項可以采用默認(rèn)的設(shè)置。下面按配置內(nèi)容類別說明主要選項的配置方法,截取的配置圖供大家參考。1.代碼成熟級別選項代碼成熟級別選項Code maturity level options 這里只有一項:prompt for development and/or incomplete code/drivers,如果你要
16、試驗使用還有待完善的代碼,比方 framebuffer、k d、IPv6 等,就必須把該項選擇為 Y;否那么可以把它選擇為 N。這是內(nèi)核的一個內(nèi)置特性,不能選擇為模塊。如圖-1 所示。圖 3.2.2-1 代碼成熟級別選項2.可裝載模塊支持可裝載模塊支持Loadable module support 這里有 3 項,如圖3-2所示。圖 3.2.2-2 可裝載的模塊支持Enable loadable module support:除非你準(zhǔn)備把所有需要的內(nèi)容都編譯到內(nèi)核里面,否那么該項應(yīng)該是必選的。Set version inFORMation on all module symbols:可選可不選
17、。Kernel module loader:讓內(nèi)核在啟動時有自己裝入必需模塊的能力,該選項必須在Enable loadable module support 選項激活即為“y情況下才能選擇;建議選上。3. 處理器類型與特征處理器類型與特征Processor type and features 這里的選項一般不需要設(shè)置,使用默認(rèn)的設(shè)置即可。例如:Processor family:系統(tǒng)安裝時會根據(jù)你的計算機情況選擇 CPU 類型。High Memory Support:大容量內(nèi)存的支持??梢灾С值?4G、64G,默認(rèn)為“off。Math emulation:協(xié)處理器仿真,現(xiàn)在的協(xié)處理器已集成在 C
18、PU 內(nèi);默認(rèn)為“n。MTTR support:MTTRMemory Type Range Register支持??刹贿x,默認(rèn)為“n。Symmetric multi-processing support:對稱多處理器支持。單 CPU 系統(tǒng)一般不用選。3.一般設(shè)置一般設(shè)置General setup 這里是安裝時對系統(tǒng)最根本的硬件設(shè)置。這局部內(nèi)容非常多,一般在安裝中 Linux 會根據(jù)你計算機系統(tǒng)的硬件自動檢測并設(shè)置,使用缺省設(shè)置就可以。常用的選項簡要介紹如下:Networking support:網(wǎng)絡(luò)支持。如果有網(wǎng)卡默認(rèn)為“y。PCI support:PCI 支持。如果使用了 PCI 的卡,默認(rèn)
19、為“y。PCI access mode:PCI 存取模式??晒┻x擇的有 BIOS、Direct 和 Any,默認(rèn)為Any。Support for hot-pluggabel devices:熱插拔設(shè)備支持。如果有此類設(shè)備默認(rèn)為“y。PCMCIA/CardBus support:PCMCIA/CardBus 支持。用系統(tǒng)測試的默認(rèn)選擇。 System V IPCBSD Process AccountingSysctl support 以上三項是有關(guān)進程處理 IPC 調(diào)用的,主要就是 System V 和 BSD 兩種風(fēng)格。如果你不是使用 BSD,就不要改變默認(rèn)選擇。Power Managemen
20、t support:電源管理支持,用系統(tǒng)默認(rèn)選擇。Advanced Power Management BIOS support:高級電源管理 BIOS 支持,用系統(tǒng)默認(rèn)選擇。5. MTD 設(shè)備支持設(shè)備支持Memory Technology DeviceMTD 設(shè)備是像閃存芯片、小型閃存卡、記憶棒等之類的設(shè)備,它們在嵌入式設(shè)備中的使用正在不斷增長。PC 上一般默認(rèn)為“n。 6. 并行口支持并行口支持Parallel port support 如果不打算使用并行口,就選“n。 7. 即插即用支持即插即用支持Plug and Play configuration 目前 Linux 對即插即用設(shè)備的支
21、持不如 Windows 好,如果系統(tǒng)中有 PNP 設(shè)備,默認(rèn)的選項為“y。8. 塊設(shè)備支持塊設(shè)備支持Block devices 一般使用缺省設(shè)置就可以,主要選項簡要說明如下:Normal PC floppy disk support:普通 PC 軟盤支持。假設(shè)有軟驅(qū)默認(rèn)為“y。XT hard disk support:早期的硬盤支持,一般默認(rèn)為“n。Compaq SMART2 support:磁盤陣列控制卡,沒有該設(shè)備為“n。Mulex DAC960/DAC1100 PCI RAID Controller support:RAID 鏡像, 沒有該設(shè)備為“n。 Loopback device s
22、upport:把文件當(dāng)成區(qū)塊設(shè)備使用,一般默認(rèn)為“nNetwork block device support:網(wǎng)絡(luò)塊設(shè)備支持。如果想訪問網(wǎng)上鄰居的東西,選“y。 RAM disk support:RAM 盤支持, 一般默認(rèn)為“n。9多設(shè)備支持多設(shè)備支持Multi-device supportRAID and LVM Multiple devices driver support:多設(shè)備驅(qū)動支持, 一般默認(rèn)為“n;該項激活“y時以下兩項才可以選擇。 RAID support:RAID 支持,沒有該設(shè)備為“n。Logical volume managerLVMsupport:邏輯卷管理支持,一般默
23、認(rèn)為“n。10密碼系統(tǒng)支持密碼系統(tǒng)支持(Cryptography support)在個人計算機PC系統(tǒng)上一般不用,系統(tǒng)默認(rèn)為“n。11網(wǎng)絡(luò)選項網(wǎng)絡(luò)選項Networking options 這里配置的主要是網(wǎng)絡(luò)協(xié)議,其選項很多。如果要定義TCP/IP、ATM、IPX、DECnet、Appletalk等協(xié)議的支持,可以把它們編譯進內(nèi)核中或以模塊加載。在這里還可以配置路由、防火墻、IP 隱藏、IP 播送、IP 轉(zhuǎn)發(fā)等等。不過有些配置仍然處于實驗階段,例如:IPv6、 d、Qos and/or fair queueing效勞質(zhì)量公平調(diào)度等。 12 支持支持Telephony Support Linux
24、 下可以支持 卡,這樣你就可以在 IP 上使用普通的 提供語音效勞了。默認(rèn)選項為“n。13多種接口存儲設(shè)備支持多種接口存儲設(shè)備支持ATA/IDE/MFM/RLL support 有關(guān)各種接口的硬盤/光驅(qū)/磁帶/軟盤支持,一般使用默認(rèn)的選項即可。 14SCSI 設(shè)備的支持設(shè)備的支持SCSI support 如果有 SCSI 設(shè)備,系統(tǒng)會默認(rèn)選擇假設(shè)干選項,其他的選項可以根據(jù)情況選擇。如果在 PC 上安裝了虛擬機如 VM ,那么會把 IDE 硬盤虛擬成 SCSI 硬盤,局部選項會自動選中。 15Fusion MPT 設(shè)備支持設(shè)備支持Fusion MPT device support 需要 Fusi
25、on MPT 兼容 PCI 適配器,一般默認(rèn)為“n。16IEEE 1394 防火墻設(shè)備支持防火墻設(shè)備支持IEEE 1394FireWiresupport該項仍在實驗中,默認(rèn)為“n。 17I2O 設(shè)備支持設(shè)備支持I2O device support 需要 I2O 接口適配器支持,在智能 Input/OutputI2O體系接口中使用。默認(rèn)為“n。 18網(wǎng)絡(luò)設(shè)備支持網(wǎng)絡(luò)設(shè)備支持Network device support 在網(wǎng)絡(luò)選項中選好協(xié)議后,在這項中定義使用這些網(wǎng)絡(luò)協(xié)議的方式。有 ARCnet 設(shè)備、Ethernet10 or 100 Mbit 、Ethernet1000Mbit 、Wirele
26、ss LANnon-hamradio 、Token Ring device、Wan interfaces、PCMCIA network device support 幾大類。實際上這個選項中主要做的是網(wǎng)絡(luò)接口卡類的設(shè)置,如 10/100M 的以太網(wǎng)網(wǎng)卡。如果Linux 系統(tǒng)可以識別到網(wǎng)卡,那么根本無需設(shè)置;如果無法識別網(wǎng)卡,那么只能自己翻開Ethernet10 ro 100 Mbit選項查找了。一般都能找到自己適用的網(wǎng)卡型號。如果沒有找到,只好到廠商那里去要驅(qū)動了。一般把該類編譯到內(nèi)核里,不選“m而選“y。19業(yè)余無線電支持業(yè)余無線電支持Amateur Radio support 配置業(yè)余無線
27、電播送,一般默認(rèn)選項為“n。 20紅外線支持紅外線支持IrDAinfraredsupport 沒有紅外設(shè)備,默認(rèn)選項為“n。 21ISDN 子系統(tǒng)子系統(tǒng)ISDN subsystem 如果你使用 ISDN 上網(wǎng),這個選項選“y。 22非非 SCSI/IDE 接口的接口的 CD-ROM 設(shè)備設(shè)備Old CD-ROM driversnot SCSI、not IDE 現(xiàn)在的計算機一般都沒有這樣的設(shè)備了,默認(rèn)的選項就是“n。 23輸入核心支持輸入核心支持input core support該選項下有假設(shè)干 USB 人機接口設(shè)備如鼠標(biāo)、鍵盤和游戲桿等選項。如果你要使這些設(shè)備驅(qū)動編譯進內(nèi)核或以模塊加載,那么
28、在選擇前先使“input core support選項為“y。24字符設(shè)備字符設(shè)備Character devices 這個選項的內(nèi)容包括以下幾個大類: I2C support:I2C 是 Philips 竭力推動的微控制應(yīng)用中使用的低速串行總線協(xié)議。如果你要選擇下面的 Video For Linux,該項必選。Mice:鼠標(biāo)?,F(xiàn)在可以支持總線、串口、PS/2、C&T 82C710 mouse port、PC110 digitizer pad 等,實際上在安裝 Linux 時就根據(jù)自己的鼠標(biāo)類型選擇了。Joysticks:手柄。設(shè)置在 Linux 下手柄驅(qū)動。Watchdog Cards
29、:“看門狗卡雖然稱為 Cards,這個可以用純軟件來實現(xiàn),當(dāng)然也有硬件的。如果你把這個選中,那么就會在你的/dev 下創(chuàng)立一個名為 watchdog 的文件,它可以記錄你的系統(tǒng)的運行情況,一直到系統(tǒng)重新啟動的 1 分鐘左右。有了這個文件,系統(tǒng)可以恢復(fù)到重啟前的狀態(tài)。Video For Linux:在 Linux 下支持有關(guān)的音頻/視頻卡,可根據(jù)需要選擇。Ftape, the floppy tape device driver:磁帶設(shè)備驅(qū)動支持。沒有設(shè)備默認(rèn)為“n。PCMCIA character device support:PCMCIA 字符設(shè)備支持。沒有設(shè)備默認(rèn)為“n。25多媒體設(shè)備多媒體
30、設(shè)備Multimedia devices該選項下有 Video For Linux 和 Radio Adapters 兩個子選項。其中 Radio Adapters無線電適配器選項一般默認(rèn)為“n。如果你需要攝像頭等視頻設(shè)備時需要配置 Video For LinuxLinux 視頻選項。如 video4linux 為視頻采集設(shè)備提供了編程接口。 26Crypto 硬件支持硬件支持Crypto Hardware support沒有該類設(shè)備時,默認(rèn)配置為“n。27文件系統(tǒng)文件系統(tǒng)File systems 這個選項的內(nèi)容包括以下幾個大類:Quota support:用 Quota 支持可以限制每個用戶
31、可用的硬盤空間的上限,在多用戶共同使用一臺主機的情況中十分有效。DOS FAT fs support:DOS FAT 文件格式的支持,可以支持 FAT16、FAT32。ISO 9660 CD-ROM file system support:CD-ROM 使用的就是 ISO 9660 的文件格式。NTFS file system support:ntfs 是 NT 使用的文件格式。/proc file system support:/proc 文件系統(tǒng)是 Linux 提供給用戶和系統(tǒng)進行交互的通道,建議選上,否那么有些功能沒法正確執(zhí)行。 Virtual memory file system su
32、pport:虛擬內(nèi)存文件系統(tǒng)支持,一般用默認(rèn)配置。Network File Systems網(wǎng)絡(luò)文件系統(tǒng):如果要進行嵌入式系統(tǒng)開發(fā),那么可以對它配置,也可以通過在終端下執(zhí)行 setup 命令設(shè)置模塊加載方式 ;如果配置 SMB 效勞器Linux 和 Windows 相互以網(wǎng)絡(luò)鄰居的形式訪問對方 ,那么可以對它配置。Partition Types分區(qū)類型:一般用默認(rèn)配置。Native Language Support本地語言支持:系統(tǒng)根據(jù)安裝時對語言支持的選擇配置。28控制臺驅(qū)動控制臺驅(qū)動Console drivers一般使用 VGA text console 就可以了,標(biāo)準(zhǔn)的 80*25 的文本
33、控制臺。 如果要使用某些特殊的顯示模式,如幀緩沖等可以配置其中的 Video mode selection support、Frame-buffer support 等局部子選項。 29聲卡驅(qū)動聲卡驅(qū)動Sound 如果你的系統(tǒng)有聲卡,那么安裝中 Linux 會檢測它并設(shè)置 Sound card support 和相應(yīng)的聲卡驅(qū)動程序為“y,如果系統(tǒng)檢測不到聲卡,那么你只能在聲卡驅(qū)動列表中看看能否找到適合的了。 30USB 支持支持USB supprot很多 USB 設(shè)備,比方鼠標(biāo)、攝像頭、調(diào)制解調(diào)器、打印機、掃描儀等,在 Linux 都可以得到支持,可以根據(jù)需要自行選擇。31附加設(shè)備驅(qū)動支持附加
34、設(shè)備驅(qū)動支持Additional device driver support如果你的系統(tǒng)中有一些像 AEP SSL Accelerator 等附加的設(shè)備,那么可以在該選項中進行選擇,如果沒有,那么默認(rèn)為“n。 32藍(lán)牙支持藍(lán)牙支持Bluetooth support如果你的系統(tǒng)中有藍(lán)牙設(shè)備,那么可以在該選項的子選項中進行選擇,如果沒有,那么默認(rèn)為“n。 33Profiling 支持支持profiling support這個選項用來開啟系統(tǒng)內(nèi)核做效率統(tǒng)計,并會提供其他在為系統(tǒng)檢錯時有用的信息。這些功能的開啟會付出一些時間代價,并造成系統(tǒng)執(zhí)行得較為緩慢,如果你在研究或測試系統(tǒng)內(nèi)核的某些問題,那么可以
35、選擇“y;否那么默認(rèn)為“n。普通用戶是用不著這個功能的。34內(nèi)核分析內(nèi)核分析Kernel hacking 該選項是為優(yōu)化或增強功能而對系統(tǒng)內(nèi)核進行的調(diào)整。如果你正在開發(fā)驅(qū)動程序或試圖調(diào)試內(nèi)核找出問題可以選“y,否那么默認(rèn)為“n。普通用戶是用不著這個功能的。 35庫例程庫例程Library routines 該選項下有兩個子選項 zlib discompression support 和 zlib compression support 分別為zlib 庫解壓縮和壓縮的支持;默認(rèn)為“n。設(shè)置選項及子選項很多,這里只是介紹 35 個大項和局部子選項,其目的是讓大家了解內(nèi)核裁剪時內(nèi)核的配置包含哪些內(nèi)
36、容。在做完選項的選擇后,不要忘記保存設(shè)置后退出,保存按鈕如圖-3 所示。當(dāng)然、你也可以不保存退出,或者保存到系統(tǒng)配置文件中以便以后裝載再配置。圖 3.2.2-3 配置保存3.33.3 編譯系統(tǒng)內(nèi)核編譯系統(tǒng)內(nèi)核當(dāng)配置完成并保存退出后就要重新編譯系統(tǒng)內(nèi)核。系統(tǒng)一般會在配置結(jié)束時提示要進行 make dep 操作。 運行帶有 clean 和 dep 選項的 make 文件以去除過時的目標(biāo)文件并建立適宜的獨立性如果要正確編譯代碼,必須要滿足該要求 。命令為:make depmake clean如果沒有出現(xiàn)錯誤提示,就可以運行 make zImage 命令,該命令將在 /usr/src/linux-8/
37、arch/i386/boot 目錄下生成一個全新的內(nèi)核。該內(nèi)核文件名稱為 zImage ,使用中注意大小寫。如果給內(nèi)核添加了許多驅(qū)動程序或各種各樣的支持,可能需要使用 make bzImage 命令,該命令可以制作出一個很大的內(nèi)核映象文件,該文件可以帶所有的選項進行啟動。一般當(dāng)編譯的內(nèi)核較大時系統(tǒng)會推薦內(nèi)核命名為 bzImage。如果看到類似于以下的提示信息,就表示已經(jīng)完成了內(nèi)核創(chuàng)立工作。Root device is (3,1)Boot sector xxx bytes.Setup is xxxx bytes.System is xxx kBSyncMake1:Leaving director
38、y /usr/src/linux-8/arch/i386/boot 這時在目錄下生成一個 zImage 或bzImage 文件;如果沒有這個文件說明編譯中有錯誤,導(dǎo)致編譯錯誤的原因可能有: 內(nèi)核配置有問題,應(yīng)重新配置后再編譯。 核源代碼有問題,應(yīng)盡量選用穩(wěn)定的內(nèi)核版本號為偶數(shù)版本。 文件連接的問題。 系統(tǒng)硬件的兼容性問題也可能導(dǎo)致內(nèi)核編譯失敗。內(nèi)核編譯完成后,由于有些模塊并沒有編譯進內(nèi)核、而是通過加載的選擇“m ;所以需要編譯、安裝模塊。命令為:make modulesmake modules_install 重新編譯內(nèi)核的過程,會花費比較多的時間;具體的時間取決于你選擇內(nèi)核的大小、處理器的速
39、度等因數(shù)。一般在嵌入式系統(tǒng)中內(nèi)核比較精悍,編譯過程會比較快;另外、如果沒有運行其他的負(fù)載密集型的應(yīng)用程序如 X 圖形程序 ,編譯過程會更快。 啟用新系統(tǒng)內(nèi)核啟用新系統(tǒng)內(nèi)核以上各個步驟完成之后,就可以準(zhǔn)備啟用新的系統(tǒng)內(nèi)核來工作了。如果你沒有采用GRUB 或 LILO 等引導(dǎo)程序進行多培、配置啟動,那么一定要備份正在使用的系統(tǒng)內(nèi)核。備份正在使用的系統(tǒng)內(nèi)核備份正在使用的系統(tǒng)內(nèi)核在啟用新的系統(tǒng)內(nèi)核前,作好正在使用的系統(tǒng)內(nèi)核備份是非常重要的!一旦新系統(tǒng)內(nèi)核崩潰,用應(yīng)急啟動盤進入 Linux 系統(tǒng),恢復(fù)舊系統(tǒng)內(nèi)核。制作步驟如下:cd /bootmv vmlinuz-8 vmlinuz.old #現(xiàn)有的內(nèi)核
40、更名 -8/arch/i386/boot/zImage/boot #復(fù)制新內(nèi)核到/boot 目錄多配置啟動的配置文件修改多配置啟動的配置文件修改如果你用 GRUB 或 LILO 配置文件啟動,那么要修改該文件。以文件為例default=0timeout=10splashimage=(hd0,1)/boot/grub/splash.xpm.gztitle Red Hat Linux (-8)root (hd0,1)kernel /boot/vmlinuz-2.4.20-8 ro root=LABEL=/initrd /boot/initrd-2.4.20-8.imgtitle WinXProot
41、noverify (hd0,0)chainloader +1第 1 種方案,不增加啟動選項:把 grub.conf 文件中的以下行:kernel /boot/vmlinuz-8 ro root=LABEL=/改為:kernel /boot/zImage ro root=LABEL=/第 2 種方案,增加一個啟動選項;文件修改為:default=0timeout=10splashimage=(hd0,1)/boot/grub/splash.xpm.gztitle Red Hat Linux (-8)root (hd0,1)kernel /boot/vmlinuz-2.4.20-8 ro root
42、=LABEL=/initrd /boot/initrd-2.4.20-8.imgtitle Red Hat Linux-new (2.4.20-8)root (hd0,1)kernel /boot/bzImage ro root=LABEL=/initrd /boot/initrd-2.4.20-8.imgtitle WinXProotnoverify (hd0,0)chainloader +1修改后保存文件,如果是用 LILO 一定要在超級用戶提示符下執(zhí)行 lilo 或 lilo v 令以使配置文件生效;如果用 GRUB 那么無須執(zhí)行命令。重啟系統(tǒng)后那么可以用 Linux 新的內(nèi)核啟動了。如
43、果是嵌入式系統(tǒng)開發(fā),那么可以把裁剪過的內(nèi)核 3.53.5 LinuxLinux 內(nèi)核升級內(nèi)核升級準(zhǔn)備工作準(zhǔn)備工作首先說明,下面帶 * 符號的行都是要輸入的命令行,且本文提到的所有命令行都在終端里輸入。啟動 Linux 虛擬操作系統(tǒng),并用根用戶登錄,進入終端模式下。1、 輸入* unam a 命令來查看 Linux 內(nèi)核版本 從中可以看出當(dāng)前 Linux 版本是-83、下載內(nèi)核升級工具 (2)下載 mkinitrd-(3)下載 lvm2- (4)下載 device-mapper-配置工作配置工作/usr/src 文件夾下。 具體步驟:先通過共享將該 4 個升級工具和 Linux2.6 內(nèi)核源碼包
44、共享到/mnt/hgfs 文件下,然后在剪貼到/usr/src 文件夾下。2.拷貝完畢后,開始解壓新內(nèi)核,具體操作依次執(zhí)行以下命令* cd /usr/src (進入到/usr/src 目錄下)* tarjvxflinux-2(解壓 Linux 新內(nèi)核)解壓過程中解壓結(jié)束后,然后輸入* ln -s linux- linux (重新生成 linux 文件夾)3. 安裝 module-init-tools 工具具體步驟如下: 在/usr/src 目錄下,依次執(zhí)行以下命令:首先輸入命令* tar jvxf module-init-tools-3.2.tar.bz2 (解壓 module-init-to
45、ols) 解壓結(jié)束后在輸入:* cd module-init-tools-3.2 (由/usr/src 目錄進入 module-init-tools 目錄下)* ls查看該目錄下的文件然后輸入:* ./configure -prefix=/ 結(jié)果如下:接下來輸入:* make moveold結(jié)果如下:緊接著輸入:* make all install結(jié)果如下:最后輸入:* ls查看該目錄下的文件查看之后,再輸入:* 根據(jù)下面顯示,因為沒有報錯,所以安裝成功!mkinitrd-386 升級工具在終端中輸入 cd /sur/src然后再輸入rpm -ivh -nodeps mkinitrd-mkin
46、itrd-386 升級工具安裝成功!lvm2-386 升級工具輸入 rpm -ivh -nodeps lvm2-.rpmlvm2-386 升級工具安裝成功!device-mapper-386 升級工具輸入 rpm -ivh -nodeps device-mapper-device-mapper-386 升級工具安裝成功!7.配置內(nèi)核選項首先通過輸入cd /usr/src/ 然后再輸入cd linux-輸入make mrproper 該命令可確保該目錄下沒有不正確的.o 文件。輸入make menuconfig 命令來(配置內(nèi)核各選項。出現(xiàn)如下界面:接下來在該界面上進行相關(guān)操作。1通過上下左右鍵
47、來選擇 Loadable Module support 選項,enter。選上“Module unloading和“Automatic kernel module loading這兩項。然后退出。2在 Device Drivers-Block Devices 中選上“Loopback device support;在 Device Drivers-Multi-device support(RAID and LVM)處要選上“device mapper support;Device Drivers-Graphics support,一定要選上“ Support for frame buffer
48、devices;Device Drivers -USB support -選上“USB Mass Storage support;Device Drivers -;Network device support -Ethernet (10 or 100Mbit) - AMD PCnet32 PCI support File system-(以下 9 個選項是關(guān)于 ext2 和 ext3 文件系統(tǒng)配置,全部選上)Second extended fs supportExt2 extended attributesExt2 POSIX Access Control ListsExt2 Security
49、 LabelsExt3 journalling file system supportExt3 extended attributesExt3 POSIX Access Control ListsExt3 Security LabelsJBB (ext3) debugging support File system-DOS/FAT/NT Filesystems -選上“NTFS file system support; vmware 下編譯 Linux 內(nèi)核,硬盤用的是 scsi 的,需選擇以下三個選項: Device Drivers -SCSI device support -SCSI disk support; Device Drivers-SCSI device support-SCSI low-level drivers-; BusLogic SCSI support編譯工作編譯工作以下步驟均在在/usr/src/linux-目錄下執(zhí)行相關(guān)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 治療室和病房溫濕度管理
- 酒類防偽知識培訓(xùn)課件
- 人力調(diào)研報告范文
- 全國農(nóng)村考察報告范文
- 浙江國企招聘2025年臺州市椒江區(qū)屬國有企業(yè)招聘22人筆試參考題庫附帶答案詳解
- 請辭報告范文
- 2025年新型聚氨酯漆成膜交聯(lián)劑項目合作計劃書
- 浙江國企招聘2024溫州市鹿通文化旅游有限公司招聘22人筆試參考題庫附帶答案詳解
- 2025年度智能工廠租賃安全生產(chǎn)責(zé)任書
- 二零二五年度健康食品品牌委托代銷協(xié)議
- 高壓隔膜壓濾機安裝方案
- 2024電力儲能電站鈉離子電池技術(shù)條件
- 交通事故授權(quán)委托書樣本(通用)正規(guī)范本(通用版)
- MLL基因重排成人急性B淋巴細(xì)胞白血病和急性髓系白血病臨床特征及預(yù)后危險因素分析
- 人際關(guān)系與溝通技巧-職場中的平行溝通與同事溝通
- 電廠深度調(diào)峰運行對機組的影響
- 注塑生產(chǎn)過程控制流程
- 分布式光伏電站勘查收資清單
- 產(chǎn)品不良品(PPM)統(tǒng)計表格模板
- 新教科版四年級下冊科學(xué)全冊重點題型練習(xí)課件(含答案)
- 腸造口術(shù)-課件
評論
0/150
提交評論