SystemsSeminarScheduleMonday,18Februrary,4pm:"NewWineinOldBottles"-DouglasThain4March:Noseminar:Paradyn/CondorWeekTuesday,19March,3pm:"TheMicrosoft.
NETSystem"-MikeLitzkowTuesday,2April,3pm:"CondorandtheGrid"-MironLivnyMonday,15April,4pm:"ExploitingGray-BoxKnowledgeofBuffer-CacheManagement"-NathanBurnettMonday,29April,4pm:"BridgingtheInformationgapinStorageProtocolStacks"-TimDenehyNewWineinOldBottles:JavaonCondorDouglasThainUniversityofWisconsin18February2002AbstractWehaveaddedJavasupporttoCondor.
I'lltellyouhowitworksandhowtouseit.
Therearesomeniftyfeaturesforendusers.
Addingthiscodeforcedustothinkaboutthefundamentalproblemofcouplingsystemsandrepresentingerrors.
Alesson:Onemustconsiderthescopeofanerroraswellasitsdetail.
Disclaimer:Thisisstillrougharoundtheedges.
(Someonehadtogofirst!
)OutlineWhyJavaandCondorArchitectureInitialExperienceALittleErrorTheoryChangesfortheBetterConclusionsJavaforScientificComputingJavaisemergingasatoolforlargescale(Grande)scientificcomputing.
Moreaccessibletodomainscientists.
Simplifiedporting.
Fasterdevelopment,debugging.
Usercommunitiesareforming:ACMJavaGrandeConferenceTheJavaGrandeForumA.
Globus,E.
Langhirt,M.
Livny,R.
Ramamurthy,M.
Solomon,andS.
Traugott.
JavaGenesandCondor:Cycle-Scavenginggeneticalgorithms.
ACMConfonJavaGrande,2000.
LimitationsJavafloatingpointandcomplexarithmeticdonotyetsatisfyallofthescientificcommunity.
Argumentscontinuebetweenindustryandacademia.
JavaisyetslowerthancomparableprogramsinC/C++/Fortran.
WATcompilersandJITcompilersarecatchingup.
Youchoose:2xslowdownvs5xmachines.
Canwereallyharness5xmachineswhilestillmaintainingplatformindependenceCondorforScientificComputingCondorcreatesahigh-throughputcomputingsystemonacommunityofcomputers.
Ahigh-throughputcomputingsystemseekstomaximizetheamountofworkdoneoveralongperiodoftime.
Acommunityofcomputersmaybeanycollectionofmachinesthatagreetoworktogether.
CondorEnablesOrdinaryUsersINFNCentralManagercondorscheddJobJobJobJobJobcondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpuJobJobJobJobJobJobcondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpuJobJobJobJobJobJobcondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpucondorstartdRAMcpuJobJobJobJobJobJobUWCSCentralManager226CondorPools5576CondorHostsTop10CondorPools:TheHype:Java:"Writeonce,runanywhere!
"Condor:"Submitonce,runeverywhere!
"TheGrid:Uniform,dependable,consistent,pervasive,andinexpensivecomputing.
TheRealityCouplingsystemsisnottrivial!
Theeasypart:Puttingjavainfrontoftheprogramname.
Thetrickyparts:Javainstallationmesses.
Unavailablefilesystems.
Distinguishingprogramerrorsfromenvironmentalerrors.
OutlineWhyJavaandCondorArchitectureInitialExperienceALittleErrorTheoryChangesfortheBetterConclusionsscheddstartdMatchMakerMachinePoliciesJobPoliciesHomeFileSystemClaimingProtocolActivationProtocolMatchmakingProtocolExecutionProtocolshadowstarterForkForkTheJobForkCreatestheexecutionenvironment.
Exportsthedetails,policy,andI/Oservices.
JVMForkstartershadowForkForkHomeFileSystemWrapperI/OLibraryTheJobI/OServerI/OProxySecureRemoteI/OLocalSystemCallsLocalI/O(Chirp)UserInterfacecondor_status-javaNameJavaVendorVerStateActivityLoadAvMemaish.
cs.
wisc.
SunMicrosy1.
2.
2OwnerIdle0.
000249anfrom.
cs.
wisSunMicrosy1.
2.
2OwnerIdle0.
030249babe.
cs.
wisc.
SunMicrosy1.
2.
2ClaimedBusy1.
120123.
MachinesOwnerClaimedUnclaimedMatchedPreemptingINTEL/LINUX514101408500Total514101408500UserInterfaceuniverse=javaexecutable=Main.
classjar_files=MyLibrary.
jarinput=infileoutput=outfilearguments=Main123queuecondor_submitI/OInterfaceInput,output,anderrorfilesareautomaticallytransferredto/fromtheexecutionsite.
Anyothernamedfilesmaybetransferredaswell.
TodoonlineI/Owithouttransferringwholefiles,youmustmakesmallchangestothecode:FileInputStream->ChirpInputStreamFileOutputStream->ChirpOutputStreamApplicationJavaStandardLibrariesJavaVirtualMachineOperatingSystemCStandardLibraryChirpI/OLibraryAddedanewlibraryonexistinginterfaces.
Usermustcallnewconstructors.
JNIJavasymbolsarefullyqualified,sotransparentreplacedmentofclassesisnotpossible.
CouldreplacenativemethodsintheJVM,butthistiesustoopen-sourceJVMs.
Couldtraprealsystemcalls,butthesearecomplex(asynchronous,nonblocking,threaded)andmaybedifficulttodistringuishfromtheJVM'sownoperations.
OutlineWhyJavaandCondorArchitectureInitialExperienceALittleErrorTheoryChangesfortheBetterConclusionsInitialExperienceBadnews:Nearlyanyunexpectedfailurewouldcausethejobtobereturnedtotheuser:Outofmemoryatexecutionsite.
Javamisconfiguredatexecutionsite.
I/Oproxycan'tinitialize.
Homefilesystemoffline.
InitialExperienceAlthoughthiswascorrectinsomesense--theinformationwastrue--itwasveryfrustrating.
Userswanttoknowwhentheirprogramfailsbydesign(NullPointerException,)butnotifitfailsduetotheenvironment.
WhatdidwedowrongOutlineWhyJavaandCondorArchitectureInitialExperienceALittleErrorTheoryChangesfortheBetterConclusionsALittleErrorTheoryBuildonstandarddefinitionsfromfault-toleranceandprogramminglanguages.
Somebriefexamplestogettheidea.
ReturntoCondorandusethetheorytounderstandourdesignmistakes.
FaultToleranceTerminologyFailureAnexternally-visibledeviationfromspecifications.
ErrorAninternaldatastatethatleadstoafailure.
FaultAnexternaleventthatcreatesanerror.
A.
AvizienisandJ.
C.
Laprie.
Dependablecomputing:Fromconceptstodesigndiversity.
IEEE74(5)May1986.
ExampleClientServerWhatissqrt(4)Hmm,sqrt(4)is.
.
.
Hmm,sqrt(9)is.
.
.
Answer:3ERRORFAILUREFAULTImpliciterrorsThesystemclaimstohavereachedavalidresult,butanauditorclaimsitisinvalid.
Example:sqrt(3)==2ExpliciterrorsThesystemtellsusitcannotcompletethedesiredaction.
Example:filenotfound.
EscapingerrorsThesystemdetectsanerror,buthasnomethodofreportingit,soitescapesbyanalternateroute.
Example:coredump,kernelpanic.
JohnB.
Goodenough,ExceptionHandling:issuesandaproposednotation.
CACM18(120,December1975.
K.
EkandhamandA.
Bernstein.
SomenewTransitionsinhierarchicallevelstructures.
OperatingSystemsReview12(4),1978.
ProgramVirtualMemorySystemPhysicalMemoryBackingStoreloaddataCouldreturnadefaultvalue,butthatcreatesanimpliciterror.
Wouldliketoreturnanexpliciterror,butaloadinsnhasnoexitcode.
ParentProcessEscapingerror:Telltheparentthattheprogramcouldnotcomplete.
NormalExitAbnormalExitInterfaceContractsintload(intaddress);Theimplementormusteithercomputearesultthatconformstothecontract,orisobligedtocauseanescapingerror.
C.
Hoare.
Anaxiomaticbasisforcomputerprogramming.
CACM12(10:576-580,October1969.
B.
Meyer.
Object-OrientedSoftwareConstruction.
PrenticeHall,1997.
Exceptionsintopen(Stringfilename)throwsFileNotFound,AccessDenied;Alanguagewithexceptionsprovidesmorestructuretothecontract.
Adeclaredexceptionisanexpliciterror.
Yet,escapingerrorsarestillpossible.
ProgramVirtualFileSystemMemoryDiskopenSuccess,FileNotFound,AccessDeniedParentProcessNormalExitAbnormalExitMemoryCorrupt,DiskOffline,PigeonLostINTERFACEIMPLEMENTATIONErrorScopeInordertobeacceptedbyendusers,adistributedsystemmustbeabletodistinguishbetweenerrorscomputedbytheprogramanderrorsforceduponitbytheenvironment.
Weusethetermscopetodrawthedistinction.
ErrorScopeThescopeofanerroristheportionofthesystemthatitinvalidates.
Anerrormustbedeliveredtotheprocessresponsibleformanagingthatscope.
CallingFunctionFileFileNotFoundHandlerScopeErrorParentProcessPVMClusterPVMNodeCrashHypervisororOperatorMachineCacheCoherencyProblemParentProcessProcessRPCDisconnectErrorDetailThedetailofanerrordescribesinphenomenologicaltermsthecauseoftheerror.
Intherighthands,thedetailisuseful.
Inthewronghands,thedetailcanbemisleading.
SupposeopenreturnsAccessDenied.
.
.
Fileisnotaccessible-Ok.
Librarycontaining'open'isnotaccessible-Problem!
LessonsPrinciple1:Aroutinemustnotgenerateanimpliciterrorasaresultofreceivinganexpliciterror.
Principle2:Anescapingerrorconvertsapotentialimpliciterrorintoanexpliciterroratahigherlevel.
Principle3:Anescapingerrormustbepropagatedtotheprogramthatmanagestheerror'sscope.
OutlineWhyJavaandCondorArchitectureInitialExperienceALittleErrorTheoryChangesfortheBetterConclusionsJavaandCondorRevisitedWhatdidwedowrongWefocussedonerrordetailwithoutconsideringerrorscope.
JavaandCondorRevisitedTofixthesystem,werevisitedthenotionoferrorscopethroughout.
Twoexamples:JVMexitcodeI/OerrorsJVMExitCode1JobException:Programimagecorrupt.
1LocalResourceException:Homefilesystemoffline.
1RemoteResourceException:JavaMisconfigured.
1VirtualMachineException:Outofmemory.
1ProgramException:Nullpointer.
xProgramProgramexitedthroughSystem.
exit(x)0ProgramProgramexitedbycompletingmainExitCodeScopeDetailJVMstartershadowForkForkHomeFileSystemWrapperI/OLibraryTheJobResultFileJVMResultResultofExecutionAttempt+ResultofProgram,Ifany.
StarterResult+ProgramResultI/OErrorScopeAllJavaI/Ooperationsthrowasingleexceptiontype--IOException.
Ourmistake:convertalldetectederrorsintoIOExceptionsandpassthemtotheprogram.
MakessenseforFileNotFound,butnotforProxyUnavailableorCredentialsExpired.
JVMstarterWrapperI/OLibraryTheJobResultFileJVMResultResultofExecutionAttempt+ResultofProgram,Ifany.
ToI/OProxyErrorOutsideProgramScopeErrorInsideProgramScopeOutlineWhyJavaandCondorArchitectureInitialExperienceALittleErrorTheoryChangesfortheBetterConclusionsConclusionWestartedbuildingtheJavaUniversewithsomenaiveassumptionsabouterrors.
Onencounteringpracticaldifficulties,wethoughtmoreabstractlyabouterrorsanddevelopedthenotionofscopeanddetail.
Byroutingerrorsaccordingtotheirscope,wemadethesystemmorerobustandusable.
FoodforThoughtThereisn'talwaysaneasywaytopropagateanerrortothescopehandler.
Escapingerrortoparentprocess:RaiseaPOSIXsignal.
Escapingerrortothestarter:ThrowaJavaError,trappedbytheWrapper,placedinfile,readafterprocessexits.
FoodforThoughtThemereuseofexceptionsinaprogramdoesnotimplyadisciplinederrormanagement.
Forexample,throwsIOExceptionisaveryvaguestatementaboutaninterface.
WhatisanimplementorallowedtothrowCanopen()returnFileNotFound(Probably.
)Canread()throwsFileNotFound(Askingfortrouble.
)WhataboutConnectionRefusedFoodforThoughtAncontractcangovernmorethansimplytheinterfacespecification.
Considerthisself-cleaningprogram:fd=open("file");unlink("file");close(fd);WorksonUNIX,failsonWinNT.
Cananinterface(code+docs)reallystateallthenecessarysemanticinformationShoulditDeploymentAsofFebruary14th,theJavaUniverseisrunningon515RedHat7.
2machines.
WillberolledoutaspartofCondor6.
3.
2onallplatformsintheregularreleaseschedule.
SunJDK1.
2.
2onUNIXmachines.
SunJDK1.
3.
2onWinNTmachines.
"IstheJavaUniverseavailableonmymachine"condor_status-javac2clustertuxlabistatskywalker.
cs.
wisc.
eduAcknowledgementsAlthoughwemetakecredit(orblame)forthemostrecentchanges,theCondorarchitecturehasdealtwitherrorsformanyyears.
Muchcreditgoestothecoredesigners,esp.
MikeLitzkow,ToddTannenbaum,andDerekWright.
MoreInfo:TheCondorProject:http://www.
cs.
wisc.
edu/condorTheseslides:http://www.
cs.
wisc.
edu/~thainDouglasThainthain@cs.
wisc.
eduQuestionsnow
Digital-VM商家目前也在凑热闹的发布六月份的活动,他们家的机房蛮多的有提供8个数据中心,包括日本、洛杉矶、新加坡等。这次六月份的促销活动全场VPS主机六折优惠。Digital-VM商家还是有一点点特点的,有提供1Gbps和10Gbps带宽的VPS主机,如果有需要大带宽的VPS主机可以看看。第一、商家优惠码优惠码:June40全场主机六折优惠,不过仅可以月付、季付。第二、商家VPS主机套餐1...
BuyVM测评,BuyVM怎么样?BuyVM好不好?BuyVM,2010年成立的国外老牌稳定商家,Frantech Solutions旗下,主要提供基于KVM的VPS服务器,数据中心有拉斯维加斯、纽约、卢森堡,付费可选强大的DDOS防护(月付3美金),特色是1Gbps不限流量,稳定商家,而且卢森堡不限版权。1G或以上内存可以安装Windows 2012 64bit,无需任何费用,所有型号包括免费的...
主机参考最新消息:JustHost怎么样?JustHost服务器好不好?JustHost好不好?JustHost是一家成立于2006年的俄罗斯服务器提供商,支持支付宝付款,服务器价格便宜,200Mbps大带宽不限流量,支持免费更换5次IP,支持控制面板自由切换机房,目前JustHost有俄罗斯5个机房可以自由切换选择,最重要的还是价格真的特别便宜,最低只需要87卢布/月,约8.5元/月起!just...
accessdenied为你推荐
莲都区招投标中心办公场所地址变更公告新低ios支持ipad三星支付宝thinkphpThinkphp和onethink有什么区别cuteftpCuteFTP的主要功能是什么?cuteftp什么是 CuteFtp Flashfxp Leapftp FlashGetcuteftp什么是CuteFTP?如何将网站内容上传(FTP)到网站空间?重庆网站制作请问一下重庆网站建设哪家公司做得好,价格又便宜哦?科创板首批名单江苏北人的机器人在同行中的评价怎么样?
cn域名价格 国内vps 域名抢注工具 国内免备案主机 国外主机 免备案空间 国外bt 英语简历模板word 网站被封 丹弗 html空间 蜗牛魔方 毫秒英文 宁波服务器 免费美国空间 免费外链相册 智能dns解析 西安主机 photobucket 空间服务器 更多