分布式操作系统复习大纲

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• inconsistent (LSi, LSj) = {mij | send(mij) LSi ∧ rec(mij) ∈ LSj}
⒀全局状态的定义:
一个系统的全局状态GS是一个它的所有场点 的局部状态集合;即 GS = {LS1, LS2, ..., LSn} 其中n是系统中场点的个数。
⒁一致的全局状态、不一致的全局状态、 无过渡的全局状态和强一致的全局状态 的定义及例子:
透明性 描述
访问Access
位置Location 迁移Migration
隐藏数据表示中的差异以及如何访问资源
隐藏一个资源位于何处 隐藏一个资源可能移到另外位置
浮动Relocation
复制Replication
隐藏在使用时一个资源可能移到另外位置
隐藏一个资源被复制
并发Concurrency 隐藏一个资源可能被若干竞争用户共享
⑷事件e的时间戳的定义:
• 称事件e的逻辑时钟值LC(e)为事件e的时间 戳(Time Stamp简记为TS)。
⑸全序先于()关系的定义:
我们称进程pi中的事件a先于进程pj中的事件 b(以a b表示) 当且仅当 ①LCi (a) < LCj (b);或 ②LCi (a) = LCj (b),且pipj,其中关系“” 是进程的一个任意偏序。 实现关系“”的一个简单方法是给系统中每 个进程赋以一个唯一的进程号,且规定: 若i < j,则pi pj。 a b定义了一个全序关系。
部分管理 集中
分管 集中分布
合管 完全分布
⑶从实用的角度
⑷分布式计算机系统的资源管理的 算法
①招标(投标)算法 ②回声算法 ③由近及远算法
(7)分布式操作系统的同步算法
⑴偏序Happened-Before关系(筒称HB)的定义
⑵时钟(clock)条件的定义 ⑶系统的逻辑时钟的定义 ⑷事件e的时间戳的定义 ⑸全序先于()关系的定义 ⑹向量时钟的定义和向量时钟的实现规则以及例子
(2)时态逻辑模型
• ⑴模态逻辑的定义
• ⑵时态逻辑的定义,线性离散时态逻辑的 定义,语义模型 • ⑶用时态逻辑证明Dekker算法和Peterson 算法的安全性和活动性
(五)命名系统
(1)在一个系统中有多级标识符,一般至少有两级 标识符:
– 面向机器的标识符和 – 面向用户的标识符。
(2)标识符系统的组成 一个标识符系统由三部分组成:一级或多级标识符 的字母表,构成标识符的规则以及映射函数或映 射表。在对对象进行重定位、共享、创建、取消 等操作时,必须修改相应的映射机构。
向量时钟例子
⑺集中式互斥算法
⑻分布式算法(Lamport算法)
⑻分布式算法(Ricart-Agrawala算 法)ຫໍສະໝຸດ ⑼令牌算法⑽选举算法
⑾欺负(霸主Bully)算法
⑿局部状态的定义:
• transit(LSi, LSj) = {mij | send(mij)∈ LSi∧ rec(mij) LSj }
⑹向量时钟的定义和向量时钟的实 现规则以及例子:
设n为分布式系统中进程个数,每个进程Pi装配一 个向量时钟VCi[1, n],它是一个长度为n的向量。 可以把它想象为一个函数,赋给任何事件a一个向 量VCi(a)。 VCi的第i个分量VCi[i]对应于Pi自己的逻辑时间,即 Pi的内部事件计数。 VCi[j],j≠i是Pi对Pj逻辑时 间最佳猜测。更具体讲,在任何时间点,VCi的 第j个分量VCi[j]指示在Pi当前时间点“发生之前 HB”在Pj最近事件出现的逻辑时间,即进程Pj中 在因果关系上处于当前Pi之前的事件计数。
(0)分布式操作系统的定义
• 文献中已经给出分布式系统的各种定义, 没有一个是满意的并且没有一个为其他所 同意。为此,给出一个松散的特征就够了。 • Tanenbaum给出如下定义: • A distributed system is a collection of independent computers that appears to its user as a single coherent system. • 分布式操作系统是分布式系统的操作系统。
(1)分布式系统的体系结构类型
Tanenbaum和Renesse将分布式系统分成五 类: 1. 小型机类型(minicomputer model) 2. 工作站类型(workstation model) 3. 处理机池类型(processor pool model) 4. 工作站-服务器类型(workstation-server model) 5. 混合类型(hybrid model)
失效Failure 存留Persistence 隐藏一个资源的失效和恢复 隐藏是否一个(软件)资源在内存或在磁盘上
(6)分布式计算机系统的资源管理
⑴从单个资源与多个管理者的相互关系
⑵从多个资源与多个管理者的相互关系 ⑶从实用的角度 ⑷分布式计算机系统的资源管理的算法
⑴从单个资源与多个管理者的相互关系
分布式操作系统复习大纲
(一)分布式操作系统
(0)分布式操作系统的定义
(1)分布式系统的体系结构类型 (2)构造分布式操作系统的途径
(3)分布式操作系统的层次结构
(4)多机,网络和分布式操作系统间差别 (5)透明性(Transparency)意义 (6)分布式计算机系统的资源管理 (7)分布式操作系统的同步算法
• 一个全局状态 GS = {LS1, LS2, ..., LSn} 是一致的(consistent)当且仅当 1 i n1j n (inconsistent(LSi, LSj) =) • 一个全局状态是无过渡的(transitless),当 且仅当 1 i n1j n (transit(LSi, LSj) = ) 因此, 在一个无过渡的全局状态中,所有通 信通道均为空。 • 如果一个全局状态是一致的和无过渡的,则 称为强一致的(strongly consistent)。
⑴偏序Happened-Before关系(筒称 HB)的定义:
⒈a b ①若a和b是同一进程中的两个事件,且a在b 前发生;或者, ②若a是一进程中发送消息的事件,b是另一 进程中接收同一消息的事件。 ⒉该关系是传递的,即若a b且b c,则 有a c。 ⒊该关系是非自反的,即a~(aa),因一事 件不可能它自身之前发生。
(2)时态逻辑模型
(1) Petri网模型
⑴Petri网结构和Petri网图的定义
⑵标志的定义 ⑶作标志的Petri网结构和作标志的Petri网图的定义
⑷能行的转移的定义
⑸点燃的规则 ⑹用作标志的Petri网结构和作标志的Petri网图模拟 并发程序设计的例子,例如,临界区,有界缓冲 取,读者和作者,五个哲学家问题等,点燃4~5 次
• 全集中管理方式 即专制(autocratic)管理 • 功能分布管理方式即分担管理或分割 (partitioned)管理 • 浮动管理方式即 轮流(successive)管理 • 全分散管理方式即 民主(democratic)管理
⑵从多个资源与多个管理者的相互关系
①集中:所有资源属一个管理者管理。 ②分管:每一资源只属一个管理者管理。 ③部分管理:每一资源属于若干管理者管理。 ④合管:每一资源属于全部管理者共同管理。
例子
(二)分布式共享内存
(1)体系结构和动力
(2)实现分布式共享内存的算法 (3)存储一致性 (4)一致性协议
(1)体系结构和动力
(2)实现分布式共享内存的算法
• • • • 中央服务器(Central-Server)算法 迁移算法 读复制(Read-Replicatin)算法 完全复制算法
(7)分布式操作系统的同步算法
⑺集中式互斥算法 ⑻分布式算法(Lamport算法) ⑻分布式算法(Ricart-Agrawala算法) ⑼令牌算法 ⑾欺负(霸主Bully)算法 ⑿局部状态的定义 ⒀全局状态的定义 ⒁一致的全局状态、不一致的全局状态、无过渡的 全局状态和强一致的全局状态的定义及例子
⑵时钟(clock)条件的定义:
• 对系统中的任何事件a和b,若a b,则 LC(a)必须小于LC(b)。
⑶系统的逻辑时钟的定义:
• 系统的逻辑时钟(Logic Clock简记为LC) 是满足时钟条件的系统事件集合到非负整 数的映射。
{事件集合 } {非负整数集合
LC
}
• 当事件e 进程Pi时, LC(e)= LCi(e)。
向量时钟的实现规则
[IR1]向量时钟VCi,在进程Pi的任何两个相继 事件之间被增加。 VCi [i] := VCi [i] + d (d>0) [IR2]如果进程Pi的事件a是发送消息m事件, 则消息m被赋予一个向量时间戳tm= VCi (a); 进程Pj接收同样消息m时VCj作如下修改: kVCj [k] := max(VCj [k], tm[k])
(3)利用时间戳预防死锁方法
⑴等-死(wait-die)方法 ⑵因伤(wound-wait)等待
(4)死锁检测方法
• • • • 集中式死锁检测方式 层次式死锁检测方法 其它分布式方法Chandy-Misra-Haas算法 分布式事务处理死锁检测方法
(四)并发程序设计的数学模型
(1)Petri网模型
(2)构造分布式操作系统的途径
⑴从头开始; ⑵修改、扩充式; ⑶层次式。
(3)分布式操作系统的层次结构
• 一个分布式操作系统大致可分成四层,由内向外 依次是: ①执行层; ②进程通信层; ③服务支持层; ④用户接口层。
(4)多机、网络和分布式操作系统间差别
(5)透明性(Transparency)意义
(3)存储一致性
• • • • • • • • • 严格一致性(Strict Consistency) 顺序的一致性 (Sequential consistency) 因果一致性 一般一致性(General Consistency) 处理机一致性 (Processor consistency) 管道(PRAM)一致性 弱一致性(Weak consistency) 释放一致性(Release consistency) 入口一致性(Release consistency)
(4)一致性协议。
• 写-使无效协议和 • 写更新协议
(三)分布式系统中的死锁
(1)死锁和饥饿的定义
(2)分布式死锁的策略 (3)利用时间戳预防死锁方法 (4)死锁检测方法
(1)死锁和饥饿的定义
(2)分布式死锁的策略
四个策略被用来处理死锁: ⑴鸵鸟(ostirch)算法:忽略死锁问题。 ⑵检测和恢复(detection and recovery):允 许死锁出现,检测并试图恢复之。 ⑶预防(prevention):静态地使死锁结构上 成为不可能。 ⑷避免(avoidance):由仔细地分配资源算法 避免死锁。
相关文档
最新文档