文档详情

3.3进程控制与调度.ppt

发布:2017-02-01约5.43千字共36页下载文档
文本预览下载声明
4. 线程的引入 引入原因: 共享内存多CPU计算机的发展,需要加速单个作业步的运行速度。 同一作业步内存在可并行成分的,例如天气预报程序。 线程的概念: 在一个进程中可以包含多个可以并发(并行)执行的部分,这些可执行的部分就称为线程。 线程引入后的变化: 进程只作为除CPU以外系统资源的分配单位;分配CPU以线程为单位。 线程 线程 线程 进程2 进程3 进程与线程关系图 进程1 进程与线程关系: 每个进程包含一个或多个线程; CPU的分配是以线程为单位,其他资源的分配是以进程为单位; 线程共享其进程的程序区和数据区; 每个线程有各自的运行环境。 5. 线程的结构 (1)传统进程与多线程进程模型 PCB 用户地址 空间 用户栈 核心栈 PCB 用户地址 空间 用户栈 核心栈 用户栈 核心栈 …. 传统进程模型 多线程进程模型 TCB TCB (2)线程控制块TCB(Thread Control Block) TCB类似于PCB,是标志线程存在的数据结构,包含系统 对于线程管理所需要的全部信息。TCB中主要信息如下: 线程标识信息。 线程运行状态(如运行、就绪等)和调度信息。 分别在用户态和核心态下使用的两个栈。用于保存现场信息、子程序局部变量等。 一个线程关联的私有存储区。 与进程描述信息的连接信息。进程内的每个线程都共享进程描述信息,如地址空间、使用资源等。 6. 线程与进程的比较 (1)调度。 线程是调度和分配的基本单位。进程是资源拥有的基本单位。在同一进程中,线程的切换不会引起进程的切换。但在不同进程中的线程切换时会引起进程切换。 (2)拥有资源 进程是拥有资源的一个独立单位,可以拥有自己的资源。线程自己不拥有资源,但它可以访问其隶属进程的资源。 (3)并发性 不仅进程之间可以并发执行,而且在一个进程中的多个线程之间,也可并发执行。 (4)系统开销 OS对进程的创建、撤销及切换的开销远大于对线程的操作。 作业 第1章 7,9 第2章 1 第3章 1,4,11 3.3 进程控制与调度 3.3.1 进程执行 1)特权模式:又称核心模式、系统模式或控制模式。是系统进程的执行模式。它允许执行特殊的指令和访问更大的地址空间。 2)非特权模式(用户模式 ):用户进程的执行模式。 3)划分两种模式的原因:保护OS和OS的数据表格不被可能出错的用户程序破坏。 4)两种模式的判别:处理机状态字PSW(PS)中有一位表示处理机的执行模式,该位可以通过特殊指令修改。 1 处理机执行模式(态) 2. 模式切换 一个用户进程既运行用户态程序,也在自陷、系统调用和中断时转换到核心态运行操作系统核心程序。 模式切换时机:操作系统在保护中断点的处理机现场时,要立即将处理机模式从用户模式置成核心态模式。 核心入口程序做得工作: 保护处理机现场; 将处理机模式转换成核心态; 根据中断级别设置中断屏蔽。 自陷指令与上述相似。 3.进程切换: 定义:指运行的进程因为自身或等事件或有更迫切需要运行的进程就绪而放弃处理机,而处理机转去运行其他进程。 与模式切换不同点: 模式切换: 1)处理机还是在同一进程中运行; 2)只需恢复进入内核时所保存的处理机现场,无需改变进程空间等环境信息。 进程切换: 1)处理机转入另一个进程运行; 2)当前进程空间和环境信息都改变了。 进程切换过程 保存处理机的上下文; 修改当前运行进程的进程控制块内容,包括进程状态; 选择另一个进程执行; 修改被调度进程的进程控制块,包括把其状态改变到运行态。 修改存储管理数据结构,如将系统当前运行进程页表指针改为指向选定的进程页表。 恢复被选进程上次切换出处理机时的处理机现场,按原保护的程序计数器值重置程序计数器,运行新选进程。 3.3.2 进程调度 特指选择进程占用处理机。 1.一般调度概念 1)什么是调度:操作系统管理了系统的有限资源,当有多个进程(或多个进程发出的请求)要使用这些资源时,因为资源的有限性,必须按照一定的原则选择进程(或请求)来占用资源。这就是调度。 2)调度目的:控制资源使用者的数量,选取资源使用者并许可占用资源或占用资源。 3)几个调度例子: 2.进程调度方式 1)非剥夺:一旦把处理机分配给某进程后,便让该进程一直运行下去,直到进程运行完成或因某种原因主动放弃。 优点:简单,系统开销小; 缺点:实时性差,短进程的周转时间增长。 例如:P1,P2,P3先后到达,分别需要20,4和2各单位时间; 如按P1,P2,P3顺序
显示全部
相似文档