Linux ps查看进程状态及进程死锁问题的查看
来源:互联网 发布:二维编程雕刻机 编辑:程序博客网 时间:2024/05/20 05:53
通常我们通过
ps aux | grep [pthread]
查看特定进程[pthread]的状态信息;
在Linux中,可能状态如下:
D 不可中断 Uninterruptible sleep (usually IO)
R 正在运行,或在队列中的进程
S 处于休眠状态
T 停止或被追踪
Z 僵尸进程
W 进入内存交换(从内核2.6开始无效)
X 死掉的进程
< 高优先级
N 低优先级
L 有些页被锁进内存
s 包含子进程
+ 位于后台的进程组
l 多线程,克隆线程
例如:
USERPID%CPU%MEMVSZRSS TTY STAT START TIME COMMANDtss 20629 1.1 0.0 94732 1660 pts/1 Sl+ 18:03 0:08 /usr/local/sbin/tcsd -f
USER: 行程拥有者
PID: pid
%CPU: 占用的 CPU 使用率
%MEM: 占用的记忆体使用率
VSZ: 占用的虚拟记忆体大小
RSS: 占用的记忆体大小
TTY: 终端的次要装置号码 (minor device number of tty)
STAT: 该行程的状态:
START: 行程开始时间
TIME: 执行的时间
COMMAND:所执行的指令
Linux下查看某个进程的线程数量
1.根据进程号进行查询:
# pstree -p 进程号
# top -Hp 进程号
2.根据进程名字进行查询:
# pstree -p `ps -e | grep server | awk '{print $1}'`
# pstree -p `ps -e | grep server | awk '{print $1}'` | wc -l
Linux死锁问题
使用 pstack 和 gdb 工具对死锁程序进行分析
pstack 进程号 查看各个线程的堆栈信息
当进程吊死的时候,多次使用,死锁的线程将一直处于等锁的状态,确定某些线程一直没有变化,一直处于等锁的状态。那么这些线程很可能是死锁了。如果怀疑哪些线程发生死锁了,可以采用gdb 进一步attach线程并进行分析。
执行命令 gdb attach 9368(进程号) 进入gdb调试终端
运行:(gdb) info thread
获取锁和释放锁的位置前后分别添加日志输出,从而判断释放是死锁的问题;
- Linux ps查看进程状态及进程死锁问题的查看
- linux进程及进程查看ps命令
- linux ps 命令查看进程状态
- linux ps 命令查看进程状态
- Linux中用ps命令查看进程状态
- ps查看进程的stat状态
- ps 命令查看进程状态
- ps 命令查看进程状态
- ps 命令查看进程状态
- ps -aux查看进程状态
- linux ps查看进程是否安装php及查看版本
- Linux 的 ps 命令 查看系统进程
- linux进程的查看上(ps)
- ps查看linux系统的进程
- ps – linux 查看进程
- linux进程查看命令ps
- linux ps 查看进程命令
- linux ps 查看进程命令
- 【51nod1265】—四点共面
- Android之用adb命令快速获取手机IP方法总结
- CocoStudio Lua(lua)动画调用 导出的基本动画播放
- LLDB在IOS断点调试
- Avro在讯飞大数据开放平台的应用
- Linux ps查看进程状态及进程死锁问题的查看
- C#中字符数组,字节数组和string之间的转化
- 解决Windows对JDK默认版本切换问题
- 20170828Link
- 直接插入排序
- 如何写静态tableView页面
- 聊聊架构设计
- MongoDB可视化图形界面mongo-express/adminMongo安装过程
- 基于IDEA的aspectj项目demo