如何判断一个程序的进程是父进程还是子进程?

寒芒菊紧-Husky 2017-04-06 10:52:59
有时候程序关了之后,后台的某些相关进程却还在进行,结束进程树时,可能结束的只是子进程,导致程序没有完全关闭,占用系统资源,有没有什么办法可以准确判断该程序哪个进程是父进程,以便完全结束程序,避免系统资源浪费?还有就是我想进程也像类文件那样,类似继承的关系,进程之间应该也有多层关系,是否能确切区分进程之间的这种关系呢?有高人知道吗?求解,听网上说好像也有类似的软件0.0
...全文
3853 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
寒芒菊紧-Husky 2017-04-07
  • 打赏
  • 举报
回复
在网上搜索了一下,发现针对这些问题,微软旗下的Sysinternals也开发了相应的两款软件 软件都不大,均在1M左右,不用安装,点开直接使用! (1)Process Explorer: 个人感觉 Process Explorer 比较好用,进程之间的关系很明显,而且结束进程的操作也能在软件内部执行! Process Explorer最新版下载地址: http://rj.baidu.com/soft/detail/15967.html?ald (2)Process Monitor: 打开软件后,不停地在刷新数据,不知道是为什么0.0,而且,进程关系要在“Tools”里面的“Process Tree”才能看到,进程也不能在程序内部结束,要借助任务管理器QAQ,体验不是很好 Process Monitor官方下载地址: https://technet.microsoft.com/en-us/sysinternals/bb896645 汉化版自行百度哦! 希望对大家有所帮助! 如果大家还有更好的方法和建议,请发表出来,谢谢!0.0
luciferisnotsatan 2017-04-07
  • 打赏
  • 举报
回复
引用 5 楼 qq_32224139 的回复:
[quote=引用 2 楼 luciferisnotsatan 的回复:] http://stackoverflow.com/questions/29939893/get-parent-process-name-windows 一般都是杀子进程的,你杀父进程,最终会把系统进程杀了
谢谢!话说上面这好像是个交流平台吧0.0 一般不敢系统进程下手,有时候软件异常关闭,后台某些进程若是没有完全关闭,就会占用系统资源,特别是软件开开关关多了,系统占用资源一高,运行处理速度就很慢,如果能准确找到对应软件的根父进程,结束进程树,相应衍生的子进程就会自动结束!操作效率会提高很多![/quote] 虽然还是不太明白你要找对应软件的父进程干嘛,一般你双击运行的exe就是根了。它的父进程是系统进程。 你直接用procexp(Process Explorer )这个软件,在软件还没崩掉前看看它有哪些子进程吧。然后记住名字,到时一个个手动杀了。
  • 打赏
  • 举报
回复
引用 7 楼 qq_32224139 的回复:
[quote=引用 4 楼 q3733353520 的回复:] 进程ID可以判断
PID不是程序启动时,系统自动分配的吗?如何判断?求解0.0[/quote] getpid
寒芒菊紧-Husky 2017-04-07
  • 打赏
  • 举报
回复
引用 4 楼 q3733353520 的回复:
进程ID可以判断
PID不是程序启动时,系统自动分配的吗?如何判断?求解0.0
  • 打赏
  • 举报
回复
引用 5 楼 qq_32224139 的回复:
[quote=引用 2 楼 luciferisnotsatan 的回复:] http://stackoverflow.com/questions/29939893/get-parent-process-name-windows 一般都是杀子进程的,你杀父进程,最终会把系统进程杀了
谢谢!话说上面这好像是个交流平台吧0.0 一般不敢系统进程下手,有时候软件异常关闭,后台某些进程若是没有完全关闭,就会占用系统资源,特别是软件开开关关多了,系统占用资源一高,运行处理速度就很慢,如果能准确找到对应软件的根父进程,结束进程树,相应衍生的子进程就会自动结束!操作效率会提高很多![/quote] 重启治百病
寒芒菊紧-Husky 2017-04-07
  • 打赏
  • 举报
回复
引用 2 楼 luciferisnotsatan 的回复:
http://stackoverflow.com/questions/29939893/get-parent-process-name-windows 一般都是杀子进程的,你杀父进程,最终会把系统进程杀了
谢谢!话说上面这好像是个交流平台吧0.0 一般不敢系统进程下手,有时候软件异常关闭,后台某些进程若是没有完全关闭,就会占用系统资源,特别是软件开开关关多了,系统占用资源一高,运行处理速度就很慢,如果能准确找到对应软件的根父进程,结束进程树,相应衍生的子进程就会自动结束!操作效率会提高很多!
  • 打赏
  • 举报
