进程的操作有哪些?
进程是正在执行的程序,它不仅仅是程序代码(称为文本段),这个概念在所有操作系统下都适用,因为操作系统执行的所有任务都需要一个进程来执行。
进程在改变状态时执行。进程的状态由进程的当前活动定义。
每个进程可能处于以下任何一种状态:
新建 - 进程正在创建。
运行 - 在这个状态下,指令正在执行。
等待 - 进程处于等待状态,直到发生某个事件,例如I/O操作完成或接收信号。
就绪 - 进程正在等待分配给处理器。
终止 - 进程已完成执行。
重要的是要知道,在任何时刻,只有一个进程可以在任何处理器上运行。许多进程可能处于就绪和等待状态。
进程操作
对进程执行的两个主要操作如下:
进程创建
应该有四个主要事件导致进程创建。
系统初始化
启动操作系统时会创建许多进程。其中一些是:
前台进程 - 与用户交互并为用户执行工作的进程。
后台进程 - 也称为守护进程,与特定用户无关,而是具有某种特定功能。
运行进程执行进程创建系统调用
运行进程将发出系统调用以创建一个或多个新进程来帮助它完成其工作。
用户请求创建新进程
借助执行进程创建系统调用的现有进程创建新进程。
在UNIX中,用于创建新进程的系统调用是fork()。
在Windows中,CreateProcess(),它有10个参数来处理进程创建和将正确的程序加载到新进程中。
批处理作业的启动
用户将批处理作业提交给系统。
操作系统创建一个新进程并在其中运行输入队列中的下一个作业。
进程终止
进程将通过在UNIX中调用kill或在Windows中调用Terminate Process来终止。
进程终止的原因如下:
正常退出 - 大多数进程在完成工作后终止并执行系统调用以退出。
错误退出 - 第三类错误是由于程序错误造成的,例如执行非法指令、引用或除以零。
致命退出 - 当进程发现致命错误时,会发生进程终止。
被另一个进程杀死 - 一个进程执行系统调用来杀死另一个进程。
广告