课程资源-分布式计算系统_第1页
课程资源-分布式计算系统_第2页
课程资源-分布式计算系统_第3页
课程资源-分布式计算系统_第4页
课程资源-分布式计算系统_第5页
已阅读5页,还剩89页未读 继续免费阅读

下载本文档

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

文档简介

分布式计算系DistributedComputingChapter3大学软n线程nnnn2进n进程的概念源自操作系统,从操作系统的角度来说, 进程是一个可并发执行的具有独立功能的程序关于某个3进 多个进程并发地共享同一个CPU以及其他硬件资源这样一实是透n每次创建一个进程的时候,操作系统必须创建一个完整的独立据段清零,将有关的程序到文本段中,随后为临时数据建n在两个进程之间切换CPU的开销同样会比较大,除了要保存转移后备缓冲器TLB中的地址转换缓存内容标记为无效。另须在切换进程之间先在主存和磁盘之间进行交4 进程通信代价大操作系统之间的信 进程之间的并发性粒度较粗和通信延迟使得细粒度的并发得 不适合并行计算和分布式计算通信和切换,会大大降低并行 不适合客户/服务器计算的要求,对于C/S结构来说,那些需务器、事务监督程序)很难体现效率。5n快速创建:在一个已有进程中创建一个新线程比创建一个全n快速终止线程比终止一个进程花费的n快速切换:同一 少n提高通信效率:线程提高了不同的执行程序间通信的效率。线程共享内存和文件,它们无需调用内核就可以互相通信n提高并发度:n节省内存空间线程合用进程地址空间,而不同进程独占6进nSingle-threaded🡪Multi-n为了有效地组织客户-服务器系统,通常使用多线程技7ThreadUsageinNondistributedvIPCn由于IPC需要内核干预才能进行,因此,要进行IPC的进程一的内存映像,同时还要刷新TLB。在内核中进行进程上下文 境的切换(图中的ThreadUsageinNondistributedvIPC9用户级空间的线程n在用户空间运行的线程库,由于它完全在用户空间n线程库起到一个微内核的作用,实质上是多线程应用户级空间的线程n因而,线程库的运行开销小、效率高的线程调度算法与操作系统的低级调度算法是无关ØnØ 多处理器的优点内核中运行的线程n在内核n内核中不但要保存进程的数据结构,也要建立和线程的数据结构及保存每个线程的,线程管理的所有工作由操发多线程应用程内核中运行的线程n优点Ø能够调度同一进程中多个线程同时在处理器上并行执行,充n缺点 用户态-内核态-用户态的模式切换,系统开销较n用户级线程(如Javann混合式线程(如 线程的线程的 ü最后,通过在不同CPU上执行不同LWP,LWP可以在多处n缺 仍然必须进行LWP的创建和销毁工作,这个工作的开不比内核级线程的小。然而值得庆幸的是,只是偶尔进行LWP的创建和销毁工作,而且受到操作系统的完 多线程 多线程nWeb浏览器一般首先获取HTML页面,随后再显示它。为了n从效果上来说,看起来就好像Web浏览器在同时进行多项任务与服务器建立一个独立连接和数据。只要假定进行导致阻塞的调用不会将整个进程挂起,与服务器建立连接和数据用来编多线程服n多线程客户有许多优点,但是分布式系统中多线程技术主要n实践证明,多线程技术不仅能够显著简化服务器代码,还能多线程服n有一个称作分发器(dispatcher)的线程,由它来 者线程(workerthread),由它来处理该请求。多线程服v构建服务器的3n线程nnnn客n客户的主要任务是与个人用户和n除了用户界面和其他应用相关软件之外,客户端软件中还包到它与进程的通信。n透明性通常是客户端存根处理的,该存根由服务器提供n有几种不同的方法用来处理定位透明性、定位透明性。关键是使用一个便利名系客 使在的情况下,也只不过是客户应用程序会察觉到暂时的性n与上面的方法类似,许多分布式系统利用客户端解决方案来实现透明性。比如说,想像一下一个带有对象的分布式系统。可以通过将调用请求转发给每一个对象的副本来达到透明性,如图3.6所示。客户将会透明地收集所有对客户端软件与分布v使用客户端解决方案来透明 n一个带有对象的分布式系统,可以通过将调用请求转发给每一个对象的副本来达到透明性,如图所示。客户将会透明地收集所有对象的响应,并且只向客户应用 程序送n线程nnnn服务n服务器是实现特定服务的进程,这些服务是为一组客n本质上,每个服务器的组织方式都一样:等待来自客服务n Servers:GeneralDesign在DCE中,使用守护程序来进行客户-服务器绑Servers:GeneralDesign在DCE中,使用守护程序来进行客户-服务器绑Servers:GeneralDesign行多个服务器,这些服务器大多地等待客户端的请求输入。与其对这么多进程进行追踪,不如由一个超级服务器来负责所有与一个特定的服务关联的端点更有效率服务 n有 。服务 n另 服务n状态无关服务器(sta n比如Web服务器就是状态无关的,它仅仅对输入的HTTP请服务n状态相关服务器(statefulserver)保存客户端的信息, n n然而,这个例子,同时也体现了状态相关服务器的一个主要 。一般说来,状态相关服务器必须将自身的整个状态都 之前服务 本 不会执 ,它只 进 服务n在客户首 服务器时,服务器将会 和所请求Web页面一起发送给浏览器,随后浏览器将会安全 。随后客户每次该服务器的时候,关于 务器这个事实是对用户完全隐藏的,这就会许多隐对象服n对象服务器是一种为支持分布式对象而定制的服务n一般的对象服务器与其他更为传统的服务器之间的区上说,服务器仅仅提供根据客户的请求调用本地对象的。因此,要改变所提供的服务相对来说比对象服nn对象由两部分构成:一个部分是代表自身状态的数据,另一部调用对象的 n暂时对象的生存时间至多不会超过其服务器的生存时间,还可能更n 调用对象的 存段中 必须将对象相互,那么这种策略就是必需的。如果是出层操作系统的支持,以确保不会段边界。n还 法可以让对象共享代码 对象适n对如何调用对象所做的决定一般称作激活策略(activation时称作对象适配器(objectadapter)或者对象包装器(object。的普通组件,只需要根据特定的策略来加以配对象适n对象适配器控制一个或多个图3.8持多种激活策略的对象适n对象适配器不知道受其控制的对n对于对象适配器来说,唯一重要到指向对象的,随后将请求分派给所指向的对象,但是n图3.8,对象适配器不是将请求直

图3.8持多种激活策略的n线程nnnn迁移的n分布式系统中的代码迁移是以进程迁移(processmigration)的由。理由当然是性能上的考虑。n基本的思想是:如果把进程由负载较重的机器上转移到负载迁移的迁移的代码 分布式系统 ReasonsforMigratingv对客户进行动态配置使其能够与服务器通信的原理。客户首代码n传统上,分布式系统的通信是关于进程间数据交换的。最广义nFugetta等19983 代码段部分包含构成正在运行的程序的所有指ü 源、 。 执行段(executionsegment),它用来 代码naappe代码n与弱可移动性相反,在支持强可移动性(strongmobility)的系n DAetDartmouthDartmouth代码出进一步区分,这与可移动性的强弱无nnd-iiitenreW 代码n接收者启动的迁移一般比发送者启动的迁移要更容易实现。在n如果要像发送者启动的迁移那样安全地向服务器上载代码,常常要求客户端预先在服务器上并通过验证。也就是说,要求服务器了解它的所有客户,这是因为客户很可能会服务n相反,如果是接收者启动的迁移,代码工作一般可以进行。此外,服务器一般并不对客户资源感,而向客户端ModelsforCodevn线程nnnnAgentn智能软件Agent是能为用户执行特定的任务、具有一Agentn自主性(Autonomy):一个agent能在没有与环境的相互作用或 通软件程序的基本属n反应性(Reactivity):agent当的反n主动/面向目标(proactivity/Goaloriented):agent化做出反应,而且在特定情况下采取主动行动,这种自 取主动的能力需要agentAgentn推理/学习/自适应能力(Learning/Adaptationagent的智能由n可移动性(mobilityagent在计算机网络中漫游的能力。n社会性(SocialabilityAgent有和其它Agent互之能力,的基础移动Agentn移动Agent就是一种可以移动的软件Agent,它可自主地在异n移动Agent不囿于初始执行的结点,而可在网络各主机间自主可携带自身状态和代码从进行自主通信的能力n显然,移动Agent然就是一种分布式应移动Agent--分布计算模vClient/Server计算模式移动Agent--分布计算模vClient/Server模式的不 静态结构缺乏网络Ø功 Ø功能固定、数据移动而网络高vØClient/Server模式:一种分布对象的静态配置移动Agent--分布计算模Agent派 Agent计算并交Agent出发Agent携带计算结回

Agent计算状态封装并迁Agent继续迁

Agent计算状态恢复并继续移动Agent--分布计算模Agent派 Agent计算并交Agent出发Agent携带计算结果

Agent计算状态封装并Agent继续迁

Agent计算状态恢复并继续移动Agent--分布计算模n移动agent是一个运行于开放、 移动Agent--分布计算模v例 numericaldata,

移动Agent--分布计算proxy移动Agent--分布计算模v现Ø功能移动而数据v结Ø有效节省带宽,降低对网络的可用性JianLu,YingjunLi,XiaoxingMa,CaiMin,Xian Tao,GuanqunZhang,JianzhongLiu:Ahierarchicalframework:forparallelseismicapplications.Commun.ACM43(10):55-59(2000)SevenGoodReasonsforMobilen1.TheyreducethenetworkØDistributedsystemsoftenrelyoncommunicationprotocolsinvolvingmultipleinteractionsto plishagiventask.Theresultisalotofnetworktraffic.Mobileagentsallowuserstopackageaconversationanddispatchittoadestinationhostwhereinteractionstakeplacelocally.Mobileagentsarealsousefulwhenreducingtheflowofrawdatainthenetwork.DannyB.Lange,MitsuruOshima:SevenGoodReasonsforMobileAgents.Commun.ACM42(3):88-89(1999)SevenGoodReasonsforMobilen2. enetworkØCriticalreal-timesystems,suchasrobotsinmanufacturingprocesses,needtorespondinrealtimetochangesintheirenvironments.Controllingsuchsystemsthroughafactorynetworkofsubstantialsizeinvolvessignificantlatencies.Forcriticalreal-timesystems,suchlatenciesarenotacceptable.Mobileagentsofferasolution,becausetheycanbedispatchedfromacentralcontrollertoactlocallyandexecutethecontroller’sdirectionsdirectly.DannyB.Lange,MitsuruOshima:SevenGoodReasonsforAgents.Commun.ACM42(3):88-89SevenGoodReasonsforMobilen3.Theyencapsulate Whendataisexchangedinadistributedsystem,eachhostownsthecodethatimplementstheprotocolsneededtoproperlycodeoutgoingdataand ingdata.However,asprotocolsevolveto newrequirementsforefficiencyorsecurity,itiscumbersomeifnotimpossibletoupgradeprotocolcodeproperly.Asaresult,protocolsoftenealegacyproblem.Mobileagents,ontheotherhand,canmoveremotehoststoestablish“channels”basedonproprietarySevenGoodReasonsforMobilen4.Theyexecuteasynchronouslyandn5.Theyadaptn6.Theyarenaturallyn7.Theyarerobustandfault-SevenGoodReasonsforMobile alnSecurenDistributedinformation municationnetworksservices.nWorkflowapplicationsandgroupware.nMonitoringandnotification.nInformationnParallelDannyB.Lange,MitsuruOshima:SevenGoodReasonsMobileAgents.Commun.ACM42(3):88-89移动Agent系 escript[Peter96][White94]和OdysseyGeneralMagic公司nAglets[Aglets98]:Aglets(Agent和Applet的缩略语)nConcordia[Concordia97]:Mitsubishi的Concordia是一个可进移动Agent系nAgentTclAgentTcl96]和D’AgentRobert98AgentTcl是Dartmouth学院研制的一个基于Tcl的移动agent系统。nMoleMole97]:Mole是德国斯图加特大学研制第一个基于nJum Beans[Jbeans99]:Jum AdAstranROMARoma00ROMA是麻省理工学院RobustOpenAgentSystemsResearchGroupn Guelph大学,李西宁,2000n nTheIMAGOsystemisamobileagentsysteminwhichPrologbased-agentscalledimagoescarryoutallthetasks.Liketheinsect,theimagoescanflyfromonehostintheInternettonAnotherwayofenvisioningitistoconsideranimagoasanentitywhichismature(autonomousandself-contained),haswings(mobility),andbearsthementalimageoftheprogrammer(in ligentagent)[Li01].nFromthecomputerterminologypointofview,thetermIMAGOisanabbreviationwhichstandsforIn ligentMobileAgentsGlidingOn-line.X.Li.IMAGO:AProlog-basedSystemforIn ligentMobileAgents.ProceedingsofMobileAgentsfor municationApplications(MATA'01),SpringerVerlagLNCS,pp.21-30,2001.nAnimagoiscomposedofthreenanidentifierwhichisuniquetobedistinguishedfromothers,nacodesegmentwhichcorrespondstoacertainalgorithmandnanexecutionthreadwhichismaintainedbyasinglememoryblock(amergedstack/heapwithautomaticnIntheIMAGOsystem,therearethreekindsofimagoes(agents):stationaryimagoes,workerimagoesandmessengernAnagentapplicationstartsfromastationaryimago.Likethequeenwiththedegeneratewingsinacolonyofbees,ithaslostitsmobi

温馨提示

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

评论

0/150

提交评论