国产成人av人人爽人人澡-亚洲国产日韩欧美一区-好吊日视频这里只有精品-日本高清精品视频在线

您好,歡迎進入深圳市穎特新科技有限公司官方網(wǎng)站!

您現(xiàn)在的位置:首頁 新聞資訊 >> 新聞頭條 >> 嵌入式內(nèi)核
新聞資訊
NEWS INFORMATION

嵌入式內(nèi)核

發(fā)布時間:2019-05-22

嵌入式內(nèi)核是在嵌入式硬件軟件之間的抽象層,它具有五個方面的作用:任務管理(Task Management)、定時(Timers)、設備I/O主管(Device I/O Supervisor)、動態(tài)存儲分配(Dynamic Memory Allocation)、任務間同步通信(Inter-task Communication&Synchronization)。嵌入式系統(tǒng)中的內(nèi)核是系統(tǒng)的核心,系統(tǒng)所有的任務及所完成的功能都是在內(nèi)核的控制之下完成的。我們可以編程,然后通過程序控制內(nèi)核完成我們所需要的工作。

一個系統(tǒng)要進行工作要包括三部分,即boot內(nèi)核文件系統(tǒng)。而真正內(nèi)核的東西其實很少,包括cpu初始化、線程調(diào)度內(nèi)存分配、文件系統(tǒng)、網(wǎng)絡協(xié)議棧、驅(qū)動這些部分。在基于優(yōu)先級的調(diào)度中,內(nèi)核處理任務所需的僅僅是每個任務的優(yōu)先級,倘若一個任務的優(yōu)先級高于另外一個任務的優(yōu)先級,那么該任務會先于另外一個任務執(zhí)行。而對于安全性要求很高的系統(tǒng),就需要利用分區(qū)調(diào)度來完成。在分區(qū)調(diào)度中,內(nèi)核要求任務分成許多組,每一個組中含有許多相關的任務。分區(qū)調(diào)度器根據(jù)一系列的時鐘窗口來執(zhí)行某個任務。每個過程中的任務只有當時鐘窗口來臨這個任務時才開始運行,所有過程中的其他任務在這個過程中則不能運行。
以linux為例,Linux可以分為User Space和Kernel Space,即構(gòu)成用戶空間內(nèi)核空間。
用戶空間:應用程序 C庫 系統(tǒng)配置文件等
內(nèi)核空間:在內(nèi)存中,用戶一般不能直接接觸到(系統(tǒng)調(diào)用接口,體系結(jié)構(gòu)相關的一些代碼等等)
其實內(nèi)核空間與用戶空間是程序執(zhí)行的兩種不同的狀態(tài),通過系統(tǒng)調(diào)用和硬件中斷能夠完成從用戶空間到內(nèi)核空間轉(zhuǎn)移。
 

內(nèi)核架構(gòu)

內(nèi)核架構(gòu)是有七個子系統(tǒng)組成的。
1. 系統(tǒng)調(diào)用接口模塊
2. 進程管理模塊
3. 內(nèi)存管理子系統(tǒng)
4. 體系結(jié)構(gòu)相關的子系統(tǒng)(和CPU密切相關)
6. 網(wǎng)絡協(xié)議棧子系統(tǒng)
7. 設備驅(qū)動程序模塊
 

目錄文件

內(nèi)核源碼下幾個重要的目錄文件
arch目錄:arch是architecture的縮寫,內(nèi)核所支持的每種cpu體系,在該目錄下都有對應的子目錄。每個CPU的子目錄,有進一步分解為boot,mm,kernel等子目錄,分別包含控制系統(tǒng)引導,內(nèi)存管理,系統(tǒng)調(diào)用等
documentation目錄:內(nèi)核的文檔(比如一些驅(qū)動的使用方法,一些內(nèi)核的更新記錄等等都是放在這個目錄里面)
drivers目錄:設備驅(qū)動程序
include目錄:內(nèi)核所需要的頭文件,與平臺無關的頭文件在include/linux子目錄下,與平臺相關的頭文件則放在相應的子目錄中
fs目錄:存放各種文件系統(tǒng)的實現(xiàn)代碼,每個子目錄對應一種文件系統(tǒng)的實現(xiàn),公用的源程序用于實現(xiàn)虛擬文件系統(tǒng)VFS
 
 

內(nèi)核配置編譯

內(nèi)核配置

下載解壓內(nèi)核源碼,在內(nèi)核源碼目錄下,有兩個命令可以配置內(nèi)核
1. make config: 基于文本模式的交互式配置
2. make menuconfig: 基于文本模式的菜單型配置(這個配置方法更直觀、簡單、高效)
三個選項所代表的意義:
<*>選擇該功能,該功能會被編譯進內(nèi)核,運行在內(nèi)存中
<M>選中該功能,內(nèi)核模塊,不編譯進內(nèi)核,會將相應的模塊編譯成.O文件,然后放到相應的目錄下存放在硬盤里面,當要用到該功能時,內(nèi)核會把該功能加載到內(nèi)存中,不用的時候從內(nèi)存中刪除,這樣可以節(jié)省內(nèi)存,提高內(nèi)存利用率
< >本次編譯不選中該功能
內(nèi)核配置的結(jié)果:內(nèi)核配置通常是在一個已有的配置文件基礎上,通過修改得到新的配置文件,linux內(nèi)核提供了一系列可供參考的內(nèi)核配置文件,位于Arch/$cpu/configs

內(nèi)核編譯

X86: make bzImage
arm: make uImage ARCH=arm CROSS_COMPILE=arm-linux-
 

安裝內(nèi)核

 

內(nèi)核清理

 
聯(lián)系方式0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08