1XEROX1108USERSGUIDE3.THEFILESYSTEMIntroductionThe1108harddiskfilesystemisdesignedtoprovideInterlisp-Duserswithaflexiblemechanismforstoringandaccessingfiles.Likethefilesystemsforthe1100andthe1132,the1108filesystemsupportssuchfeaturesasrandomaccessandversionnumbersonfiles.Inaddition,the1108localfilesystemsupportsahierarchicalnamingstructureforfiles.DiskPartitionsTheharddiskusedwiththe1108maybepartitionedintoupto10regionscalledlogicalvolumes.Logicalvolumesarelikedirectoriesonthediskdevice:theymaybeusedtoholdInterlispvirtualmemories,Interlispfiles,Mesafiles,orStarfiles.YoucanpartitionthediskwiththeInstallationUtilityfloppyorwithOthello.Becausepartitioningtheharddiskerasesallitscontents,youareadvisedtopartitionthediskappropriatelybeforestoringanythingonit.Otherwise,youwillhavetooff-loadallfilesfromthedisk,repartitionit,andthencopythefilesbacktothedisk.AlthoughanInterlispvirtualmemoryfilecancoexistonalogicalvolumewithotherfiles,itisgenerallyadvisabletogiveeachvirtualmemoryfilealogicalvolumethatitdoesnotsharewithanythingelse.Otherwise,theresultingfragmentationadverselyaffectsswappingperformance.AlogicalvolumeintendedtocontainanInterlispvirtualmemoryshouldbebetween8,000diskpages(4megabytes)and64,000pages(32megabytes)long.Thecloserto64,000pagesyoucanmakeyourvirtualmemoryvolumethebetter,providedthereisstillenough êq?€`½ îïp`¬ÿ êq?€`½îïî êïg_p`¬î2~ïˆq`Xî2~ïˆî3Cïˆî�ïÄr`#î�ï³þ,¦#î3CïÄî3Cî3CïÄî�ïî+;î2î3›î3›ï\ƒî0ïZÝîv îˆî"„î%¤î&ëî+÷î3šî3šïZÝî0ïY7îTî"îëî"»î&î&tî)~î+ãî.'î3šî3šïY7î0ïW‘î¸î�î[îˆî!Qî%�î(Vî,0î.Øî3›î3›ïW‘î0ïUëîÅîÝî# î%�î+gî0Ûî3šî3šïUëî0ïTEî3î)î,î"�î"áî$vî*_î,Ãî07î3šî3šïTEî0ïRŸîyîKîGî s î(eî-…î3›î3›ïRŸî0ïPÕîJî–î–ïPÕw`]ïPÕîóîóïPÕî�ïJÏu`î�ïJ¬þ,¦Gî3CïJÏî3Cî3CïJÏv`iïJÏî3CïJÏî�ïIî Ö îHïIî�ïH}u`î�ïHlþ,¦#î3CïH}î3Cî3CïH}î0ïE×q`XîÿîGî7î«î!§î$î'xî*sî,f î3šî3šïE×î0ïD1îïîéîîaî}î#¥î#¥ïD1xïD1î(1î-„ïD1qïD1î.>î.–î3›î3›ïD1î0ïB‹îãî[îõ î$%î&1î(Ÿî+œî0�î3›î3›ïB‹î0ï@åî®î$îî:î!åî'àî,§î3šî3šï@åî0ï??î îÄîêî#¡î%¸î)î,Îî-‘î0çî3šî3šï??î0ï=™îÒî0îî î"uî"uï=™xï=™ î)Âî-Pï=™qï=™î-«î1îî3›î3›ï=™î0ï;óîŒîŒï;óxï;óî#ï;óqï;óîCîî"G î*Eî-î0¯î3šî3šï;óî0ï:Mîìîêîçî!Yî$4î&Êî,7î-ýî3›î3›ï:Mî0ï8§îªîµ î ”î%)î* î0î2î3šî3òî3òï8§î0ï7 îkî(î¢î"î#Àî)î*íî-êî1?î3šî3šï7î0ï5[î¸ îÚî•î!�î$öî(¡î+7î.\î2î3šî3šï5[î0ï3‘î‹î€ï3‘w`]ï3‘î€ï3‘î0ï0õq`Xîbî^îßî$-î)¯î+÷î.¸î3šî3šï0õî0ï/OîiîÆî‘îÁî"öî&æî*qî+Îî-mî3šî3šï/Oî0ï-©î¸î}î¢î!Iî%·î+Zî-Ãî/î3›î3›ï-©î0ï,îyî™îîÕî"”î&Óî*!î0Oî3›î3óî3óï,î0ï*] îôîêî#f î-7î3›î3›ï*]î0ï(·î3î î'Mî( î)¹î.ªî3šî3šï(·î0ï'îºîïî ©î#6î)Hî.&î3šî3šï'î0ï%kîôîîàî"Îî%Ùî*-î+ã î3›î3›ï%kî0ï#Åî î½îî ‡ î(]î+ÿî,uî/\î3›î3›ï#Åî0ï"îèîœîòî½î"‘î&xî)Çî.'î3›î3›ï"î0ï yî�îZî<î%™î)¬î+|î.hî3šî3šï y- êq?€`½±2XEROX1108USERSGUIDETHEFILESYSTEMspaceonthediskforanyothervolumesyoumightneed.TheIntermezzofilesystem(unlikeitspredecessors)allowsInterlispuserfilestocoexistonalogicalvolumewithMesaorStarfiles.SoitisnolongernecessarytohaveaspeciallogicalvolumegivenovertoLispuserfiles,thoughyoucanstillhaveoneifyoulike.NotethattostoreInterlispfilesonalogicalvolume,youmustcreateaLispdirectoryonthatvolume(seebelowforinstructions).FileSystemUtilityFunctionsSolongasthereisalogicalvolumewithaLispdirectoryonit,youwillhavealocaldiskdevicecalled{DSK}.ThisdevicecanbeusedfromwithinInterlisp-Djustlikethe{DSK}deviceonthe1100andthe1132,exceptthatitsupportsahierarchicalnamingstructureforfiles.IfyoudonothavealogicalvolumewithaLispdirectoryonit,Interlispemulatesthe{DSK}devicebyacoredevice.(AcoredeviceisafiledevicewhosebackingstoreisentirelywithintheLispvirtualmemory.)However,thiscausesthreeproblems.(a)Thecoredeviceprovideslimitedscratchspaceforsomesystemprograms;(b)whenrunningGREET,Interlispfailstofind{DSK}Init.Lispandhastopromptyouforaninitfile;and(c)sincethecoredeviceiscontainedinvirtualmemory,it(andthefilesstoredonit)canlastonlyaslongasyoukeepyourvirtualmemoryimage.TocreateaLispuserfiledirectoryonalogicalvolume,call(CREATEDSKDIRECTORYVolumeName)[Function]CREATEDSKDIRECTORYaffectsonlythespecifiedvolume,and(unlikepreviousversionsofthefilesystem)doesnotaffectMesaorStarfilesintheî3šï yî êïgq`Xî�ïˆîbïˆî�ïÄr`#î�ï³þ,¦#î3CïÄî3Cî3fî3fïÄî!hïFileNameThusthefileInit.LisponthevolumeLispFileswouldbecalled{DSK}Init.Lisp.î3òï §î êïgq`Xî�ïˆîbïˆî�ïÄr`#î�ï³þ,¦#î3CïÄî3Cî3fî3fïÄî!hïî/î0Ûî3šî3šïI¬î0ïHînîÞî%'î)“î+£î,Õî0Òî3šî3šïHî0ïF`î†î0îÆîàî";î' î*€ïF`î0ïCæîõîeî@î%Ÿî,Œî0î3šî3šïCæî0ïB@îî&îmî #î%Ÿî(gî.Qî3šî3šïB@î0ï@šîãîîèîçî °î#=î&rî)Žî+»î.Hî3šî3òî3òï@šî0ï>ôîîdî$?î+‹î/Óî3šî3šï>ôî0ï=Nî ‚î$ î+Ïî1Œî3›î3›ï=Nî0ï;¨î1îBîZî#Öî%ý î.Ëî1?î3šî3šï;¨î0ï:îî> î%î%Ïî,yî-Cî3›î3›ï:î0ï8\ îÿîi î& î&uî)’î)üî.¥î/î3›î3óî3óï8\î0ï6¶î‰ï6¶î�ï0Òu`î�ï0¯þ,¦Gî3Cï0Òî3Cî3Cï0Òv`iï0Òî3Cï0Òî�ï/î )îk î0ï/î�ï.€u`î�ï.oþ,¦#î3Cï.€î3Cî3Cï.€î0ï+Úq`XîOî`î Õî$Pî%òî)yî/ÿî2~î3›î3›ï+Úî0ï*4î¶î’î¿îÐî!vî#áî(qî-oî-×î14î3šî3šï*4î0ï(Žî¡î7îîï(Žî0ï&îdï&xï&î*îï&qï&î*îï&î0ï#šîÈî4î€îîî!ùî$fî)gî/pî3›î3›ï#šî0ï!ôîîFî)9î)‘î)‘ï!ô# êq?€`½‘5XEROX1108USERSGUIDETHEFILESYSTEMInaddition,youcanindicatesubdirectoriesusingthe>characterinfilenamestodelimitsubdirectorynames.Subdirectoriesallowyoutogroupfilestoafinerdegreeofgranularity.Fileswithsubdirectoriesarewritten{DSK}SubDir1>...>SubDirN>FileNameForexample,supposeyouhadafileLRdesign.TEditonthesubdirectoryParserGeneratoronthesubdirectoryCompileronthedirectory(logicalvolume)LispFilesoftheharddiskdevice.Itsnamewouldbewritten{DSK}Compiler>ParserGenerator>LRDesign.TEdit.Youcandefaultdirectorynamesforthe1108harddiskinanunusualbutsimpleway.Thatis:ifthefiledoesnothaveasubdirectoryandyouleaveoutthedirectory(logicalvolume)name,thedirectorydefaultstothenextlogicalvolumethathasaLispdirectoryonit,includingorafterthevolumecontainingthecurrentlyrunningvirtualmemory.ThusifyourdiskhasthelogicalvolumesLisp,Tajo,andLispFiles,andtheLispvolumecontainstherunningvirtualmemory,andonlytheLispFilesvolumehasaLispdirectoryonit,then{DSK}Init.Lispreferstothefile{DSK}Init.Lisp.Alltheutilityfunctionspresentedabovedefaultlogicalvolumenamesinasimilarway,exceptforthosethatcan't,suchasCREATEDSKDIRECTORY.IfyouwanttofindoutwhatthedefaultLispdirectoryis,call(DIRECTORYNAME'{DSK})ThisdefaultingconventionisnecessitatedbyseveralpartsoftheInterlispsystemthatcreatescratchfilesonthedevice{DSK}withoutspecifyingadirectory(logicalvolume).î)‘ï!ôî êïgq`Xî2~ïˆî3Cïˆî�ïÄr`#î�ï³þ,¦#î3CïÄî3Cî3CïÄî�ï÷îa î-î_î",î%¡î+î1?î3šî3šï>÷î0ï=Qî#î î#‹î&óî*Ÿî-£î3›î3›ï=Qî0ï;«îlîWîÀî#î*\î-£î0nî3šî3šï;«î0ï: î+î&œî+œî1aî3›î3›ï:î0ï8_î#î$3î&‰î)@î-Wî3šî3šï8_î0ï6¹îîqî"Pî'î,î0Óî2}î3šî3šï6¹î0ï5îî·î¼î"=î&€î)®î-ùî1Îî3›î3›ï5î0ï3mî#¯î$Mî%»î(ªî,Sî./î13î3šî3šï3mî0ï1£î“îîî¤î¦î%§î'iî)ûî)ûï1£w`]ï1£î)ûï1£î0ï.zq`X îî$'ï.zî0ï,î* îÈ î&!î(o î1Áî3šî3šï,î0ï*Zî™î®îËî ¬î&¦î+ïî/=î3šî3šï*Zî0ï(´îOî@îAî£î#*î'½î,È î3šî3šï(´î0ï&êîMîNîSî#Æï&êw`]ï&êî#Æï&êR êq?€`½=6XEROX1108USERSGUIDETHEFILESYSTEMDiskScavengingUnlikepreviousreleases,Intermezzoprovidesfulldisk-scavengingservicetoguardagainsttheunlikelyeventoffilesystemfailure.Therearetwoclassesoffilesystemfailure:Lispdirectoryfailureandlower-level(Pilot)failure.ScavengingserviceforLispdirectoriesisprovidedbySCAVENGEDSKDIRECTORY;scavengingforPilotisprovidedbyeitherOthelloortheInstallationUtility.Pilotfailuresmanifestthemselvesas"HARDDISKERROR"breakswithinLisp.Tofixsuchafailure,returntothetoplevel,logoutofLisp,getintoeitherOthelloortheInstallationUtility,usetheScavengeoptiononthelogicalvolumeinquestion,andthenrebootLisp.Lispdirectoryfailuresshowupasinfiniteloopingorotheraberrantbehaviorwhilethesystemisdoingadirectorysearchorenumeration.Torepairthedirectory,returntothetoplevelandcall(SCAVENGEDSKDIRECTORYVolumeName)[Function]Ifyouhaveanydoubtaboutwhichlogicalvolumestoscavenge,scavengethemall.Ifyouarenotsurewhichscavengertouseonavolume,usethemboth,Othello(ortheInstallationUtility)first,thenrunSCAVENGEDSKDIRECTORY.Neitherscavengerharmsanintactvolume.î#Æï&êî êïfòw`]î�ïˆq`Xîbïˆî�ïÄr`#î�ï³þ,¦#î3CïÄî3Cî3fî3fïÄî!hïÒî%„î%„ï>Òxï>Ò î. ï>Òqï>Òî3Cî3Cï>Òî&ï=, î·ï=,î0ï:²î�îTîàî§î Ùî$ÿî)Gî-ûî3›î3›ï:²î0ï9 îÚî¾î!Aî$Ùî'î'ˆî(Åî+ƒî-ýî0xî3šî3šï9 î0ï7fîOîAî×î!uî#oî$Œî)Þî,|î0î3Bï7fxï7fî3šî3šï7fî0ï5ÀîÇï5Àqï5Àî îGî#î#ï5Àxï5À î$îî(|ï5Àqï5Àî)Îî-oî1î3šî3šï5Àî0ï4î&î' î,©î3›î3›ï4î0ï2Pî{îiîNî!Hï2Pw`]ï2Pî!Hï2Pî0ï0Oy`iî0ï0O êq?€`½ü é TIMESROMAN  é HELVETICA é HELVETICA  þCLASSIC é HELVETICA é HELVETICAé HELVETICAé HELVETICAé HELVETICAé HELVETICA ~GACHAš–†Ü!ö'Oj/*(ÿÿžeöåÿÿÿÿÿÿ,{ERIS}INTERMEZZO>DOC>LOCALFILE.PRESS;1SANNELLA18-Mar-85 13:33:01