分布式考试复习要点.docx
- 文档编号:26964151
- 上传时间:2023-06-24
- 格式:DOCX
- 页数:10
- 大小:20.42KB
分布式考试复习要点.docx
《分布式考试复习要点.docx》由会员分享,可在线阅读,更多相关《分布式考试复习要点.docx(10页珍藏版)》请在冰豆网上搜索。
分布式考试复习要点
分布式复习要点
第一章绪论:
●SETI@HOME(通过全球网络搜寻地外文明并对数据进行分析的科学研究计划)
●SETI中文含义:
TheSearchofExtraterrestrialIntelligence
BOINC即伯克利开放式网络计算平台,是目前主流的分布式计算平台之一。
●网络计算必须具备:
通用的计算平台、通用的访问方式、网络服务器。
网络计算按照数据处理方式和规模的不同分为高性能计算、网格计算、分布式计算和云计算
分布式系统的关键技术:
1,分布式存储技术
2,分布式文件系统
3,分布式并行处理技术
4,分布式数据库管理技术
5,分布式系统负载调度技术
第二章:
执行优先图用途:
支持对并发的设计
1.消息传递由发送和接收两个基本操作构成
•
语句并发(并行)的条件:
Bernstein条件:
当两个语句并发执行时,可能产生与顺序执行不同的结果。
让我们先定义两个符号:
1R(Si):
Si的读集,即在Si中被引用的所有变量的集合。
2W(Si):
Si的写集,即在Si中被修改的所有变量的集合。
Bernstein提出了以下三个条件,对于两个并发执行的语句S1和S2,必须满足这三个条件才能使它们并发执行的结果与它们以任意次序顺序执行的结果相同。
1R(S1)∩W(S2)=Ф
2R(S2)∩W(S1)=Ф
3W(S1)∩W(S2)=Ф
使用S1||S2表示语句S1和S2满足这三个条件,可以并行或并发执行。
例2.3假设S1为a:
=x+y,S2为b:
=x+z,用bernstein条件证明这两个语句可以并发执行。
解:
按照bernstein判定条件,因为R(S1)={x,y},R(S2)={x,z},W(S1)={a},W(S2)={b}
它们满足以下三个条件,即:
1R(S1)∩W(S2)=Ф
2R(S2)∩W(S1)=Ф
3W(S1)∩W(S2)=Ф
所以这两个语句可以并发执行
第三章:
•并行算法可以从不同的角度分类为:
–数值计算并行算法和非数值计算并行算法
–同步并行算法和异步并行算法
–共享存储并行算法和分布存储并行算法
常见的并行计算模型:
•PRAM模型:
由Fortune和Wyllie1978年提出,又称SIMD-SM模型。
有一个集中的共享存储器和一个指令控制器,通过SM的R/W交换数据。
•异步模型(APRAM):
又称分相(Phase)PRAM或MIMD-SM。
每个处理器有其局部存储器、局部时钟、局部程序。
•BSP模型:
块同步模型,是一种异步MIMD-DM模型,支持消息传递系统,块内异步并行,块间显式同步。
•logP模型:
由Culler(1993)年提出,是一种分布存储的、点到点通讯的多处理机模型。
PRAM(ParallelRandomAccessMachine)模型,即并行随机存取模型,是一种抽象的并行计算模型。
第四章:
•Petri网是1962年由德国科学家卡尔·A·佩特里首先提出。
•Petri网可以刻画系统的结构,也可以描述系统的动态行为。
•Petri网是一种基于图的形式化模型。
•Petri网以研究模型的组织结构和动态行为为目标,主要关注系统中可能发生的状态变化以及变化之间的关系。
petri网的性质:
•Petri网由于其结构、参数和初始状态标识的不同,而使其状态转换过程表现出不同的特性.在用Petri网建模后,就可以对系统进行特性分析,以检查实际系统的特性.
•借助Petri网可以研究两类特性:
与初始标识有关的称为行为特性,而与初始标识无关的,称为结构特性。
•其中行为特性包括可达性,活性等;结构特性包括安全性,有界性,可逆性和守恒性等。
可达性:
•是研究任何系统动态特性的基础,决定系统能否到达一个指定的状态.
•如果存在一个从M0到Mn的触发序列,我们称标识Mn是从M0可达的,触发序列转化为σ=M0t1M1t2M2…tnMn或简化为σ=t1t2…tn.可用M0[σ>Mn]表示三者之间的关系,即从标识M0经过触发序列σ到达标识Mn.
Petri网称为活性的<=>如果在任何状态M∈R(M0)下,通过适当的触发序列后,每个迁移最终都可以被触
第六章:
•临界区:
每个进程中访问临界资源的一段程序代码。
互斥的主要目标是保证在一个时刻只能有一个进程访问临界区。
互斥算法的分类
1.基于令牌的算法:
通过令牌拥有权来控制对共享资源的访问。
2.非基于令牌的算法:
通过进程之间的消息交换来协商对共享资源的访问。
互斥算法应满足的条件:
•无死锁:
当资源可用时进程不应该永远等待
•无饥饿现象:
每个对资源的访问请求最终都应能得到满足
•公平性:
进程对资源访问权的获得应是相对公平的。
衡量互斥算法性能的参数:
•每个请求的消息数
•同步延迟:
一个进程离开临界区到下一个进程进入该临界区的时间间隔,对共享资源的有效访问间隔。
•反应时间:
进程发出访问请求到执行完访问操作的时间间隔,主要依赖于系统的负载和调度的合理性。
第七章:
死锁问题:
•系统中有进程处于相互的无限等待状态(被阻塞)
•资源死锁和通信死锁
•等待图:
将系统中进程对资源的占用与需求共享情况用有向图表示
–进程集合{P0,P1,……,Pn}为节点集,当且仅当进程Pi等待一个被进程Pj占用的资源时,边(Pi,Pj)存在于图中。
资源(resources)分类
根据资源性质:
可剥夺资源(抢占)和不可剥夺资源
可抢占资源:
指资源占有进程虽然需要使用该资源,但另一个进程却强行把资源从占有者进程处抢来。
不可抢占资源:
指只有占用者进程不再需要使用该资源而主动释放资源外,其它进程不得在占有者进程使用资源过程中强行抢占。
•可抢占资源如:
CPU、主存、硬盘,该类资源可为多个进程共享(可抢占)
•不可抢占资源如:
打印机、读卡机,磁带驱动器,该类资源可为某个进程独享(不可抢占)
等待-死亡方案例题
•例题:
根据表1描述的5个进程的优先级及请求时间等信息,用等待-死亡方案画出时间轴上5个进程执行的时间和先后顺序。
并说明进程之间的等待关系。
等待-死亡方案和伤害-等待预防方案的区别:
•两种方案的区别:
•⑴在“等待-死亡”方案中,年长的进程必须等待年轻的进程释放它的资源,因此进程越“年长”,它就越容易引起等待。
与此相反,在“因伤等待”方案中,年长的进程决不会等待年轻的进程。
•⑵在“等待-死亡”方案中,进程pi可能被撤离若干次。
在“伤害-等待”方案中,进程pi撤离的次数较少。
分布式死锁检测:
•边跟踪算法:
各节点将自己的资源需求作为探测器沿依赖关系发送出去,如果某节点收到自己发出的探测器,则表明存在资源依赖回路。
•扩散计算算法:
当需要检测时,进程向它所依赖的进程发起询问,并将因此而引发的各个询问关联成等待图,或者通过接收应答将图消解,或者从中发现死锁。
•全局状态检测:
通过建立一致的全局状态图来检测是否有死锁发生。
第八章:
●一般型路由算法
●适合于所有类型的网络
●但是对于某种特定网络不是很有效
●特殊型路由算法
●只对特定的网络类型有效,如超立方、网格等
●这些算法由于利用了特定网络的拓扑属性,所以效率往往较高。
最短路由算法和非最短路由算法:
●最短路径算法
●对给定的源-目标对给出一个代价最小的路径
●路径的代价
●所有跳步(连接)代价的线性和。
●缺点:
可能会导致网络某一部分的拥塞
●非最短路由算法
●可以将消息路由到一个更长的路径从而避免拥塞。
●在某些情况下,随机路由可能是有效的。
一般类型网络的最短路径路由算法:
●Dijkstra集中式算法
●Ford分布式算法
●ARPAnet路由算法
第十章:
⏹可依赖系统(Dependable,Trustworthy)
⏹可用性(availability)
⏹系统可为用户服务的能力
⏹可靠性(Reliability)
⏹系统可连续工作的能力
⏹安全性(Safety)
⏹系统故障时产生危害的程度
⏹可维护性(Maintainability)
⏹系统故障修复的难度
⏹平均无故障时间(MTTF)MeanTimeToFailure
⏹平均能够正常运行多长时间,才发生一次故障。
用来度量可靠性
⏹p为每秒失效概率
⏹平均无故障时间(MTTF)=Σ1∞kp(1-p)k-1=1/p
⏹例:
p=10-6,MTTF=106秒=11.6天
⏹平均维修时间(MTTR)MeanTimeToRepair
⏹系统发生故障后维修和重新恢复正常运行平均花费的时间
⏹用来度量可维护性
⏹可用性=(MTTF/(MTTF+MTTR))
故障的类型:
⏹按照故障出现的概率
⏹短暂型(transient):
出现一次,再也不出现
⏹间歇型(intermittent):
消失后,再重复出现
⏹永久型(permanent):
一直存在
⏹按照故障产生的原因
⏹节点故障
⏹硬件故障
⏹软件故障
⏹时序故障
容错(faulttolerance)
⏹即使发生故障,系统仍能提供服务
⏹系统的容错能力用可允许的故障节点数量来衡量。
⏹如果系统能够在k个节点出现故障的情况下仍然能够完成任务,则称该系统为k-容错系统。
冗余类型:
⏹信息冗余:
如,海明码。
⏹时间冗余:
如,重发,重做
⏹物理冗余:
⏹软件:
如复制进程
⏹硬件:
如复制电路
⏹信息冗余和物理冗余都属于空间冗余
第十一章;
调度算法的目标和有效性评价:
有许多参数用于确定或测量一个调度算法的有效性:
•通信代价:
使用这个参数的调度算法可能要考虑到向一个给定的节点传送或者从一个给定节点接收一个报文花费的时间,更为重要的是必须考虑到为一个进程分配一个执行地点而引起的通信代价。
•执行代价:
这个参数反映的是将一个进程分配到一个指定的执行节点,在这个节点的执行环境下,执行这个程序所需的额外开销。
•资源利用率:
常用来表明基于分布式系统当前各个节点的负载情况,给一个进程分配的执行节点是否是合适的。
资源利用率参数常用负载状态来表示,常用的负载参数有资源的队列长度、内存的使用等等。
设计调度策略时要考虑的三个主要因素:
静态调度算法的目标是调度一个任务集合,使它们在各个目标节点上有最短的执行时间。
总体上来说,设计调度策略时要考虑的三个主要因素是处理机的互连、任务的划分和任务的分配。
通常用图模型表示任务和处理机的结构。
我们可以用任务优先图和任务交互作用图对任务集合建模。
任务优先图是一个有向无环图(DAG),
基于任务优先图的任务调度
●甘特图(ganttchart)用来描述进程对处理器的分配情况。
●甘特图以处理器为纵坐标,以时间为横坐标。
第十二章:
动态调度的组成要素
动态调度算法有六个策略:
启动策略、转移策略、选择策略、收益性策略、定位策略和信息策略。
1)启动策略的责任是决定谁应该激活负载平衡活动。
2)转移策略决定一个节点是否在合适的状态参与负载转移。
3)选择策略选择最适合转移最能起平衡作用的任务,并发送给合适的目标处理器。
4)收益性策略量化系统中负载不平衡程度,并且作为系统负载平衡潜在受益的估计,评估系统负载平衡是否是有收益的。
5)定位策略是寻找合适的节点共享负载。
6)信息策略决定收集系统中其他节点状态信息的时机、收集的方法和收集的信息。
第十三章:
分布式事务的特性:
ACID
●原子性(atomicity)——指事务执行时的不可分割性。
这个特性确保了每个事务要么全部发生,要么全部不发生。
●一致性(consistency)——事务执行的结果必须使数据库从一个一致性状态转到另一个一致性状态。
。
●隔离性(isolaty)——一个事务的执行不被其他事务干扰。
●持久性(durability)——一个事务一旦提交,它对数据库中数据的改变应该是永久性的。
无论系统发生任何故障,都不会丢失该事务的执行结果。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分布式 考试 复习 要点
![提示](https://static.bdocx.com/images/bang_tan.gif)