进程控制块PCB以及进程控制

PCB的作用:
OS为每个进程专门定义了一个数据结构,即PCB。它记录了OS所需的,用于描述进程当前情况以及管理进程运行状态的全部信息。
<a>作为独立运行基本单位的标志,当一个程序配置了PCB后,它就已是能在多道程序环境下独立运行的,合法的单位了,即具有了取得OS服务的权利。系统通过PCB来感知进程的存在。
<b>实现间断性运行方式,在多道程序环境下,系统是采用停停走走方式,当进程因阻塞而停止运行时,他必须保留自己运行时的CPU现场信息,因为其再次被调度运行时,还需要恢复CPU现场信息,有了PCB后,系统就可以将CPU现场信息保存在被中断进程的PCB中。
<c>提供进程管理所需要的信息,OS总是根据PCB来实施对进程的控制和管理的。
<d>提供进程调度所需要的信息。只有处于就绪状态的进程才能被调度,而在PCB中就提供了进程所处状态的信息。
<e>实现与其它进程的同步和通信,PCB中还有用于实现进程通信的区域或通信队列指针。
一个进程实体由PCB,程序段和数据段组成,程序段包含程序指令,数据段包含运行过程中产生的各种数据,进程是动态的,进程实体是静态的,它反映了进程在某一时刻的状态。
09进程控制:进程控制是进程管理中最基本的功能,其负责创建新进程,终止已完成的进程,将因发生异常情况而无法继续运行的进程h置于阻塞状态转换运行中进程得状态等,进程控制一般是由OS内核中的原语实现的。
/a/进程的创建:
在OS中,允许一个进程创建另一个进程,通常把创建进程的进程称为父进程,被创建的进程称为子进程,子进程可以继续创建自己的子进程,由此便形成了进程的层次结构。子进程可以继承父进程所拥有的资源,当子进程被撤销时,应将其从父进程那里获得的资源归还给父进程,此外,在撤销父进程时,也必须撤销其所有的子进程。
/b/进程创建的条件:
1.用户登录。2.作业调度:在多道批处理系统中,当作业调度程序按一定的算法调度到某个作业时,便会将它们装入内存,为他们创建进程,并把他们插入就绪队列。
3.提供服务。4.应用请求,这类事件需要用户进程自己创建新进程,以使新进程和创建进程并发执行的方式完成任务。

/c/进程的创建:
当系统中出现创建新进程的请求时,OS便会调用创建原语。然后首先,申请空白PCB,然后,为进程分配其运行所需的资源,包括各种物理和逻辑资源。然后,初始化PCB,最后,将新进程插入就绪队列。
/d/进程的终止:
正常结束:表示进程的任务已经完成,准备退出运行。
异常结束:程序在运行时,发生了某种异常事件,如越界错,保护错,指令错,特权指令错等。
外界干预:进程应外界得请求而终止运行。
终止进程的过程:OS调用进程终止原语,然后根据被终止进程的标识符,从PCB集合中检索出该进程的PCB,并从该进程的PCB中读出该进程的状态。然后若被终止进程正处于执行状态,则立即终止该进程的PCB,并置调度标志为真,以指示该进程被终止后应重新进行调度。然后若该进程还有子孙进程,则应该终止其所有子孙进程。最后将被终止的进程所拥有的全部资源,归还给父进程或系统,然后将被终止进程的PCB从所在队列中移出,等待其他程序来搜集信息。
<f>进程的阻塞与唤醒:
1.引起进程阻塞与唤醒的条件:
向系统请求共享资源失败:进程在向系统请求共享资源时,由于系统已无足够的资源分配给他,此时进程会因不能继续运行而将自身状态转换为阻塞状态。
等待某种操作完成:当进程启动某种操作后,如果该进程必须在该操作完成在之后才能继续执行,,则应将进程阻塞起来,以等该操作完成。
新数据尚未到达:只要所需数据尚未到达,进程便会阻塞。
等待新任务的到达。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值