哈工大操作系统课件3-10(全)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

哈尔滨工业大学远程教育课程
操作系统
第7 讲
主讲人:张英涛
进程的挂起

挂起原语:SUSPEND() 挂起原语的执行过程: 检查被挂起进程的状态,若处于活动就 绪状态,改为静止就绪;若处于活动阻塞 状态,则改为静止阻塞;若正在执行,则 转向调度程序重新调度。
有挂起状态的进程状态图
执行
活动 就绪
临界资源
一次仅允许一个进程使用的 共享资源 如:打印机、磁带机、表格
临界区
在每个 进程 中访 问临 界 资源的那段程序

进程必须互斥进入临界区
访问临界区的循环进程描述
repeat
进入区 临界区
检查临界资源是否能访问
退出区
剩余区
until false;
将临界区标志设为未访问
同步机制遵循的原则
空闲让进 ② 忙则等待 ③ 有限等待 ④ 让权等待
char class[10];
};
typedef struct Student STUDENT;
PCB中的信息
(1)进程标识符 (2)处理机状态 (3)进程调度信息 (4)进程控制信息
进程标识符
(1)内部标识符 进程唯一的数字编号,给OS使用。 (2)外部标识符 由字母、数字组成,给用户使用。
处理机状态

虚拟:通过某种技术把一个物理实 体变为若干个逻辑上的对应物。 如:虚拟处理器、虚拟内存等 异步性:进程以不可预知的速度向 前推进。

操作系统的五大功能
1.处理机管理(硬件)
资源管理
2.存储器管理(硬件)
3.设备管理(硬件)
4.文件管理(软件) 联机用户接口 5.用户接口 命令接口 程序接口 图形接口 脱机用户接口
进程A
资源
进程B

直接制约:
进程间由于合作而形成的相互制约。
进程A 进程B
进程的两大关系
互斥
同步
互斥
互斥是并发执行的 多个进程由于竞争同一 资源而产生的相互排斥 的关系
同步
同步是进程间共同 完成一项任务时直接 发生相互作用的关系
—— 同步进程间具有合作关 系
—— 在执行时间上必须按一 定的顺序协调进行
脱机用户接口


适用:批处理系统。又称批处理用户接口 组成:JCL+作业说明书+命令解释程序 JCL:作业控制语言 过程: 用户把对作业的控制用JCL写在 作业说明书上,命令解释程序按照作业说 明书解释并执行。
程序接口

目的:为用户程序访问系统资源而设置。 组成:一组系统调用 系统调用:一个系统调用是一个能完成特 定功能的子程序。
静止状态 挂起状态 活动状态 非挂起状态
有挂起状态的进程状态图
执行
调度 I/O请求
挂起 挂起 激活
活动 就绪
释放
静止 就绪
释 放
活动 阻塞
激活 挂起
静止 阻塞
进程控制块

进程结构
PCB
进程控制块
Process Control Block
程序段 数据段
进程控制块

PCB是OS中最重要的记录型结构。 OS用PCB对并发进程进行管理和控制。 PCB是进程存在的唯一标志。 PCB常驻内存。 OS专门开辟PCB区将所有的PCB组 织成若干个链表或队列。
哈尔滨工业大学远程教育课程
操作系统
第3 讲
主讲人:张英涛
操作系统基本特征
并发性(最重要特征) 共享性 虚拟性 异步性

并发性
并行性:多个事件在同一时刻发生 并发性:多个事件在同一时间间隔 内发生。 单处理机系统:宏观并发微观串行。 多处理机系统:可能有并行。

两种资源共享方式
(1)互斥共享方式 对临界资源的访问 临界资源,如: 打印机等硬件;栈、变量、表格等软 件 (2)同时访问方式 多个进程同时访问的资源,如:磁盘、重 入码写的文件。 操作系统两个最基本的特征:并发和共享
注意

BLOCK和WAKEUP是一队作用相反的原语。 如果在某进程中调用了阻塞原语,则必须 在与之相合作的另一进程中或其他相关的 进程中,安排唤醒原语,以能唤醒阻塞进 程;否则,被阻塞进程将会因不能被唤醒 而长久地处于阻塞状态,从而再无机会继 续运行。
谢谢收看
操作系统 第6讲
哈尔滨工业大学 张英涛
联机用户接口

