LIteOS----shell应用(1)系统shell

举报
o0龙龙0o 发表于 2021/09/14 21:05:41 2021/09/14
【摘要】    很多时候我们在调试应用程式时都无法设置过多断点或是无法观测程序真正的流程动向,哪些语句有没有执行,还有就是手动开启某个自己写的应用的等等,这时候就需要shell命令行的操作,他可以以命令行的方式访问操作系统的功能和服务,接收用户的输入命令,对操作系统的输出进行打印。本文讲述系统shell给我们提供哪些使实用功能。

0、前沿:

     很多时候我们在调试应用程式时都无法设置过多断点或是无法观测程序真正的流程动向,哪些语句有没有执行,还有就是手动开启某个自己写的应用的等等,这时候就需要shell命令行的操作,他可以以命令行的方式访问操作系统的功能和服务,接收用户的输入命令,对操作系统的输出进行打印。

1、Huawei Liteos 的shell

Shell作为Huawei Liteos在线调试工具,可以通过串口工具输入输出,支持常用的基本调试功能。同时用户可以新增定制的命令,新增命令需重新编译烧录后才能执行

2、shell功能打开方法

可以通过make menuconfig配置Shell,菜单路径为:Debug ---> Enable a Debug Version ---> Enable Shell。

配置项 含义 取值范围 默认值 依赖
LOSCFG_SHELL Shell功能的裁剪开关 YES/NO YES LOSCFG_DEBUG_VERSION=y && LOSCFG_DRIVERS_UART=y
LOSCFG_SHELL_CONSOLE(开源版本无该配置项) 设置Shell直接与Console交互 YES/NO YES LOSCFG_SHELL=y
LOSCFG_SHELL_UART 设置Shell直接与uart驱动交互 YES/NO NO LOSCFG_DRIVERS_UART=y

3、LiteOS 内设Shell命令

烧录新系统镜像后,重启系统,如果已经打开shell功能,既可以从串口中使用系统自带的Shell功能了。

通过这些命令我就可以完成对系统的一些基本操作,比如查询任务执行的情况,内存的分配情况及各种命令的帮助功能。

例如:help命令,在命令行输入help

系统谁输出当前的所有shell命令:

Huawei LiteOS # help
*******************shell commands:*************************

cpup          date          dlock         dmesg         free          help          hwi
log           memcheck      mutex         queue         sem           stack         swtmr
systeminfo    task          uname         watch

task命令用于查询系统任务信息

当输入 task [ID]时,可以查询到ID为ID的任务信息

比如输入task 0x01时,系统会打印出:

Huawei LiteOS # task 0x01
TaskName = SerialEntryTask
TaskId = 0x01
*******backtrace begin*******
traceback 0 -- lr = 0x1d804    fp = 0xa86bc
traceback 1 -- lr = 0x1da40    fp = 0xa86e4
traceback 2 -- lr = 0x20154    fp = 0xa86fc
traceback 3 -- lr = 0x258e4    fp = 0xa8714
traceback 4 -- lr = 0x242f4    fp = 0xa872c
traceback 5 -- lr = 0x123e4    fp = 0xa8754
traceback 6 -- lr = 0x2a9d8    fp = 0xb0b0b0b

大家可以尝试,自己发现这些系统功能的的作用是什么,也在其实发现更好地应用。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。