Linux进程控制编程

1、进程是系统资源分配的最小单位。
2、进程的状态:   执行状态:进程正在占用CPU;    就绪状态:进程已具备一切条件,正在等待分配CPU的处理时间片; 
 等待状态:进程不能使用CPU,若等待时间发生则可将其唤醒。
3、Linux中心进程包含3个段:数据段、代码段、堆栈段。
临界资源:操作系统中将一次只允许一个进程访问的资源成为临界资源。   进程中访问临界资源的那段程序代码成为临界区。
4、调度算法:   先来先服务算法、短进程优先调度算法、高优先级优先调度算法、时间片轮转法。

Linux进程控制编程

5、进程创建  fork和vfork的区别:  1、fork:子进程拷贝父进程的数据段     vfork:子进程与父进程共享数据段
                                                  2、fork:父子进程的执行次序不确定      vfork:子进程先运行,父进程后运行。

6、僵尸进程:指那些虽然已经终止的进程,但仍然保留一些信息,等待其父进程为其收尸;   产生:父进程调用
fork创建子进程后,子进程运行直至其终止,它立即从内存中移除,但进程描述符仍然保留在内存中。

7、wait函数:wait()阻塞当前进程,直到有信号来到或紫禁城结束为止;如果执行成功则返回子进程的进程
识别码(PID);如果有错误发生则返回-1;失败原因存于error中。
8、waitpid函数:waitpid()会暂时停止目前进程的执行,直到有信号来到或子进程结束; 如果执行成功则返
回子进程识别码(PID),如果有错误发生则返回-1,失败原因存于error中。