課程資源-分布式計(jì)算系統(tǒng)_第1頁(yè)
課程資源-分布式計(jì)算系統(tǒng)_第2頁(yè)
課程資源-分布式計(jì)算系統(tǒng)_第3頁(yè)
課程資源-分布式計(jì)算系統(tǒng)_第4頁(yè)
課程資源-分布式計(jì)算系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩89頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

分布式計(jì)算系DistributedComputingChapter3大學(xué)軟n線程nnnn2進(jìn)n進(jìn)程的概念源自操作系統(tǒng),從操作系統(tǒng)的角度來說, 進(jìn)程是一個(gè)可并發(fā)執(zhí)行的具有獨(dú)立功能的程序關(guān)于某個(gè)3進(jìn) 多個(gè)進(jìn)程并發(fā)地共享同一個(gè)CPU以及其他硬件資源這樣一實(shí)是透n每次創(chuàng)建一個(gè)進(jìn)程的時(shí)候,操作系統(tǒng)必須創(chuàng)建一個(gè)完整的獨(dú)立據(jù)段清零,將有關(guān)的程序到文本段中,隨后為臨時(shí)數(shù)據(jù)建n在兩個(gè)進(jìn)程之間切換CPU的開銷同樣會(huì)比較大,除了要保存轉(zhuǎn)移后備緩沖器TLB中的地址轉(zhuǎn)換緩存內(nèi)容標(biāo)記為無效。另須在切換進(jìn)程之間先在主存和磁盤之間進(jìn)行交4 進(jìn)程通信代價(jià)大操作系統(tǒng)之間的信 進(jìn)程之間的并發(fā)性粒度較粗和通信延遲使得細(xì)粒度的并發(fā)得 不適合并行計(jì)算和分布式計(jì)算通信和切換,會(huì)大大降低并行 不適合客戶/服務(wù)器計(jì)算的要求,對(duì)于C/S結(jié)構(gòu)來說,那些需務(wù)器、事務(wù)監(jiān)督程序)很難體現(xiàn)效率。5n快速創(chuàng)建:在一個(gè)已有進(jìn)程中創(chuàng)建一個(gè)新線程比創(chuàng)建一個(gè)全n快速終止線程比終止一個(gè)進(jìn)程花費(fèi)的n快速切換:同一 少n提高通信效率:線程提高了不同的執(zhí)行程序間通信的效率。線程共享內(nèi)存和文件,它們無需調(diào)用內(nèi)核就可以互相通信n提高并發(fā)度:n節(jié)省內(nèi)存空間線程合用進(jìn)程地址空間,而不同進(jìn)程獨(dú)占6進(jìn)nSingle-threaded??Multi-n為了有效地組織客戶-服務(wù)器系統(tǒng),通常使用多線程技7ThreadUsageinNondistributedvIPCn由于IPC需要內(nèi)核干預(yù)才能進(jìn)行,因此,要進(jìn)行IPC的進(jìn)程一的內(nèi)存映像,同時(shí)還要刷新TLB。在內(nèi)核中進(jìn)行進(jìn)程上下文 境的切換(圖中的ThreadUsageinNondistributedvIPC9用戶級(jí)空間的線程n在用戶空間運(yùn)行的線程庫(kù),由于它完全在用戶空間n線程庫(kù)起到一個(gè)微內(nèi)核的作用,實(shí)質(zhì)上是多線程應(yīng)用戶級(jí)空間的線程n因而,線程庫(kù)的運(yùn)行開銷小、效率高的線程調(diào)度算法與操作系統(tǒng)的低級(jí)調(diào)度算法是無關(guān)?n? 多處理器的優(yōu)點(diǎn)內(nèi)核中運(yùn)行的線程n在內(nèi)核n內(nèi)核中不但要保存進(jìn)程的數(shù)據(jù)結(jié)構(gòu),也要建立和線程的數(shù)據(jù)結(jié)構(gòu)及保存每個(gè)線程的,線程管理的所有工作由操發(fā)多線程應(yīng)用程內(nèi)核中運(yùn)行的線程n優(yōu)點(diǎn)?能夠調(diào)度同一進(jìn)程中多個(gè)線程同時(shí)在處理器上并行執(zhí)行,充n缺點(diǎn) 用戶態(tài)-內(nèi)核態(tài)-用戶態(tài)的模式切換,系統(tǒng)開銷較n用戶級(jí)線程(如Javann混合式線程(如 線程的線程的 ü最后,通過在不同CPU上執(zhí)行不同LWP,LWP可以在多處n缺 仍然必須進(jìn)行LWP的創(chuàng)建和銷毀工作,這個(gè)工作的開不比內(nèi)核級(jí)線程的小。然而值得慶幸的是,只是偶爾進(jìn)行LWP的創(chuàng)建和銷毀工作,而且受到操作系統(tǒng)的完 多線程 多線程nWeb瀏覽器一般首先獲取HTML頁(yè)面,隨后再顯示它。為了n從效果上來說,看起來就好像Web瀏覽器在同時(shí)進(jìn)行多項(xiàng)任務(wù)與服務(wù)器建立一個(gè)獨(dú)立連接和數(shù)據(jù)。只要假定進(jìn)行導(dǎo)致阻塞的調(diào)用不會(huì)將整個(gè)進(jìn)程掛起,與服務(wù)器建立連接和數(shù)據(jù)用來編多線程服n多線程客戶有許多優(yōu)點(diǎn),但是分布式系統(tǒng)中多線程技術(shù)主要n實(shí)踐證明,多線程技術(shù)不僅能夠顯著簡(jiǎn)化服務(wù)器代碼,還能多線程服n有一個(gè)稱作分發(fā)器(dispatcher)的線程,由它來 者線程(workerthread),由它來處理該請(qǐng)求。多線程服v構(gòu)建服務(wù)器的3n線程nnnn客n客戶的主要任務(wù)是與個(gè)人用戶和n除了用戶界面和其他應(yīng)用相關(guān)軟件之外,客戶端軟件中還包到它與進(jìn)程的通信。n透明性通常是客戶端存根處理的,該存根由服務(wù)器提供n有幾種不同的方法用來處理定位透明性、定位透明性。關(guān)鍵是使用一個(gè)便利名系客 使在的情況下,也只不過是客戶應(yīng)用程序會(huì)察覺到暫時(shí)的性n與上面的方法類似,許多分布式系統(tǒng)利用客戶端解決方案來實(shí)現(xiàn)透明性。比如說,想像一下一個(gè)帶有對(duì)象的分布式系統(tǒng)??梢酝ㄟ^將調(diào)用請(qǐng)求轉(zhuǎn)發(fā)給每一個(gè)對(duì)象的副本來達(dá)到透明性,如圖3.6所示。客戶將會(huì)透明地收集所有對(duì)客戶端軟件與分布v使用客戶端解決方案來透明 n一個(gè)帶有對(duì)象的分布式系統(tǒng),可以通過將調(diào)用請(qǐng)求轉(zhuǎn)發(fā)給每一個(gè)對(duì)象的副本來達(dá)到透明性,如圖所示??蛻魧?huì)透明地收集所有對(duì)象的響應(yīng),并且只向客戶應(yīng)用 程序送n線程nnnn服務(wù)n服務(wù)器是實(shí)現(xiàn)特定服務(wù)的進(jìn)程,這些服務(wù)是為一組客n本質(zhì)上,每個(gè)服務(wù)器的組織方式都一樣:等待來自客服務(wù)n Servers:GeneralDesign在DCE中,使用守護(hù)程序來進(jìn)行客戶-服務(wù)器綁Servers:GeneralDesign在DCE中,使用守護(hù)程序來進(jìn)行客戶-服務(wù)器綁Servers:GeneralDesign行多個(gè)服務(wù)器,這些服務(wù)器大多地等待客戶端的請(qǐng)求輸入。與其對(duì)這么多進(jìn)程進(jìn)行追蹤,不如由一個(gè)超級(jí)服務(wù)器來負(fù)責(zé)所有與一個(gè)特定的服務(wù)關(guān)聯(lián)的端點(diǎn)更有效率服務(wù) n有 。服務(wù) n另 服務(wù)n狀態(tài)無關(guān)服務(wù)器(sta n比如Web服務(wù)器就是狀態(tài)無關(guān)的,它僅僅對(duì)輸入的HTTP請(qǐng)服務(wù)n狀態(tài)相關(guān)服務(wù)器(statefulserver)保存客戶端的信息, n n然而,這個(gè)例子,同時(shí)也體現(xiàn)了狀態(tài)相關(guān)服務(wù)器的一個(gè)主要 。一般說來,狀態(tài)相關(guān)服務(wù)器必須將自身的整個(gè)狀態(tài)都 之前服務(wù) 本 不會(huì)執(zhí) ,它只 進(jìn) 服務(wù)n在客戶首 服務(wù)器時(shí),服務(wù)器將會(huì) 和所請(qǐng)求Web頁(yè)面一起發(fā)送給瀏覽器,隨后瀏覽器將會(huì)安全 。隨后客戶每次該服務(wù)器的時(shí)候,關(guān)于 務(wù)器這個(gè)事實(shí)是對(duì)用戶完全隱藏的,這就會(huì)許多隱對(duì)象服n對(duì)象服務(wù)器是一種為支持分布式對(duì)象而定制的服務(wù)n一般的對(duì)象服務(wù)器與其他更為傳統(tǒng)的服務(wù)器之間的區(qū)上說,服務(wù)器僅僅提供根據(jù)客戶的請(qǐng)求調(diào)用本地對(duì)象的。因此,要改變所提供的服務(wù)相對(duì)來說比對(duì)象服nn對(duì)象由兩部分構(gòu)成:一個(gè)部分是代表自身狀態(tài)的數(shù)據(jù),另一部調(diào)用對(duì)象的 n暫時(shí)對(duì)象的生存時(shí)間至多不會(huì)超過其服務(wù)器的生存時(shí)間,還可能更n 調(diào)用對(duì)象的 存段中 必須將對(duì)象相互,那么這種策略就是必需的。如果是出層操作系統(tǒng)的支持,以確保不會(huì)段邊界。n還 法可以讓對(duì)象共享代碼 對(duì)象適n對(duì)如何調(diào)用對(duì)象所做的決定一般稱作激活策略(activation時(shí)稱作對(duì)象適配器(objectadapter)或者對(duì)象包裝器(object。的普通組件,只需要根據(jù)特定的策略來加以配對(duì)象適n對(duì)象適配器控制一個(gè)或多個(gè)圖3.8持多種激活策略的對(duì)象適n對(duì)象適配器不知道受其控制的對(duì)n對(duì)于對(duì)象適配器來說,唯一重要到指向?qū)ο蟮模S后將請(qǐng)求分派給所指向的對(duì)象,但是n圖3.8,對(duì)象適配器不是將請(qǐng)求直

圖3.8持多種激活策略的n線程nnnn遷移的n分布式系統(tǒng)中的代碼遷移是以進(jìn)程遷移(processmigration)的由。理由當(dāng)然是性能上的考慮。n基本的思想是:如果把進(jìn)程由負(fù)載較重的機(jī)器上轉(zhuǎn)移到負(fù)載遷移的遷移的代碼 分布式系統(tǒng) ReasonsforMigratingv對(duì)客戶進(jìn)行動(dòng)態(tài)配置使其能夠與服務(wù)器通信的原理??蛻羰状an傳統(tǒng)上,分布式系統(tǒng)的通信是關(guān)于進(jìn)程間數(shù)據(jù)交換的。最廣義nFugetta等19983 代碼段部分包含構(gòu)成正在運(yùn)行的程序的所有指ü 源、 。 執(zhí)行段(executionsegment),它用來 代碼naappe代碼n與弱可移動(dòng)性相反,在支持強(qiáng)可移動(dòng)性(strongmobility)的系n DAetDartmouthDartmouth代碼出進(jìn)一步區(qū)分,這與可移動(dòng)性的強(qiáng)弱無nnd-iiitenreW 代碼n接收者啟動(dòng)的遷移一般比發(fā)送者啟動(dòng)的遷移要更容易實(shí)現(xiàn)。在n如果要像發(fā)送者啟動(dòng)的遷移那樣安全地向服務(wù)器上載代碼,常常要求客戶端預(yù)先在服務(wù)器上并通過驗(yàn)證。也就是說,要求服務(wù)器了解它的所有客戶,這是因?yàn)榭蛻艉芸赡軙?huì)服務(wù)n相反,如果是接收者啟動(dòng)的遷移,代碼工作一般可以進(jìn)行。此外,服務(wù)器一般并不對(duì)客戶資源感,而向客戶端ModelsforCodevn線程nnnnAgentn智能軟件Agent是能為用戶執(zhí)行特定的任務(wù)、具有一Agentn自主性(Autonomy):一個(gè)agent能在沒有與環(huán)境的相互作用或 通軟件程序的基本屬n反應(yīng)性(Reactivity):agent當(dāng)?shù)姆磏主動(dòng)/面向目標(biāo)(proactivity/Goaloriented):agent化做出反應(yīng),而且在特定情況下采取主動(dòng)行動(dòng),這種自 取主動(dòng)的能力需要agentAgentn推理/學(xué)習(xí)/自適應(yīng)能力(Learning/Adaptationagent的智能由n可移動(dòng)性(mobilityagent在計(jì)算機(jī)網(wǎng)絡(luò)中漫游的能力。n社會(huì)性(SocialabilityAgent有和其它Agent互之能力,的基礎(chǔ)移動(dòng)Agentn移動(dòng)Agent就是一種可以移動(dòng)的軟件Agent,它可自主地在異n移動(dòng)Agent不囿于初始執(zhí)行的結(jié)點(diǎn),而可在網(wǎng)絡(luò)各主機(jī)間自主可攜帶自身狀態(tài)和代碼從進(jìn)行自主通信的能力n顯然,移動(dòng)Agent然就是一種分布式應(yīng)移動(dòng)Agent--分布計(jì)算模vClient/Server計(jì)算模式移動(dòng)Agent--分布計(jì)算模vClient/Server模式的不 靜態(tài)結(jié)構(gòu)缺乏網(wǎng)絡(luò)?功 ?功能固定、數(shù)據(jù)移動(dòng)而網(wǎng)絡(luò)高v?Client/Server模式:一種分布對(duì)象的靜態(tài)配置移動(dòng)Agent--分布計(jì)算模Agent派 Agent計(jì)算并交Agent出發(fā)Agent攜帶計(jì)算結(jié)回

Agent計(jì)算狀態(tài)封裝并遷Agent繼續(xù)遷

Agent計(jì)算狀態(tài)恢復(fù)并繼續(xù)移動(dòng)Agent--分布計(jì)算模Agent派 Agent計(jì)算并交Agent出發(fā)Agent攜帶計(jì)算結(jié)果

Agent計(jì)算狀態(tài)封裝并Agent繼續(xù)遷

Agent計(jì)算狀態(tài)恢復(fù)并繼續(xù)移動(dòng)Agent--分布計(jì)算模n移動(dòng)agent是一個(gè)運(yùn)行于開放、 移動(dòng)Agent--分布計(jì)算模v例 numericaldata,

移動(dòng)Agent--分布計(jì)算proxy移動(dòng)Agent--分布計(jì)算模v現(xiàn)?功能移動(dòng)而數(shù)據(jù)v結(jié)?有效節(jié)省帶寬,降低對(duì)網(wǎng)絡(luò)的可用性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移動(dòng)Agent系 escript[Peter96][White94]和OdysseyGeneralMagic公司nAglets[Aglets98]:Aglets(Agent和Applet的縮略語)nConcordia[Concordia97]:Mitsubishi的Concordia是一個(gè)可進(jìn)移動(dòng)Agent系nAgentTclAgentTcl96]和D’AgentRobert98AgentTcl是Dartmouth學(xué)院研制的一個(gè)基于Tcl的移動(dòng)agent系統(tǒng)。nMoleMole97]:Mole是德國(guó)斯圖加特大學(xué)研制第一個(gè)基于nJum Beans[Jbeans99]:Jum AdAstranROMARoma00ROMA是麻省理工學(xué)院RobustOpenAgentSystemsResearchGroupn Guelph大學(xué),李西寧,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等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論