第3章-进程管理与调度详解
合集下载
第三章进程管理 - PowerPoint 演示文稿

浙江教育学院 信息学院
3.6.3用P,V原语操作实现同步
解:由题意可知,进程PA调用的过程deposit(data)和进 程PB调用的过程remove(data)必须同步执行,因为过 程deposit(data)的执行结果是过程remove(data)的执 行条件,而当缓冲队列全部装满数据时,remove(data) 的执行结果又是deposit(data)的执行条件,满足同步 定义。从而,我们按以下三步描述过程deposit(data) 和remove(data): 1)设Bufempty为进程PA的私用信号量,Buffull为进 程PB的私用信号量; 2)令Bufempty的初始值为n(n为缓冲队列的缓冲区个 数),Buffull的初始值为0, 3)描述:
浙江教育学院 信息学院
信号量和P,V原语
P原语
申请资源的进程如果s<0,进 程自我阻塞,因此进程放弃 了CPU。 图3.12P原语操作功能
浙江教育学院 信息学院
信号量和P,V原语
V原语
释放资源的进程A,如果 有进程B在等待资源,A要 唤醒B进程后再返回原进 程程序执行,如果原进程 程序执行完毕,则把CPU 交给进程调度程序。
浙江教育学院 信息学院
3.7进程通信
进程通信(IPC, Inter-Process Communication)
在进程间传送数据。 操作系统可以被看作是各种进程组成的,例如用户 进程、计算进程、打印进程等。这些进程都具有各 自独立的功能,且大多数被外部需要而启动执行。 一般来说,进程间的通信根据通信的内容可以划分 为两种:
3.6同步的概念
并发进程同时访问公有数据和公有变量引出了 互斥的概念.现在研究进程的合作关系.
U035计算机操作系统教程_第四版_(张尧学著)_清华大学出版社_第3章

3.1.2 进程的定义 进程的概念是60年代初期,首先在MIT 的 Multics系 统和IBM 的 TSS/360系统中引用的。从那以来,人 们对进程下过许多各式各样的定义。 (1) 进程是可以并行执行的计算部分(S.E.Madnick, J.T.Donovan); (2) 进程是一个独立的可以调度的活动(E.Cohen, D.Jofferson); (3) 进程是一抽象实体,当它执行某个任务时,将要 分配和释放各种资源(P.Denning); (4) 行为的规则叫程序,程序在处理机上执行时的活 动称为进程(E.W.Dijkstra);
W(Si)={b1 b2 … bn},bj(j=1,…,n) 是语句Si在执行期间必须对其进行修改、访问的变量; 如果对于语句S1和S2,有 ① R(S1)∩ W(S2)={∮}, ② W(S1)∩ R(S2)={∮}, ③ W(S1)∩ W(S2)={∮} 同时成立,则语句S1和S2是 可以并发执行的。
(1) 进程是一个动态概念,而程序则是一个静态概念。程序是 指令的有序集合,没有任何执行的含义。而进程则强调执 行过程,它动态地被创建,并被调度执行后消亡。 (2) 进程具有并行特征,而程序没有。由进程的定义可知,进 程具有并行特征的两个方面,即独立性和异步性。也就是 说,在不考虑资源共享的情况下,各进程的执行是独立的, 执行速度是异步的。显然,由于程序不反映执行过程,所 以不具有并行特征。 (3) 进程是竞争计算机系统资源的基本单位,从而其并行性受 到系统自己的制约。这里,制约就是对进程独立性和异步 性的限制。 (4) 不同的进程可以包含同一程序,只要该程序所对应的数据 集不同。
第3章 进程管理
3.1 进程的概念 3.2 进程的描述 3.3 进程状态及其转换 3.4 进程控制 3.5 进程互斥 3.6 进程同步 3.7 进程通信 3.8 死锁问题 3.9 线程 本章小结 习题
第3章4进程调度

