文件名称:创建进程原语的工作大致描述为-杭电操作系统ppt
文件大小:1.41MB
文件格式:PPT
更新时间:2024-05-12 12:43:43
操作系统
2.创建进程原语的工作大致描述为: procedure Create (n, S0, k0, M0, R0) begin / 请求分配PCB空间 i : = Get Internal Name(n); /*分配必要的资源,初始化PCB Id(i) : =n; Priority(i) : = k0; Cpustate(i) : = S0; Main Store(i) : = M0; Resources(i) : = R0; Status(i) : = Readys Parent(i) : = CALLER / 插入就绪队列 Insert(RL,i); end 各系统的建立进程原语就是供进程调用的用以建立子进程使用的。该原语的主要工作是为被建立进程建立起一个进程控制块PCB,并填入相应的初始值。其主要操作过程是先向系统的PCB空间申请分给一个空闲的PCB,而后根据父进程所提供的参数,将子进程的PCB表目初始化,最后返回一个进程内部名。参数为:进程名(外部标识符)n;处理机的初始状态(或进程运行现场的初始值,主要指名寄存器和程序状态字初始值)S0;优先数k0;父进程分给子进程的初始主存区M0和其它资源清单(多种资源表)R0等。 程序中的第语句是调用查找进程名过程“ Get Internal Name ”,参数为进程外部名n。该过程查找PCB集合,如已有此同样外部名进程则返回出错消息,否则返回一个空闲的PCB内部标识号i。 第语句是把进程外部名n登记到第i个PCB的相应外部名表目中。 语句是往PCB中登记优先数。 语句登记现场状态初始值 S0到相应的现场保留区中或Cpustate中。 ,分别记入主存和资源的初始占有情况,这是由父进程将自己的一部分资源分给子进程的。 是把进程初始状态置为“ 挂起就绪 ”。 语句中CALLER代表调用本过程的父进程之内部标识号,将它记入子进程PCB的父进程名这一栏。 语句也是调用插入过程Insert,其中RL表示就绪队列,即把进程i插入就绪队列。