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