当前位置:  技术问答>求解:父进程如何知道子进程core dump? iis7站长之家

求解!关于如何获取系统中其它进程的标准输出

    来源: 互联网  发布时间:2016-07-12

    本文导语:  本帖最后由 bzerg007 于 2009-10-27 10:14:52 编辑 Google了很长时间一直没有答案,故来这里发帖求解! 请问各位高手,如何在我的程序中获取系统在后台运行的其它进程的标准输出呢? 希望各位不吝赐教 | ...

本帖最后由 bzerg007 于 2009-10-27 10:14:52 编辑
Google了很长时间一直没有答案,故来这里发帖求解!
请问各位高手,如何在我的程序中获取系统在后台运行的其它进程的标准输出呢?
希望各位不吝赐教

|
我猜 楼主的意思是说 ,  arm_server 进程已经启动的了,默认标准输出是到查串口设备上。这时候又想启动另外已经进程来去获取 arm_server 的标准输出。 

这样看看只能 用ptrace 函数,用PTRACE_ATTACH 参数attach 一下  arm_server 进程 这个进程,然后就可以通过dup函数,把标准输出定向到想要的文件里面去。然后不需要的时候再PTRACE_DETACH 就可以了。
不过这种办法我怀疑会影响 arm_server 的性能的吧。

不过可以竟然 arm_server  都是自己写的了,可以考虑在arm_server  中留一个接口。然后需要获得arm_server 的输出的时候,监控进程通知 一下arm_server  进程,arm_server 再进程自己调用dup 函数把 标准输出重新定下到一个FIFO管道中了,监控进程就可以通过FIFO管道 得到arm_server的标准输出了。 这样作估计比上面那种好吧。 楼主了解一下进程通讯和管道就可以做了。

如果只是为了简单记录一下 arm_server 的log,那其实 用tee 命令 也是可以 ,启动arm_server的命令改为  ./arm_server  | tee  logfile.txt  这样就可以了吧, arm_server 的输出会同时打印到 标准输出和  logfile.txt文件里面的。

|
用dup重定向标准输出到串口或网络或文件

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 求解 求解 求解
  • Linux Shell编程从初学到精通 第四章课后习题2 求解
  • 有限元求解器 GetDP
  • 偏微分方程求解工具箱 DUNE
  • linux命令求解释....
  • 偏微分方程求解框架 Overture
  • 100分求解!!!!!
  • 编译内核时候出现的问题,求解
  • makefile求解
  • 求解ucos ii的一句代码
  • 求助linux下mysql 求解!
  • 求解啊,centos下 shutdown -h now 无效??
  • 求解windows下硬盘安装linux如何用linux引导
  • 关于linux shell的一个不明白的地方。求解
  • solaris安装不上,求解.............
  • [FreeBSD] 大神,求解,control socket : can‘t to any socket
  • ubuntu12.04求解
  • 100分求解如何查看内存最高使用值!!
  • 高分求解---如何在DOS下查杀欢乐时光病毒?用哪种杀毒软件?Windows98没法进入了!
  • 求解struct的大小


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3