调度方式采用非抢占方式。
进程
忽视了进程等待时间;不利于长进程,会出现饥饿现象。
例
A B C D
2019/3/14
进入时间
估计运行 开始时间 时间 (分钟) 120 8:00 8:00 50 8:50 10:30 10 9:00 10:00 20 9:50 10:10 进程平均周转时间 进程平均周转时间TT == 95 进程带权平均周转时间 进程带权平均周转时间 WW = 3.25 =
与时间片大小有关的因素
系统响应时间(进程等待时间) 就绪进程个数(就绪队列长度) CPU能力(运算速度)
轮换时间 (切换时间)
2019/3/14 22
轮转调度算法示例
作业情况 进程名 到达时间 时间片 RR q=1 RR 服务时间 A 0 4 12 12 3 4 B 1 3 10 9 3 7 C 2 4 16 14 11 D 3 2 11 8 13 E 4 4 17 13 17 11.2 3.25 3.35 平均
处理机调度的三个层次(类型)
2019/3/14
高级调度(作业调度) 中级调度 ( 交换调度 ) 低级调度(进程调度)
2ቤተ መጻሕፍቲ ባይዱ
高级调度
什么是高级调度
也称为作业调度(长程调度、宏观调度、接纳调 度),一般在批处理系统中有作业调度。 按一定原则对外存输入井上的作业进行调度, 并建立进程PCB。作业一旦被系统收容,就变成 进程或进程组。
2019/3/14 12
先来先服务调度算法FCFS
优点
调度算法
实现简单 算法只顾及进程的等候时间,没考虑进程要求服务时间的长短; 调度方式采用非抢占方式。 不利于短进程而优待了长进程; 例 没考虑进程的优先级。
第3章 进程控制

UNIX 进 程 描 述
§5 什么是进程(Process、Task)
四 、
例2:当进行中断处理和系统调用时,都将涉及进程上下 文的保存和恢复,此时系统所保存和恢复的是 的上 下文。 A.系统进程 C.不同进程 B.同一个进程 D.其它进程 。
UNIX 进 程 描 述
例3:进程上下文包括如下各项,除了 A.用户打开文件表 C.中断向量 B.PCB D.核心栈
§4 Bernstein条件
例2:已知求值公式(A2+3B)/(B+5A),若A、B已赋值,试画出 该公式求值过程的前趋图。 分析: S1: x1=A*A S2: x2=3*B S3: x3=5*A S4: x4=x1+x2
S5: x5=B+x3 S6: x6=x4/x5
§5 什么是进程(Process、Task)
PCB
§5 什么是进程(Process、Task)
三 、 进 程 控 制 块
例1:在操作系统中, 位。 A. 程序 B.进程 是竞争和分配资源的基本单 C.作业 D.用户 的,
例2(大连理工)进程与程序的主要区别在于进程是 而程序是 的。一个程序可对应 个进程。
进程是动态的概念,而程序是静态的概念。 进程可执行一或多个程序,程序可为多个进程并发执行。 进程是暂存的,而程序可作为资料长期保存。
§2 前趋图
前趋图是描述并发序列时序关系的有向无循环图。 二、前驱(偏序)关系→ 3.前趋图中,没有前趋的结点称作初始结点,没 有后继的结点称作终止结点。
§3 程序并发执行
eg:有一组计算程序。
多道并行
§3 程序并发执行
一、失去连续性,呈现间断性。
多道并行
§3 程序并发执行
chap进程管理

3) 初始化进程控制块
初始化标识符信息(填入)、处理机的状态信息(指令指 针, 栈指针)和控制信息(状态,优先级...)
1) 设置相应的链接
如: 把新进程加到就绪队列的链表中
3.25
计算机操作系统
第三章 进程管理
二、 进程的终止(撤消) 1. 进程何时终止? 1) 正常结束 批处理系统中,进程已运行完成遇到 Halt 指令 分时系统中, 用户退出登录 2) 异常结束 本进程发生出错和故障事件 存储区越界、保护性错(如:写只读文件)、特权 指令错、非法指令(如:程序错转到数据区)、算 术运算错、运行超时、等待超过时、I/O 失败、 3) 外界干预 操作系统干预、父进程请求、父进程终止
N的值
1
1
1
3.9
1
2
2
计算机操作系统
第三章 进程管理
资源共享 系统中硬件和软件资源不再为单个用户程序所独占,而
由几个用户程序共同使用。 程序并发执行和资源共享是现代操作系统的基本特性,它 们之间互为依存。 并发的特征 1.程序结果的不可再现性:并发程序执行的结果与其执行 的相对速度有关,是不确定的 2.在并发环境下程序的执行是间断性的:执行——停—— 执行 3.程序和机器执行程序的活动不再一一对应 4.并发程序间的相互制约
End;
end;
int N=1; 是AA和BB都能访问的外部公共变量,这两 个程序在并发执行, N:=N+1;可分解为3条机器指令, 它们的执行顺序不同有可能导致N的值结果不同。
3.8
计算机操作系统
第三章 进程管理
(a) 顺序 执行
时间 程序A
程序B
T0 A←N 1
T0 A←N
T1 A←A+1 1
第三章进程管理2(PCB)

