第二章 操作系统一.ppt
第9页
标志着操作系统形成的两大技术(2)
问题背景:联机工作方式 让用户通过控制台(终端)直接操作、控制自己程
序运行的操作方式称为联机工作方式。 但是如何让一台计算机同时为多个用户服务,而且
还能让每个用户都觉得自己是在独占这台计算机呢?
2) 分时技术
把CPU响应时间分成若干个小时间单位(时间片) 轮流分配给各个联机用户使用。如果一个用户程序在分 配给它的时间片内没有完成,则暂时中断执行,等待下 一轮计算。
实时控制
实时信息处理
实时采集现场数据,完成 自动化控制
根据用户要求进行信息检 索和处理
特点:Байду номын сангаас
特点:
响应速度足够快
强大的数据库
可靠性高
操作简便、查询快速
例:导弹导航
例:远程订票系统
第 14 页
4)个人计算机操作系统
磁盘操作系统 其代表是 MS—DOS 设备管理、文件系统功能
GUI的多任务操作系统——Windows 图形用户界面 多任务、多线程 可剥夺式调度 段页式虚拟存储管理技术 动态连接
进程控制块PCB(Process Control Block)是进程存在的标 志!是进程的“档案袋”,是进程动态特征的集中反映。 •进程创建时建立PCB。 •在进程的生命周期内,OS通过对PCB的管理来实现对进程 的管理。 •进程撤消时删除相应的PCB。
第 31 页
PCB是纪录进程动态特性,运行控制等信息的数据结构。 是进程存在的唯一标志,是进程的唯一实体。
用户程m{程序a序i顺n顺(序)序执性行的I特/O征中断请求
OS
顺iinntt序ab;程; 序的各个操作是顺序执行的
I/O操作
封闭性 程sbc=a序naf一(+“旦%5;开d”始,&执a)行; ,其I/O计完算成结果不受外界因素的影响
可t再p1r现int性f(“ result = %d”, b);
第 29 页
(2)进程状态的变迁及原因
进程随着自身的推进和外界条件的变化而从一个状态 变换为另一个状态称为状态变迁。
运行
时间片到 进程调度
× 服务请求 (请求I/O等)
就绪
等待
服务完成/事件来到
注意:有一种状态变迁是永远也不可能发生的。
第 30 页
4. 进程的组成
一个进程包含4个组成部分: •程序——描述进程要完成的功能的指令序列; •数据——程序加工的对象; •工作区——程序执行使用的内存区域,如用户栈或系统栈; •进程控制块——存放进程控制和管理信息的数据结构。
第7页
标志着操作系统形成的两大技术(1)
1) 多道程序设计技术 计算机完成用户算题任务所需进行的各项工作称为一道作业。
用户程序
I/O中断请求
OS
I/O操作
I/O完成
t1
单道程序----顺序执行
t2
处理机时间是宝贵的资源,要尽量充分利用,减少CPU 等待时间。
在计算机系统中不能只放一道程序,应存放几道程序, 从而引入多道程序的概念。
{ …; printf (“n IS % d\n,n); n=0; … ; }
coend …; }
执行的结果 与顺序有关
问题:这个程序的执行可能产生哪些结果?
第 25 页
程序A 程序B
并行
程序A和B都得到 了推进,并发
OS调度
I/O A
I/O B
t1
多道程序----并发执行
t2
特征:
多道——主存中同时存放几道相互独立的程序;
分时系统的提出:解决人机交互问题,进行及时响应, 多用户共享主机。
一台连接多个终端的计算机称为分时计算机。 在分时计算机上采用分时技术实现的操作系统称为分
时操作系统。 特点:
多路调制性:多个用户使用一台计算机; 独占性:时间片轮转使得用户感觉独享机器(3S); 交互性:问答“会话”的命令交互方式;
结束
(2)进程控制功能的实现
就绪
执行
进程的控制动作由操作系统完成; 操作系统提供相应的原语以备调用
等待
第 33 页
执行时不可中断的系统调用
(3)进程控制原语
进程创建——创建一个新进程 进程撤消——撤消一个已完成任务的进程 进程阻塞——使进程转换为等待状态 进程唤醒——唤醒一个等待进程
第 34 页
第 16 页
2.2 操作系统用户界面/接口(Interface)
2.2.1 传统的操作系统用户界面 2.2.2 图形化的用户界面
第 17 页
2.2.1 传统的操作系统用户界面
1、操作命令 用户利用操作命令来组织作业的工作流程和
控制作业的运行。 2、系统功能调用
在源程序一级使用系统功能调用请求操作系 统服务。
t
作业1 2
3
1
2
3
第 10 页
1)批量操作系统
把用户提交的作业(程序、数据和处理步骤) 成批输入计算机,然后由作业调度程序自动选择作 业运行。
优点:作业流程自动化,效率高(缩短作业间 的交接时间,减少处理机的空闲等待时间), 吞吐率高 缺点:无交互手段,调试程序困难
第 11 页
2)分时操作系统
第 15 页
3、操作系统的功能
处理机管理 提出调度策略,给出调度算法,具体实施CPU的分派
存储管理
存储分配和存储无关性 存储保护 存储扩充:虚拟存储器
设备管理
设备无关性:逻辑名访问 设备分配:独享、共享、虚拟技术 设备的传输控制:启动、中断、结束
软件资源管理
提供简单统一资源管理方法,解决信息共享 数据存取控制和保密等问题
键盘命令
操
用
作
户
系
系统功能调用
统
计 算 机
传统的操作系统用户界面
第 21 页
返回
2.2.2 图形化的用户界面
操作命令界面 1、菜单驱动 2、图符(图标)驱动 3、图形化用户界面
系统功能调用
系统提供API函数(应用程序编程接口)和系 统定义的消息形式。
与传统系统调用的主要不同点是函数库和动 态链接技术的支持
程,它们已经准备就绪,一旦得到CPU,就可以立即运行, 这些进程所处的状态称为就绪状态。
运行状态(running) ——当进程得到处理机控制权时,它 的程序正在处理机上运行,该进程所处的状态为运行状态。
等待状态(wait) ——若一个进程正等待着某一事件发生( 如等待输入输出操作的完成)而暂时停止执行,这时,即使 给它CPU时间,它也无法执行,则称该进程处于等待状态 (又称为阻塞状态或挂起状态)。
动态特性 运行控制
进程标识符 CPU现场保护区(程序状态字、寄存器内容等)
进程状态 优先级 资源清单 通信机制(信箱或消息队列) 同步机制(信号量)
队列指针、家族联系
存储位置
第 32 页
5. 进程控制
(1)进程控制的功能
对系统中的进程实施有效的管理和控制。具体表现为控制
进程进入不同的状态。 新进程
例如:飞机订票系统中各个订票点对机票库的访问
第 35 页
进程的互斥进入临界区
... ... 进入区
临界区
退出区 ... ...
进程 1
改变资源 状态
释放资源 唤醒等待 进程
... ... 进入区
t2
} 初始条件不变的情况下,程序多次执行的结果一样
单道程序----顺序执行
第 24 页
2)程序的并发执行
若干个程序段同时在系统中运行,这些程序段的执行在时间
上是重迭的,一个程序段的执行尚未结束,另一个程序段的执 行已经开始,称为程序的并发执行。
程并序m发a并in程发( 序)执的行描的述特:征c:obegin、coend可并发执行标记 { in失t 去cno了=b0e程g; in序//共的享封变闭量性n和可再现性 co程be序pg1i与n: 计wh算Sil1e不; S(再A2;的一…任一; 务S对n未应; 完成) 程序c{o…并en;发d 执n行++的; 直…接;或}间接相互制约 表示语句p2S: 1w,hSil2e,(B…的,任Sn务可未以完并成发) 执行。
程序
进程
静态的概念
动态的概念,处理机上的一次执行过程
不能并行活动
独立的运行单位,能并行活动
不是一个基本单位
是处理机调度、竟争资源的基本单位
一个程序可对应多个进程 一个进程可以执行多个程序段
第 28 页
3. 进程的基本状态及变迁
(1)进程的三种基本状态 就绪状态(ready) ——存在于处理机调度队列中的那些进
操作,由系统功能调用实现。 高级语言的隐式调用:
如c语言的putchar( ) printf( ) open( )
低级语言的直接调用:
mov ah 02h(显示一个字符的功能调用号)
mov dl ‘c’
int 21h(dos软中断指令,访管指令)
putchar(‘c’);
第 20 页
操作命令:作业控制语言
进程的互斥
临界资源—一次仅允许一个进程使用的资源称为临界资源。 许多物理设备(如打印机等)和软件资源(如变量、数 据、队列等)都具有这种独占性的特点。
临界区——在进程中访问临界资源的那段代码称为临界区。 要注意区分临界资源与临界区。
互斥——当一个进程正在访问某临界区时,不允许其它进 程进入其相应的临界区,这种进程间相互制约的关系称为 互斥。
第 22 页
返回
2.3 进程及进程管理
2.3.1 程序的顺序执行和并发执行 2.3.2 进程的基本概念 2.3.3 进程的同步和互斥 2.3.4 线程 2.3.5 死锁