Annotation of 43BSDReno/contrib/isode-beta/doc/ftam/responder.tex, revision 1.1.1.1

1.1       root        1: % run this through SLiTeX with the appropriate wrapper
                      2: 
                      3: \begin{bwslide}
                      4: \part  {ISSUES IN IMPLEMENTING THE VIRTUAL FILESTORE}
                      5: 
                      6: \begin{nrtc}\bf
                      7: \item  A VIRTUAL FILESTORE FOR UNIX: TWO APPROACHES
                      8: 
                      9: \item  MAPPING THE NATIVE FILESYSTEM TO THE VIRTUAL FILESTORE
                     10: \end{nrtc}
                     11: \end{bwslide}
                     12: 
                     13: 
                     14: \begin{note}\em
                     15: one reason that the file protocol is relatively simple to implement
                     16: is that it is unconcerned with how the virtual filestore maps to the
                     17: realstore
                     18: 
                     19: this is the problem of the file service responder, which uses the file
                     20: service to transmit filestore abstractions, but must use the realstore
                     21: to ``emulate'' the virtual filestore
                     22: 
                     23: deciding on how to perform these mappings is perhaps the hardest part
                     24: of implementing ftam on a real system:
                     25: \begin{quote}
                     26: very difficult to transfer non-trivial file structures
                     27: 
                     28: but, the virtual filestore should make the problem $N$ rather than $N*N$
                     29: \end{quote}
                     30: \end{note}
                     31: 
                     32: 
                     33: \begin{bwslide}
                     34: \ctitle        {DIGRESSION: THE FTAM LIBRARY}
                     35: 
                     36: \begin{nrtc}
                     37: \item  APPROXIMATE LINES OF CODE (FOR THOSE WHO CARE)
                     38:     \begin{nrtc}
                     39:     \item      C: 23000
                     40: 
                     41:     \item      ASN.1: 2100 (COMPILED TO 11000 LINES OF C)
                     42:     \end{nrtc}
                     43: 
                     44: \item  SUPPORTS BOTH INITIATOR AND RESPONDER
                     45: 
                     46: \item  SERVICE LEVEL: RELIABLE
                     47: 
                     48: \item  SERVICE CLASSES: TRANSFER, ACCESS, MANAGEMENT, TRANSFER AND MANAGEMENT
                     49: 
                     50: \item  FUNCTIONAL UNITS: KERNEL, READ, WRITE, ACCESS, LIMITED FILE MANAGEMENT,
                     51:        ENHANCED FILE MANAGEMENT, GROUPING
                     52:     \begin{nrtc}
                     53:     \item      RESTRICTION: GROUPING IS REQUIRED
                     54:     \end{nrtc}
                     55: 
                     56: \item  ATTRIBUTE GROUPS: KERNEL, STORAGE AND SECURITY
                     57: \end{nrtc}
                     58: \end{bwslide}
                     59: 
                     60: 
                     61: \begin{bwslide}
                     62: \ctitle        {IMPLEMENTATION NOTES}
                     63: 
                     64: \begin{nrtc}
                     65: \item  PROCEDURE CALLS USED FOR SERVICE INTERFACE
                     66:     \begin{nrtc}
                     67:     \item      CONFIRMED SERVICES BLOCK UNTIL RESPONSE RECEIVED
                     68: 
                     69:     \item      F-WAIT (PSEUDO) SERVICE ADDED TO WAIT FOR .INDICATIONs
                     70:     \end{nrtc}
                     71: 
                     72: \item  LIBRARY SUPPORTS MULTIPLE ASSOCIATIONS
                     73: \end{nrtc}
                     74: \end{bwslide}
                     75: 
                     76: 
                     77: \begin{bwslide}
                     78: \ctitle        {AUTOMATIC TOOLS IN SUPPORT OF ASN.1}
                     79: 
                     80: \begin{nrtc}
                     81: \item  BECAUSE ASN.1 IS A ``FORMAL'' LANGUAGE, IT IS POSSIBLE TO WRITE
                     82:        PROGRAMS WHICH UNDERSTAND ASN.1 DESCRIPTIONS
                     83: 
                     84: \item  ONE EXAMPLE OF SUCH A PROGRAM IS ``PEPY'', AN ASN.1--COMPILER THAT
                     85:        PRODUCES ENCODERS, DECODERS, AND PRETTY-PRINTERS OF DATA STRUCTURES
                     86:        DEFINED BY ASN.1
                     87: 
                     88: \item  PEPY IS SUFFICIENTLY POWERFUL TO PRODUCE A DECODER OF THE FULL FPDU
                     89:        AND FADU SPECIFICATION (IT WAS USED EXTENSIVELY FOR THIS PURPOSE)
                     90: 
                     91: \item  PEPY HAS BEEN USED IN OTHER PROJECTS AND HAS PROVEN USEFUL IN
                     92:        FINDING ERRORS IN THE PDU SPECIFICATIONS
                     93: \end{nrtc}
                     94: \end{bwslide}
                     95: 
                     96: 
                     97: \begin{note}\em
                     98: actually, there is one *small* part of the FPDU specification that PEPY
                     99: doesn't support
                    100: \end{note}
                    101: 
                    102: 
                    103: \begin{bwslide}
                    104: \part* {A VIRTUAL FILESTORE\\ FOR UNIX:\\ TWO APPROACHES}\bf
                    105: 
                    106: \begin{nrtc}
                    107: \item  REGARDLESS OF THE NUMBER OF DIFFERENT LOCALSTORES THAT EXIST,
                    108:        IT SHOULDN'T BE SURPRISING THAT THERE IS MORE THAN ONE WAY TO MAP A
                    109:        VIRTUAL FILESTORE ONTO A LOCALSTORE
                    110: 
                    111: \item  LET'S CONSIDER THE UNIX LOCALSTORE (BECAUSE OF ITS SIMPLICITY) AND
                    112:        CONSIDER TWO DIFFERENT WAYS OF IMPLEMENTING THE VIRTUAL FILESTORE
                    113: \end{nrtc}
                    114: \end{bwslide}
                    115: 
                    116: 
                    117: \begin{bwslide}
                    118: \ctitle        {REVIEW: THE UNIX LOCALSTORE}
                    119: 
                    120: \begin{nrtc}
                    121: \item  FILES IN UNIX ARE BYTE STREAMS, WITHOUT ANY INHERENT STRUCTURING
                    122:        INFORMATION (e.g., RECORD LENGTHS, FORMATS, etc.)
                    123: 
                    124: \item  TWO TYPES OF FILES ARE OF INTEREST
                    125:     \begin{nrtc}
                    126:     \item      REGULAR FILES WHICH CONTAIN DATA
                    127: 
                    128:     \item      DIRECTORY FILES WHICH CONTAIN POINTERS TO OTHER FILES
                    129:     \end{nrtc}
                    130: 
                    131: \item  THE FILESYSTEM IS HIERARCHICAL (TREE-LIKE)
                    132: 
                    133: \item  THERE ARE RELATIVELY FEW OPERATIONS
                    134:     \begin{nrtc}
                    135:     \item      OPEN, READ, WRITE, CLOSE: MANIPULATE REGULAR FILES
                    136: 
                    137:     \item      LINK, UNLINK: MANIPULATE DIRECTORY FILES
                    138: 
                    139:     \item      CHOWN, CHMOD, UTIMES: CHANGE FILE ATTRIBUTES
                    140: 
                    141:     \item      STAT: RETURN INFORMATION ABOUT A FILE
                    142:     \end{nrtc}
                    143: \end{nrtc}
                    144: \end{bwslide}
                    145: 
                    146: 
                    147: \begin{bwslide}
                    148: \ctitle        {THE ``ALTERNATE FILESYSTEM'' APPROACH}
                    149: 
                    150: \begin{nrtc}
                    151: \item  OBSERVATION: THE UNIX LOCALSTORE ISN'T POWERFUL ENOUGH TO PERMIT
                    152:        A DIRECT MAPPING TO THE FILESTORE
                    153: 
                    154: \item  SOLUTION: ``PARTITION OFF'' A PART OF THE LOCAL FILESYSTEM,
                    155:        INACCESSIBLE TO MOST USERS, AND GIVE THE FTAM RESPONDER FULL REIGN
                    156:        THERE
                    157: \end{nrtc}
                    158: \end{bwslide}
                    159: 
                    160: 
                    161: \begin{bwslide}
                    162: \ctitle        {MAPPINGS}
                    163: 
                    164: \begin{nrtc}
                    165: \item  START WITH A ``TOP-LEVEL'' DIRECTORY
                    166: 
                    167: \item  TREAT EACH FILE IN THE VIRTUAL FILESTORE AS A UNIX DIRECTORY
                    168:     \begin{nrtc}
                    169:     \item      SINCE A FTAM FILENAME IS A SEQUENCE OF GraphicString's,
                    170:                USE A DIRECTORY FOR EACH STRING IN THE SEQUENCE
                    171:     \end{nrtc}
                    172: 
                    173: \item  IN THE FILE'S DIRECTORY
                    174:     \begin{nrtc}
                    175:     \item      HAVE A UNIX FILE \verb"attributes" WHICH CONTAINS
                    176:                DEFINITIONS FOR ALL OF THE FILE'S ATTRIBUTES
                    177: 
                    178:     \item      HAVE UNIX FILES CALLED \verb"descriptor" AND \verb"DU"
                    179:                WHICH DESCRIBE THE ROOT FADU
                    180: 
                    181:     \item      FOR EACH CHILD OF THE ROOT, HAVE A DIRECTORY
                    182:                (NAMED \verb"1", \verb"2", etc.)
                    183:     \end{nrtc}
                    184: \end{nrtc}
                    185: \end{bwslide}
                    186: 
                    187: 
                    188: \begin{bwslide}
                    189: \ctitle        {EXAMPLE: THE ``ALTERNATE FILESYSTEM'' APPROACH}
                    190: 
                    191: \vskip.5in
                    192: \diagram[p]{figure4}
                    193: \end{bwslide}
                    194: 
                    195: 
                    196: \begin{bwslide}
                    197: \diagram[p]{figure8}
                    198: \end{bwslide}
                    199: 
                    200: 
                    201: \begin{bwslide}
                    202: \ctitle        {BENEFITS OF THE ``ALTERNATE FILESYSTEM'' APPROACH}
                    203: 
                    204: \begin{nrtc}
                    205: \item  THE UNIX FILESYSTEM CAN HOST A DATABASE WHICH IS POWERFUL ENOUGH TO
                    206:        MODEL THE FULL STRUCTURE OF FILES IN THE VIRTUAL FILESTORE
                    207: 
                    208: \item  BY DISTINGUISHING BETWEEN FTAM ATTRIBUTES AND UNIX ATTRIBUTES,
                    209:        THE FULL SET OF FTAM ATTRIBUTES CAN POTENTIALLY BE SUPPORTED
                    210: \end{nrtc}
                    211: \end{bwslide}
                    212: 
                    213: 
                    214: \begin{bwslide}
                    215: \ctitle        {DISADVANTAGES OF\\ THE ``ALTERNATE FILESYSTEM'' APPROACH}
                    216: 
                    217: \begin{nrtc}
                    218: \item  NOT A ``INTEGRATED'' APPROACH
                    219:     \begin{nrtc}
                    220:     \item      USERS WISHING TO ACCESS FILES RESIDING IN THE LOCAL VIRTUAL
                    221:                FILESTORE MUST STILL USE FTAM (SLOW AND REDUNDANT)
                    222:     \end{nrtc}
                    223: 
                    224: \item  NOT VERY EFFICIENT USE OF UNIX RESOURCES
                    225: 
                    226: \item  REQUIRES SOME RE-INVENTING OF THE WHEEL
                    227: \end{nrtc}
                    228: \end{bwslide}
                    229: 
                    230: 
                    231: \begin{bwslide}
                    232: \ctitle        {THE ``INTEGRATED'' APPROACH}
                    233: 
                    234: \begin{nrtc}
                    235: \item  IS THERE A WAY TO MAP UNIX FILE STRUCTURE AND ATTRIBUTES DIRECTLY
                    236:        TO THE VIRTUAL FILESTORE?
                    237: 
                    238: \item  CAUTION:
                    239:     \begin{quote}\em
                    240:        SOMETIMES WHEN YOU TRY TO TURN AN APPLE INTO AN ORANGE YOU GET BACK A
                    241:        LEMON!    
                    242:     \end{quote}
                    243: \end{nrtc}
                    244: \end{bwslide}
                    245: 
                    246: 
                    247: \begin{bwslide}
                    248: \part* {MAPPING THE NATIVE FILESYSTEM TO THE VIRTUAL FILESTORE}\bf
                    249: 
                    250: \begin{nrtc}
                    251: \item  QUESTION: CAN AN ARBITRARY UNIX FILE APPEAR TO BE A FILE IN
                    252:        THE VIRTUAL FILESTORE?
                    253: 
                    254: \item  IMPLICATIONS
                    255:     \begin{nrtc}
                    256:     \item      THE UNIX FILE CONTENTS MAP TO AN FTAM FILE STRUCTURE
                    257: 
                    258:     \item      THE UNIX FILESYSTEM ATTRIBUTES MAP TO VIRTUAL FILESYSTEM
                    259:                ATTRIBUTES
                    260:     \end{nrtc}
                    261: \end{nrtc}
                    262: \end{bwslide}
                    263: 
                    264: 
                    265: \begin{bwslide}
                    266: \ctitle        {MAPPINGS}
                    267: 
                    268: \begin{nrtc}
                    269: \item  INITIALLY, CONSIDER ONLY
                    270:     \begin{nrtc}
                    271:     \item      UNSTRUCTURED BINARY FILES (FTAM-3)
                    272: 
                    273:     \item      UNSTRUCTURED TEXT FILES (NBS-2)
                    274: 
                    275:     \item      FILE DIRECTORY FILES (NBS-9)
                    276:     \end{nrtc}
                    277: 
                    278: \item  AUTHENTICATION
                    279:     \begin{nrtc}
                    280:     \item      FTAM INITIATOR MAPS TO USER ENTRY IN THE UNIX PASSWORD FILE
                    281: 
                    282:     \item      ``ANON'' INITIATOR PROVIDED FOR GUEST (RESTRICTED) ACCESS
                    283:     \end{nrtc}
                    284: 
                    285: \item  MAPPING BETWEEN USER/GROUP IDs (UIDs/GIDs) AND FTAM ENTITIES
                    286:     \begin{nrtc}
                    287:     \item      PASSWORD OR GROUP FILE USED TO MAP NUMBER TO NAME
                    288: 
                    289:     \item      IF ENTRY NOT FOUND, NUMBER CONVERTED TO STRING
                    290:     \end{nrtc}
                    291: 
                    292: \item  MAPPING BETWEEN UNIX TIME AND FTAM DATE/TIMES
                    293:     \begin{nrtc}
                    294:     \item      STRAIGHT-FORWARD (AT LAST)
                    295:     \end{nrtc}
                    296: \end{nrtc}
                    297: \end{bwslide}
                    298: 
                    299: 
                    300: \begin{bwslide}
                    301: \ctitle        {ATTRIBUTE MAPPINGS}
                    302: 
                    303: \begin{nrtc}
                    304: \item  FILENAME
                    305:     \begin{nrtc}
                    306:     \item      A SINGLE STRING (WHAT MOST PROFILES SPECIFY ANYWAY)
                    307: 
                    308:     \item      INTERPRETED RELATIVE TO THE USER'S HOME DIRECTORY 
                    309: 
                    310:     \item      CHANGING THIS ATTRIBUTE RENAMES THE FILE
                    311:     \end{nrtc}
                    312: 
                    313: \item  CONTENTS TYPE
                    314:     \begin{nrtc}
                    315:     \item      BASED ON FILE TYPE (MORE DETAIL LATER)
                    316:     \end{nrtc}
                    317: 
                    318: \item  ACCOUNT
                    319:     \begin{nrtc}
                    320:     \item      THE FILE'S GID (GROUP ID) ATTRIBUTE
                    321:     \end{nrtc}
                    322: 
                    323: \item  DATES AND TIMES
                    324:     \begin{nrtc}\small
                    325:     \item      OF CREATION AND LAST MODIFICATION: THE FILE'S LAST MODIFICATION
                    326:                TIME
                    327: 
                    328:     \item      OF LAST READ ACCESS: THE FILE'S LAST ACCESS TIME
                    329: 
                    330:     \item      OF LAST ATTRIBUTE MODIFICATION: THE INODE'S LAST CHANGE TIME
                    331: 
                    332:     \item      NOT STRICTLY ACCURATE SINCE WRITING TO A FILE CHANGES EACH
                    333:     \end{nrtc}
                    334: \end{nrtc}
                    335: \end{bwslide}
                    336: 
                    337: 
                    338: \begin{bwslide}
                    339: \ctitle        {ATTRIBUTE MAPPINGS (cont.)}
                    340: 
                    341: \begin{nrtc}
                    342: \item  IDENTITIES:
                    343:     \begin{nrtc}
                    344:     \item      OF CREATOR: THE FILE'S OWNER
                    345: 
                    346:     \item      OF OTHERS: DEPENDS ON THE FILE'S MODE, OTHERWISE UNAVAILABLE
                    347:     \end{nrtc}
                    348: 
                    349: \item  FILE-AVAILABILITY
                    350:     \begin{nrtc}
                    351:     \item      IMMEDIATE
                    352:     \end{nrtc}
                    353: 
                    354: \item  PERMITTED ACTIONS
                    355:     \begin{nrtc}
                    356:     \item      DEPENDS ON THE FILE'S MODE
                    357: 
                    358:     \item      READ, WRITE: BASED ON INITIATOR'S PERMISSIONS
                    359: 
                    360:     \item      READ ATTRIBUTES: ALWAYS
                    361: 
                    362:     \item      CHANGE ATTRIBUTES: ONLY IF OWNER OF FILE
                    363: 
                    364:     \item      DELETE: BASED ON WRITABILITY OF PARENT DIRECTORY
                    365:     \end{nrtc}
                    366: 
                    367: \item  FILESIZE
                    368:     \begin{nrtc}
                    369:     \item      THE FILE'S SIZE
                    370:     \end{nrtc}
                    371: \end{nrtc}
                    372: \end{bwslide}
                    373: 
                    374: 
                    375: \begin{bwslide}
                    376: \ctitle        {UNAVAILABLE ATTRIBUTES}
                    377: 
                    378: \begin{nrtc}
                    379: \item  FUTURE FILESIZE
                    380: 
                    381: \item  ACCESS CONTROL
                    382: 
                    383: \item  ENCRYPTION NAME
                    384: 
                    385: \item  LEGAL QUALIFICATIONS
                    386: 
                    387: \item  PRIVATE USE
                    388: \end{nrtc}
                    389: \end{bwslide}
                    390: 
                    391: 
                    392: \begin{bwslide}
                    393: \ctitle        {UNSTRUCTURED BINARY FILES}
                    394: 
                    395: \begin{nrtc}
                    396: \item  SEMANTICS: THE DOCUMENT CONSISTS OF A SINGLE DATA UNIT
                    397:     \begin{nrtc}
                    398:     \item      THE DATA UNIT CONSISTS OF AN UNBOUNDED SEQUENCE OF DATA
                    399:                ELEMENTS
                    400: 
                    401:     \item      EACH DATA ELEMENT IS AN OCTET STRING
                    402: 
                    403:     \item      TRANSFER SYNTAX IS NOT SELF-DELIMITING
                    404:     \end{nrtc}
                    405: 
                    406: \item  CONSTRAINT SET: UNSTRUCTURED
                    407: 
                    408: \item  THIS IS SIMPLY A REGULAR UNIX FILE, NO STRUCTURE MAPPING IS REQUIRED
                    409: \end{nrtc}
                    410: \end{bwslide}
                    411: 
                    412: 
                    413: \begin{bwslide}
                    414: \ctitle        {EFFICIENCY CONSIDERATIONS}
                    415: 
                    416: \begin{nrtc}
                    417: \item  NEED TO DETERMINE HOW FADUs MAP TO SSDUs
                    418: 
                    419: \item  IDEALLY, WISH TO CONFIGURE DATA TRANSFER SUCH THAT EACH PARTIAL
                    420:        FADU SENT MAPS TO EXACTLY ONE SSDU!
                    421: 
                    422: \item  THIS IS (ARGUABLY) A HORRIBLE VIOLATION OF THE LAYERING PHILOSOPHY
                    423: \end{nrtc}
                    424: \end{bwslide}
                    425: 
                    426: 
                    427: \begin{bwslide}
                    428: \ctitle        {UNSTRUCTURED TEXT FILES (VARCRLF)}
                    429: 
                    430: \begin{nrtc}
                    431: \item  SEMANTICS: THE DOCUMENT CONSISTS OF A SINGLE DATA UNIT
                    432:     \begin{nrtc}
                    433:     \item      THE DATA UNIT CONSISTS OF AN UNBOUNDED SEQUENCE OF DATA
                    434:                ELEMENTS
                    435: 
                    436:     \item      EACH DATA ELEMENT IS AN IA5String, TERMINATED BY CR-LF,
                    437:                AND NEITHER CR NOR LF MAY APPEAR ANYWHERE ELSE IN THE STRING
                    438: 
                    439:     \item      TRANSFER SYNTAX IS NOT SELF-DELIMITING
                    440:     \end{nrtc}
                    441: 
                    442: \item  CONSTRAINT SET: UNSTRUCTURED
                    443: 
                    444: \item  HOW TO DETERMINE IF REGULAR FILE IS BINARY OR TEXT
                    445:     \begin{nrtc}
                    446:     \item      USE A HEURISTIC (AND ALL THAT IMPLIES)
                    447:     \end{nrtc}
                    448: 
                    449: \item  OTHERWISE, GIVEN CR-LF VS. NEWLINE HANDLING, STRAIGHT-FORWARD TO
                    450:        HANDLE
                    451: \end{nrtc}
                    452: \end{bwslide}
                    453: 
                    454: 
                    455: \begin{bwslide}
                    456: \ctitle        {FILE DIRECTORY FILES}
                    457: 
                    458: \begin{nrtc}
                    459: \item  ALTHOUGH THE VIRTUAL FILESTORE DOESN'T SUPPORT A ``DIRECTORY''
                    460:        CONCEPT, WE CAN EMULATE IT
                    461: 
                    462: \item  EXPERIENCE WITH OTHER NETWORK FILE SERVICES HAS SHOWN THIS TO BE
                    463:        VERY USEFUL
                    464: \end{nrtc}
                    465: \end{bwslide}
                    466: 
                    467: 
                    468: \begin{bwslide}
                    469: \ctitle        {FILE DIRECTORY FILES (cont.)}
                    470: 
                    471: \begin{nrtc}
                    472: \item  SEMANTICS: THE DOCUMENT CONSISTS OF AN UNBOUNDED SEQUENCE OF DATA UNITS
                    473:     \begin{nrtc}
                    474:     \item      EACH DATA UNIT CONSISTS OF EXACTLY ONE DATA ELEMENT OF
                    475:                TYPE FileDirectoryEntry
                    476: 
                    477:     \item      THE TRANSFER SYNTAX IS SELF-DELIMITING
                    478:     \end{nrtc}
                    479: 
                    480: \item  CONSTRAINT SET: SEQUENTIAL FLAT
                    481: 
                    482: \item  QUESTION: WHAT FILENAME TO REPORT IN EACH ENTRY?
                    483: 
                    484: \item  EFFICIENCY CONCERN: ``BUFFER'' DATA ELEMENTS FOR F-DATA SERVICE
                    485: \end{nrtc}
                    486: \end{bwslide}
                    487: 
                    488: 
                    489: \begin{bwslide}
                    490: \ctitle        {EXAMPLE: FILE DIRECTORY FILE}\small
                    491: 
                    492: \begin{tgrind}
                    493: \let\linebox=\relax
                    494: \input figure9\relax
                    495: \end{tgrind}
                    496: \end{bwslide}
                    497: 
                    498: 
                    499: \begin{bwslide}
                    500: \ctitle        {COMPARISON OF THE TWO APPROACHES}
                    501: 
                    502: \begin{nrtc}
                    503: \item  ``PURITY'' OF VIRTUAL FILESTORE MAPPINGS
                    504:     \begin{nrtc}
                    505:     \item      ALTERNATE: ALL MAPPINGS CAN BE PERFORMED
                    506: 
                    507:     \item      INTEGRATED: MOST MAPPINGS ARE DIRECT, SOME ARE STRAINED, OTHERS
                    508:                ARE IMPOSSIBLE
                    509:     \end{nrtc}
                    510: 
                    511: \item  INTEGRATED: TIGHT INTERACTION WITH LOCAL ENVIRONMENT YIELDING
                    512:        SIMPLICITY OF IMPLEMENTATION
                    513:     \begin{nrtc}
                    514:     \item      ABOUT 3500 LINES OF C CODE
                    515:     \end{nrtc}
                    516: 
                    517: \item  EFFICIENCY OF IMPLEMENTATION
                    518:     \begin{nrtc}
                    519:     \item      ALTERNATE: EFFICIENT FOR VIRTUAL FILESTORE
                    520: 
                    521:     \item      INTEGRATED: EFFICIENT USE OF UNIX RESOURCES
                    522:     \end{nrtc}
                    523: \end{nrtc}
                    524: \end{bwslide}
                    525: 
                    526: 
                    527: \begin{note}\em
                    528: the responder, per se, currently runs on berkeley or at\&t unix
                    529: (although only the berkeley version has been extensively tested)
                    530: 
                    531: it was inspired, a bit, by the berkeley unix ftp server
                    532: 
                    533: the library, of course, just needs a decent C compiler, unix isn't an issue
                    534: \end{note}
                    535: 
                    536: 
                    537: \begin{bwslide}
                    538: \ctitle        {COMPARISON OF THE TWO APPROACHES (cont.)}
                    539: 
                    540: \begin{nrtc}
                    541: \item  FOR SIMPLE APPLICATIONS, THE ``INTEGRATED'' APPROACH IS PROBABLY
                    542:        SUPERIOR
                    543: 
                    544: \item  IT IS INSUFFICIENT FOR ADVANCED APPLICATIONS HOWEVER
                    545: 
                    546: \item  THIS SUGGESTS THAT IMPLEMENTATIONS IN THE LONG-TERM WILL PROBABLY
                    547:        EVOLVE TOWARD A HYBRID APPROACH
                    548: 
                    549: \item  PERHAPS THE NEXT GENERATION LOCALSTORE SHOULD BE DESIGNED WITH FTAM
                    550:        IN MIND?
                    551: \end{nrtc}
                    552: \end{bwslide}
                    553: 
                    554: 
                    555: \begin{note}\em
                    556: not discussed due to time constraints:
                    557: 
                    558: managing multiple associations at the file store
                    559: (needed: reasonable file-level locking facilities in the realstore)
                    560: \end{note}
                    561: 
                    562: 
                    563: \begin{bwslide}
                    564: \part* {SUMMARY}\bf
                    565: 
                    566: \begin{nrtc}
                    567: \item  THE FILE PROTOCOL IS TRIVIAL COMPARED TO IMPLEMENTING A GOOD MAPPING
                    568:        OF THE VIRTUAL FILESTORE
                    569: 
                    570: \item  THE ``ALTERNATE FILESYSTEM'' APPROACH CAN BE USED TO PROVIDE FULL
                    571:        VIRTUAL FILESTORE SERVICES
                    572: 
                    573: \item  THE ``INTEGRATED'' APPROACH, WHILE NOT AS CAPABLE, IS ACCEPTABLE FOR
                    574:        MOST APPLICATIONS
                    575: \end{nrtc}
                    576: \end{bwslide}

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.