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
BGP.TO目前针对日本和新加坡服务器进行促销,其中日本东京服务器6.5折,而新加坡服务器7.5折起。这是一家专门的独立服务器租售网站,提供包括中国香港、日本、新加坡和洛杉矶的服务器租用业务,基本上都是自有硬件、IP资源等,国内优化直连线路,机器自动化部署上架,并提供产品的基本管理功能(自助开关机重启重装等)。新加坡服务器 $93.75/月CPU:E3-1230v3内存:16GB硬盘:480GB ...
DiyVM是一家低调国人VPS主机商,成立于2009年,提供的产品包括VPS主机和独立服务器租用等,数据中心包括香港沙田、美国洛杉矶、日本大阪等,VPS主机基于XEN架构,均为国内直连线路,主机支持异地备份与自定义镜像,可提供内网IP。最近,商家对香港机房VPS提供5折优惠码,最低2GB内存起优惠后仅需50元/月。下面就以香港机房为例,分享几款VPS主机配置信息。CPU:2cores内存:2GB硬...
近日快云科技发布了最新的夏季优惠促销活动,主要针对旗下的香港CN2 GIA系列的VPS云服务器产品推送的最新的75折优惠码,国内回程三网CN2 GIA,平均延迟50ms以下,硬件配置方面采用E5 2696v2、E5 2696V4 铂金Platinum等,基于KVM虚拟架构,采用SSD硬盘存储,RAID10阵列保障数据安全,有需要香港免备案CN2服务器的朋友可以关注一下。快云科技怎么样?快云科技好不...
accessdenied为你推荐
支持ipadthinkphpthinkPHP怎么样呢新iphone也将禁售苹果ID换了个新的怎么还是停用字节跳动回应TikTok易主抖音字节跳动是什么意思?internetexplorer无法打开internet explorer网页打不开asp.net网页制作如何用DREAMWEAVER ASP.NET 做网页我要购买|我要查询|我要开户govya购物车什么叫淘宝购物车刚刚网刚刚网上刷单被骗了5万多怎么办啊 报警有用吗
免费网站域名申请 猫咪av永久最新域名 in域名注册 重庆域名注册 香港服务器租用99idc 高防dns 息壤备案 腾讯云数据库 sub-process godaddy优惠券 lamp配置 韩国网名大全 linux空间 圣诞促销 申请个人网站 美国在线代理服务器 metalink 免费dns解析 如何安装服务器系统 视频服务器是什么 更多