Linux核心設計與實現 之二 從核心出發

2021-04-23 03:11:24 字數 1033 閱讀 6175

獲取核心源**:

從linux官方核心**可以隨意獲取 http://www.kernel.org

安裝核心源**:

解壓縮:

tar xvjf linux-x.y.z.tar.bz2

不要把 /usr/src/linux 目錄下的原始碼作為開發

使用補丁:

patch-pl < ../patch-x.y.z

編譯核心:

1.配置:

可以配置的各種選項,以config_feature形式表示,這些配置項要麼是二選一,要麼是三選一。二選一就是yes或no,三選一就是yes,no,module,module意味著該配置項被選定了,但編譯的時候這部分功能的實現**是以模組的形式生成的,驅動程式一般都用三選一的配置項。

配置選項也可以是字串或整數,這些選項並不控制編譯過程,而只是指定核心原始碼可以訪問的值。

核心提供了各種不同的工具來簡化核心配置,

最簡單的一種是乙個基於文字的命令列工具: make config

該工具會挨個遍歷所有配置項,要求使用者選擇yes,no,module,由於這個過程往往要耗費很多時間,所以建議你利用

基於ncurse庫編制的圖形介面系統:

make menuconfig

或者,用基於x11的圖形工具:

make xconfig

或者,用基於gtk+的圖形工具

make gconfig

通過一條命令可以為你的體系結構建立乙個預設配置(據說是linus的配置)

make defconfig

這些配置項會存放在核心**樹根目錄下的config檔案中,

2、編譯核心:

make

3、多個檔案同時編譯

make -j4

4、安裝核心

二、核心開發的特點

1、不能訪問c庫

2、必須使用gnu c

3、沒有記憶體保護機制

4、浮點數很難使用

5、核心只有乙個很小的定長堆疊

6、時刻注意同步和併發

7、要考慮可移植的重要性

linux 核心設計與實現相關

有待繼續補充。第一章 linux核心簡介 需要注意 核心開發其實並不難。第二章 從核心出發 核心開發需要注意 1 沒有c庫,c庫太大了 2 沒有記憶體保護機制 3 不要輕易使用浮點數 4 可移植的重要性 5 同步和併發 疑問 編譯和安裝核心?必須在linux下麼?其他機器安裝了gcc編譯器呢?能否編...

Linux核心設計與實現總結。

1.程序管理。本章主要是介紹程序的乙個靜態的狀態,包括系統如何組織程序。建立,啟動,到最後死亡的乙個概念性認識,沒有更加深刻的知識。2.程序排程。本章比較重要。1.搶占式排程策略。2.倆程序間上下文切換 有倆函式 switch mm 和 switch to倆函式完成此功能。具體細節需要閱讀其他書籍 ...

linux核心設計與實現 前言

認真閱讀原始碼很重要,應該鑽研並嘗試著手改一些 尋找乙個bug然後去修改它,改進你的硬體裝置的驅動程式 unix特點 作業系統 指系統中負責完成最基本功能和系統管理的部分。包括 核心 裝置驅動程式 啟動引導程式 命令列shell或其他種類的使用者介面 基本的檔案管理和系統工具。核心組成 中斷服務程式...