OpenHarmony设备开发小型系统内核(LiteOS-A) 调测与工具系统命令
版本:V3.2Beta
stack
命令功能
查看系统各堆栈使用情况。
命令格式
stack
参数说明
无
使用指南
无
使用实例
输入:stack
输出说明
示例 系统堆栈使用情况
OHOS # stack
stack name cpu id stack addr total size used size
---------- ------ --------- -------- --------
svc_stack 1 0x405c4000 0x2000 0x484
svc_stack 0 0x405c6000 0x2000 0xae4
exc_stack 1 0x405c8000 0x1000 0x0
exc_stack 0 0x405c9000 0x1000 0x0
表1 输出说明
输出 | 说明 |
stack name | 系统堆栈名 |
cpu id | cpu 号 |
stack addr | 栈地址 |
total size | 堆栈大小 |
used size | 堆栈实际使用大小 |
su
命令功能
su用于变更为其他使用者的身份。
命令格式
su [uid] [gid]
参数说明
表1 参数说明
参数 | 参数说明 | 取值范围 |
uid | 目标用户的用户id值。 | - 为空。 - [0, 60000] |
gid | 目标用户的群组id值。 | - 为空。 - [0, 60000] |
使用指南
- su命令缺省切换到root用户,uid默认为0,gid为0。
- 在su命令后的输入参数uid和gid就可以切换到该uid和gid的用户。
- 输入参数超出范围时,会打印提醒输入正确范围参数。
使用实例
举例:su 1000 1000
输出说明
示例 切换到为uid为1000,gid为1000的用户
OHOS # ls
Directory /data/system/param:
-rw-r--r-- 0 u:0 g:0 hello_1.txt
OHOS # su 1000 1000
OHOS # touch hello 2.txt
OHOS # ls
Directory /data/system/param:
-rw-r--r-- O u:1000 g:1000 hello 2.txt
-гw-r--r-- 0 u:0 g:0 hello_1.txt
swtmr
命令功能
swtmr命令用于查询系统软件定时器相关信息。
命令格式
swtmr [ID]
参数说明
表1 参数说明
参数 | 参数说明 | 取值范围 |
ID | 软件定时器ID号。 | [0, 0xFFFFFFFF] |
使用指南
- 参数缺省时,默认显示所有软件定时器的相关信息。
- swtmr后加ID号时,显示ID对应的软件定时器相关信息。
使用实例
举例:
- swtmr
- swtmr 1
输出说明
示例1 查询所有软件定时器相关信息
OHOS # swtmr
SwTmrID State Mode Interval Count Arg handlerAddr
---------- ------- ------- --------- ------- ---------- --------
0x00000000 Ticking Period 100 77 0x40802a50 0x4037b8a0
SwTmrID State Mode Interval Count Arg handlerAddr
---------- ------- ------- --------- ------- ---------- --------
0x00000001 Ticking Period 1000 876 0x00000000 0x4037fc04
SwTmrID State Mode Interval Count Arg handlerAddr
---------- ------- ------- --------- ------- ---------- --------
0x00000002 Ticking Period 100 76 0x00000000 0x403727f4
SwTmrID State Mode Interval Count Arg handlerAddr
---------- ------- ------- --------- ------- ---------- --------
0x00000016 Ticking NSD 10 6 0x8021e000 0x401fe7d8
SwTmrID State Mode Interval Count Arg handlerAddr
---------- ------- ------- --------- ------- ---------- --------
0x00000079 Ticking NSD 30000 1749 0x406189d8 0x40160e1c
示例2 查询对应 ID 的软件定时器信息
OHOS # swtmr 1
SwTmrID State Mode Interval Count Arg handlerAddr
---------- ------- ------- --------- ------- ---------- --------
0x00000001 Ticking Period 1000 841 0x00000000 0x4037fc04
表2 输出说明
输出 | 说明 |
SwTmrID | 软件定时器ID。 |
State | 软件定时器状态。 状态可能为:“UnUsed”, “Created”, “Ticking”。 |
Mode | 软件定时器模式。 模式可能为:“Once”, “Period”, “NSD(单次定时器,定时结束后不会自动删除)”。 |
Interval | 软件定时器使用的Tick数。 |
Count | 软件定时器已经工作的次数。 |
Arg | 传入的参数。 |
handlerAddr | 回调函数的地址。 |
说明:
- swtmr命令的ID参数输入形式以十进制形式表示或十六进制形式表示皆可。
- swtmr命令的ID参数在[0, 当前软件定时器个数 - 1]范围内时,返回对应ID的软件定时器的状态;其他取值时返回错误提示。
systeminfo
命令功能
systeminfo命令用于显示当前操作系统内资源使用情况,包括任务、信号量、互斥量、队列、定时器等。
命令格式
systeminfo
参数说明
无
使用指南
无
使用实例
举例:输入systeminfo
输出说明
示例 查看系统资源使用情况
OHOS:/$ systeminfo
Module Used Total Enabled
--------------------------------------------
Task 96 256 YES
Sem 435 1024 YES
Queue 13 1024 YES
SwTmr 20 1024 YES
表1 输出说明
输出 | 说明 |
Module | 模块名称。 |
Used | 当前使用量。 |
Total | 最大可用量。 |
Enabled | 模块是否开启。 |
Task | 任务。 |
Sem | 信号量。 |
Queue | 队列。 |
SwTmr | 定时器。 |
task
命令功能
task命令用于查询进程及线程信息。
命令格式
task/task -a
参数说明
表1 参数说明
参数 | 参数说明 | 取值范围 |
-a | 查看更多信息。 | N/A |
使用指南
参数缺省时默认打印部分任务信息。
使用实例
举例:输入task
输出说明
示例 查询任务部分信息
OHOS # task
allCpu(%): 3.54 sys, 196.46 idle
PID PPID PGID UID Status VirtualMem ShareMem PhysicalMem CPUUSE10s PName
1 -1 1 0 Pending 0x33b000 0xbb000 0x4dc8b 0.0 init
2 -1 2 0 Pending 0x193318e 0 0x193318e 1.11 KProcess
3 1 3 7 Pending 0x730000 0x1a2000 0x1d34f6 0.0 foundation
4 1 4 8 Pending 0x35e000 0xb8000 0x56777 0.0 bundle_daemon
5 1 5 1 Pending 0xdfa000 0x2e7000 0x1487ce 0.0 appspawn
6 1 6 0 Pending 0x688000 0x137000 0x11c518 0.0 media_server
7 1 7 0 Pending 0x9d2000 0x103000 0xa1ddf 0.89 wms_server
8 1 1 1000 Running 0x2bf000 0x8f000 0x2a8c6 0.0 shell
9 5 5 101 Pending 0x11ea000 0x2f9000 0x20429d 0.97 com.example.launcher
11 1 11 0 Pending 0x4d4000 0x112000 0xe0ad7 0.0 deviceauth_service
12 1 12 0 Pending 0x34f000 0xbd000 0x519ee 0.0 sensor_service
13 1 13 2 Pending 0x34e000 0xb3000 0x523d9 0.0 ai_server
14 1 14 0 Pending 0x61f000 0x13b000 0x16841c 0.50 softbus_server
TID PID Affi CPU Status StackSize WaterLine CPUUSE10s MEMUSE TaskName
23 1 0x3 -1 Pending 0x3000 0xe44 0.0 0 init
1 2 0x1 -1 Pending 0x4000 0x2c4 0.37 0 Swt_Task
2 2 0x3 -1 Pending 0x4000 0x204 0.0 0 system_wq
3 2 0x2 -1 Pending 0x4000 0x514 0.65 0 Swt_Task
4 2 0x3 -1 Pending 0x1000 0x36c 0.0 0 ResourcesTask
7 2 0x3 -1 Pending 0x4e20 0xa5c 0.0 0 PlatformWorkerThread
表2 输出说明
输出 | 说明 |
PID | 进程ID。 |
PPID | 父进程ID。 |
PGID | 进程组ID。 |
UID | 用户ID。 |
Status | 任务当前的状态。 |
CPUUSE10s | 10秒内CPU使用率。 |
PName | 进程名。 |
TID | 任务ID。 |
StackSize | 任务堆栈的大小。 |
WaterLine | 栈使用的峰值。 |
MEMUSE | 内存使用量。 |
TaskName | 任务名。 |
uname
命令功能
uname命令用于显示当前操作系统的名称,版本创建时间,系统名称,版本信息等。
命令格式
uname [-a | -s | -r | -m | -n | -v | --help]
表1 参数说明
参数 | 参数说明 |
–help | 显示uname指令格式提示。 |
无参数 | 默认显示操作系统名称。 |
-a | 显示全部信息。 |
-s | 显示操作系统名称。 |
-r | 显示内核发行版本。 |
-m | 显示系统架构名称。 |
-n | 显示主机的网络域名称。 |
-v | 显示版本信息。 |
使用指南
- uname用于显示当前操作系统名称。
- 除参数–help和-a以外,其他参数可以相互搭配使用;uname -a 等价于 uname -srmnv。
特殊说明
-r -m -n参数暂不支持。切换mksh版本可全支持,方法:cd bin; ./mksh。
使用实例
举例:
- uname -a
- uname -ms
输出说明
示例1 查看系统信息
OHOS:/$ uname -a
LiteOS hisilicon 2.0.0.37 LiteOS 2.0.0.37 Oct 21 2021 17:39:32 Cortex-A7
OHOS:/$
示例2 只查看操作系统名称和系统架构名称
OHOS:/$ uname -ms
LiteOS Cortex-A7
OHOS:/$