1. 程式人生 > >mkimage是怎樣把核心製作成uboot格式的

mkimage是怎樣把核心製作成uboot格式的

  一直以來沒有想過有什麼好的辦法通過暫存器向核心傳遞引數,直到今天讀UBOOT的實現方式。
  在UBOOT中,引導核心最常用的方法是bootm命令,bootm命令可以引導“UBOOT格式”的核心。先花點時間瞭解一下什麼是“UBOOT格式”的核心吧:用UBOOT自帶的mkimage命令生成的核心稱為"UBOOT"格式的核心。以下面這條命令為例:
  mkimage -n "Kernel 2.4.18" -A arm -O linux -T kernel -C none -a 30007fc0 -e 30008000 -d 4020.bin vmlinux-2.4.18.img
    其中與核心引導最密切的是-e 30008000,也就是核心的入口地址。其它引數可以參考幫助資訊。其它UBOOT格式的核心與原來相比,只是進行(可選)了壓縮,並在前面加了一個0x40大小的頭。這個頭裡放了核心的位置(0x30007fc0)和入口地址(0x30008000)和其它資訊。
  bootm命令執行時,先對頭部資訊等進行校驗,然後把頭資訊放到一個結構裡面。最後根據核心型別呼叫相應的啟動函式。對於Linux而言就是do_bootm_linux,在啟動函式裡面,有這麼一個操作:theKernel = (void (*)(int, int, uint))ntohl(hdr->ih_ep);,
這是最關鍵的一個操作,將核心的入口地址0x30008000賦給了theKernel,在啟動函式的最後,使用theKernel (0, bd->bi_arch_number, bd->bi_boot_params);啟動核心。
  根據傳參規範,三個變數分別用r0,r1,r2傳給核心,這樣就巧妙地利用了函式指標進行了引數傳遞,實在是精妙!

  上面講完了核心的引導及傳參,需要引起注意的就是在使用mkimage命令生成核心時,-e後面的地址要比-a後面的地址偏移0x40,原因很簡單,就不在細說了。

相關推薦

mkimage是怎樣核心作成uboot格式

  一直以來沒有想過有什麼好的辦法通過暫存器向核心傳遞引數,直到今天讀UBOOT的實現方式。  在UBOOT中,引導核心最常用的方法是bootm命令,bootm命令可以引導“UBOOT格式”的核心。先花點時間瞭解一下什麼是“UBOOT格式”的核心吧:用UBOOT自帶的mkimage命令生成的核心稱為"UBOO

AI_Scene classification 資料作成TFrecord 格式

# encoding: utf-8 ''' @author: tourior @software: python3.6 @file: Tfrecord.py @time: 2017/10/10 10:35 @desc: ''' import tensorflow as tf impor

自己的資料作成voc2007資料格式用於SSD訓練

我們使用SSD訓練自己的資料集,就要製作成voc2007的資料格式,然後才能轉化資料格式進行訓練. 第一步:首先了解VOC2007資料集的內容 1)JPEGImages資料夾 資料夾裡包含了訓練圖片和

怎樣視訊中的一小段作成 GIF動圖

  平常生活中大家聊天肯定會發現有很多鬥圖高手,不管是家人群、同學群還是好友群,從不缺乏這樣的人,大多數用來鬥圖的圖片都是GIF動圖,GIF動圖即有趣又形象,像小視訊一樣,只不過它是圖片格式。大家對GIF製作感興趣嗎?想不想自己動手製作屬於自己的GIF動畫,想的話就跟著小編一起來操作吧! &

如何核心uboot、和根檔案系統下載到開發板中

1、首先準備好所需要的檔案:u-boot、uImage、rootfs.img。 2、下載u-boot: tftp   0x40000000   u-boot.bin nand   erase  0    0x60000 nand    write   ox40000000

怎麽樣CAD轉換成PDF格式經驗和方法

我在學習和使用cad軟件也有一段時間了,對於cad文檔也有了一些的經驗和知識。這些都是靠我們不斷的積累的,碰到問題,就去解決問題,這樣不斷鍛煉自己和提高自己工作與學習能力,之後碰到問題自己就能夠都解決。 今天教給大家的是一個簡單的把cad轉換成pdf格式的經驗和方法,能夠幫助

給如何dwg轉換成pdf格式呢?

CAD 我們在格式進行轉化的過程中,經常碰到這樣的問題。 我這裏教你使用迅捷dwg轉pdf轉換器的方法。主要因為可以任意格式進行編輯和轉換功能。 1、打開瀏覽器搜索迅捷dwg轉pdf轉換器,找到官方的最新版資源進行下載,下載完成之後安裝在電腦上即可。

