核心原始碼樹

2021-08-20 21:54:16 字數 1082 閱讀 2017

目錄

描述arch

包含和硬體體系結構相關的**,每種平台佔乙個相應的目錄。和32位pc相關的**存放在i386目錄下,其中比較重要的包括kernel(核心核心部分)、mm(記憶體管理)、math-emu(浮點單元**)、lib(硬體相關工具函式)、boot(引導程式)、pci(pci匯流排)和power(cpu相關狀態)。

block

部分塊裝置驅動程式。

crypto

常用加密和雜湊演算法(如aes、sha等),還有一些壓縮和crc校驗演算法。

documentation

關於核心各部分的通用解釋和注釋。

drivers

裝置驅動程式,每個不同的驅動占用乙個子目錄。

firmware

使用某些驅動程式而需要的裝置韌體

fs各種支援的檔案系統,如ext、fat、ntfs等。

include

標頭檔案。其中,和系統相關的標頭檔案被放置在linux子目錄下。

init

核心初始化**(注意不是系統引導**)。

ipc程序間通訊的**。

kernel

核心的最核心部分,包括程序排程、定時器等,和平台相關的一部分**放在arch/*/kernel目錄下。

lib庫檔案**。

mm記憶體管理**,和平台相關的一部分**放在arch/*/mm目錄下。

net網路相關**,實現了各種常見的網路協議。

samples

示例**

scripts

用於配置核心檔案的指令碼檔案。

security

主要是乙個selinux的模組,linux安全模組。

sound

常用音訊裝置的驅動程式等。

usr早起使用者空間**。

tools

在linux開發中有用的工具

- 在i386體系下,系統引導將從arch/i386/kernel/head.s開始執行,並進而轉移到init/main.c中的main()函式初始化核心。

- 在原始碼樹中的copying檔案是核心許可證,credits是核心**的開發者列表,maintainers是維護核心子系統和驅動程式的列表。

構造核心原始碼樹

編寫驅動程式時,需要核心原始碼樹的支援。核心原始碼樹時從核心源 編譯得到的。下面開始構造核心源 的步驟。以ubuntu為例子 注意 原始碼樹核心的版本要和驅動程式執行的目標平台的核心版本一致 apt cache search linux source 搜尋核心版本 tar xvf linux sou...

Linux核心原始碼樹目錄

arch 包含和硬體體系結構相關的 每種平台佔乙個相應的目錄。和32位pc相關的 存放在i386目錄下,其中比較重要的包括kernel 核心核心部分 mm 記憶體管理 math emu 浮點單元 lib 硬體相關工具函式 boot 引導程式 pci pci匯流排 和power cpu相關狀態 blo...

分析核心原始碼,裝置樹

u boot需要將裝置樹在記憶體中的儲存位址傳給核心。該樹主要由三大部分組成 頭 header 結構塊 structure block 字串塊 strings block 裝置樹在記憶體中的儲存布局圖如下 1.1 頭 1.2 結構塊 struct block 扁平裝置樹結構塊是線性化的樹形結構,和字...