现在的位置: 首页 > 综合 > 正文

redboot支持的命令及参数

2017年09月21日 ⁄ 综合 ⁄ 共 5280字 ⁄ 字号 评论关闭

    Redboot(Red Hat Embedded Debug and Bootstrap)是Red Hat 公司开发的一个独立运行在嵌入式系统上Bootloader程序,是目前比较流行的一个功能强大、可移植性好的BootLoader。
  

    reboot 是一个采用eCos 开发环境开发的应用程序,并采用了eCos 的硬件抽象层作为基础,但它完全可以脱离eCos 环境运行可以用来引导任何其他的嵌入式操作系统,如Linux、Wince 等。
  Redboot 除了一般Bootloader 的硬件初始化和引导内核的功能外,还支持下列功能:
λ支持引导脚本,可方便启动应用程序或嵌入式操作系统内核;
λ 提供完整的命令行接口,方便用户进行各种系统操作;
λ 支持串行通讯协议和网络通性协议;
λ 支持GDB 调试,内嵌GDB stub;
λ 支持Flash 映像文件系统;
λ 通过BOOTP 协议支持网络引导,也可以配置静态IP。
  redboot的只要常用命令(ep9315系统常用)
   Redboot 提供了功能完善的命令行接口,包括对Flash 的操作、对串口或网络的配置、内存管理以及文件下载等,在嵌入式系统的开发过程中,需要经常使用这些命令。Redboot 所支持的命令也会根据嵌入式系统硬件平台的不同而略有差异,例如硬件平台没有Flash,Redboot就不会支持所有关于Flash 的操作,同时,由于Redboot 是源代码开放的,用户甚至可根据特定系统的需求,添加新的命令。
