【文件属性】:
文件名称:创建进程原语的工作大致描述为-杭电操作系统ppt
文件大小:1.41MB
文件格式:PPT
更新时间:2021-04-22 18:57:03
操作系统
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插入就绪队列。