<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于S3C44B0芯片的uClinux內核引導過(guò)程分析

基于S3C44B0芯片的uClinux內核引導過(guò)程分析

作者: 時(shí)間:2012-04-20 來(lái)源:網(wǎng)絡(luò ) 收藏

加載鏡像

加載工作實(shí)際上是完成將Flash中代碼拷貝到RAM指定地址單元的工作,在拷貝前必須在第二階段RAM啟動(dòng)代碼和該部分代碼之間預留一定的空間,用來(lái)存放uClinux的全局結構變量,如: 啟動(dòng)參數、內核頁(yè)表、ARM的頁(yè)目錄等信息。全地址空間的分配情況可參看本開(kāi)發(fā)板地址空間分配示意圖1。

45.jpg
圖1 地址空間分配示意圖

配置內核啟動(dòng)參數

uClinux 內核啟動(dòng)中,支持參數傳入。在嵌入式系統中,啟動(dòng)參數的傳入主要靠bootloader程序向標記列表( tagged list)的相關(guān)域中填寫(xiě)對應的值來(lái)完成,常見(jiàn)的參數如有ATAG_CORE、ATAG_MEM、ATAG_CMDL INE、ATAG_RAMD ISK、ATAG_ IN ITRD等。

uClinux內核

在初始化階段完成uClinux啟動(dòng)參數設置后,控制權交由uClinux內核接管,并調用解壓內核函數( decomp ress_kernel) ,對拷貝到SDRAM的內核映像文件進(jìn)行解壓縮,然后跳轉到內核調用函數( call_ kernel) ,該函數實(shí)際上是執行start_kernel ( ) ,其中包括了處理器結構的初始化、中斷的初始化、進(jìn)程相關(guān)的初始化以及內存初始化等重要工作。最后,將控制權交給解壓后的uClinux系統,進(jìn)而完成整個(gè)uClinux內核,參看以下偽碼: If (啟動(dòng)參數配置正確)調用decomp ress_kernel ( )調用call_kernel ( )else提示啟動(dòng)失敗decomp ress_kernel( ){解壓內核鏡像文件}call_kernel ( ){ start_kernel( ) ;}

小 結

對于嵌入式系統開(kāi)發(fā)人員來(lái)說(shuō),針對某一特定的嵌入式硬件平臺,移植開(kāi)發(fā)uClinux操作系統的應用產(chǎn)品時(shí),往往需要自己動(dòng)手編寫(xiě)或修改已有的啟動(dòng)代碼,而為uClinux內核啟動(dòng)準備合適的工作環(huán)境,占據了大部分工作量。至于uClinux,在設置好啟動(dòng)參數后則是由編譯好的內核鏡像自動(dòng)完成,對于系統開(kāi)發(fā)人員來(lái)說(shuō)基本上是透明的。


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>