Linux 內核設計與實現 第二章 從內核出發 筆記

2020-08-14 19:09:35

內核原始碼樹

在这里插入图片描述
在这里插入图片描述

編譯內核

make config
  • 會逐一遍歷所有的設定項,要求使用者自己選擇 yes,no,module
make menuconfig
  • 具有圖形介面的設定環境

在这里插入图片描述

make defconfig
  • 上面這條命令會根據預設的設定爲你的體系結構建立一個設定
  • 設定項儲存在 .config 檔案中,修改過組態檔或用已有的組態檔設定新的程式碼樹時,需要驗證和更新設定:
make oldconfig
  • 設定好內核後,通過 make 來進行編譯

內核開發的特點

  • 不能存取 C 庫也不能存取標準的 C 標頭檔案
  • 必須使用 GNU C
  • 內核程式設計時缺乏像使用者空間那樣的記憶體保護機制 機製
  • 難以執行浮點計算
  • 內核給每個進程只有一個很小的定長堆疊
  • 由於內核支援非同步中斷、搶佔和 SMP,因此必須時刻注意同步和併發
  • 要考慮可移植性