进程:一个具有一定独立功能的程序关于某个数据集合的一次运行活动
进程与程序的区别:(1)进程是程序的执行,动态概念,程序是一组指令的有序集合,静态概念
(2)进程是有生命的,程序是永久的
(3)进程是程序的执行,进程包括程序,数据和记录进程状态信息的进程控制模块(PCB)
(4)一个程序可能对应多个进程(多个进程运行同一个编译程序),一个进程也可以包含多个程序(主程序执行过程中调用其他程序)
进程的状态:(1)运行状态(2)就绪状态(3)等待状态(阻塞状态)一个进程正在等待某件事发生(如等待某资源变为可用)而停止运行,这时即使把处理器分配给该进程也无法运行(4)新建状态(5)结束状态
进程状态变化图
现代操作系统依靠队列把相关进程链接起来,系统按进程优先级设立几个就绪进程队列,同一优先级进程在同一队列中,系统首先取最高优先级的队列队首进程占用处理机。当要等待事件时,将其挂到相应的事件等待队列,如果某件事发生,系统从相应等待队列中选取队首进程,并重新计算优先级,挂到就绪队列中。
进程的挂起和解除挂起的状态
当进程在主存时,它处于运行、就绪或者等待。当进程处于等待状态,进程所等待的事不可能很快到来,所以它没必要占着主存,为了使处于等待状态的进程释放主存空间,系统将其交换到辅存上,这时进程编处于挂起状态。这意味着处于挂起状态的进程没有占用任何主存。
挂起命令可由进程自己或者其他进程发起,而解除挂起命令只能由其他进程发出。挂起分为挂起就绪和挂起等待。
进程的描述和管理
通常操作系统用一个进程控制块(PCB)的数据结构来记录进程的属性信息,包括进程标识信息,处理器状态信息,进程控制信息。PCB标志着进程的存在。
原语:若干条指令组成,用来完成一定功能的一个过程,它们是原子操作,即不可分割,不允许中断、常驻内存。
常用的进程控制原语:(1)建立进程原语(2)挂起进程原语(3)解除挂起原语(4)撤销进程原语(5)改变进程优先数原语(6)进程结束等
操作系统与进程控制执行
操作系统是经由中断方式才得到对处理器的控制。
用户进程被中断或者调用操作系统功能,均引起处理器执行模式开关,即用户模式=内核模式
操作系统在执行过程中引起进程之间的开关。
操作系统的执行方式: