bootm命令移植
<bootm作用>
为linux内核的启动准备条件
<bootloader作用总结>
(1)初始化软/硬件(内存硬件/外部设备/堆栈)
(2)启动操作系统
<uImagine和zImagine之间的关系>
zImagine 是最纯粹的Linux内核
在zImagine之上加上一个信息头就成位了uImagine
信息头用于指明系统信息(何种OS,镜像文件是否压缩)
argv :命令行参数
<bootm处理流程>
(1)检查信息头
OS信息,压缩方式信息,幻数信息
(2)根据OS类型,调用相应的处理函数
获取内核地址
获取cpu型号
设置启动参数
参数结构:hdr + 具体参数(每一个都要加上这个参数)
注意:bootloader和内核之间是通过内存来传递参数
<cpu信号参数作用>
bootloader 会将这个cpu型号的参数传递给Linux内核,Linux内核中也会有处理参数,内核就会将这个参数和内核中的参数做对比,相同则处理与该cpu相适应的启动工作,反之则不能正常启动linux内核。
bootm命令移植的更多相关文章
- [国嵌攻略][069][Bootm命令移植]
Bootloader作用 1.初始化软硬件 2.启动操作系统 内核分类 1.zImage 不加信息头的内核 2.uImage 加信息头后的内核,用bootm命令来启动 bootm作用 1.检测信息头: ...
- bootm命令中地址参数,内核加载地址以及内核入口地址
bootm命令只能用来引导经过mkimage构建了镜像头的内核镜像文件以及根文件镜像,对于没有用mkimage对内核进行处理的话,那直接把内核下载到连接脚本中指定的加载地址0x30008000再运行就 ...
- 第1阶段——uboot分析之启动函数bootm命令 (9)
本节主要学习: 详细分析UBOOT中"bootcmd=nand read.jffs2 0x30007FC0 kernel;bootm 0x30007FC0"中怎么实现bootm命令 ...
- Android shell 下 busybox,clear,tcpdump、、众多命令的移植
http://my.oschina.net/mopidick/blog/167372 作为一名Android开发者,经常需要进入Android 的shell终端运行一些命令.但是我们发现Android ...
- 第1阶段——uboot分析之仿照bootm制作hello命令(7)
仿照bootm命令生成来制作一个hello命令,功能:打印出hello,world!和参数值 1.点击New File ,创建cmd_hello.c将./common/cmd_bootm.c的头文件复 ...
- 【转】uboot移植(一)BootLoader基本概念
原文网址:http://blog.chinaunix.net/uid-25445243-id-3869348.html 一.BootLoader简介1.1.嵌入式Linux软件结构与分布 在一般情况下 ...
- (五)u-boot2013.01.01 for TQ210:《移植前的准备及u-boot初编译》
移植前的准备 移植前,要做的事情是搭建开发环境以及对U-boot源码的获取.首先说一下开发环境: 1.此次U-boot移植的硬件平台是天嵌的TQ210开发板: CPU:板载核心是S5PV210(Cor ...
- 1uboot移植要点[原创☆☆]
----- 一:我们先来了解下实际内存: nand.nor.ram. 所以从CPU是从那部分启动的呢? 答:要看主控芯片的boot如何设置(正如分的启动方式和下载方式一样). uboot:sd卡→iR ...
- 1.移植3.4内核-分析内核启动过程,重新分区,烧写jffs2文件系统
1.在上章-移植uboot里.我们来分析下uboot是如何进入到内核的 首先,uboot启动内核是通过bootcmd命令行实现的,在我们之前移植的bootcmd命令行如下所示: bootcmd=nan ...
随机推荐
- phpcm nginx 伪静态文件
rewrite ^/show-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=show&catid ...
- HDU 1017 A Mathematical Curiosity 数学题
解题报告:输入两个数,n和m,求两个数a和b满足0<a<b<n,并且(a^2+b^2+m) % (a*b) =0,这样的a和b一共有多少对.注意这里的b<n,并不可以等于n. ...
- Python练习-递归二分算法
# 编辑者:闫龙 #递归,二分算法演示 l = [i for i in range(1,100)]#定义一个列表l,并追加1-99的所有数字 def FindNum(num,l):#定义函数FindN ...
- 查看GCC的内置宏定义
开发过程中我们常常需要使用宏定义.. 为了尽可能多的使用GCC为我们提供的特性,首先我们需要知道gcc提供了那些特性... gcc -dM -E - < /dev/null 没错,就这么一句话就 ...
- 未来人类T5 安装win10,ubuntu双系统
1.首先确保win10已经安装,u盘中已刻录好系统,下载好英伟达最新驱动保存在u盘中,压缩100g的磁盘空间给ubuntu. 2.设置双显卡模式,重启时按F7选择进入u盘启动. 3.进入安装界面,选择 ...
- Html5使用history对象history.pushState()和history.replaceState()方法添加和修改浏览历史记录
根据网上参考自己做个笔记:参考网址:http://javascript.ruanyifeng.com/bom/history.html history.pushState() HTML5为histor ...
- springCloud全实战超详细代码demo+笔记
码云: https://gitee.com/houzheng1216/springcloud
- usbnet驱动深入分析-usb虚拟网卡host端【转】
转自:http://blog.csdn.net/zh98jm/article/details/6339320 1.驱动流程: 2.明确probe函数的功能: probe有usb core 经枚举过 ...
- linux下定时器介绍2--timer_create等函数集的使用示例
程序1:采用新线程派驻的通知方式 程序2:通知方式为信号的处理方式 #include <stdio.h>#include <time.h>#include <stdlib ...
- 目标板通过nfs挂载根文件系统
目标板挂载根文件系统的方法有两种(这里所说的服务端就是ubuntu,Ubuntu已经成功安装了nfs服务,并且保证服务端与目标板ping 通) 第一种:等待开发板启动之后去挂载,此时文件系统从Flas ...