cache
使用格式:cache [on | off]
功能描述:cache 命令用于管理微处理器的cache,当不带参数时,Redboot 将显示系
统当前cache 状态;有参数时,则根据参数值来设置cache 的状态。
使用示例:RedBoot>cache //显示系统cache 的当前状态;
channel
使用格式:channel [-1 | channel number]
功能描述:如果不带任何参数,channel 命令会显示当前的控制台通道号,若参数为
-l 时,该命令将控制台通道切换到默认的控制台通道,若参数为硬件平台所支持的其他
控制台号,则channel 命令就对控制台作相应的切换。
使用示例:
RedBoot>channel // 显示系统的当前控制台通道号;
dump
使用格式:dump {-b location} [-l length] [-s] [-1 | -2 | -4]
功能描述:显示参数指定区域的数据,显示方式由参数指定。其中:
-b location:存储器的起始位置;
-l length:显示的长度;
-s:使用Motorola S-reconds 格式显示数据;
-1:按单字节显示数据;
-2:按双字节显示数据;
-4:按四字节显示数据;
使用示例:
RedBoot>dump –b 0x0 -1 // 显示起始位置为0x0 的存储器内容,按单字节显示;
exec
使用格式: exec [-w timeout] [-r ramdisk_address] [-s ramdisk_length] [-b
load_address {-l load_length} ] [-c kernel_command_line] [entry_point]
功能描述:执行一个映像文件,如引导Linux 内核。
-w timeout:执行映象文件之前的等待时间;
-r ramdisk_address:传递给内核的ramdisk_address 起始地址;
-s ramdisk_length:传递给内核的ramdisk_address 长度;
-b load_address:内核映象文件地址;
-l load_length:内核映象文件长度;
-c kernel_command_line:传递给内核的命令行;
fis creat
使用格式:fis create {-b data address} {-l length} [-f flash address] [-e entry]
[-r relocation address] [-s data length] [-n] [name]
功能描述:在FIS(Flash Image System)目录中创建一个映像,将当前RAM 中的数据写入Flash 存储器中,因此,在使用该命令之前,映像文件数据必须已经保存在RAM 中。
-b data address:待写入Flash 数据的存放地址;
-l length:写入数据的长度;
-f flash address:Flash 地址;
-e entry:可执行映像地址;
-r relocation address:执行Fis load 命令时,可执行映像的重定位地址;
-s data length:写入Flash 中的可执行映像实际长度;
-n:用于更新FIS 目录;
name:创建映像的名称。
使用示例:
RedBoot>fis create -b 0x1000000 -l 0x1a5179 ramdisk.gz
// 在FIS 目录中创建一个名为ramdisk.gz 的映像,并将地址为0x1000000 的RAM 的内容写入
该映像,写入长度为0x1a5179;
fis init
使用格式:fis init [-f]
功能描述:初始化FIS 目录。
-f:将所有Flash 空间进行初始化;
使用示例:
RedBoot>fis init // 初始化FIS 目录。
fis list
使用格式:fis list [-c] [-d]
功能描述:显示FIS 中当前的所有映像文件。
-c:显示映像的校验和;
-d:显示映像的长度;
使用示例:
RedBoot>fis list // 显示FIS 中当前的所有映像文件。
fis free
使用格式:fis free
功能描述:显示Flash 当前的空闲空间。
使用示例:
RedBoot>fis free // 显示Flash 当前的空闲空间。
fis delete
使用格式:fis delete {name}
功能描述:删除FIS 目录中的映像。
name:需要删除映像的名称;使用示例:
RedBoot>fis delete ramdisk.gz // 删除FIS 目录中名为ramdisk.gz 的映像。
fis lock
使用格式:fis lock {-f flash_address} {-l length}
功能描述:锁定Flash 空间。
-f flash_address:锁定Flash 空间的起始地址;
-l length:锁定Flash 空间的长度;
使用示例:
RedBoot>fis lock -f 0x60000000 –l 0x2000 // 锁定起始地址为0x60000000,长度
为0x2000 的Flash 空间。
fis unlock
使用格式:fis unlock {-f flash_address} {-l length}
功能描述:解除Flash 空间的锁定,使用方式与fis lock 类似。
fis erase
使用格式:fis erase {-f flash_address} {-l length}
功能功能:擦除指定的Flash 空间。
-f flash_address:指定需要擦除Flash 空间的起始地址;
-l length:需要擦除Flash 空间的长度;
使用示例:
RedBoot>fis erase -f 0x60000000 –l 0x2000 // 擦除起始地址为0x60000000,长度
为0x2000 的Flash 空间。
fis write
使用格式:fis write {-b mem_address} {-l length} {-f flash_address}
功能描述:将数据由RAM 写入flash 中。
-b mem_address:待写数据在RAM 中的起始地址;
-l length:待写数据的长度;
-f flash_address:写入Flash 的起始地址;
使用示例:
RedBoot>fis write -b 0x00004000 –l 0x2000 –f 0x60000000 // 将RAM 中起始地址
为0x00004000,长度为0x2000 的数据写入起始地址为0x60000000 的Flash 中。
fconfig
使用格式:fconfig
功能描述:对已保存在Flash 中的配置选项进行管理和重配置。
使用示例:RedBoot>fconfig // 对Flash 中的配置选项进行管理和重配置。
go
使用格式:go [-w <timeout>] [start_address]
功能描述:执行放在某一位置的可执行代码。
-w <timeout>:执行代码前的等待时间;
start_address:可执行代码的起始地址;
使用示例:
RedBoot>go 0x00002000 // 执行位于0x00002000 的代码。
ip_address
使用格式:ip_address [-l <local_ip_address>] [-h <server_ip_address>] [-d
<DNS_server_ip_address>]
功能描述:设置或改变系统使用的IP 地址。
-l <local_ip_address>:本机的IP 地址;
-h <server_ip_address>:服务器IP 地址;
-d <DNS_server_ip_address>:DNS 服务器IP 地址;
使用示例:
RedBoot>ip_address –l 192.168.67.49 –h 192.168.67.1 // 设置本机IP 地址为:
192.168.67.49,服务器IP 地址为:192.168.67.1。
load
使用格式:load [-r] [-v] [-h <host>] [-m <varies>] [-c <channel_number>]
[-b <base_address>] <file_name>
功能描述:下载数据到目标系统RAM 中。
-r:下载未处理的数据到RAM;
-v:下载过程显示进度;
-b <base_address>:数据下载到RAM 的地址;
file_name:下载的文件名;
使用示例:
RedBoot>load –v –r –b 0x1000000 ramdisk.gz // 下载文件ramdisk.gz 到地址为
0x1000000 的RAM 中。
mcmp
使用格式:mcmp {-s location} {-d location} {-l length} [-1|-2|-4]
功能描述:比较两个存储区域的内容。
-s location:源区域起始地址;
-d location:目的区域起始地址;
-l length:需要比较数据的长度;
-1:单字节读取;
-2:双字节读取;
-4:四字节读取;
使用示例:
RedBoot>mcmp –s 0x00000000 –d 0x1000000 –l 0x20 // 比较存储器起始地址为
0x00000000 和0x1000000 的内容,共比较32 个数据。
mcopy
使用格式:mcopy {-s location} {-d location} {-l length} [-1|-2|-4]
功能描述:将数据从一个存储区域拷贝到另一个存储区域。
-s location:源区域起始地址;
-d location:目的区域起始地址;
-l length:需要拷贝数据的长度;
-1:单字节读取;
-2:双字节读取;
-4:四字节读取;
使用示例:
RedBoot>mcopy –s 0x00000000 –d 0x1000000 –l 0x20 // 将存储器起始地址为
0x00000000 的连续32 个数据拷贝到起始地址为0x1000000 位置。
mfill
使用格式:mfill {-b location} {-l length} {-p value} [-1|-2|-4]
功能描述:将给定的数值填充到指定的存储区域。
-b location:待填充存储区域的起始地址;
-l length:需要拷贝数据的长度;
-p value:填充的数值;
-1:单字节操作;
-2:双字节操作;
-4:四字节操作;
使用示例:
RedBoot>mfill –b 0x50000 –l 0x20 –p 0xaaaaaaaa // 将给定数值0xaaaaaaaa 填充
到起始地址为0x50000 位置,共填充32 个字节。
reset
使用格式:reset
功能描述:复位系统。
使用示例:RedBoot>reset // 复位系统。
ping
使用格式:ping [-v] [-n <count>] [-l <length>] [-t <timeout>] [-r <rate>]
[-i <IP_addr>] -h <IP_addr>
功能描述:该命令向指定主机发送ICMP 报文,用于检查网络连接是否正常。
-v:显示数据包信息;
-n <count>:发送数据包的数目;
-l <length>:发送报文的长度;
-t <timeout>:设置超时时间;
-r <rate>:发送数据包的时间间隔;
-i <IP_addr>:本机IP 地址;
-h <IP_addr>:远端主机IP 地址;
使用示例:
RedBoot> ping -v -n 5 -h 192.168.67.1 // 向IP 地址为:192.168.67.1 的主机发送
5 个数据包。
help
使用格式:help [<topic>]
功能描述:显示redboot 中可用命令的帮助信息。
使用示例:
RedBoot> help // 显示当前Redboot 可用命令的帮助信息。
version
使用格式:version
功能描述:显示Redboot 的当前版本信息。
使用示例:
RedBoot> version // 显示Redboot 的当前版本信息。

抱歉!评论已关闭.