linux的核心(kernel)
1 linux就是指kernel
2 kernel負責整個硬體的驅動,和提供各種核心功能
3 kernel是乙個檔案,一般放置在/boot/vmlinuz-$(uname -r)
此檔案包含各項硬體偵測程式和驅動模組
4 核心模組(kernel module),有些功能沒有整合在核心中,編譯成模組以便核心隨時載入
放置路徑/lib/modules/$(uname -r)/kernel/
5 核心的版本,主版本.次版本.發布版本-修改版本
7 建議將核心源**放置在/usr/src/kernels/下
核心源**編譯步驟
1 清除環境,第一次編譯用make mrproper,以後可以用make clean
2 選擇核心功能,make xxconfig,生成.config檔案,此步最複雜且重要
3 編譯核心,make bzimage
4 編譯模組,make modules
5 安裝模組,make modules_install
6 安裝核心,將核心檔案bzimage和核心功能列表檔案.config,移動並改名到/boot/路徑下
7 新建相應的initrd檔案,mkinitrd
8 編輯開機選單,設定grub
核心源**編譯命令
make mrproper
刪除以前的目標檔案,也刪除以前的核心功能選擇文件
只有第一此執行編譯前使用此命令
make clean
刪除以前編譯生成的目標檔案
make xxconfig
挑選核心功能,生成.config檔案,核心功能列表檔案
/boot/config-$(uname -r)就是已經設定完成的檔案
make vmlinux
生成未經壓縮的核心
make modules
生成僅核心模組
make bzimage
生成經過壓縮的核心(預設)
make all
進行make mlinux,make modules,make bzimage
make modules_install
將模組放置到/lib/modules/$(uname r)路徑下
mkinitrd
新建initrd檔案
make xxconfig挑選核心功能多種方法
make menuconfig
文字模式下顯示類似圖形介面,來選擇列表
make oldconfig
通過已存在的./.config,使用該檔案內的設定值為預設值
只將新版本核心內的新功能選項讓使用者選擇
make xconfig
通過qt圖形介面的圖形化顯示,需要x window支援
make gconfig
通過gtk圖形介面的圖形化顯示,需要x window支援
make config
每個專案一條一條的列出供使用者選擇
如果設定錯誤,只能再次從頭選擇,不常用
make xxconfig具體選項
general setup
一般性設定,可以設定核心的新版本
enable loadable module
支援動態模組
enable the block layer
支援block裝置的功能
processor type and features
cpu型別與功能選擇
power management and acpi options
電源管理功能
bus options(pci etc.)
匯流排相關選項,支援pci和pci-e
executable file formats/emulations
編譯後執行檔案格式
networking support
核心網路功能,包括防火牆
device drivers
硬體裝置驅動
firmware drivers
韌體驅動
file system
檔案系統支援
kernel hacking
核心黑客,與核心開發者相關
security options
資訊保安方面設定
cryptographic api
加密api的設定
virtualization
虛擬化設定
library routines
函式庫設定
核心源**目錄
arch
與硬體平台相關,主要指cpu類別
block
與儲存媒介相關,主要指磁碟分割槽等
crypto
核心支援的加密技術
documentation
核心說明文件
drivers
硬體驅動
firmware
韌體資料
fs 核心所支援的檔案系統
include
標頭檔案
init
核心初始化的定義功能
ipc
定義系統內各程式的溝通
kernel
定義核心的程式,核心狀態,執行緒,程式排程,程式訊號等
lib
函式庫
mm與記憶體單元相關的各項資料,包括swap與虛擬記憶體
net與網路相關的各項協議資料,防火牆模組等
security
與安全方面相關的設定
sound
與音效相關的各項模組
virt
與虛擬化相關的資訊
交叉編譯龍芯平台的uboot 和 kernel
export arch mips export cross compile mips64el linux 如果想指定編譯目錄 export build dir tmp build 或 make o tmp build make ls2k pai config makeexport arch mips...
Linux核心的編譯
linux的乙個重要的特點就是其源 的公開性,所有的核心源程式都可以在 usr src linux下找到,大部分應用軟體也都是遵循gpl而設計的,你都可以獲取相應的源程式 全世界任何乙個軟體工程師都可以將自己認為優秀的 加入到其中,由此引發的乙個明顯的好處就是linux修補漏洞的快速以及對最新軟體技...
linux核心的編譯
1 解壓縮 tar jxvf linux 2.6.22.6.tar.bz2 2 打補丁,patch 補丁檔案 具體打到那裡去的目標位址 在補丁檔案裡面有,查詢diff的地方 進入linux核心目錄,cd linux 2.6.22.6 patch p1 linux 2.6.22.6 jz2440.pa...