进程
1 pid = fork() 2 返回值>0是父进程 ,返回值<0是子进程
进程就是程序的一次运行活动,也就是程序跑起来了,系统中就多了一个进程
一、关于进程的一些进本命令
1、如何查看进程
1 ps -aux 2 查看当前下的进程
2、具体查看自己想看到的进程可以通过命令grep
1 pa -aux |greo + (自己想看的进程名)
3、top指令(像window下的资源管理器)
1 top
二、进程标识符
每个进程都会有一个非负整数表示的唯一ID 叫做pid ,就像是我们的身份证一样的
获取自己的pid
1 getpid() 是一个函数
例子demo1
1 #include <sys/types.h> 2 #include <unistd.h> 3 #include<stdio.h> 4 5 int main() 6 { 7 pid_t pid; //定义一个int a 8 pid = getpid(); 9 printf("mypid:%d\n",pid); 10 11 12 13 return 0; 14 }
运行结果:pid = 66

三、父子进程(fork函数来创建)
getppid是获取父进程的ID号
1 #include <sys/types.h> 2 #include <unistd.h> 3 #include<stdio.h> 4 5 int main() 6 { 7 pid_t pid; //定义一个int a 8 pid = getpid(); 9 fork(); 10 printf("mypid:%d,current :%d\n",pid,getpid()); 11 //fork之后就会创建一个进程,但是我们无法区分哪个是父进程哪个是子进程 12 //所以在增加的调试信息又从新获取了一个pid,那么如果两次pid都是相等的, 13 // 那么就是父进程了,不一样的就是子进程 14 15 16 return 0; 17 }
结果截图:两次pid相同的是父进程,不同的是子进程,第一个都相同是因为都在创建
进程之前的

父子进程都有他们独立的空间,父子进程是交替运行的,谁先谁后是不确定的
四、关于父子进程自建的影响
Hang in there,I wish you a bright future.

浙公网安备 33010602011771号