linux_eclipse_001.png

File-->New-->C Project

peter27863043 發表在 痞客邦 留言(0) 人氣()

testdaemon_001.png

使用 daemon1 & daemons2 測試! daemon1 fork 出child process 而使用execv執行hello列印出簡單message.執行一段時間後daemon1被linux kernel kill!

peter27863043 發表在 痞客邦 留言(0) 人氣()

buildroot_001.png

這次Build toolchian 要用ubuntu 16.04, 16.04 及之前版本的預設桌面為經典 Unity,18.04 開始為 Gnome 3,但您仍可手動安裝 Unity 並進行切換。

peter27863043 發表在 痞客邦 留言(0) 人氣()

Linux_kernel_019_driver_add.png

platform_device_register(): 註冊設備硬件,告訴kernel,當前有什麼設備

peter27863043 發表在 痞客邦 留言(0) 人氣()

kernel_001.png

如果你在shell prompt只下make命令而已,第一個rule永遠被執行。 這叫default goal。如果你有指定target名字,例如make all,則會 去執行這個target的動作,此Makefile中會執行 help target 中的命令的

peter27863043 發表在 痞客邦 留言(0) 人氣()

uboot-001.png

在uboot的spi_flash.c 中的spi_flash_probe中會下RDID/JEDEC ID RD的Command來Get Manufacture & Device ID

peter27863043 發表在 痞客邦 留言(0) 人氣()

google_driver_001.png

要先建立憑證給API程式,程式才能來存取Google Driver的東西

peter27863043 發表在 痞客邦 留言(0) 人氣()

Linux_kernel_014_makefile.png

Makefile 將所需要的files include 進來

peter27863043 發表在 痞客邦 留言(0) 人氣()

Linux_kernel_012_arch_makefile.png

ARCH Makefile位於ARCH/$(ARCH)/Makefile,是系統對應平台的Makefile。Kernel Top Makefile會包含這個文件來指定平台相關信息。只有平台開發人員會關心這個文件。重點是Board-dependent options and extra files => #include $(srctree)/arch/mips/Kbuild.platforms

peter27863043 發表在 痞客邦 留言(0) 人氣()

Linux_kernel_000.png

start_kernel() 是 Linux kernel "正式的"進入點,但是 start_kernel() 通常不是在核心被載入後就立刻被執行,在它開始執行之前還有些準備工作要先完成。 在核心被載入後,通常最開始被執行的是的放在 Linux kernel image 最開頭的 bootstrap code, 負責關閉中斷,記憶體設定等硬體初始化準備工作,甚至還包含將壓縮的內核解壓縮。 這些 bootstrap code 是屬於平台架構相依的,它通常是位於 arch/xxx/boot/ 之下的 assembly code (xxx 可以是 x86 或是 arm 等)。

peter27863043 發表在 痞客邦 留言(0) 人氣()