适用:几乎所有计算机的操作系统中。 组成:命令+终端处理程序+命令解释程序 过程: 用户在键盘上输入命令; 终端处理程序接收命令并显示在屏幕上; 命令解释程序解释并执行该命令。
联机命令举例: UNIX: login; logout; DOS: copy; format; 命令解释程序:操作系统的最高层,如: MS-DOS: UNIX: Shell.
处理机中主要的寄存器: (1)通用寄存器 8-32个,暂存信息用 (2)指令计数器 要访问的下一条指令地址 (3)程序状态字PSW 条件码、执行方式、 中断屏蔽标志 (4)用户栈指针 用户进程拥有的系统栈, 存放过程和系统调用参数及调用地址。

进程调度信息
进程状态 进程优先级 与调度算法有关信息 事件 如:阻塞原因

谢谢收看
操作系统 第4讲
哈尔滨工业大学 张英涛
哈尔滨工业大学远程教育课程
操作系统
第5 讲
主讲人:张英涛
进程的基本状态转换
就绪
I/O完成 进程调度 时间片完
阻塞 I/O请求
执行
挂起状态
引入原因: (1)终端用户请求 (2)父进程请求 (3)负荷调节需要 (4)操作系统的需要

挂起引起的状态转换
结构体(structure)

for example:一个学生的自然信息:
出生 专 班 姓 性 名 别 年 月 日 业 级
结构体(structure)
定义一个结构:struct Student{ char name[20];
char sex[12];
DATE birthday;
char speciality[20];

信号量机制
城市公路 进程 楼宇 1
中心街道
小区 B
小区A
信号量

信号量是一种数据结构
信号量的值与相应资源的使用 情况有关

信号量的值仅由P、V操作改变
谢谢收看
操作系统 第 7 讲
哈尔滨工业大学 张英涛
哈尔滨工业大学远程教育课程
操作系统
第8讲
系统调用过程
用户程序 系统调 用 命令
系统功能
调用
返回
操作系统的结构设计
操作系统的发展阶段: 传 第一代:无结构OS 统 OS 第二代:模块化OS结构 结 构 第一代:分层式OS结构 第一代:为内核OS结构(20世纪90年代)

谢谢收看
操作系统 第3讲
哈尔滨工业大学 张英涛
哈尔滨工业大学远程教育课程
程序A
L1:
N:=N+1 goto L1
程序B L2: PRINT(N); N:=0;
goto L2
设共享变量N初值为5,则会产生3中执行结果: 6,6,0
5,0,1
5,6,0
进程的特征
结构特征 动态性 并发性 独立性 异步性

结构特征

进程结构
PCB
进程控制块
动态特征的集中反映 描述要完成的功能 操作对象及工作区

就绪状态


进程已经分配了除处理机以外的所有 必要资源,只要再获得处理机就能够 执行的状态。 这样的进程可能有多个,通常排成一 个队列,称就绪队列。
执行状态
已经获得CPU,正在运行。 在单处理机系统只有一个进程 处于执行状态。多处理机系统 则有多个处于执行状态。

阻塞状态
正在执行的进程由于发生某事件而 暂时无法继续执行时,放弃处理机 而进入的状态,又称等待状态。 引起阻塞的事件:请求I/O,申请 缓存。
由系统内核创建
由自己创建
进程的创建
原语CREAT()按下述步骤创建一个新进 程: (1) 申请空白PCB。 (2) 为新进程分配资源。 (3) 初始化进程控制块。 (4) 将新进程插入就绪队列 。

PCB的初始化
①初始化标识信息。 ②初始化处理机状态信息。 ③初始化处理机控制信息。
引 起 进 程 终 止 的 事 件
操作系统
第4 讲
主讲人:张英涛
进程管理
进程的基本概念 进程与程序的区别 进程控制 进程同步 进程通信 线程

进程的基本概念

程序在并发环境中的执行
过程 资源分配和独立运行的基

本单位
程序的顺序执行
一个有四条语句的程序段:
S1: S2: S3: S4:
a:=x+2; b:=y+4; c:=a+b; d:=c+b;

程序的顺序执行
s1
s2
s3
s4
程序顺序执行的特征
顺序性 封闭性 可再现性


顺序性:处理机的操作严格按照程序所规
定的顺序执行,即每一个操作必须在下一操 作之前结束。

封闭性:程序在封闭环境下执行,结
果不受外界因素影响。

可再现性:只要环境和初始条件相同,
程序重复执行时总得到相同结果。
哈尔滨工业大学 张英涛
哈尔滨工业大学远程教育课程
操作系统
第6讲
主讲人:张英涛
进程管理中最基本功能是进程控制 进程控制任务: 进程的创建、终止、进程状态的 转变等 进程控制一般由OS内核来实现。

进程图
A B D C
E
F
G
H
引起创建进程的事件
(1) (2) (3) (4) 用户登录。 作业调度。 提供服务。 应用请求。
程序段 数据段
动态性
进程最基本的特征是动态性 进程的生命周期: 进程由创建而产生,由调度而 执行,由撤销而消亡的过程。

并发性:多个进程同在内存中, 且能在一段时间内同时运行。 独立性:进程是一个能独立运行、 独立分配资源、独立接受调度的 基本单位。 异步性:进程按各自独立的、不 可预知的速度向前推进。
挂起 挂起
静止 就绪 静止 阻塞
活动 阻塞
挂起
进程的激活状态图 执行
调度
活动 就绪
静止 就绪
激活
活动 阻塞
激活
静止 阻塞
有挂起状态的进程状态图
执行
调度 I/O请求
挂起 挂起 激活
活动 就绪
释放
静止 就绪
释 放
活动 阻塞
激活 挂起
静止 阻塞
进程的两种制约关系

间接制约:进程间由于共享某种系统资源, 而形成的相互制约。
正常结束
①越界错误。②保护错。 ③非法指令。④特权指令错。 ⑤运行超时。⑥等待超时。 ⑦算术运算错。⑧I/O故障。
异常结束
外界干预
①操作员或os干预。 ②被父进程终止 ③父进程终止
进程的终止过程



从PCB集合中检索出该进程的PCB,从中 读出该进程的状态。 若处于执行状态,终止该进程的执行,并 置调度标志为真,重新调度。 若有子孙进程,将所有子孙进程终止。 将进程全部资源归还其父进程或系统。 将其PCB从所在队列(或链表)中移出
程序并发执行
一个有四条语句的程序段:
S1: S2: S3: S4:
a:=x+2; b:=y+4; c:=a+b; d:=c+b;

程序的并发执行
s1 s3 s4
s2
程序并发执行的特征

间断性

共享、合作、制约导致: 执行—暂停—执行 失去封闭性 资源状态由多程序改变 不可再现性 相同环境和初始条件, 重复执行结果不同。

进程控制信息


程序和数据地址 进程同步和通信机制 资源清单:除CPU之外的所需资源与 已经分配资源清单 链接指针:本进程PCB所在队列的下 一个地址。
PCB的组织方式
(1)链接方式 把统一状态的PCB,用其中的链接字链接成 一个队列。如:就绪队列、阻塞队列(根 据不同阻塞原因)、空白队列。 (2)索引方式 建立就绪索引表、阻塞索引表等。把索引表 在内存的首地址放在内存的专用单元中。
引 起 阻 塞 和 唤 醒 的 事 件
请求系统服务
启动某种操作 新数据尚未到
无新工作可做
由 阻 塞 原 语
进程阻塞过程
入口
保存当前进程的CPU现场 置该进程状态 进入等待队列 转进程调度
BLOCK 完 成
由 唤 醒 原 语
进程唤醒过程
入口
WAKEUP 完 成
从等待队列中摘下被唤醒进程 置该进程为就绪 态 进入就绪队列 转进程调度或返回

进程定义
进程是进程实体的运行过程, 是系统进行资源分配和调度 的基本单位。
进程和程序的关系
(1)进程是一个动态概念,程序是一个静态 概念。 (2)进程具有并行特征,程序没有。 (3)进程是竞争资源的基本单位 (4)一个程序对应多个进程,一个进程为多 个程序服务。
进程的三种基本状态
就绪状态 执行状态 阻塞状态
链接方式
执行指针 就绪队列指针 阻塞队列指针 空闲队列指针
PCB1 PCB2 PCB3 PCB4 PCB5 PCB6 PCB7 PCB8 PCB9 4 3 0 8
7 9 0 1
索引方式
执行指针
PCB1 PCB2 PCB3 PCB4 PCB5 PCB6 PCB7
就绪表指针
阻塞表指针
谢谢收看
操作系统 第5讲
相关文档
最新文档