进程
程序在并发环境中的执行过程。
进程的特性
1)结构特征 :有哪些部分组成
2)动态性:不同时刻下的进程是不同的,进程的信息在每时每刻改变。
3)并发性:多个进程在并发环境下交叉执行。
4)独立性:每个进程之间是独立的,不能被其他进程侵犯,只能由自己修改。
5)异步性:多个进程在并发环境下不确定执行开始时间,执行完成时间等。
★程序与进程的区别
- 进程是动态的,程序时静态的;
- 进程具有并发特征,程序没有;
- 进程是竞争系统资源的基本单位;
- 进程与程序的对应关系(多对多)。
一个进程可能包含多个程序,程序在不同时刻对应的进程是不同的。
进程的静态描述 - 进程控制块PCB
系统感知进程存在的唯一实体。 - 有关程序段
描述进程的功能。 - 数据结构集
进程执行时必不可少的工作区和操作对象。
进程的三种基本状态
1)就绪状态
当进程已经分配到除CPU以外的所有资源后,只要再获得CPU,便可立刻执行。
2)执行状态
进程获得CPU执行。
3)阻塞状态
正在执行的进程由于发生某事件而暂停无法继续执行时,便放弃处理机而处于暂停状态(执行I/O请求时)。
当进程申请到除CPU外所有资源后处于就绪状态,当CPU选中并执行当前进程时处于执行状态,当时间片到,无论是否执行完毕都将转到就绪状态。
处于执行状态的进程遇到I/O请求时,转到阻塞状态,处理完I/O请求回到就绪状态。
为什么会回到就绪而不是执行?
因为当进程处理I/O请求时,CPU去处理其他进程,当处理完I/O请求后不能立刻执行,需要等待CPU的下一次调度才能执行。 - 另外两种不主要状态
1)创建状态
当内存满而创建进程不成功时一直处于创建状态,申请创建PCB。
2)终止状态
当出现系统错误时,进程无法执行,但需要用到进程刚才执行的数据而不清除进程,处于终止状态。