Solaris10修改进程名称
来源:互联网 发布:开淘宝充值店赚钱吗 编辑:程序博客网 时间:2024/04/29 16:36
对于多进程的程序,由于会针对同一可执行文件起多个进程,这样用ps –ef会看到多个同名的进程在运行。存在辨别到底是哪个进程的问题,所要要针对每一个进程取一个唯一的名字。
搜索了一下,发现网上的方法都是修改argv[0],但是此方法只在linux成功。而在Solaris10上,此方法只对/usr/ucb/ps生效,而对默认的ps(即/usr/bin/ps)不生效。
试了几个方法,最后使用包装程序+exec搞定了此问题。方法如下:
假设要运行的程序的代码如下:
//test.cpp
#include <unistd.h>
int main()
{
pause();
return 0;
}
将其编译成test。
包装程序的代码如下,要将进程名改成1234:
//change_process_name.cpp
#include <unistd.h>
#include <sys/types.h>
int main()
{
pid_t pid = fork();
if(0 == pid)
{
execl("./test", "1234", (char*)0);
}
pause();
return 0;
}
将其编译成change_process_name。
运行change_procee_name
运行ps -ef | grep change_procee_name:
root 4449 19184 0 13:24:46 pts/7 0:00 ./change_process_name
再运行ps -ef | grep 4449,可以看到进程名已经变成1234了:
w2liu 4450 4449 0 13:24:46 pts/7 0:00 1234
以上方法在Solaris10和CentOS5.5上测试通过。
- Solaris10修改进程名称
- 修改进程名称
- Linux修改进程名称
- Linux修改进程名称(setproctitle())
- Linux修改进程名称(setproctitle())
- Linux修改进程名称(setproctitle())
- linux下修改进程名称
- Linux修改进程名称(setproctitle())
- Linux下修改进程名称
- 1.Nginx修改进程名称
- solaris10修改IP
- solaris10修改IP
- Solaris10修改主机名
- Solaris10上修改hostid
- [redis] setproctitle.c实现 修改进程名称
- Problem 61 修改进程的显示名称
- 修改TOMCAT窗口和进程名称
- 如何修改tomcat进程的名称
- 数学工具常见问题集(接上篇)
- 工作流jbpm4的学习笔记4
- 对比Windows和Linux两系统的动态库
- 非模态对话框 模态对话框 --创建和销毁过程
- xml schema递归应用
- Solaris10修改进程名称
- MPlyaer播放高清视频的说明(CoreAVC、提高速度和清晰度等问题)
- 数学工具常见问题集
- dwr 简单示例
- iphone在应用程序中发送短信
- MATLAB元胞数组
- 让你的firefox跑得更快
- 几种分页方案详尽分析---10万条记录实例测试
- 一个男人要犯多少错误,才会成熟,要受多少痛苦,才会长大。