- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统9004107440
进程定义
进程=进程控制块+程序+数据集合
进程 是一个具有一定独立功能的程序关于某个数据集合的一次运行活动
是操作系统进行调度和资源分配的基本单位
进程与程序的区别与联系
联系
进程中包含了需要执行的程序,程序是进程的一个组成部分。
区别
进程的三状态变迁模型
就绪态:已具备运行条件,但因为其它进程正占用CPU ,所以暂时不能运行而等待分配CPU的状态;
运行态:已分配到CPU ,正在处理器上执行时的状态;
阻塞态:因等待某种事件发生(例如I/O)而暂时不能运行的状态。处于该状态的进程尚不具备运行条件,即使cpu空闲,它也无法使用。
进程控制块PCB
定义:对进程在执行过程中的动态信息进行控制和管理的数据结构。
特点
PCB是进程存在的唯一标识,是操作系统对进程进行控制、管理和调度的依据。
PCB具有生命周期。
相同的程序如果与不同的PCB组合则形成不同的进程。
线程定义
进程内相对独立的、可独立调度和指派的执行单元。
线程与进程的主要区别与联系
区别
调度与资源分配
在无线程的os中,进程是资源分配及调度执行的单位。
在引入线程的os中,进程是资源分配的单位,线程是调度执行的单位。
系统开销
进程开销大
线程开销小
线程之间的同步与通信容易实现
联系:并发性
在引入线程的操作系统中,不仅进程之间可以并发执行,而且同一进程内的多个线程之间也可以并发执行,从而使系统具有更好的并发性。
线程特征
在具备线程机制的操作系统中,一个进程中至少包含一个线程,以线程作为调度单位,进程不再是调度单位 。
线程与同一进程中的其它线程共享该进程所拥有的资源。
线程可以创建其它线程,线程有生命周期,也有状态的变化。
临界资源
指的是一次只允许一个进程使用的独占资源。
临界区
指包含了访问临界资源的那段程序。
3.用P、V操作实现进程互斥
算法
针对每一类临界资源设一个互斥信号量mutexi,若某类临界资源有n个,初值为n;如果只有一个则初值设为1。
问题类型:同步
同步分析
管程的定义
是一种并发性的结构,它包括用于分配一个特定的共享资源或一组共享资源的数据和过程。
管程的组成部分
局部于管程的变量说明;
对该数据结构进行操作的一组过程函数;
对局部于管程的数据设置初始值的语句,以及赋予该管程一个名字。
死锁概念
系统中所有的并发进程彼此互相等待对方所拥有的资源,且它们在得到对方资源之前不会释放自己所拥有的资源,从而造成互相死等,却永远等不到的一种任一进程都不能继续运行的系统状态。
产生死锁的根本原因:系统资源不足
资源不足的情况下,资源竞争和资源分配不合理两个因素同时作用产生死锁
产生死锁的四个必要条件
互斥条件(资源有限)
无法同时满足所有线程的资源需求
不可剥夺条件(不能抢占)
进程所占有的资源在没有使用完之前不能被其它进程强行占用,只能由占有该资源的进程自己释放
部分分配(持有等待)
线程请求新的资源时继续持有已经获得的资源
环路条件
系统中各并发进程对于资源的占有和请求形成环路,即请求箭头方向和占有箭头方向形成环路。
死锁的避免
指操作系统在动态分配过程中对每一次的分配都要采取某种策略去判断一下当前的分配有没有导致死锁的可能性,没有则实施分配,有则拒绝分配,从而动态地避免死锁的产生 。
地址重定位
将逻辑地址空间中使用的逻辑地址变换成内存中的物理地址的过程
固定分区
是指系统在初始化时,将内存空间划分为若干个固定大小的区域
分区原则
(1)分区大小划分
(2)分区个数不变,大小不变
地址变换
使用二进制方法求物理地址
将逻辑地址线性分割求出页号P和页内位移W:
若逻辑地址以十六进制、八进制的形式给出,将逻辑地址转换成二进制;
按页的大小分离出页号P和位移量W(低位部分是位移量,高位部分是页号);
将位移量直接复制到内存地址寄存器的低位部分;
以页号查页表,得到对应块号,将块号转换成二进制数填入地址寄存器的高位部分,从而形成内存地址。
使用十进制方法求物理地址
根据逻辑地址求出页号P和页内位移W;
页号P=逻辑地址 % 页大小(%表示整除)
页内位移W=逻辑地址 mod 页大小
根据页号查页表得块号B;
物理地址=块号B×页大小+页内位移W
公式说明
物理地址=块起始地址+块内位移W
块起始地址=块长×块号
块长=页长
块内位移=页内位移
请求页式管理的页表结构
请求页式管理的页面置换算法
常用算法:
先进先出算法FIFO:淘汰先调入内存的页
最久未使用淘汰算法LRU:淘汰未被访问的页中时间最长的页
最近未使用淘汰算法NUR:淘汰第1个最近未被访问的页(淘汰页表中第一个访问位为0的页)
最不经常使用页面淘汰算法(LFU):淘汰那些到当前时间为止访问次数最少的
文档评论(0)