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