版權聲明:您好,轉載請留下本人部落格的位址,謝謝 https://blog.csdn.net/hongbochen1223/article/details/45072331
一:核心主流應用模式:嵌入式開發
1:整體層面的使用:核心裁剪,編譯,bootloader等提供定制化功能,把一些核心子產品移植到工作核心。嵌入式BSP的維護和功能開發。
2:驅動程式編寫
注:BootLoader是嵌入式系統在加電之後執行的第一段代碼,在它完成CPU和相關硬體的初始化之後,再将作業系統映像或固化的嵌入式應用程式加載到記憶體中,然後跳轉到作業系統所在的空間,啟動作業系統運作。因為大多數嵌入式系統沒有像BIOS的啟動程式,是以整個系統的加載啟動任務完全由Bootloader完成。
二:嵌入式系統從軟體的角度通常可以分為4各層次
1:引導加載程式:包括固化在固件中的boot代碼和bootloader兩大部分
2:linux核心:特定于嵌入式闆子的定制核心以及核心的啟動參數
3:檔案系統:包括根檔案系統和建立在flash記憶體裝置上的檔案系統。通常用ramdisk來作為rootfs
4:使用者應用程式
三:核心主流的應用模式
1:檔案系統(GPFS,LUSTRE等)
2:雲計算和虛拟化
雲計算離不開虛拟化,雲計算是以資源化的使用計算和存儲能力。雲計算的開源軟體有openstack,橡樹等
虛拟化有xen,kvm等
四:如何學習核心
1:以應用為目的的學習核心,邊學邊用,學以緻用
2: 以培養核心的閱讀能力為主要目标
3:閱讀和修改代碼,而非閱讀書籍
4:核心不斷更新,政策和方法不斷變化,需要我們不斷的去學習
五:核心層次劃分
1:核心基礎層:核心中提供基礎服務的部分,包括資料結構,核心同步機制,記憶體管理和任務排程等
2:核心應用層:建立在基礎之上,提供應用服務的部分,如檔案系統,裝置和驅動,網絡等
六:應用層的學習方法
1:檔案系統是應用層的基礎和靈魂
2:以檔案系統入手,逐漸擴充
3:以架構為核心,舉一反三
4:裝置和驅動不易爛具體裝置,以通用為主
七:基礎層的學習方式
1:以API接口的學習為主要内容,不細究實作
2:日後加強基礎層的研讀