本文主要是介绍pmon下常用命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
pmon下常用命令
在进入系统前按 “c” 进入pmon的命令行。如设置自器动的话(pmon自动加载内核、启动文件系统),需要设置环境变量 a l / al/ al/al1、$append。
1、帮助命令 h
有两种使用方式:
① h 查看所有命令
② h xxx 查看命令xxx的说明
按回车或空格可继续,按q键返回
2、显示设备信息 devls
3、显示存储器分区信息 fdisk
4、设置环境变量 set/unset
1)set有三种使用方式:
① set xxx aaa 将xxx环境变量的值设为aaa
② set xxx 查看环境变量aaa的值,只执行一个set查看所有环境变量
2)unset 删除环境变量
① unset xxx
5、查看MTD分区 mtdparts
① mtdparts 查看分区
② 设置分区如下
set mtdparts “nand-flash:10M@0(kernel)ro,-(rootfs)”
10M@0(kernel):表示开始10M空间设为mtd0区,命名为“kernel”;
ro:代表mtd0只读
-(rootfs):表示10M已后所有空间设为mtd1区,命名为“rootfs”
6、MTD分区擦除 mtd_erase
① 跳过坏块擦除
mtd_erase /dev/mtd0
② 不跳过坏块擦除
mtd_erase /dev/mtd0r
7、拷贝命令 devcp
① 将内核镜像烧写到mtd0分区
devcp /dev/fs/fat@usb0/vmlinux /dev/mtd0 //通过U盘
② 将yaffs2文件系统烧写到mtd1分区
devcp /dev/fs/fat@usb0/rootfs.img /dev/mtd1y //通过U盘
如想通过网络烧写可执行devcp tftp://192.168.1.1/vmlinux /dev/mtd0即可。
8、读写寄存器 d1/m1 d4/m4
d1 1字节读取
d2 2字节读取
d4 4字节读取
d8 8字节读取
m1 1字节写
m2 2字节写
m4 4字节写
m8 8字节写
9、网络设置 ifaddr/ifconfig
① ifaddr 设置网卡的 IP 地址
ifaddr syn0 192.168.1.1
(syn0是网卡的名字,使用 devls 命令查看获得,这里不用设置子网掩码pmon 会自动设置子网掩码为255.255.255.0)
② ifconfig 设置网卡的 IP 地址
ifconfig syn0 192.168.1.1 255.255.255.0
备注:ifaddr/ifconfig命令配置的IP只在当前启动生效,重新启动IP需要重新配置。
永久生效的IP需要设置ifocnfig环境变量:
set ifconfig syn0:192.168.1.1
10、加载elf文件load
1)加载内核
① load /dev/mtd0/vmlinuz //mtd分区加载
② load /dev/fs/fat@usb0/vmlinuz //通过U盘加载
③ load tftp://192.168.1.1/vmlinuz //通过网络加载
④ load ram@0x82000000 //内存中加载
2)线上更新pmon
load -r -f 0xbfc00000 tftp://192.168.1.1/gzrom.bin
load -r -f 0xbfc00000 /dev/fs/fat@usb0/gzrom.bin
总结:
命令名称 | 命令解析 | 命令使用例子 |
---|---|---|
h | 帮助命令 | h 查看所有命令; h xxx 查看命令xxx的说明 |
devls | 显示网口、硬盘、usb等设备信息 | devls |
fdisk | 显示存储器分区信息 | fdisk |
set/unset | 设置环境变量 | set xxx aaa 将xxx环境变量的值设为aaa;unset 删除环境变量 |
mtdparts | 查看MTD分区 | mtdparts |
mtd_erase | MTD分区擦除 | mtd_erase /dev/mtd0;不跳过坏块擦除mtd_erase /dev/mtd0r |
devcp | 拷贝命令 | 打印启动项devcp /dev/fs/ext2@wd0/boot/boot.cfg tty0 |
d1/m1 d4/m4 | 读写寄存器 | d4 addr 读取 4字节;m4 addr value 写4字节 |
ifaddr/ifconfig | 网络设置 | ifaddr syn0 192.168.1.1 ;ifconfig syn0 192.168.1.1 |
load | 加载elf文件 | load /dev/fs/fat@usb0/vmlinuz |
11、其他
命令名称 | 命令解析 | 命令使用例子 |
---|---|---|
reboot | 重启 PMON | reboot |
ping | 网络测试 | ping 192.168.1.1 |
al1 | 自动加载内核位置 | set al1 /dev/mtd0 |
append | 内核启动时参数 | set append “console=ttyS0,115200” |
initrd | 加载文件系统镜像 | initrd /dev/fs/fat@usb0/initrd.gz |
g | 启动执行程序 | g console=ttyS0,115200 rdinit=/sbin/init |
loop | 循环执行某个命令 | loop 3 date 执行3次date命令 |
date | 查看时间 | date |
sleep | 睡眠 | sleep 5 |
pciscan | Pci设备扫描 | pciscan |
print_dtb | 查看dtb信息 | print_dtb / |
erase_dtb | 擦除dtb | erase_dtb |
load_dtb | 烧写dtb | load_dtb /dev/fs/fat@usb0/ls2k.dtb |
env | 查看环境变量 | env |
vers | 显示pmon版本号 | vers |
这篇关于pmon下常用命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!