【轉】qlv文件如何轉換成mp4 怎樣下載好的qlv格式視頻轉換成MP4格式

http tail info 補充 數字 名稱 轉換器 erl 下載視頻 貍窩 復制 收藏 保存到桌面 快速找教程方案 反饋需求 社會主義核心價值觀 客服QQ41442901 馬上註冊 升級VIP 對於視頻文件之間的轉換問題,我也已經是無

java利用ffmpeg圖片轉成yuv格式

exceptio ioe ever readline filepath uid ont ati cep 安裝ffmpeg: 安裝目錄:/usr/share/ffmpeg 創建ffmpeg目錄,解壓ffmpeg-3.4.1.tar.bz2 tar -xjvf ffmpeg-3

如何圖片轉換成pdf格式的圖片

可靠 db4 term 分享 鏈接 包含 進入百度 script 百度 現如今很多辦公人員喜歡將圖片轉換成PDF格式的圖片,因為PDF格式通常要比postscript文件小,可以單獨處理每頁適合,還可以將文字、字型、格式、顏色封裝在一個文件內,並且可以包含超文本鏈接,聲音和

怎樣圖片轉換成PDF格式

日常辦公中,除了使用office檔案外,PDF檔案也是我們非常常用的一種檔案格式,經常需要把各種檔案轉換成PDF格式。那麼,怎樣把圖片轉換成PDF格式呢?今天,我給大家分享一個方法,來供大家參考。工具:迅捷PDF轉換器  下載連結:https://www.xunjiepdf.com/convert

物件序列化為xml格式和反序列化

using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text;

如何用u盤作成linux系統的安裝盤

** 如何用u盤製作成linux系統的安裝盤??? 其實U盤做系統非常簡單,並非象網上所說的下載什麼“U盤PE”或什麼“老毛桃PE”又是“量產U盤”什麼的,根本就沒那麼麻煩!我所說的都是自己的經驗,

怎麼騰訊視訊qlv格式轉成mp4格式

  當我們使用到qlv格式的時候,我們就會發現原來這種檔案格式比較的特殊,因為qlv格式檔案是騰訊視訊加密的一種視訊檔案格式,所以我們在使用和轉換的只能藉助騰訊視訊的幫助,但是當我們電腦上沒有安裝騰訊的時候我們該怎樣解決呢?目前像很多工具並不能將騰訊視訊的QLV格式轉化為其他格式,所以經歷多次的網路攻略的

更改後的uboot燒寫到開發板及遇到的問題

SD卡燒寫過程及遇到的問題 (1)對uboot原始碼進行完修改(修改內容根據自己的理解和分析來修改) (2)make distclean然後make x210_sd_config然後make (3)編譯完成得到u-boot.bin,然後去燒錄。燒錄方法按照裸機第三部分講的linux下使用

如何擷取視訊中的一部分,作成GIF動態圖

怎麼把視訊做成gif 擷取視訊中的一部分內容,製作成GIF動態圖?是先用播放器進行擷取,還是說先轉換視訊格式,然後用相應的GIF編輯器呢。網上關於怎樣把視訊擷取轉化成gif動態圖片的方法有很多,林林總總可謂看的是眼花繚亂,但真正能行的卻沒有幾個。小編今日教大家一個將視訊轉換成gif的方法,不需要複雜的方法

.net接收post請求並數據轉為字典格式

form col get ++ pub spa sorted pos sar public SortedDictionary<string, string> GetRequestPost() { int i = 0;

java時間轉換為時分秒格式,如:11:04:05

public class TimeUtil { /** * 把時間轉換為:時分秒格式。 * * @param second :秒,傳入單位為秒 * @return */ /** * 把時間轉換為:時分秒格式。

手把手教你怎麼愛奇藝QSV格式轉換成MP4格式

《簡介》 QSV是一種影視視訊的格式,也是最為特殊的視訊格式之一,為何這麼說呢,因為這種QSV格式是愛奇藝特有的視訊格式。通過愛奇藝客戶端下載的影視通常都會以QSV格式儲存在電腦中,而這種格式最為特殊的就是隻能在愛奇藝播放器種進行播放。 QSV格式轉換器 首先我們要

html2canvas 無法渲染網路圖片 (JS圖片轉換為base64格式

1、canvas需要本地的圖片 2、在使用html2canvas。大多數時候想動態載入網路的圖片,可是經常在PC端能顯示圖片,到了手機端就顯示不出來了。就是因為圖片跨域的問題引起的 html2canvas不是有配置可以解決跨域了嗎(useCORS: true,allowTaint: tr