LINUX进程

1. LINUX 进程有三部分组成,代码段:存放程序的可执行代码;数据段:存放程序的全局变量,常量,静态变量。堆栈段:存放动态分配的内存变量。
2.进程的状态可分为:1.运行状态:进程正在运行或者在运行队列中等待运行。
                                2.可中断状态:进程正在等待某个事件完成。等待过程中可以被信号或定时器唤醒。
                3.不可中断状态:进程也正在等到某个事件完成,在等待中不可以被信号或定时器唤醒,必须等待直到等待的事件完成。
                4.僵死状态:进程已经终止,但进程描述符依然存在,直到进程调用WAIT()函数后释放。
                5.停止状态:进程因为手到了信号后停止运行或该进程正在被跟踪。
3.进程的创建有两种方式:1.由操作系统创建。2.由父进程创建。
4.fork()函数:  fork()函数,Linux系统调用
  头文件:
  #include <unistd.h>
  函数定义:
  int fork( void );
  返回值:
  子进程中返回0,父进程中返回子进程ID,出错返回-1
  函数说明:
  一个现有进程可以调用fork函数创建一个新进程。由fork创建的新进程被称为子进程(child process)。fork函数被调用一次但返回两次。两次返回的唯一区别是子进程中返             回0值而父进程中返回子进程ID。
  子进程是父进程的副本,它将获得父进程数据空间、堆、栈等资源的副本。注意,子进程持有的是上述存储空间的“副本”,这意味着父子进程间不共享这些存储空间,它们     之间共享的存储空间只有代码段。
5.孤儿进程:是指如果一个子进程的父进程先于子进程结束,子进程就成为一个孤儿进程,它有INIT进程收养,成为INIT进程的子进程。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章