回复
进程ID可以判断
  • 打赏
  • 举报
回复
luciferisnotsatan 2017-04-07
  • 打赏
  • 举报
回复
http://stackoverflow.com/questions/29939893/get-parent-process-name-windows 一般都是杀子进程的,你杀父进程,最终会把系统进程杀了
  • 打赏
  • 举报
回复
寒芒菊紧-Husky 2017-04-07
  • 打赏
  • 举报
回复
引用 9 楼 luciferisnotsatan 的回复:
[quote=引用 5 楼 qq_32224139 的回复:] [quote=引用 2 楼 luciferisnotsatan 的回复:] http://stackoverflow.com/questions/29939893/get-parent-process-name-windows 一般都是杀子进程的,你杀父进程,最终会把系统进程杀了
谢谢!话说上面这好像是个交流平台吧0.0 一般不敢系统进程下手,有时候软件异常关闭,后台某些进程若是没有完全关闭,就会占用系统资源,特别是软件开开关关多了,系统占用资源一高,运行处理速度就很慢,如果能准确找到对应软件的根父进程,结束进程树,相应衍生的子进程就会自动结束!操作效率会提高很多![/quote] 虽然还是不太明白你要找对应软件的父进程干嘛,一般你双击运行的exe就是根了。它的父进程是系统进程。 你直接用procexp(Process Explorer )这个软件,在软件还没崩掉前看看它有哪些子进程吧。然后记住名字,到时一个个手动杀了。[/quote] 谢谢,刚才搜到了!
Re: 《Linux 进程管理命令》   ---------------------------------------内容提要: 01/15)命令 ps         :查看进程(快照)02/15)命令 pstree   :显示进程状态树03/15)命令 pgrep   :查找匹配条件的进程04/15)命令 kill        :终止进程号(1277)05/15)命令 killall    :通过进程名(nginx)终止进程/进程)06/15)命令 pkill      :通过进程名终止进程(通杀)/终止客户端(pst/tty)07/15)命令 top       :实时显示系统中各个进程的资源占用状况(录像)08/15)命令 nice      :调整程序运行时的优先级09/15)命令 renice   :调整运行中的进程的优先级10/15)命令 nohup  :用户退出系统,进程继续工作11/15)命令 strace   :跟踪进程的系统调用12/15)命令 ltrace    :跟踪进程调用库函数13/15)命令 runlevel:输出当前运行级别14/15)命令 init        :初始化 Linux 进程15/15)命令 service  :管理系统服务  本人在教学和实战过程中发现,即便是有一定运维经验的人,可能已经能够搭建一定复杂度的Linux架构,但是在来来回回的具体操作中,还是体现出CLI(命令界面)功底不够扎实,甚至操作的非常‘拙’、处处露‘怯’。 对一个士兵来说,枪就是他的武器,对于一个程序员来说,各种library(工具库)就是他的武器;而对于Linux运维人员来说,无疑命令行工具CLI(命令界面)就是他们的武器;高手和小白之间的差距往往就体现在对于这些“武器”的掌握和熟练程度上。有时候一个参数就能够解决的事情,小白们可能要写一个复杂的Shell脚本才能搞定,这就是对CLI(命令界面)没有理解参悟透彻导致。 研磨每一个命令就是擦拭手中的作战武器,平时不保养不理解,等到作战的时候,一定不能够将手中的武器发挥到最好,所以我们要平心、静气和专注,甘坐冷板凳一段时间,才能练就一身非凡的内功! 本教程从实战出发,结合当下流行或最新的Linux(v6/7/8 版本)同时演示,将命令行结合到解决企业实战问题中来,体现出教学注重实战的务实精神,希望从事或未来从事运维的同学,能够认真仔细的学完Linux核心命令的整套课程。 本课程系列将逐步推出,看看我教学的进度和您学习的步伐,孰占鳌头! 注:关于教学环境搭建,可以参考本人其它课程系列,本教学中就不再赘述! 《参透 VMware 桌面级虚拟化》 《在虚拟机中安装模版机(包括应用软件等)》 《SecureCRT 连接 GNS3/Linux 的安全精密工具》

594

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