1. 程式人生 > >Linux 內核(kernel)

Linux 內核(kernel)

Linux kernel

1、內核是什麽,內核是操作系統的核心。
在Linux中,其實內核就是系統上面的一個文件而已,這個文件包含了驅動主機各項硬件的檢測程序與驅動模塊。內核文件就是在/boot 目錄下以vmlinuz開頭的文件,有時候會發現boot下有好幾個以vmlinuz開頭的文件,說明可以有多個內核,不過啟動的時候只能選擇一個來加載,Linux是單內核、模塊化體系的。
技術分享圖片
輸出的三列信息分別為模塊名稱、占用內存大小、是否在被使用,如果第三列為0,則該模塊可以隨時卸載,非0則無法執行modprobe刪除模塊。
2、查看已經加載的內核模塊:
a.lsmod命令
技術分享圖片
b.查看內核模塊的文件
技術分享圖片
c.可以查看指定模塊的信息modinfo
技術分享圖片
查看bridge模塊的信息
d.裝載與卸載模塊 modprode
裝載 modprode MOD_NAME(自動解決依賴關系)
卸載 modprode -r MOD_NAME
e.手動裝載與卸載模塊文件
裝載 insmod /path/to/module_file(不會自動解決依賴關系)
卸載 rmmod MOD_NAME
3、/proc目錄是系統與內核交互的一個偽文件系統接口,/proc目錄下的每個文件名都是內核參數,目錄名為內核參數節點(子系統或子功能)信息。比如:
net.ipv4.ip_forward = 1 該參數表示ipv4的核心路由轉發功能,對應的內核文件為
/proc/sys/net/ipv4/ip_forward
在該目錄下的一些只讀文件表示的是輸出的內核信息,一些可寫的文件表示的是可以修改的內核特性,這些可寫的文件分布在/proc/sys目錄下。
偽文件系統特點為:文件不能直接使用編輯器編輯,可以通過以下方式修改
(1) echo
echo "New_Value">/proc/sys/path/to/file
(2) sysctl -w
sysctl -w path.to.file = New_Value
/proc/sys/net/ipv4/ip_forward
技術分享圖片
這兩種方式設定立即生效,但是內核重啟後無效。
內核參數配置文件/etc/sysctl.conf
path.to.paramter=New_Value
註意,此種設定不能立即生效,但重啟系統後一直生效;為了不重啟系統而使其生效的方式為:
sysctl -p
查看當前運行中的內核的所有參數及其值
sysctl -a
技術分享圖片

Linux 內核(kernel)