版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
进程的描述与控制2023-2026ONEKEEPVIEWREPORTINGWENKUDESIGNWENKUDESIGNWENKUDESIGNWENKUDESIGNWENKU目录CATALOGUE进程基本概念进程描述方法进程控制原语及操作线程概念及多线程模型进程同步与互斥问题死锁问题及处理方法进程基本概念PART01动态性进程是程序的执行过程,具有生命周期,包括创建、就绪、运行、阻塞和终止等状态。进程定义进程是操作系统中进行资源分配和调度的基本单位,它是程序的执行过程,具有动态性、并发性、独立性和异步性等特征。并发性多个进程可以在同一时间段内并发执行,提高系统资源利用率。异步性进程的执行顺序和执行时间是不确定的,由操作系统根据调度算法和资源情况来决定。独立性进程是操作系统中独立存在的实体,拥有独立的内存空间和系统资源。进程定义及特征程序是静态的指令集合,而进程是程序的执行过程,具有动态性。程序可以脱离机器长期保存,而进程是暂时的,随着程序的执行而创建和消亡。进程是程序的执行过程,程序是进程的代码部分。一个程序可以对应多个进程,而一个进程只能对应一个程序。进程与程序关系程序与进程的联系程序与进程的区别进程的状态包括创建态、就绪态、运行态、阻塞态和终止态。进程状态进程正在被创建时的状态。创建态进程已分配到除CPU以外的所有必要资源,等待获得CPU时的状态。就绪态进程状态及转换运行态:进程获得CPU并正在执行时的状态。阻塞态:进程因等待某种事件发生(如I/O操作)而暂时不能执行时的状态。终止态:进程已完成其任务或遇到无法克服的错误而终止执行时的状态。状态转换:进程的状态转换包括创建、就绪、运行、阻塞和终止等状态之间的转换。例如,当一个新的进程被创建时,它进入创建态;当它被调度到CPU上执行时,它进入运行态;当它等待某种事件发生时,它进入阻塞态;当它完成任务或遇到错误时,它进入终止态。进程状态及转换进程描述方法PART02PCB是进程存在的唯一标识,包含进程的标识符、状态、优先级等控制和管理信息。PCB的作用PCB的组织方式PCB的内容PCB可以采用线性方式或链接方式进行组织,以便于对进程进行查找和管理。PCB通常包含进程标识符、处理机状态、进程调度信息、进程控制信息等。030201进程控制块PCB将处于同一状态的所有进程的PCB链接在一起的数据结构称为进程队列。进程队列将系统中所有进程的PCB链接在一起的数据结构称为进程链表。进程链表对进程队列和链表的主要操作包括创建、撤销、阻塞、唤醒等。队列与链表的操作进程队列与链表进程间通信与同步机制进程间通信是指在不同进程之间传递数据和信息的技术,常见的进程间通信方式有管道、消息队列、信号量等。同步机制同步机制用于协调多个进程之间的执行顺序,以确保它们能够正确地共享资源和协同工作。常见的同步机制有互斥锁、条件变量、信号量等。进程间通信与同步的实现不同的操作系统提供了不同的进程间通信和同步机制的实现方式,例如Unix/Linux中的管道、FIFO、消息队列、信号量等,Windows中的邮槽、命名管道等。进程间通信进程控制原语及操作PART03创建原语Create01创建一个新的进程映像,包括PCB和相应的程序、数据等02分配必要的资源,如内存空间、I/O设备等将新进程的状态设置为就绪态,并将其插入就绪队列03若进程处于执行状态,则立即停止该进程的执行,并设置调度标志为真,以指示该进程被终止后应重新进行调度若进程还有子孙进程,则应将其所有子孙进程予以终止将被终止进程(PCB)从所在队列(或链表)中移将该进程所拥有的全部资源,或者归还给其父进程或系统,或者归还给创建该进程的用户从PCB集合中找到要终止的进程的PCB终止原语Terminate阻塞原语Block当进程由于某种原因不能继续运行时,将调用阻塞原语Block把自己阻塞。具体执行过程是:立即停止当前进程的执行;把进程控制块中的现行状态由“执行”改为“阻塞”,并将其插入到具有相同实体的阻塞队列中。唤醒原语Wakeup当被阻塞的进程所期待的事件出现时,如I/O完成或者其所期待的数据已经到达,则由有关进程(比如,用完并释放了该I/O设备的进程)调用唤醒原语Wakeup,将等待该事件的进程唤醒。具体执行过程是:把被阻塞的进程从等待该事件的阻塞队列中移出;将其PCB中的现行状态由“阻塞”改为“就绪”,然后再将该PCB插入到就绪队列中。阻塞原语Block和唤醒原语Wakeup挂起原语Suspend将指定进程或处于阻塞状态的同类进程挂起。具体执行过程是:检查被挂起进程的状态,若处于活动状态,则将其改为静止状态;若采用的是“挂起是独立的”方式,则应利用某种机制使该进程以后不再被调度;若采用的是“挂起是下属的”方式,则应将其父进程也挂起;若被挂起的进程正在执行,则应立即停止执行,并设置调度标志为真,以指示该进程被挂起后应重新进行调度。激活原语Activate将指定进程激活。具体执行过程是:把指定进程从静止队列中移出;若采用“激活是独立的”方式,则应再将进程的静止状态改为活动状态;若采用“激活是下属的”方式,则应将其所有祖先也都激活;如果采用的是“多层激活”方式,则应将其所有子孙进程都激活。挂起原语Suspend和激活原语Activate线程概念及多线程模型PART04ABCD线程定义及属性与同属一个进程的其他线程共享进程所拥有的全部资源。线程是进程内的一个执行单元,是进程内可调度实体。线程有就绪、阻塞和运行三种基本状态,也有创建状态和终止状态。每个线程有自己的线程ID、寄存器组值、栈和栈指针、程序计数器PC、局部存储区等。用户级线程ULT与内核级线程KLT用户级线程ULT不依赖于操作系统核心,由应用进程利用线程库提供创建、同步、调度和管理线程的函数来控制用户线程。内核级线程KLT依赖于操作系统核心,由内核的内部需求进行创建和撤销。多对一模型多个用户级线程映射到一个内核级线程,线程管理在用户空间完成,内核意识不到多线程的存在。一对一模型一个用户级线程映射到一个内核级线程,每个用户进程有与用户级线程同数量的内核级线程。多对多模型n个用户级线程映射到m个内核级线程(n>=m),克服了多对一模型和一对一模型并发度小的缺点,又充分利用了多核处理器资源。多线程模型比较进程同步与互斥问题PART05临界区问题多个进程同时访问共享资源时,可能会导致数据不一致或资源访问冲突。解决方案通过同步机制来协调进程的执行顺序,确保同一时间只有一个进程能够访问临界区。临界区问题与解决方案信号量是一个整型变量,用于表示可用资源的数量或进程的执行状态。信号量定义通过P操作申请资源,若资源可用则获取资源并继续执行;通过V操作释放资源,使其他等待的进程得以执行。P/V操作实现进程间的同步与互斥,保证对共享资源的正确访问。信号量的作用信号量机制Semaphore管程是一种特殊的软件模块,提供了一组公共变量和同步操作,用于实现进程间的同步与互斥。管程定义管程由Monitor结构和过程两部分组成,Monitor结构包括共享变量和同步队列,过程实现对共享变量的操作。Monitor结构进程通过调用管程的过程来访问共享变量,管程通过同步队列和条件变量来协调进程的执行顺序,确保对共享变量的正确访问。Monitor工作原理管程Monitor实现同步互斥死锁问题及处理方法PART06死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法向前推进。死锁概念互斥条件、请求和保持条件、不剥夺条件、环路等待条件。产生条件死锁概念及产生条件破坏互斥条件允许进程同时访问某些资源。但是,有些资源是不能被多个进程同时访问的,这是由资源本身属性所决定的,因此,这种办法通常不可行。破坏不剥夺条件当一进程占有的资源又被其他进程请求时,可以采用资源剥夺方式。破坏环路等待条件为了破坏环路等待条件,可采用顺序资源分配法。首先给系统中的资源编号,规定每个进程必须按编号递增的顺序请求资源,同类资源(即编号相同的资源)一次申请完。破坏请求和保持条件进程在运行前申请得到所有的资源,在其所需资源未满足前,不使其投入运行。一旦投入运行后,这些资源就一直归它所有,该进程就不会请求其他任何资源了。死锁预防策略分析银行家算法该算法是由艾兹格·迪杰斯特拉在1965年为T.H.E.系统设计的一种避免死锁产生的算法。它以一个银行借贷系统的模拟来实现资源的分配和回收,保证系统的安全运行。安全性算法通过判断系统是否处于安全状态来避免死锁的发生。如果系统处于安全状态,则可以分配资源;否则,不分配资源。死锁避免算法介绍死锁检测与恢复方法通过定时运行死锁检测算法来发现死锁。常见的死锁检测算法有资源分配图算法和银行家算法等。死锁检测当检测到死锁时,需要采取一些措施来恢复系统的正常运行。常见的死锁恢复方法有进程终止、资源抢占和进程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年生态农业种苗培育与推广合同3篇
- 新建炊具挂盘项目可行性研究报告
- 石油助剂项目投资计划书
- 纸托盘投资规划项目建议书
- DB12T 661-2016 天津市行政许可事项操作规程 道路货物运输经营许可
- 阅读心理分析-洞察分析
- 新型极地建筑材料研究-洞察分析
- 私募基金市场竞争格局-洞察分析
- 2025【合作合同】矿山合作开发合同范本
- 2025法人授权委托书管理及合同签订的评审制度
- 新修订中华人民共和国行政许可法全文解读学习
- 广东省广州市花都区2024年七年级上学期期末数学试题【附答案】
- 期末测试模拟练习 (含答案) 江苏省苏州市2024-2025学年统编版语文七年级上册
- 上海市徐汇区2024-2025学年高一语文下学期期末试题含解析
- 品质年度总结及来年计划
- 学生体质健康存在的主要问题及改进措施
- 2024年执业药师资格继续教育定期考试题库(附含答案)
- 建筑幕墙工程检测知识考试题库500题(含答案)
- 钢棚钢结构施工方案
- 新版第三类医疗器械分类目录
- 安防主管岗位招聘面试题及回答建议(某大型集团公司)2025年
评论
0/150
提交评论