- 论坛徽章:
- 0
|
查看正在运行的进程
#ps-ef
#psax
可以看到状态
查看nice值
#ps-l
#ps-f
system函数
传递命令,如同在shell中执行
char*p="psax";
system(p);
或者="psax&";//ps一启动shell就返回
execl,execlp,execle函数
exec启动一个新程序,替换原有的进程,因此这个新的被exec执行的进程的PID不会改变,和调用exec函数的进程一样。
表头文件
#include.h>
execlp("ps","ps","ax",0);
参考:exec函数族的使用
pid_t是什么?
是Linux下的进程号类型,也就是ProcessID_Type的缩写。其实是宏定义的unsignedint类型
sys/types.h:typedefshortpid_t;/*usedforprocessids*/
pid_tpid;
fork()函数
产生新进程
pid=fork();
在语句pid=fork()之前,只有一个进程在执行这段代码,但在这条语句之后,就变成两个进程在执行了。
该函数被调用一次,武汉数据恢复但返回两次。两次返回的区别是子进程的返回值是0,而父进程的返回值则是新子进程的进程ID。
perror()函数
用来将上一个函数发生错误的原因输出到标准设备(stderr)
puts()函数
按行将字符串送到流stdout中
代码:
viewplaincopytoclipboardprint?
#include.h>
#include.h>
#include.h>
#include.h>
intmain()
{
pid_tpid;
char*message;
intn;
printf("forkprogramstarting\n");
pid=fork();
switch(pid)
{
case-1:
perror("forkfailed");
exit(1);
case0:
message="Thisisthechild\n";
printf(message);
#include.h>#include.h>#include.h>#include.h>intmain(){pid_tpid;char*message;intn;printf("forkprogramstarting\n");pid=fork();switch(pid){case-1:perror("forkfailed");exit(1);case0:message="Thisisthechild\n";printf(message);
viewplaincopytoclipboardprint?
n=5;
break;
default:
message="Thisistheparent\n";
printf(message);
n=5;break;default:message="Thisistheparent\n";printf(message);
viewplaincopytoclipboardprint?
n=3;
break;
}
本文出自:http://www.whxth.net武汉数据恢复 转载请注明 |
|