计算机操作系统 第二章 进程管理 高校教师、高级项目经理 任铄 QQ:1530841586
第二章 进程管理 2.1 进程的基本概念 2.2 进程控制 2.3 进程同步 2.4 经典进程的同步问题 2.5 进程通信 2.6 线程
四、进程的特征与状态 在多道程序设计的环境下,为了描述程序在计算机系统内的执行情况,必须引入新的概念--进程。
1、进程的定义 进程:程序关于某个数据集合的一次执行过程。 行为的一个规则叫做程序,程序在处理机上执行时所发生的活动称为进程(Dijkstra) 。 进程(有时称为任务)是一个程序与其数据一道通过处理机的执行所发生的活动。(Alan.C. Shaw) 进程是执行中的程序。(Ken Thompson and Dennis Ritchie)
(5) 异步性 进程按各自独立的、不可预知的速度向前推进 2、进程的特征(与程序比较) (1) 结构特征 进程控制块(PCB) + 程序 + 数据 = 进程实体 (2) 动态性--最基本特征 进程:进程实体的一次执行过程,有生命周期。 程序:程序是一组有序指令的集合,是静态的概念。 独立运行,独立分配资源,独立接受调度的基本单位 (3) 并发性 (4) 独立性 (5) 异步性 进程按各自独立的、不可预知的速度向前推进
3、进程的三种基本状态 (1)就绪状态(Ready) 进程已获得除CPU之外的所有必需的资源,一旦得到CPU控制权,立即可以运行。 (2)运行状态(Running) 进程已获得运行所必需的资源,它正在处理机上执行。 (3)阻塞状态(Blocked) 正在执行的进程由于发生某事件而暂时无法执行时,便放弃处理机而处于暂停状态,称该进程处于阻塞状态或等待状态。
进程的三种基本状态以及各状态之间的转换 执 行 阻 塞 就 绪 时间片完 I/O请求 进程调度 I/O完成 就绪队列、阻塞队列
4、挂起状态 1) 引起挂起状态的原因: 终端用户的请求 父进程请求 负荷调节的需要 操作系统的需要
挂起 请求I/O 激活 释放 2) 进程状态的转换 引入挂起状态后,增加了挂起状态(静止状态)到非挂起状态(活动状态)的转换,或者相反。 2) 进程状态的转换 引入挂起状态后,增加了挂起状态(静止状态)到非挂起状态(活动状态)的转换,或者相反。 请求I/O 静止阻塞 活动阻塞 静止就绪 活动就绪 执行 挂起 激活 释放 readya readys blockeda blockeds
挂起 请求I/O 激活 释放 1.活动就绪静止就绪 静止阻塞 活动阻塞 静止就绪 活动就绪 执行 2.活动阻塞静止阻塞 3.静止就绪活动就绪 readya 4.静止阻塞活动阻塞 readys blockeda blockeds
五、进程控制块(PCB) 1. 进程控制块的作用 2. 进程控制块中的信息 3. 进程控制块的组织方式
1. 进程控制块的作用 存放进程管理和控制信息的数据结构称为进程控制块。它是进程管理和控制的最重要的数据结构,在创建时,建立PCB,并伴随进程运行的全过程,直到进程撤消而撤消。 PCB就像我们的户口。 PCB是进程存在的唯一标志。 系统的所有PCB组织成链表或队列,常驻内存的PCB区。
2. 进程控制块中的信息 1) 进程标示符 2) 处理机状态 3) 进程调度信息 4) 进程控制信息
1) 进程标示符 每个进程都必须有一个唯一的标识符 内部标示符 外部标示符 2) 处理机状态 主要由处理机的各种寄存器中的内容组成。处理机运行时的信息存放在寄存器中,当被中断时这些信息要存放在PCB中。
3) 进程调度信息 进程状态 进程优先级 进程调度所需的其他信息 事件 4) 进程控制信息 程序和数据的地址 进程通信和同步机制 资源清单 链接指针
3.进程控制块的组织方式 1) 链接方式 把具有同一状态的PCB用其中的链接字链接成一个队列。 就绪队列; 若干个阻塞队列;
4 3 8 7 9 10 … PCB的链接组织方式: 执行指针 就绪队列指针 阻塞队列指针 空闲队列指针 PCB1 PCB2 PCB3 PCB8 9 PCB7 7 PCB6 PCB5 8 PCB4 PCB3 3 PCB2 4 PCB1 就绪队列指针 阻塞队列指针 空闲队列指针 执行指针 PCB的链接组织方式:
2) 索引方式 系统根据所有进程的状态建立几张索引表,把各表的内存首地址记录在内存的专用单元中。 索引表的表目中记录了相应状态的某个PCB在PCB表中的地址。
PCB1 PCB2 PCB3 PCB4 PCB5 PCB6 PCB7 PCB的索引组织方式: 执行指针 就绪表指针 阻塞表指针 就绪索引表 阻塞索引表 PCB的索引组织方式:
可以通过下列渠道沟通联系: 1、QQ:1530841586 2、QQ群:207732988
小任老师的其它视频课程: 软考--信息系统项目管理师 软考--系统集成项目管理工程师 软考--网络规划设计师 软考--网络工程师 软考--系统分析师 ...... 输入 http://edu.51cto.com/lecturer/user_id-8371666.html 或 在http://edu.51cto.com/ 的搜索栏中输入“小任老师”