打印指定线程的调用栈

打印指定线程的调用栈

Q:线程运行不正常,发现阻塞了,需要打印其调用连。
SylixOS 支持通过命令可以获取指定线程的调用链。
通过 shell 交互输入:kill -n 47 线程 id

    • Related Articles

    • SylixOS 中查看线程此时所处的状态通过什么命令、状态是什么含义?

      问:SylixOS 中查看线程此时所处的状态通过什么命令、状态是什么含义? 答:SylixOS 中查看线程此时所处的状态可通过 Shell 命令 ts 查看“STAT”列,如下,线程“t_test”处于“SLP”状态。 查看SylixOS中该部分代码描述: 根据代码中获取tcb后信息的判断可知 “ts” 命令中 “STAT” 打印字符串表示的信息总结为:
    • 汇编中使用串口打印调试方式

      问:如何在汇编中使用串口打印调试方式 BSP 调试中经常会遇到汇编中需要打印相关状态的情况,如下代码基于全志 T3(ARM Cortex A7)平台展示如何在汇编中打印一个字符的串口调试信息。类似的方式经过简单修改也可以移植到其他平台上。(注意:打印串口信息过程中会使用到 R0、R1 两个寄存器,注意相关寄存器的上下文关系) LDR R1, =0x01c2807C ; /* 读取串口状态寄存器 */ 1: LDR R0, [R1] MOV R0, R0, LSR#2 ; /* ...
    • SylixOS 下 pthread_create 创建线程满问题

      内核版本: 1.10.9客户程序应用场景中在执行完一次循环后会再次创建任务,执行数次后报了 "there is no ID to build a thread." 错误,搜索对应的代码 申请不到TCB控制块了。 查看 /proc/kernel/objects 记录的信息发现500个任务控制块已经用完了。 查看__threadDelete() 实现发现POSIX接口创建的线程需要指定相应的属性在任务执行完后才能释放任务控制块 ...
    • SylixOS系统 shell 执行界面如何显示代码中打印的中文字符?

      Q:SylixOS 系统 shell 执行界面如何显示代码中打印的中文字符? A:SylixOS 默认支持的中文字符是 GB2312 编码,在 shell 界面操作时需要将您使用的串口打印工具更改为对应的字符编码即可。 如:在支持 GB2312 编码的串口或网络调试工具中直接更改,重新链接后即可显示中文打印。 如使用 Putty 工具,可以更改编码为 ISO-8859-1:1998(latin-1,West Europe)编码即可显示打印的中文。
    • SylixOS 下内核线程简介

      1.概述      内核线程共享内核所有资源,例如内核文件描述符表,而进程内线程则共享使用进程内所有资源,例如进程文件描述符表。SylixOS 对于一些系统级功能是通过使用内核线程进行管理使用。 2.内核线程      基于 SylixOS Version:2.1.6 的内核,在终端上输入命令“ts”如图 2.1所示。                                                  图2.1  “ts”命令 2.1 内核线程工程       ...