1. 首页
  2. 操作系统
  3. Unix
  4. exit函数-鸿鹄论坛_华为认证h35-211-hcnp-access network题库

exit函数-鸿鹄论坛_华为认证h35-211-hcnp-access network题库

上传者: 2024-07-15 20:44:45上传 PDF文件 18.16MB 热度 7次

进程终止是操作系统中一个重要的功能。在POSIX环境中,进程有三种正常终止方式及两种异常终止方式。

正常终止方式包括:在main函数内执行return语句,这等效于调用exit函数;直接调用exit函数,ANSI C定义的exit函数操作包括调用各终止处理程序,关闭所有标准I/O流等。然而,ANSI C并不处理文件描述符、多进程及作业控制,所以对UNIX系统而言,这一定义是不完整的;调用_exit系统调用函数,此函数由exit调用,处理UNIX特定的细节,_exit由POSIX.1说明。

异常终止方式包括:调用abort函数,它产生SIGABRT信号,是异常终止的一种特例;当进程接收到某个信号时,进程本身、其他进程和内核都能产生信号。例如,进程越出其地址空间访问存储单元,或除以0,内核就会为该进程产生相应信号。

不管进程如何终止,最终都会执行内核中的同一段代码,关闭所有打开描述符,释放使用的存储器等。终止进程需通知父进程其终止方式,exit和_exit依靠传递给它们的退出状态参数实现。在异常终止情况下,内核产生一个指示其异常终止原因的终止状态。父进程通过wait或waitpid函数取得终止状态。

如果父进程在子进程之前终止,子进程的父进程更改为init进程。内核检查所有活动进程,若某进程为终止进程的子进程,则其父进程ID更改为1(init进程的ID),保证每个进程有父进程。若子进程在父进程之前终止,内核为每个终止子进程保存一定量的信息,父进程调用wait或waitpid时可获得相关信息,包括进程ID、终止状态和使用的CPU时间总量。

相关资源链接:

  1. 终止进程或进程组

  2. 创建和终止进程

  3. linux查看进程和终止进程

  4. Dos下终止进程的方法

用户评论