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
greencloudvps怎么样?greencloudvps是一家国外主机商,VPS数据中心多,之前已经介绍过多次了。现在有几款10Gbps带宽的特价KVM VPS,Ryzen 3950x处理器,NVMe硬盘,性价比高。支持Paypal、支付宝、微信付款。GreenCloudVPS:新加坡/美国/荷兰vps,1核@Ryzen 3950x/1GB内存/30GB NVMe空间/1TB流量/10Gbps...
我们在选择虚拟主机和云服务器的时候,是不是经常有看到有的线路是BGP线路,比如前几天有看到服务商有国际BGP线路和国内BGP线路。这个BGP线路和其他服务线路有什么不同呢?所谓的BGP线路机房,就是在不同的运营商之间通过技术手段时间各个网络的兼容速度最佳,但是IP地址还是一个。正常情况下,我们看到的某个服务商提供的IP地址,在电信和联通移动速度是不同的,有的电信速度不错,有的是移动速度好。但是如果...
百纵科技湖南百纵科技有限公司是一家具有ISP ICP 电信增值许可证的正规公司,多年不断转型探索现已颇具规模,公司成立于2009年 通过多年经营积累目前已独具一格,公司主要经营香港服务器,香港站群服务器,美国高防服务器,美国站群服务器,云服务器,母机租用托管!美国CN2云服务器,美国VPS,美国高防云主机,美国独立服务器,美国站群服务器,美国母机。美国原生IP支持大批量订货 合作 适用电商 亚马逊...
accessdenied为你推荐
strategicsns重庆网络公司一九互联重庆网络公司,重庆网络优化,重庆页面制作性价比高且便宜的网络公司有哪些?企业建网站企业为什么要建网站中国企业信息网中国企业网怎么样360公司迁至天津360公司前身是中国吗?现总裁是谁?传奇域名谁有霸气一点的传奇名字。给个网络u盘网吧网络U盘是怎么弄的123456hd手机卡上出现符号hd怎么取消工具条工具栏不见了怎么办discuz论坛discuz论坛怎么做
广东服务器租用 欧洲欧洲vps 最便宜虚拟主机 arvixe cpanel 视频存储服务器 国外bt 正版win8.1升级win10 css样式大全 免费静态空间 个人免费空间 微信收钱 股票老左 phpmyadmin配置 南通服务器 浙江服务器 lamp怎么读 可外链的相册 中国联通宽带测试 贵州电信 更多