日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

uboot小工具之mkimage

發布時間:2025/3/21 编程问答 83 豆豆
生活随笔 收集整理的這篇文章主要介紹了 uboot小工具之mkimage 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在嵌入式系統中,Linux內核和根文件系統一般都與bootloader一起燒寫在flash芯片中,系統啟動后,bootloader將Linux內核壓縮到RAM中,并把壓縮的根文件系統復制到RAM中,然后啟動內核,由內核解壓縮根文件系統,并調用文件系統中的應用程序和腳本文件啟動系統。

在燒寫Linux內核和根文件系統之前應該對它們進行適當處理,在它們的頭部加入一些提供給bootloader的信息字符,以便bootloader能夠辨認它們并獲取它們的信息,從而正確地將它們解壓縮、復制到RAM中的正確位置,并正確啟動內核。這個為Linux內核和根文件系統添加頭部的工作一般由編譯bootloader時生成的一個小應用程序來完成,比如u-boot編譯后會在其tools子目錄下生成一個叫mkimage的應用程序,而cfe在編譯后也會在其cfe/hosttools子目錄下生成一個叫mkflashimage的應用程序,它們就是完成上述功能的工具程序,此處我們只介紹u-boot的mkimage。

mkimage命令格式如下:

# mkimage [-x] -A arch -O os -T type -C comp -a addr -e ep -n name -d data_file[:data_file...] image

其中各字段含義如下:

?

????

????

-x

指定內核就在Flash中運行,即XIP(execute in place)

-T

指定輸入文件的類型,如“kernel”、“filesystem”、“firmware”、“ramdisk”

-A

指定處理器體系架構

-O

指定操作系統類型名字,如“linux”、“vxworks”、“psos”等

-C

指定壓縮模式,可能設置為“none”、“bzip2”、“gzip”

-a

指定程序被解壓縮或復制到RAM中的地址

-e

指定程序(內核)的入口地址

-n

指定image文件的名字

-d

指定輸入的程序文件,可是有多個文件,如內核或/和根文件系統二進制文件

image

輸出文件名

mkimage命令舉例如下:

#mkimage -n "My Kernel" -A arm -O linux -T kernel -C gzip –a 0x8000 –e 0x8000 -d kernel.gz kernel.img

以上命令將壓縮了的內核二進制文件kernel.gz轉換成u-boot能夠辨認的二進制文件kernel.img,并指定kernel.img的名字為“My Kernel”,處理器體系架構為arm,操作系統類型為linux,程序類型為操作系統內核,程序由gzip壓縮,程序的鏈接起始地址為0x8000,程序的入口地址為0x8000,注意這兩個地址一定要是物理地址而不是對應的虛擬地址。

#mkimage -n "My Rootfs" -A arm -O linux -T ramdisk -C gzip -d ramdisk.gz ramdisk.img

以上命令將壓縮了的ramdisk根文件系統二進制文件ramdisk.gz轉換成u-boot能夠辨認的二進制文件ramdisk.img,并指定ramdisk.img的名字為“My Rootfs”,處理器體系架構為arm,操作系統類型為linux,程序類型為ramdisk,程序由gzip壓縮,不需要指定ramdisk的鏈接起始地址和入口地址。

如果我們將kernel.img和ramdisk.img文件分別寫到flash芯片的0xFF000000和0xFF200000位置,系統啟動后進入u-boot命令行界面,執行以下u-boot命令:

# bootm 0xFF000000 0xFF200000

那么u-boot將把0xFF000000位置的Linux內核解壓縮到RAM中的0x8000位置,再將0xFF200000位置的ramdisk文件系統映像文件刨掉u-boot頭部后復制到RAM中的某個位置,然后跳轉到內核的入口地址0x8000位置啟動內核,同時把板子信息、ramdisk在RAM中的起始地址和結束地址、命令行字符串傳給內核,這樣Linux開始啟動運行。

總結

以上是生活随笔為你收集整理的uboot小工具之mkimage的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 精品久久在线 | 九九热国产 | 成人特级片 | 中字幕视频在线永久在线观看免费 | 国产伦精品一区二区 | 精品国产乱码一区二区三 | 涩涩网站在线看 | 公肉吊粗大爽色翁浪妇视频 | 一本色道久久综合亚洲精品 | 国产精品久久综合青草亚洲AV | 国产在线观看无码免费视频 | 激情国产| julia一区二区三区中文字幕 | 无码人妻精品一区二区三区9厂 | 亚洲综合激情五月久久 | 久久国产夫妻 | 亚洲高潮 | 人妻精品无码一区二区三区 | 欧美精品在线免费 | 成人福利片 | 日日射夜夜 | 欧美黄色激情视频 | 美女扒开大腿让男人桶 | 色综合av在线 | 天天干天天摸天天操 | 日本边添边摸边做边爱 | 可以免费观看的毛片 | 欧美激情亚洲激情 | 欧美日韩国产高清 | 欧美日免费| 人妻洗澡被强公日日澡电影 | 午夜成人影片 | 久久久久成人网站 | 成人污污视频在线观看 | 日本偷拍一区 | 五月依人网 | 公侵犯人妻一区二区三区 | 亚洲国产精品99久久 | 亚洲乱熟女一区二区 | 青青草手机在线视频 | 国产欧美一区二区视频 | 日日骑夜夜操 | 欧美性色黄大片手机版 | 91精品91| 樱井莉亚av | 国产成人一区二区三区 | 性少妇mdms丰满hdfilm | 国产精品jizz视频 | 亚洲a在线播放 | 欧美一区二区三区久久综合 | 91精品国产高清一区二区三区蜜臀 | 狠狠鲁狠狠干 | 老司机在线免费视频 | 国产香蕉视频在线 | 三级特黄视频 | 欧美综合久久久 | 日本五十路女优 | 在线免费观看一区二区 | 成人国产精品免费观看视频 | 国产日韩欧美中文 | 最色网站| 男女一起插插插 | 婷婷午夜精品久久久久久性色av | 日韩视频在线观看视频 | 久久久久久av | 夜色福利 | 丰满多毛的大隂户视频 | 精品久久久亚洲 | 亚洲春色av | 国产三级久久 | 吃瓜网今日吃瓜 热门大瓜 色婷在线 | 一区二区三区在线免费观看视频 | 未满十八岁禁止进入 | 另类少妇人与禽zozz0性伦 | sao浪受的饥渴日常 91免费入口 | 激情六月 | 浮力影院草草 | 亚洲精品视频中文字幕 | 天天插天天操天天干 | 91免费入口 | 亚洲黄色免费在线观看 | 久久精品视 | 成人性生生活性生交3 | 久久久久久av无码免费网站 | 日本国产在线 | 日本午夜网 | 国产456| 亚洲一区欧洲二区 | 精品无码一级毛片免费 | 青草视屏| 物业福利视频 | 日韩精品一二三 | 96国产在线| 中文字幕在线视频免费 | 亚洲大乳| 黄色免费在线播放 | 成人免费毛片视频 | 奇米在线 | 亚洲va在线∨a天堂va欧美va |