1、Linux驅動學習-瞭解系統

瞭解Linux操做系統

啓動流程

Linux:linux

  上電->uboot->加載Linux內核->掛在根文件系統->執行應用程序ios

Windows:安全

  上電->bios->加載winnt內核->掛在文件系統->執行應用程序網絡

uboot

介紹:函數

  uboot主要用於嵌入式系統的引導加載程序,全程Universal Boot Loader,是遵循GPL條款的開放源碼項目。spa

  Boot :完成硬件的初始化,啓動硬件平臺操作系統

  Loader :初始化硬件後,加載操做系統blog

 

  uboot是一個很是複雜的裸機程序,而不是一個操做系統。接口

輸出信息:進程

 進入uboot查看開發板信息:

  arch_number ://uboot針對具體硬件平臺的ID,若跟linux內核的ID不一致,不能啓動內核

  boot_params ://uboot傳遞給內存啓動參數的地址

  DRAM bank ://內存通道0

  -> start  ://起始地址

  -> size  ://內存的大小

  eth0name ://網卡的名字

  ethaddr  ://網卡的MAC地址信息

  current eth ://當前使用的網卡

  ip_addr ://網卡的IP地址

  baudrate ://串口波特率

  relocaddr ://linux內核執行的地址

查看環境變量:

bootargs=mem=512M console=ttyAMA0,115200 root=/dev/mtdblock2 rw rootfstype=yaffs2 mtdparts=hinand:1M(boot),4M(kernel),123M(rootfs) 傳遞給內核的啓動參數

  mem=512M:內存大小512M

  console=ttyAMA0,115200:串口輸出佔用ttyAMA0 波特率115200

  root=/dev/mtdblock2:告訴內核去哪裏掛在掛載根文件系統

  rw rootfstype=yaffs2:該文件系統可讀寫 文件系統類型爲yaffs2

  mtdparts=hinand:1M(boot),4M(kernel),123M(rootfs):nand使用狀況

bootcmd=nand read 0x81000000 0x100000 0x400000;bootm 0x81000000

  將地址0x100000讀取到地址0x81000000,大小爲0x400000,去0x81000000啓動內核

bootdelay=2

  uboot啓動延時,就開始執行boot命令(即bootcmd)

下載文件:

  tftp 內存地址 文件名  //將文件放到板子上

  go  內存地址   //執行文件

 

弄不懂以上內存到底指什麼?我還會回來的!

內核

  負責管理系統的進程、內存、設備驅動程序、文件和網絡系統

驅動

  什麼是驅動?驅動就是計算機程序訪問硬件的一個接口,這個接口是由操做系統提供。由於在操做系統涉及到安全管理機制,應用層程序不可以直接訪問到硬件,須要經過驅動函數接口來訪問硬件。

  

相關文章
相關標籤/搜索