进程介绍
进程定义:一个具有独立功能的程序关于数据集合的一次可以并发执行的运行获得,是系统进行资源分配和调度的基本单位。
具有动态性和并发性,需要一定的资源(如CPU时间、内存、文件和I/O设备等)来完成任务
进程创建
1) 系统初始化
例如同人机交互并替他们完成工作的前台进程
例如停留在后台处理电子邮件、打印等活动的进程,称为守护进程
2) 正在允许的程序执行了创建进程的系统调用
3) 用户请求创建了一个新进程,在交互式系统中用户每键入一个命令或者点击一个图表,就可以启动一个程序,也就是创建了一个新的进程
4) 一个批处理作业的初始化
进程终止(exit/ExitProcess)
正常退出(自愿)
程序完成了工作,通知操作系统它的工作已经完成,在UNIX中该调用exit、在Windows中调用ExitProcess
出错退出(自愿)
通常是用户导致的错误,如输入错误的命令
严重错误(非自愿)
通常由于程序中的错误所致,如非法指令,引用不存在的内存等
被其他进程杀死(非自愿)
某个进程可以执行一个系统调用通知操作系统杀死其他进程,在UNIX中是kill,Windows中TerminateProcess
物理实体,又称为进程的静态描述,分别是程序、数据集合和进程控制块(Process Control Block,PCB),也称进程表
程序描述了进程所要完成的功能
数据集合描述了程序运行所需要的数据部分和工作区域
PCB包括进程的描述信息、控制信息和资源信息,是进程动态特性的集中反映。
进程存在的物质基础
进程存在的标志,与进程是一对一的关系
在UNIX中可以用PS列出正在允许的进程,Windows中可以用任务管理器