异常分类:
1.中断(I/0输入导致)
2,。陷阱(人为设计使程序跳转,主要用于用户程序与内核之间提供接口,即系统调用),如syscall n,即请求系统服务n
3.故障,可能能修复,不能就调用abort程序停止用户程序
4.终止,不能修复的致命错误(一般是硬件错误),直接调用abort
进程控制:
getpid:返回进程ID
getppid:返回父进程ID
进程ID定义时类型:pid_t(不是int型)
fork()调用1次,返回2次:因为在fork()之后程序就成了两个进程了,每个进程中都会从fork()中返回啊。父进程中返回子进程的ID,子进程返回0,这样你通过判断返回值就知道是子进程还是父进程了。
状态:运行(执行或者等待执行),停止(挂起,视指令进入运行状态),终止
子进程停止却未回收:即僵死进程,仍占用资源。需父进程回收。若父进程未回收即停止:内核用init进程(pid为1)回收
kill -9 进程id:杀死该进程
kill -9 -进程id:杀死进程组id的组中的所有进程
1.中断(I/0输入导致)
2,。陷阱(人为设计使程序跳转,主要用于用户程序与内核之间提供接口,即系统调用),如syscall n,即请求系统服务n
3.故障,可能能修复,不能就调用abort程序停止用户程序
4.终止,不能修复的致命错误(一般是硬件错误),直接调用abort
进程控制:
getpid:返回进程ID
getppid:返回父进程ID
进程ID定义时类型:pid_t(不是int型)
fork()调用1次,返回2次:因为在fork()之后程序就成了两个进程了,每个进程中都会从fork()中返回啊。父进程中返回子进程的ID,子进程返回0,这样你通过判断返回值就知道是子进程还是父进程了。
状态:运行(执行或者等待执行),停止(挂起,视指令进入运行状态),终止
子进程停止却未回收:即僵死进程,仍占用资源。需父进程回收。若父进程未回收即停止:内核用init进程(pid为1)回收
kill -9 进程id:杀死该进程
kill -9 -进程id:杀死进程组id的组中的所有进程