|
一.kernel功能1.內(nèi)存管理
2.網(wǎng)絡(luò)(TCP,IP 網(wǎng)絡(luò)驅(qū)動)
3.文件系統(tǒng)(yaffs2)
4.進(jìn)程管理,進(jìn)程通信
5.設(shè)備驅(qū)動
二.linux啟動過程(uboot->kernel->rootfs)
uboot階段
1.BL1 匯編語言
2.BL2 C語言
3.時鐘初始化
4.去nand讀取內(nèi)核
5.驅(qū)動內(nèi)核
內(nèi)核啟動過程
1.機(jī)器碼(由uboot傳值過來)
2.系統(tǒng)時鐘初始化
3.串口初始化(這里是linux驅(qū)動,uboot是裸機(jī))
4.系統(tǒng)內(nèi)存分配(內(nèi)存初始化在uboot中做,kernel只分配)
5.linux系統(tǒng)地址空間劃分
(1)內(nèi)核空間
(2)用戶空間
(3)內(nèi)核啟動后都是虛擬地址
6.中斷初始化(VIC)
7.操作系統(tǒng)初始化
HZ 256 滴答時鐘
8.電源初始化
9.驅(qū)動初始化
10.掛在rootfs
設(shè)備號
釋放init內(nèi)存
啟動init進(jìn)程(PID 1)
三.rootfs階段
1.初始化rootfs驅(qū)動
跟文件系統(tǒng)驅(qū)動是以模塊的形式存在
2.執(zhí)行應(yīng)用程序bash
后臺運(yùn)行一個boa WEB服務(wù)器
3.進(jìn)入內(nèi)核控制臺
|
|