分布式系统考题_第1页
分布式系统考题_第2页
分布式系统考题_第3页
分布式系统考题_第4页
分布式系统考题_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、以下答案不保证正确。在DSM模型中,如何分布共享页面?这些方法的优缺点是什么(没找到答案,不知道 对不对)分布共享页面:复制和迁移迁移:优点:实现一致性不是问题。每一页只有一个拷贝并根据需要来回调动。因为每 一页只有一个拷贝,所以不用担心不同的拷贝有不同的值。缺点:复制:优点:只复制只读页,那还没有问题。只读页永远不会被改变,所有的拷贝总是 一样的。缺点:复制读写页,因为不能改变一个拷贝而不管其它拷贝,所以如果一进程试图在一 复制页上写,就出现了潜在的不一致性问题。简述远程过程调用的步骤。0)在服务器生成这种RPC服务时向绑定服务器注册,绑定服务器接收到服务注册请求后 便将其记录在自己的数据库

2、中1)当客户程序发出LPC后,控制被转移到客户存根子程序。2)客户存根向绑定服务器发出请求,询问提供这种RPC的服务器地址,绑定服务器检索 数据库,把找到的服务器地址回送给客户存根3)客户存根接收到服务器地址后,进行参数集结,然后,客户存根把消息传递给远程服务 器。4)服务器的底层通信协议把接收到的调用消息分派给对应的服务器存根。服务器存根进行 参数还原,然后,服务器存根代表远程调用者发出LPC。5)位于服务器上的过程启动执行,基本上类似于传统的LPC。(6)过程调用结束后,调用结果返回给调用者,即服务器存根。(7)就像参数集结那样,服务器存根需要将调用结果集结成消息包,然后发送给客户存根。(

3、8)客户存根接收到结果消息后,必须将消息还原成LPC结果返回的格式,其后模拟LPC 返回。1.分布式操作系统与网络操作系统的主要区别是什么?分布式操作系统通常用来管理多处理器或者同构多处理机,其主要目的是隐藏硬件细节,管理硬件资源,提供系统接口,使得并发进程能够共享系统资源。系统包含有许多计算机。每台计算机都运行它自己的操作系统,而且按它的所有者的要 求工作。除了客户/服务器通信必须遵守协议之外,计算机之间基本上没有什么合作。如果两个进程同时发现协调者丢失,而同时启动恃强算法进行选举,会发生什么状况?两进程分别主持选举,两者比较高标号进程通知相对低标号进程停止,假设高标号进程为PP向所有高标号

4、进程发出选举信件,然后等待回答信件。如果等待时间超出预定的限度还没有回答,则P自动当选;P向所有低标号进程发出 当选信件。如果接收到回答信件,则P继续等待当选信件;如果时间超时尚无当选信件,则回 到(3),开始另一轮竞选。如果P接收到当选信件,则退出选举算法,记录新当选的标号进程为协调者。如果P接收到一封选举信件,则返回一封回答信件;如果P尚未启动选举算法,则 回到(3),开始另一轮选举。为什么基于令牌的互斥方法不需要逻辑时间上的“先于”关系?所有进程之间共享一枚令牌,得到令牌者方才有权访问临界区。因为唯一的令牌保证了临 界区的互斥。分布式数据库设计与集中式数据库设计在步骤和内容上有什么不同?

5、集中式数据库设计DATAID-1方法:需求分析,概念设计,逻辑设计,物理设计DATAID-D来自DATAID-1方法,增加了分布要求分析阶段,分布设计阶段编写罗密欧和朱丽叶进程同时发送消息然后再接收消息的基于UDP协议的程序。#include #include #include #include #define PORT_NUM 2222char message20;main( ) (/* 进程罗密欧:Juliet.c */int juliet,fromlen;struct sockaddr_in romeo_addr, juliet_addr;/*创建套接字juliet并填写网络端口 jul

6、iet_addr信息*/juliet= socket(AF_INET, SOCK_DGRAM, 0);juliet_addr.sin_family = AF_INET;juliet_addr.sin_addr.s_addr = INADDR_ANY;juliet_addr.sin_port = 0;/*把套接字juliet绑定到网络端口 */bind(juliet, (struct sockaddr*)&juliet_addr, sizeof(juliet_addr);/* 生成 romeo 的网络端口 romeo_addr */ romeo_addr.sin_family = AF_INET

7、;romeo_addr.sin_addr.s_addr = inet_addr( xxx.xxx.xxx.xxx” ); romeo_addr.sin_port = PORT_NUM;strcpy(message, “romeo, I love you!” );/*向romeo发送消息*/sendto(juliet, message, sizeof(message), 0, (struct sockaddr) & romeo_addr, sizeof( romeo_addr);fromlen = sizeof( romeo_addr);/*接收来自romeo的消息*/recvfrom(juli

8、et, message, sizeof(message), 0, (struct sockaddr) & romeo_addr, &fromlen);printf( “romeo says: %sn”,message);close(juliet); /* 关闭 juliet 套接字 */设有两个关系R,S分别位于不同的站点X,Y。若采用基于半连接算法计算R8S, 计算每种可用的半连接方案的代价,并选择使得传输代价最少的连接执行站点。ABC235536168346535268BCD356359683596416584解答如下: (1)n B,C(S) B C R8n B,C(S) A B C 3

9、52 3 5681 6 859 41 58R8S=(R8n B,C(S)8SY-X传输n B,C(S)到场地 X 传输代价=C0+C1*2*5=C0+10C1 X-Y在场地X计算半连接 传输R8K B,C(S)到场地Y传输代价=C0+C1*3*2=C0+6C1 总的传输代价C半=2C0+16C1(2) n B,C(R) B CR8K B,C(R) A B C356359686 8346S8R=(S8n B,C(R) )8RX-Y 传输n B,C(R)到场地 Y传输代价=C0+C1*2*4=C0+8C1Y-X在场地Y计算半连接传输R8K B,C(R)到场地X传输代价=C0+C1*3*3=C0+9C1总的传输代价C半=2C0+17C1所以,第一种方案传输代价是最小的、传输代价最少的连接执行站点是场地Y9.使用逻辑时钟的“先于”关系在以下表格中填入校正的时间(如需要),并标记出所 有的先于关系以及所有的并发事件进程1时间校正时间事件2A4B (向进程2发送消息)67C (从进程2接收消息F)8D (向进程3发送消息)进程2时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论