LK原始碼解析 9 總結

2021-09-25 06:10:22 字數 494 閱讀 5273

form: 

little kernel做為android系統的bootloader,最早用google工程師實現,其後由高通,mtk等晶元廠商做了各自平台的適配。

lk的主要功能:

初始化硬體模組,如時鐘,中斷,uart,usb,lcd,pmic,emmc/ufs等。

更新cmdline。其中重要的是區分啟動模式。  

選擇和更新device tree。

設定好系統狀態,跳轉到kernel。 mmu = off, d-cache = off, i-cache = on or off,x0 = physical address to the fdt blob。

fastboot功能。

鑑權。從鏈結指令碼中可以看到離開的入口函式為_start 。(entry(_start) )

_start的定義在lk/arch/arm/crt0.s中。

追蹤**可以看到c語言的入口函式為kmain,定義在lk/kernel/main.c中。

LK原始碼解析 4 main c

form 1 bootstrap2 static int bootstrap2 void arg target init void target init void endif if target use signed kernel target crypto init params 當使用的是簽名...

Junit原始碼解析總結

前面的部落格我們也已經整理到了,我們使用junit38,在寫 測試類的時候我們的測試類必須繼承testcase。這個所有測試類的父類在junit.framework包下面。前面我們的整理都是說直接在ide中直接執行測試類,右擊然後run as junit。當然我們還可以自己寫main方法來執行測試,...

UGUI原始碼解析 9 MaskGraphic

一 簡介 maskablegraphic是乙個抽象類,繼承了graphic,iclippable,imaskable,imaterialmodifier介面,派生了rawimage,image和text 二 功能 1 onenable protected override void onenable...