其中,日志过滤文件和uTrace.exe在同一个路径下
点击“日志”标签,设置串口号,波特率,打开串口
可以看到设备日志,跟串口工具一样
点击左上角“终端”,有个简易的shell,操作方式跟串口工具一样,**这里是把AliOS Things cli 命令的输出,从日志里拿出来,输出到了这个“终端”标签下,**方便进行一些命令的调试。
如果使用SmartTrace工具接上了串口,则在系统异常crash的时候会直接解析调用栈(右侧的解析窗口默认情况下是隐藏的,将光标移到右侧,光标图案变成左右箭头的时候,点击并往左拖动,可以拖出来“过滤日志窗口”。注意,在右边还有一个“Sequence Diagram”窗口,可查看时序图,这里暂时可以不管)
如果日志来源于其他地方,如调试串口工具secureCRT,如果此时想查看栈回溯,复制完整的栈回溯信息 (“Kernel Call stack”栈信息是必要的)
使用“本地日志” — “clipboard” — “**分析日志**”, 也可以解析调用栈
如:查看cli_main接口的反汇编 $disass cli_main 工具会输出cli_main 函数的反汇编
如:查看crash时PC的反汇编,从日志看得知PC=0x10057D40 $disass 0x10057D40 工具会输出
查看 g_ready_queue结构体数据 $p g_ready_queue 会输出:
$p variable
:打印变量variable的值$p *(pointer_type *)memory_address
:按指定的数据类型读取内存数据并打印$p &variable
:打印变量variable的地址$x /nwx memory_address
:查看指定地址的内存数据,其中n表示数字,用1~9代替$set variable=value
:设置某个变量的值为value$set *(pointer_type *)memory_address
=value:设置某个内存地址的值为value -
$disass function:查看指定函数的反汇编代码 -
$disass memory_address`:查看指定地址的反汇编代码
注:更多高级功能在持续演进。
当前仅支持 windows 和 mac 环境,均在zip包里,无需安装,选择相应版本下载即可使用