- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统讲稿2010(第三章)
第三章 进程管理 进程的定义、进程控制的基本概念。 进程PCB的基本结构,作用及进程的状态转换。 进程同步与互斥的基本概念和解决方法。 死锁的原因,产生死锁的四个必要条件以及死锁的解决。 几个经典的进程同步与互斥问题及算法 。 线程的基本概念及状态。 难点: 进程的同步与互斥 死锁的解决 进程的概念 进程的描述 进程的状态及其转换 进程控制 进程互斥 进程同步 进程通信 死锁问题 管程 线程 小结 3.1进程的概念 3.2进程的描述——PCB 3.3进程的状态及其转换 3.4进程控制 3.5进程互斥 3.7进程通信 3.8进程死锁 3.9管程 3.10线程的概念 3.10 小结 单个进程顺序执行与特征:顺序性 、封闭性 、可再现性 多个程序并发执行与特征 :独立性 、随机性共享性、失去了封闭性 、相互制约性 Bernstain条件 进程定义、特征(动态、并发、独立、异步、结构)、进程与程序关系(状态、存在、资源、包含、并发) 进程状态及转换 进程描述PCB(作用、内容) 进程控制:概念、内核、内核的功能 3.10 小结(续) 进程的同步与互斥 临界区、临界资源、CS使用规则 同步与互斥 信号量解决同步、互斥 进程通信方式 死锁定义 死锁产生原因; 产生死锁的四个必要条件; 死锁的解决: 预防、 避免 、检测和恢复 线程的基本概念 P0 请求 request0(0,2,0) Max allocation need available ABC ABC ABC ABC P0 7 5 3 0 3 0 7 2 3 2 1 0 P1 3 2 2 3 0 2 0 2 0 P2 9 0 2 3 0 2 6 0 0 P3 2 2 2 2 1 1 0 1 1 P4 4 3 3 0 0 2 4 3 1 (1)request0=need0 (2)request0=available. (3)试分配,修改数据结构. 7 4 3 2 3 0 (4)运行安全性算法. 找不到安全序列,所以不安全,恢复数据结构,P0等待 五、死锁的检测和恢复 当系统为进程分配资源时,若未采取任何限制性措施保 证不进入死锁状态,则系统必须提供解除死锁的手段。 1.资源分配图 R1 R2 P1 P2 R1 R2 P1 P2 R1 R2 P1 P2 R1 R2 P1 P2 2死锁定理 当且仅当S的资源分配图是不可完全简化的,S为死锁状态。 死的解除: 1.终止死锁进程; 2.按一定顺序中止进程直至释放到有足够的资源来完成剩下的进程为止; 3.从被锁住进程中强迫剥夺资源以解除死锁。 引入 测试与设置、PV操作可以实现进程的同步与互斥,但是存在以下问题: 上锁和解锁以及P\V操作均需要用户来编写,加重了用户的负担 所有P、V操作都分散在用户编写的程序代码中,不利于系统管理这些P、V操作 如果用户在编写代码时错误使用了P\V操作,操作系统无法发现这些错误 二、管程的定义及结构 定义:一个管程定义了一个数据结构和能为并发进程所执行(在该数据结构上)的一组操作,这组操作能同步进程和改变管程中的数据 。 管程的结构 局部于该管程的数据结构——共享变量。该共享变量表示其相应的共享资源的状态 局部于该管程对上述数据结构进行规定的操作的若干个过程 线程及其管理 目的:引入线程的目的是提高系统的并行性,改善资源 利用率、提高系统吞吐量,较好的支持对称多处理器以 适应多任务情况下提高处理速度和系统性能的要求。 定义:线程是进程内的一个相对独立的、可独立调度和 指派的执行单元。 线程叫做轻型进程(Light-weight Process), 进程叫做重型进程(Heavy-weight Process)。 性质: 线程是进程内的一个相对独立的可执行单元。 线程是操作系统内的基本调度单元,线程中包含调度 所需要的信息。 一个进程中至少有一个线程,可以有多个线程。 线程并不拥有资源,而是共享和使用包含它的进程所 拥有的资源,因此需要多线程之间的通信机制 线程在必要时可以创建自己的线程,有自己的生命期 和状态变化 线程是处理机调度的基本单位 同一进程内的多个线程之间也可以并发执行 进程切换需要保留大量的现场信息,系统开销大;线程 切换只需要保存和设置少量的寄存器内容,因此开销小 同一进程的线程共享进程的地址空间,因此多线程之间 的同步与通信比较容易实现,甚至无需操作系统内核干预 状态 : 就绪:具备运行条件,等待分配CPU 。 运行:在CPU上运行 阻塞:等待某个事件发生。 说明: 线程中不具有挂起状态(挂起将资源调入外存, 而线程不管理资源) 多线程的进程的
文档评论(0)