分類: 嵌入式
l arch目錄
arch
是architecture
的縮寫。核心所支援的每種
cpu體系,在該目錄下都有對應的子目錄。每個
cpu的子目錄,又進一步分解為
boot,mm,kernel
等子目錄,分別包含控制系統引導,記憶體管理,系統呼叫等。
| --x86
/* 英特爾
cpu及與之相相容體系結構的子目錄*/
| |--boot
/*引導程式*/
| | |--compressed
/*核心解壓縮*/
| |--tools
/*生成壓縮核心映像的程式*/
| |--kernel
/*相關核心特性實現方式,如訊號處理、時鐘處理*/
| |--lib
/*硬體相關工具函式*/
l block目錄
部分塊裝置驅動程式
l crypto目錄
加密、壓縮、
crc校驗演算法
l documentation
核心的文件
l drivers目錄
裝置驅動程式
l fs目錄
存放各種檔案系統的實現**。每個子目錄對應一種檔案系統的實現,公用的源程式用於實現虛擬檔案系統
vfs。
| |--devpts /* /dev/pts
虛擬檔案系統*/
| |--ext2 /*
第二擴充套件檔案系統*/
| |--fat /*ms
的fat32
檔案系統*/
| |--isofs /*iso9660
光碟cd-rom
上的檔案系統*/
l include目錄
核心所需要的標頭檔案。與平台無關的標頭檔案在
include/linux
子目錄下,與平台相關的標頭檔案則放在相應的子目錄中。
l init目錄
核心初始化**
l ipc目錄
程序間通訊的實現**
l kernel目錄
linux
大多數關鍵的核心功能都是在這個目錄實現。(排程程式,程序控制,模組化)
l lib目錄
庫檔案**
l mm目錄
mm目錄中的檔案用於實現記憶體管理中與體系結構無關的部分(與體系結構相關的部分在**實現?)
l net目錄
網路協議的實現**
| |--802 /*802
無線通訊協議核心支援***/
與蘋果系統連網的協議*/
| |--ax25 /*ax25
無線internet
協議*/
| |--bridge /*
橋接裝置*/
| |--ipv4 /*ip
協議族v4版32
位定址模式*/
| |--ipv6 /*ip
協議族v6版*/
l samples
一些核心程式設計的範例
l scripts
配置核心的指令碼
l security
selinux
的模組
l sound
音訊裝置的驅動程式
l usr
cpio
命令實現
l virt
核心虛擬機器
Linux核心目錄結構
arch 存放特定平台的晶元對linux核心程序排程 記憶體管理 中斷等支援 基於架構的具體實現,都應該在該目錄下尋找 block 塊裝置驅動程式i o排程 certs 證書 credits crypto 常用加密演算法 非對稱加密演算法rsa 對稱加密演算法aes 雜湊演算法 又稱hash演算法 ...
分析核心目錄
注 為學習朱有鵬課程的筆記 在根目錄裡kbuild kernel build核心編譯 arch目錄裡是不同架構的cpu block表示塊裝置,以扇區等進行整體訪問 不是以位元組進行訪問 幾乎可以認為塊裝置就是儲存裝置,外存 crypto裡面放了加密演算法的實現crc32 md5 init核心初始化 ...
2 Linux核心目錄概述
arch目錄表示核心所支援的處理器架構,如經典的arm x86,在編譯核心時要指定arch arm 此資料夾包含塊裝置驅動程式的 該目錄用於實現塊裝置的基本框架和塊裝置的i o排程演算法。塊裝置是以資料塊方式接收和傳送的資料的裝置。資料塊都是一塊一塊的資料而不是持續的資料流。這個資料夾包含許多加密演...