四、 进程调度的时机
当一个进程运行完毕,或由于某种错误而终止运行
当一个进程在运行中处于等待状态(等待I/O)
分时系统中时间片到
当有一个优先级更高的进程就绪(可抢占式),例 如:新创建一个进程,一个等待进程变成就绪 在进程通信中,执行中的进程执行了某种原语操作 (P操作,阻塞原语,唤醒原语)
执行指针 就绪索引表
PCB1 PCB2 PCB3 PCB4
就绪表指针 阻塞索引表 阻塞表指针
PCB5
PCB6 PCB7
按索引方式组织PCB
六、进程的创建和撤消
由原语实现:一般地,把系统状态下执行的某些 具有特定功能的程序段称为原语 和进程控制有关的原语有:创建原语、撤销原语、 阻塞原语、唤醒原语
等待发生的事件。
2、 PCB的组织方式
常用的组织方式有两种:链接方式、索引方式。
(1) 链接方式: 具有相同状态的PCB,用其中的链接字,链接成一个 队列。这样就可以形成就绪队列、若干个阻塞队 列和空白队列等。对其中的就绪队列常按照进程 优先权的大小排列,把优先权高的进程的PCB排在 队列前面。
轮转调度
创建
时间片长度的确定
时间片长度变化的影响
• 过长->退化为FCFS算法,进程在一个时间片内都 执行完,响应时间长。 • 过短->用户的一次请求需要多个时间片才能处理 完,上下文切换次数增加,响应时间长。
对响应时间的要求:
• T(响应时间)=N(进程数目)*q(时间片)
时间片长度的影响因素:
• 就绪进程的数目:数目越多,时间片越小(当响应 时间一定时) • 系统的处理能力:应当使用户输入通常在一个时间 片内能处理完,否则使响应时间,平均周转时间和 平均带权周转时间延长。
精品文档-计算机操作系统教程(第二版)(徐甲同)-第3章

第3章 进程管理 图 3.1 程序的顺序执行
第3章 进程管理
显然,程序的顺序执行具有如下特性: (1) 当顺序程序在处理机上执行时,处理机严格地顺序执行 程序规定的动作。每个动作都必须在前一动作结束后才能开始。 除了人为的干预造成机器暂时停顿外,前一动作的结束就意味着 后一动作的开始。程序和机器执行程序的活动严格一一对应。 (2) 一个程序在机器中执行时,它独占全机资源,除了初始 状态外,只有程序本身规定的动作才能改变这些资源的状态。
第3章 进程管理
2. 程序和机器执行程序的活动不再一一对应 程序和机器执行程序的活动是两个概念。程序是指令的有序 集合,是静态的概念;而机器执行程序的活动是指指令序列在处 理机上的执行过程,或处理机按照程序执行指令序列的过程。通 常把机器执行程序的活动称为“计算”。显然,“计算”是一个 动态的概念。
程序和数据集合两部分是进程存在的物质基础,即进程的实 体。
第3章 进程管理
进程控制块(或任务控制块)包含了进程的描述信息和控制信 息,是进程的动态特性的集中反映。不同的操作系统其进程控制 块的内容及信息量也不同。在小型机、微型机等比较简单的操作 系统中,PCB只占用十几个单元;而在一些大、中型机的操作系 统中,PCB的内容可能占用几十甚至上百个单元。
第3章 进程管理
直接制约关系通常是在彼此之间有逻辑关系的两个并发执行 的程序之间发生的。例如,一个正在执行的程序段需要另一程序 段的计算结果,只有当另一程序段在某一时刻送来计算结果时, 正在执行的程序段才能继续执行下去。否则它就一直等待,无法 执行。两个并发程序段以间接方式发生制约关系是由竞争使用同 一资源引起的。得到资源的程序段可以继续执行,得不到资源的 程序段就只好暂停等待。
第3章 进程管理
操作系统的进程管理

