linux學習筆記核心篇,核心移植

2021-09-27 02:04:54 字數 678 閱讀 1881

1.將核心從flash讀到記憶體

2.設定tag引數,

3.啟動kernel,引數1r0=0,r1=機器id,r3 = tag位址

1.讀取機器碼,呼叫相對應的初始化函式。

2.解析tag引數,

3.裝載驅動,網絡卡,flash等驅動

4.掛載根檔案系統,

5.啟動應用程式。

1.啟動核心函式檔案 cmd_bootm.c ->do_bootm函式

2.machid對應核心檔案mach-types.h

tar zxvf linux-  解壓檔案。

1.1  修改makefile

1.2  選擇使用預設配置exynos_defconfig

1.3 make uimage

//自帶uboot傳參r1-----mchid =  0xb16//2838

設定機器id  set machid b16  //smdkc210

檢查波特率(在uboot啟動中設定),檢查晶振(檢查machine_start中的某個函式  晶振200m)

核心啟動後修改分割槽

2.1, 

指定   loadaddr位址,高版本會用到,  在檔案arch/arm/mach-exynos/makefile.boot中

命令如下$ make loadaddr=0x40008000 uimage

Linux核心學習筆記 核心同步

linux核心中執行的程式,時刻都要防止併發引起的競態。這將會導致資料結構被破壞,嚴重的時候會引起核心崩潰。所以核心同步技術對核心開發的驅動程式來說非常重要。不懂核心同步技術的人,是寫不出安全健壯的核心驅動程式來的。在學習核心同步技術之前需要掌握一下幾個概念。1 並行,併發與競態 在smp執行的li...

Linux學習筆記 核心模組

模組 是linux高效利用微核心,同時不會降低系統效能與優點的一種方法。幾乎linux核心的每個高層元件 檔案系統 裝置驅動 網路,都可以作為模組進行編譯。linux的發布版,充分使用模組方式全面地支援多種品牌型號的硬體。但在某個計算機上只會有效載入其中乙個驅動程式。這樣核心就不會因為裝載那些數以百...

linux核心學習筆記

核心的配置 a.make s3c2410 deconfig b.make menuconfig 圖形化配置 c.使用廠家給出的配置 生成.config 編譯生成核心,使用如下命令 make vmlinux make uimage 帶頭部 真正核心 1 config 建立生成autoconf.h 供源...