程序并发执行特征:不可再现性、间断性、通信性、独立性。
进程是一个可并发执行的程序,在一个数据集合上的一次运行过程。
进程特征:动态性、并发性、独立性、异步性、结构特征。
运行中的进程有三种基本状态:就绪状态、执行状态、阻塞状态。
PCB是进程存在的唯一标识。
PCB的组织方式有链接方式和索引方式。
进程控制的主要任务是创建和撤销进程,以及实现进程状态的转换。
内核的基本功能包括:1)中断处理;2)进程管理;3)资源管理中的基本操作。
进程创建原语执行过程:1)从PCB集合中获取空白PCB,以及PCB的内部标识符i;2)将创建原语的入参,包括进程调用者的内部标识符j,填入空白PCB;3)设置记账数据;4)置新进程为静止就绪状态,插入就绪队列和进程家族。
进程撤销原语执行过程:1)根据调用者提供的标识符n,到PCB集合中获得进程内部标识符i以及它的状态;2)若进程为执行状态,停止该进程,并重新调用调度进程;3)从i.sdata指向的队列中消去进程;4)撤销进程的所有“子孙”进程;5)将属于调用者的资源归还给调用者,对于进程自己的资源,消去进程的资源描述块;6)消去进程PCB。
进程挂起原语执行过程:1)根据标识符n到PCB集合获取内部标识符i和进程当前状态S;2)若S为执行状态,停止进程,将进程PCB拷贝到内存区a;3)若S为blockeda,将进程状态i.status置为blockeds,否则置为readys;4)若S为执行状态,重新调度。
进程激活原语执行过程:1)根据标识符n到PCB集合中获取内部标识符i以及当前状态i.status;2)若i.status为readys,将其修改为readya,否则修改为blockeda;3)若i.status为readya,重新调度;
进程阻塞原语执行过程:1)根据执行进程的指针获得其内部标识符i;2)由于进程为执行状态,应立即停止进程,修改i.status为blockeda,并将其插入该事件的等待队列中;3)重新进行调度。
进程唤醒原语执行过程:1)根据标识符n从PCB集合中获取其内部标识符i;2)将i移出阻塞队列,修改i.status为readya,插入就绪队列。
哎,看着看着就看不下去了!