二、进程的创建和管理
1、加载程序:操作系统从文件系统或网络位置加载程序到内存中。 2、创建进程:操作系统为新加载的程序创建一个新的进程。
二、进程的创建和管理
3、分配资源:操作系统为新进程分配必要的资源,如内存空间,寄存器和文 件描述符等。
4、初始化寄存器:操作系统的调度器初始化寄存器以准备开始执行。
七、死锁问题
总结来说,操作系统的进程管理是计算机系统运行的关键部分。它负责创建、 调度和终止进程,确保所有的程序都能得到执行,同时处理各种可能的并发问题 以确保系统的稳定和高效运行。
参考内容
内容摘要
操作系统是计算机系统的核心,负责管理和协调硬件和软件资源的运行。其 中,进程管理是操作系统中的一个重要部分,它负责创建,调度和终止进程。
六、进程同步和通信
六、进程同步和通信
在多道程序环境下,需要解决的一个关键问题是如何协调并发执行的各道程 序的活动,这称为进程同步。在并发系统中,各个进程并行执行并且可能会相互 影响。例如,两个进程可能共享一个文件或者一个数据库,因此需要某种机制来 同步对共享资源的访问。此外,进程间还需要一种通信机制来交换信息。信号量 (semaphore)和管程(monitor)是两种常用的同步和通信方法。
操作系统的进程管理
目录
01 一、进程的基本概念
03 三、进程调度
02
二、进程的创建和管 理
04 四、进程的终止
目录
05 五、进程状态和转换
07 七、死锁问题
06 六、进程同步和通信 08 参考内容
内容摘要
操作系统是计算机系统的核心,负责管理和协调硬件和软件资源的运行。其 中,进程管理是操作系统中的一个重要部分,它负责创建,调度和终止进程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
操作系统讲义
孙清
房地产E网 西安财经学院
LOGO
Contents
课程内容安排
第一章 第二章 第三章 第四章 第五章 第六章 第七章
操作系统概述 系统启动及用户界面 进程管理与调度 进程同步 存储器管理 文件管理 设备管理
房地产E网 西安财经学院
管态(核心态):系统态 目态:用户态
状态之间的转换
• 目态→管态:唯一途径是中断 • 管态→目态:设置程序状态字PSW
房地产E网 西安财经学院
LOGO
进程控制块(PCB)
PCB:用于存放管理进程运行的必要信息。 PCB处于核心段,用户不能直接访问和修改PCB。 OS把所有PCB组织在一起,放在固定的内存区域, 构成PCB表。
房地产E网 西安财经学院
LOGO
进程的状态迁移
房地产E网 西安财经学院
LOGO
3.2 进程的控制
进程的控制使用原语实现。
原语(primitive)是在管态下运行,执行期间不 允许被中断。
原语的实现方法是以系统调用方式提供原语接口, 采用中断屏蔽方式来实现原语功能。
进程的控制原语包括:
创建、撤销、阻塞、唤醒、挂起、激活。
房地产E网 西安财经学院
LOGO
1、进程的创建
父进程创建子进程时,系统从空PCB池中取一个 空PCB,并在进程表中增加一项; 为新进程分配地址空间,传递环境变量,构造共 享地址空间; 查找辅存,将新进程正文装到内存;
LOGO
4、进程的唤醒 当进程所等待的事件发生,由系统进程或 事件发生进程调用唤醒原语。
将被唤醒的进程置为就绪态,并将其PCB 加入相关的就绪队列。
房地产E网 西安财经学院
LOGO
5、进程的挂起
主要用于中级调度,可以对活动等待态或活动就 绪态的进程挂起到静止等待态或静止就绪态。 将被挂起进程的非常驻部分交换到磁盘对换区。
PCB表的大小决定了系统可同时运行程序的最大 数目---道数。
进程的静态组成包括进程的程序、数据、系统/用 户栈和PCB,这些统称为进程影像。
房地产E网 西安财经学院
LOGO
PCB包含四部分内容
进程描述信息:pid,gid 进程控制信息:状态、优先级、运行统计信息、 同步和通信、代码执行入口地址、程序的外存地 址。。。 所拥有的资源和使用情况:占用内存大小及其管 理用数据结构指针、虚拟地址空间、共享数据段、 输入/输出设备、数据缓冲区、打开文件列表等。 CPU现场保护信息:寄存器值
房地产E网 西安财经学院
LOGO
2、进程的撤销(或终止)
撤销进程的情况:
正常终止; 由于错误导致非正常终止; 由祖先进程的要求而撤销。
调用exit()可终止进程。
找到该进程的PCB; 将该进程拥有的资源归还给父进程或操作系统; 若该进程拥有子进程,应先撤销它的所有子孙进程; 撤销进程出队列,归还它的PCB。
copy_process()
重点 理解!
verify_area():进程内存区域验证 copy_mem():内存分配函数
写时复制机制(copy on write):
在fork()执行过程中,新进程将与父进程共同使用父进 程已有的代码和数据内存页面。 只有当以后执行过程中,如果其中一个进程以写方式 访问内存时,才会在写操作前被复制到新申请的内存 页面中。
LOGO
创建进程实例
#include <stdio.h> main() { int p1,p2,i; while ((p1=fork())==-1) ; if (p1 ==0) for(i=0;i<10;i++) printf(“daughter %d\n”,i); else { while ((p2=fork())==-1) ; if (p2 ==0) for(i=0;i<10;i++) printf (“son %d\n”,i); else for(i=0;i<10;i++) printf(“parent %d\n”,i); }
房地产E网 西安财经学院
LOGO
6、进程的激活 激活是挂起的逆过程 将被挂起进程的非常驻部分交换到内存,并修改状 态。
房地产E网 西安财经学院
LOGO
源代码阅读理解----fork.c fork()调用以下模块:
find_empty_process()
房地产E行态进入等待态,由于等待某个事件(如, I/O存取)的发生。 停止进程执行,保存现场信息到PSW; 修改PCB的有关内容,将进程由执行态改为等待 态;
将PCB加入等待态队列。
房地产E网 西安财经学院
房地产E网 西安财经学院
LOGO
copy_process()
用于创建并复制进程的代码段和数据段以及环境。 为进程申请一页内存放PCB,并复制当前进程的PCB作为 新进程的PCB模板。 随后对数据进行修改,把当前进程设为父进程,复位新进 程各统计值。 设置新进程的代码段和数据段的基址和段限长, 复制当前进程内存分页管理的页目录项和页表项。 Linux0.11版,所有进程共用一个页目录表,新进程的页 表则需要另申请一页内存。 在GDT中设置新进程的TSS和LDT 将新进程设置成可运行状态,并向当前进程返回新进程号。
LOGO
第三章 进程管理与调度
进程的状态迁移及PCB 进程的控制 处理机调度 线程及其基本概念
Linux中相关源代码分析
LOGO
1
2 3 4 5
房地产E网 西安财经学院
3.1 进程的状态迁移及PCB
进程的定义 运行中的程序,有生命周期,占用系统资源,包 括:程序、数据、PCB(进程控制块) CPU处理机的工作状态
初始化PCB,为新进程分配PID,初始化PSW;
加入就绪队列。
房地产E网 西安财经学院
LOGO
用fork()系统调用创建子进程:
pid=fork() fork()的返回值:
0 在子进程中; >0 在父进程中; -1 创建失败。
房地产E网 西安财经学院
孙清
房地产E网 西安财经学院
LOGO
Contents
课程内容安排
第一章 第二章 第三章 第四章 第五章 第六章 第七章
操作系统概述 系统启动及用户界面 进程管理与调度 进程同步 存储器管理 文件管理 设备管理
房地产E网 西安财经学院
管态(核心态):系统态 目态:用户态
状态之间的转换
• 目态→管态:唯一途径是中断 • 管态→目态:设置程序状态字PSW
房地产E网 西安财经学院
LOGO
进程控制块(PCB)
PCB:用于存放管理进程运行的必要信息。 PCB处于核心段,用户不能直接访问和修改PCB。 OS把所有PCB组织在一起,放在固定的内存区域, 构成PCB表。
房地产E网 西安财经学院
LOGO
进程的状态迁移
房地产E网 西安财经学院
LOGO
3.2 进程的控制
进程的控制使用原语实现。
原语(primitive)是在管态下运行,执行期间不 允许被中断。
原语的实现方法是以系统调用方式提供原语接口, 采用中断屏蔽方式来实现原语功能。
进程的控制原语包括:
创建、撤销、阻塞、唤醒、挂起、激活。
房地产E网 西安财经学院
LOGO
1、进程的创建
父进程创建子进程时,系统从空PCB池中取一个 空PCB,并在进程表中增加一项; 为新进程分配地址空间,传递环境变量,构造共 享地址空间; 查找辅存,将新进程正文装到内存;
LOGO
4、进程的唤醒 当进程所等待的事件发生,由系统进程或 事件发生进程调用唤醒原语。
将被唤醒的进程置为就绪态,并将其PCB 加入相关的就绪队列。
房地产E网 西安财经学院
LOGO
5、进程的挂起
主要用于中级调度,可以对活动等待态或活动就 绪态的进程挂起到静止等待态或静止就绪态。 将被挂起进程的非常驻部分交换到磁盘对换区。
PCB表的大小决定了系统可同时运行程序的最大 数目---道数。
进程的静态组成包括进程的程序、数据、系统/用 户栈和PCB,这些统称为进程影像。
房地产E网 西安财经学院
LOGO
PCB包含四部分内容
进程描述信息:pid,gid 进程控制信息:状态、优先级、运行统计信息、 同步和通信、代码执行入口地址、程序的外存地 址。。。 所拥有的资源和使用情况:占用内存大小及其管 理用数据结构指针、虚拟地址空间、共享数据段、 输入/输出设备、数据缓冲区、打开文件列表等。 CPU现场保护信息:寄存器值
房地产E网 西安财经学院
LOGO
2、进程的撤销(或终止)
撤销进程的情况:
正常终止; 由于错误导致非正常终止; 由祖先进程的要求而撤销。
调用exit()可终止进程。
找到该进程的PCB; 将该进程拥有的资源归还给父进程或操作系统; 若该进程拥有子进程,应先撤销它的所有子孙进程; 撤销进程出队列,归还它的PCB。
copy_process()
重点 理解!
verify_area():进程内存区域验证 copy_mem():内存分配函数
写时复制机制(copy on write):
在fork()执行过程中,新进程将与父进程共同使用父进 程已有的代码和数据内存页面。 只有当以后执行过程中,如果其中一个进程以写方式 访问内存时,才会在写操作前被复制到新申请的内存 页面中。
LOGO
创建进程实例
#include <stdio.h> main() { int p1,p2,i; while ((p1=fork())==-1) ; if (p1 ==0) for(i=0;i<10;i++) printf(“daughter %d\n”,i); else { while ((p2=fork())==-1) ; if (p2 ==0) for(i=0;i<10;i++) printf (“son %d\n”,i); else for(i=0;i<10;i++) printf(“parent %d\n”,i); }
房地产E网 西安财经学院
LOGO
6、进程的激活 激活是挂起的逆过程 将被挂起进程的非常驻部分交换到内存,并修改状 态。
房地产E网 西安财经学院
LOGO
源代码阅读理解----fork.c fork()调用以下模块:
find_empty_process()
房地产E行态进入等待态,由于等待某个事件(如, I/O存取)的发生。 停止进程执行,保存现场信息到PSW; 修改PCB的有关内容,将进程由执行态改为等待 态;
将PCB加入等待态队列。
房地产E网 西安财经学院
房地产E网 西安财经学院
LOGO
copy_process()
用于创建并复制进程的代码段和数据段以及环境。 为进程申请一页内存放PCB,并复制当前进程的PCB作为 新进程的PCB模板。 随后对数据进行修改,把当前进程设为父进程,复位新进 程各统计值。 设置新进程的代码段和数据段的基址和段限长, 复制当前进程内存分页管理的页目录项和页表项。 Linux0.11版,所有进程共用一个页目录表,新进程的页 表则需要另申请一页内存。 在GDT中设置新进程的TSS和LDT 将新进程设置成可运行状态,并向当前进程返回新进程号。
LOGO
第三章 进程管理与调度
进程的状态迁移及PCB 进程的控制 处理机调度 线程及其基本概念
Linux中相关源代码分析
LOGO
1
2 3 4 5
房地产E网 西安财经学院
3.1 进程的状态迁移及PCB
进程的定义 运行中的程序,有生命周期,占用系统资源,包 括:程序、数据、PCB(进程控制块) CPU处理机的工作状态
初始化PCB,为新进程分配PID,初始化PSW;
加入就绪队列。
房地产E网 西安财经学院
LOGO
用fork()系统调用创建子进程:
pid=fork() fork()的返回值:
0 在子进程中; >0 在父进程中; -1 创建失败。
房地产E网 西安财经学院