进程相关
- URL: Weixin
TAG: ((6209ac4b-6222-428d-b02a-c1b542d4f621))
YEAR:
IN A WOED:
印象笔记:
标识
UID | 启动进程的用户 |
---|---|
PID | 进程的进程号 |
PPID | 父进程进程号 |
C | cpu使用率 |
STIME | 进程启动时的系统时间 |
TTY | 进程启动时终端设备 |
TIME | 运行进程需要的累积CPU时间 |
CMD | 启动程序名称或命令 |
ps
命令 | 功能 |
---|---|
-e | 显示运行在系统上的所有进程 |
-f | 扩展显示输出 |
strace
trace system calls and signals 跟踪进程内部的系统调用和信号
strace后面跟着启动一个进程,^^可以跟踪启动后进程的系统调用和信号^^
这个命令可以看到进程执行时候都调用了哪些系统调用,通过指定不同的选项可以输出系统调用发生的时间,精度可以精确到微秒,甚至还可以统计分析系统「调用的耗时」,^^这在排查进程假死问题的时候很有用,能帮你发现进程卡在哪个系统调用上^^。
已经在运行的进程也可以指定-p参数加pid像gdb attach那样附着上去跟踪
-
pstack
print a stack trace of a running process 打印出运行中程序的堆栈信息
执行命令pstack pid 你能看到当前线程运行中的堆栈信息,其中的pid可用之前的ps命令获得,pstack可以看到进程内启动的线程号,每个进程内线程的「堆栈」内容也能看到。
🔔LPW(Light-weight process)
1.Linux中没有真正的线程
2.Linux中没有的线程Thread是由进程来模拟实现的所以称作:轻量级进程
3.进程是「资源管理」的最小单元,线程是「资源调度」的最小单元(这里不考虑协程)
pstree
display a tree of processes pstree按树形结构打印运行中进程结构信息
可以直观的查看进程和它启动的线程的关系,并能显示进程标识
/proc/pid
具体内容在 ((621dea74-c48b-4b04-8572-d06cc99477ea))
reptyr
通过在tmux中使用reptyr抢占进程到当前终端
1 | 先启动一个tmux |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ZCDu的海洋馆!
评论