版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二部分操作系统第5章操作系统概论第6章处理器管理第7章存储器管理第8章设备管理第9章文件管理第6章处理器管理(1)6.1进程的概念
6.2进程的状态和转换
6.3进程的控制
6.4进程的协调
6.5进程间的通信
6.6进程的安全性
6.7线程的概念
6.8作业管理
6.9处理器调度进程管理处理器(CPU)是整个计算机系统中核心的、宝贵的硬件资源。有效地管理CPU、最大限度地提高CPU的利用率,是操作系统最重要的管理任务。采用多道程序设计技术、组织多个作业同时执行解决CPU的调度、分配和回收等问题处理器管理高级处理器管理:作业管理(调度),确定哪个作业进入内存。低级处理器管理:进程管理(调度),哪个作业中的哪个进程将获得CPU。进程,是系统分配资源的独立单位。第6章处理器管理进程管理学习目标:1.掌握:进程定义,临界区概念,进程的状态及其变化,进程的同步与互斥。2.理解:多道程序设计概念,进程的组成,进程管理的基本命令,信号量和P、V
操作及其应用。3.了解:进程间的通信。
单道批处理系统单道运行:每次只调用一个用户作业程序进入内存并运行
6.1进程的概念(概念的引入)1.程序的顺序执行(单道批处理系统)
一个程序由若干个程序段组成,而这些程序段的执行必须是顺序的,这种程序执行的方式就称为程序的顺序执行。特点(1)顺序性--只有前一个操作结束,才能执行后续操作(2)唯一对应性--程序与执行过程一一对应(3)封闭性--程序运行时独占全机资源
程序一旦开始执行,其计算结果不受外界的影响。(4)可再现性--与执行速度无关
程序执行的结果与初始条件有关,而与执行时间无关。多道批处理系统多道程序的思想:在内存中允许同时存放若干道相互独立的程序,并允许它们交替执行,共享系统软硬件资源。特征:(1)资源共享。(2)程序并发执行。用户程序A用户程序B请求盘输入请求带输入启动盘调度B启动带中断处理中断处理调度A调度B监督程序磁带操作磁盘操作结束中断结束中断T6.1进程的概念程序的并发执行(多道批处理系统)特点1)并发性 若干个程序段同时在系统中运行,这些程序的执行在时间上是重迭的,一个程序段的执行尚未结束,另一个程序段的执行已经开始,即使这种重迭是很小的,也称这几个程序段是并发执行的。2)开放性(失去了封闭性) 系统中并发执行的程序,共享资源,程序的执行与外部因素(如执行速度)有关,不再具有封闭性。 注:若一个程序的执行可改变另一个程序的变量,程序执行的结果不仅依赖于程序的初始条件,还依赖于程序执行时的相对速度,在这种情况下就失去了程序的封闭性。例:有两个循环程序A和B,它们共享一个变量N。[程序A]执行N∶=N+1操作;[程序B]执行Print(N); N:=0;程序A和B以不同的速度运行。结果:
(1)N∶=N+1在Print(N)和N∶=0
之前,此时得到的N值分别为N+1,N+1(输出),0。(2)N∶=N+1在Print(N)和N∶=0
之后,此时得到的N值分别为N(输出),0,1。(3)N∶=N+1在Print(N)和N∶=0
之间,此时得到的N值分别为N(输出),N+1,0。
进程概念的引入-并发执行的特点3)动态性(程序与执行活动不再一一对应)并发程序中的并发活动是动态产生、动态消亡的。程序的并发执行时,可能有多用户共享使用同一个程序,但处理(执行时)的对象却是不同的。在程序顺序执行时,一个程序总是对应一个具体的执行。例如,在多用户环境下,可能同时有多个用户调用C语言的编译程序,这就是典型的一个程序对应多个用户源程序的情况。4)程序并发执行的相互制约间接制约无逻辑关系的用户程序之间竞争使用资源而产生的制约关系使本来并无逻辑关系的程序之间产生了相互制约关系。程序活动的工作状态与环境有密切关系,并发程序具有“执行—暂停—执行”的活动规律。直接制约存在逻辑关系的程序之间相互等待而发生的制约关系顺序执行与并发执行的特征比较顺序执行并发执行
程序顺序执行唯一对应性
程序具有封闭性独享资源具有可再现性间断执行,多个程序各自在“走走停停”中进行动态性
程序失去封闭性共享资源失去其可再现性有直接和间接的相互制约
1.进程的定义
背景:当程序顺序执行时,具有封闭性和可再现性,但为了提高计算机的速度和增强系统的处理能力,广泛采用多道程序设计技术,从而导致程序的并发进行和资源共享。这带来新的特性,即失去封闭性、程序与计算机活动失去一一对应,并使程序并发执行时产生了相互制约的关系。为了更好描述程序的并发活动,引入了“进程”概念。
1.进程的定义进程的定义:
进程是程序在并发环境中的执行过程,是系统进行资源分配和调度的一个独立单位。说明:1)进程最根本的属性是动态性和并发性
2)进程和程序是两个完全不同的概念
3)尚无统一的定义和名称:美国MIT称进程(process)、IBM公司称任务(task)、Univac公司称活动(action)。1.进程的定义进程和程序主的联系和区别联系:程序是构成进程(程序、数据、进程控制块)的组成部分之一。一个进程的运行目标是执行它所对应的程序;如果没有程序,进程就是去了存在意义。区别:程序是静态概念;进程是程序的一次执行过程,是动态概念。
程序
进程静态的概念
动态的概念不能并行活动
独立的运行单位,能并行活动不是一个基本单位
是处理机调度、竟争资源的基本单位一个程序可对应多个进程
一个进程可以执行多个程序段类似于乐曲与乐曲的一次演奏之间的关系。2.进程的特征
动态性:进程是程序在并发系统内的一次执行。进程“由创建而产生,由调度而执行,因得不到资源而暂停执行,由撤消而消亡”
并发性:概念引入的起源
独立性:一个进程是一个相对完整的资源分配单位。每个进程按照各自独立、不可预知的速度执行(异步性)。制约性:进程之间的相互制约(互斥使用资源、必要的同步和通信)结构性:程序+数据+进程控制块(PCB,ProcessControlBlock)3.进程的组成进程的组成:程序、数据集合、进程控制块(PCB)这三部分构成“进程实体”,也称为“进程映象”。
4.进程控制块进程控制块
是进程组成中最关键的部分,它含有进程的描述信息和控制信息,是进程动态特性的集中反映,是系统对进程进行识别和控制的依据。进程创建时建立PCB(唯一的、进程存在标志)。在进程的生命周期内,操作系统(OS)通过对PCB的管理来实现对进程的管理。进程撤消时删除其相应的PCB。4.进程控制块进程控制块包含的内容:(1)进程名:外部标识符(2)标识码(进程号)PID:内部标识符(3)优先数(4)位置信息:存储器中的物理位置(5)状态信息:当前活动状态(6)现场信息:与运行相关的信息(通用寄存器、程序计数器PC、程序状态字PSW等)(7)通信信息(8)占用资源(9)其他信息6.2进程的状态和转换进程的动态性由它的状态和转换体现1、进程的三种基本状态1)运行态(running):当进程得到处理器控制权时,它的程序正在处理机上运行,该进程所处的状态为运行状态。2)就绪态(ready):存在于处理机调度队列中的那些进程,它们已经准备就绪,一旦得到CPU,就可以立即运行,这些进程所处的状态称为就绪状态。3)阻塞态或等待态(blocked/wait):若一个进程正等待着某一事件发生(如等待输入输出操作的完成)而暂时停止执行。这时,即使给它CPU时间,它也无法执行,则称该进程处于等待状态(又可称为封锁状态或等待状态)。2、进程状态的转换进程三态模型及其状态转换图.就绪—运行.运行—阻塞.运行—就绪.阻塞—就绪2、进程状态的转换a.创建—就绪b.就绪—运行c.运行—阻塞d.运行—就绪e.运行—终止f.阻塞—就绪创建状态退出状态具有五种状态的进程状态转换图(1)就绪->运行处于就绪状态的进程被调度程序选中,分配到CPU后,该进程的状态就由就绪态变成运行态。处于运行态的进程也称作当前进程。此时当前进程的程序在CPU上执行,它真正是活动的。(2)运行->阻塞正在运行的进程因某种条件而未满足而放弃对CPU的占用。这个进程的状态就由运行态变为阻塞态。2、进程状态的转换(3)阻塞->就绪
处于阻塞状态的进程所等待的事件发生了,此时该进程就从阻塞队列中出来,进入到就绪队列中,然后与就绪队列中的其它进程竞争CPU。(4)运行->就绪正在运行的进程如用完了本次分配给它的CPU时间片,它就得从CPU上退下来,暂停运行。该进程的状态就由运行态变为就绪态,以后进程调度程序选中它,它就又可以继续运行了。2、进程状态的转换3.挂起状态某些系统中,为了更好地管理和调度进程及适应系统的功能目标,引入了挂起状态。引入挂起状态的原因(1)负荷调节的需要由于不断地创建进程,系统资源(特别是主存资源)已经不能满足进程运行的要求,此时必须把某些进程挂起(suspend),置于磁盘对换区中,释放其占用的某些资源,起到平滑系统负载的目的;(2)终端用户或父进程的请求可能系统出现某种故障,需要暂时挂起一些进程,以便在故障消除之后,解除挂起并恢复进程的运行;用户在调试程序过程中,可以请求挂起进程,以便进行某种检查或修改。两个新状态:挂起就绪、挂起阻塞原来的就绪状态成为活动就绪原来的阻塞状态称为活动阻塞具有挂起状态的进程状态图图:具有挂起状态的进程状态图活动就绪运行挂起就绪挂起阻塞活动阻塞挂起时间片完被调度激活挂起等待事件事件发生(唤醒)事件发生(唤醒)激活挂起6.3进程的控制进程管理的功能系统中的进程不断地产生和消亡,进程生命周期的动态变化过程由进程管理来控制。通过原语操作实现:进程创建、进程终止、进程阻塞、进程唤醒、进程挂起、进程激活等。1.原语操作
所谓原语(Primitive)操作:是完成系统特定功能的不可分割的过程,它具有原子操作性,其程序段不允许被中断(原语不能并发执行)机器指令的延伸,往往是为完成某些特定的功能而编制的一段系统程序。系统对进程的控制如果不采用原语,会造成状态的不确定性,不能达到进程控制的目的。原语操作也称“原子操作”,即一个操作中的所有动作要么全做,要么全不做。6.3进程的控制2.进程创建(原语)
父进程创建子进程(提交批处理作业、操作系统创建服务进程等)时要调用进程创建原语。进程创建原语的主要操作过程是:(1)申请一个空闲的PCB(ProcessControlBlock),指定进程标识号PID(进程内部名)(2)为新进程分配资源(3)将新进程的PCB初始化(各种参数)(4)将新进程加到就绪队列中6.3进程的控制2.进程创建(原语)实现方法:传统UNIX:父进程使用fork()创建子进程子进程继承父进程的全部资源(相同的存储映像、环境字符串、打开文件)Windows系统:进程使用Win32API的CreateProcess()函数创建进程新老进程之间不存在族系关系操作系统为新进程创建新的地址空间6.3进程的控制3.进程终止(原语) 进程完成特定的工作或出现严重错误之后,操作系统将回收其所占有的地址空间和PCB,即进程终止。进程终止的主要操作过程:(1)从系统的PCB表中找到指定进程的PCB,若它正处于运行态,则立即终止该进程的运行;(2)回收该进程所占用的全部资源;(3)若该进程还有子孙进程,则还要终止其所有子孙进程,回收它们所占用的全部资源;(4)释放被终止进程的PCB,并从原队列中摘走。6.3进程的控制4.进程阻塞(原语)
进程阻塞:进程让出处理器,转而等待一个事件(等待资源、等待I/O操作完成、等待某事件发生等)。进程通常调用阻塞原语来阻塞自己当等待事件完成时,会产生一个中断,激活操作系统,在系统的控制下将被阻塞的进程唤醒进程阻塞过程:(1)立即停止当前进程的执行;(2)将现行进程的CPU现场送到该进程的PCB现场保护区保存起来;(3)把该进程PCB中的现行状态由“运行”
改为“阻塞”,把它插入到具有相同事件的阻塞队列中;(4)转到进程调度程序,重新从就绪队列
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 行政主管面试常见问题及高分答案
- 定扭矩气板机项目可行性分析报告范文
- 环境医学视角治未病个体化方案调整
- 京东商城运营团队面试题库
- 产品经理业务一部经理考试题集含答案
- 上汽集团投资者关系经理职业资格认证考试大纲含答案
- 深度解析(2026)《GBT 18955-2003木工刀具安全 铣刀、圆锯片》(2026年)深度解析
- 特殊医疗场景应急物资储备方案
- 深度解析(2026)GBT 18717.2-2002用于机械安全的人类工效学设计 第2部分人体局部进入机械的开口尺寸确定原则
- 软件工程师高级职位面试题
- 2026年郴州职业技术学院单招职业技能考试题库及答案详解一套
- 2026(人教版)数学五上期末复习大全(知识梳理+易错题+压轴题+模拟卷)
- 2025中国医学科学院医学生物学研究所招聘非事业编制人员2人(1号)考试笔试参考题库及答案解析
- 2025年全科医师转岗培训理论考试试题及正确答案
- 2025年中小学教师正高级职称评聘答辩试题(附答案)
- 销售瓷砖的合同范本
- (新教材)2025年人教版三年级上册数学 第5课时 进一步认识分数 课件
- 船舶合股协议书模板
- 【未知机构】华为公司战略规划和落地方法之五看三定工具解析
- 企业微信指导手册管理员版
- (完整word版)劳动合同书(电子版)正规范本(通用版)
评论
0/150
提交评论