Annotation of 43BSDReno/contrib/isode-beta/doc/cookbook/services.tex, revision 1.1.1.1

1.1       root        1: % -*- LaTeX -*-                (really SLiTeX)
                      2: 
                      3: \begin{bwslide}
                      4: \part  {UNDERLYING SERVICES}\bf
                      5: 
                      6: \begin{nrtc}
                      7: \item  ABSTRACT SYNTAX NOTATION ONE (ASN.1)
                      8: 
                      9: \item  THE REMOTE OPERATIONS SERVICE
                     10: 
                     11: \item  THE BINDING SERVICE
                     12: 
                     13: \item  A DISCIPLINE FOR MEAL PREPARATION
                     14: \end{nrtc}
                     15: \end{bwslide}
                     16: 
                     17: 
                     18: \begin{note}\em
                     19: this part of the presentation corresponds to
                     20: the definition of abstract syntax notation one ([ISO~8824])
                     21: and both the old- and new-style ros
                     22: (namely [X.410] and [ISO~9072/1]),
                     23: along with chapter~3 of The Applications Cookbook
                     24: \end{note}
                     25: 
                     26: 
                     27: \begin{bwslide}
                     28: \part* {ABSTRACT SYNTAX NOTATION ONE (ASN.1)}\bf
                     29: 
                     30: \begin{nrtc}
                     31: \item  UNIVERSAL LANGUAGE TO DESCRIBE DATA WITH STRONG TYPING
                     32: 
                     33: \item  RICH, EXTENSIBLE SYNTAX
                     34: 
                     35: \item  USEFUL FOR SPECIFICATION OF NEW PROTOCOLS
                     36:     \begin{nrtc}
                     37:     \item      ``CLEAR TO READ'' SPECIFICATIONS (ha!)
                     38: 
                     39:     \item      NOT TIED TO MACHINE-ORIENTED STRUCTURES AND RESTRICTIONS
                     40:     \end{nrtc}
                     41: 
                     42: \item  REPRESENTATION CURRENTLY USED BY ALL OSI APPLICATIONS
                     43: \end{nrtc}
                     44: \end{bwslide}
                     45: 
                     46: 
                     47: \begin{bwslide}
                     48: \ctitle        {SYNTAX}
                     49: 
                     50: \begin{nrtc}
                     51: \item  FORMAT OF A MODULE:
                     52: \begin{verbatim}
                     53: <<module>> DEFINITIONS ::=
                     54: BEGIN
                     55: 
                     56: <<linkage>>
                     57: 
                     58: <<declarations>>
                     59: 
                     60: END
                     61: \end{verbatim}
                     62: 
                     63: \item  LINKAGE IS USED TO REFERENCE DECLARATIONS IN OTHER MODULES
                     64: 
                     65: \item  THREE KINDS OF DECLARATIONS
                     66:     \begin{nrtc}
                     67:     \item      TYPES: DATA STRUCTURES  
                     68: 
                     69:     \item      VALUES: INSTANCES OF TYPES
                     70: 
                     71:     \item      MACROS: LANGUAGE EXTENSION
                     72:     \end{nrtc}
                     73: \end{nrtc}
                     74: \end{bwslide}
                     75: 
                     76: 
                     77: \begin{bwslide}
                     78: \ctitle        {SOME EXAMPLES:\\ LINKAGE}
                     79: 
                     80: \vskip.5in
                     81: \begin{verbatim}
                     82: MTSAbstractService {
                     83:     joint-iso-ccitt mhs-motis(6) mts(3) modules(0)
                     84:         mts-abstract-service(3)
                     85: } DEFINITIONS ::=
                     86: 
                     87: BEGIN
                     88:     IMPORTS OBJECT, PORT FROM AbstractServiceNotation {
                     89:         joint-iso-ccitt mhs-motis(6) asdc(2) modules(0)
                     90:             notation(1)
                     91:     }
                     92: 
                     93: ...
                     94: 
                     95: END
                     96: \end{verbatim}
                     97: \end{bwslide}
                     98: 
                     99: 
                    100: \begin{bwslide}
                    101: \ctitle        {SOME EXAMPLES:\\ TYPES AND VALUES}
                    102: 
                    103: \vskip.5in
                    104: \begin{verbatim}
                    105: Multiple-defined-contexts ::=
                    106:     BOOLEAN
                    107: 
                    108: simple Multiple-defined-contexts ::=
                    109:     FALSE    -- or TRUE
                    110: 
                    111: ContentLength ::=
                    112:     INTEGER
                    113: 
                    114: RegistrationMailType ::=
                    115:     INTEGER {
                    116:         non-registered-mail (0),
                    117:         registered-mail (1),
                    118:         registered-mail-to-addressee-in-person (2)
                    119:     }
                    120: 
                    121: mymail RegistrationMailType ::=
                    122:     registered-mail    --or 1
                    123: \end{verbatim}
                    124: \end{bwslide}
                    125: 
                    126: 
                    127: \begin{bwslide}
                    128: \ctitle        {SOME EXAMPLES:\\ TYPES AND VALUES (cont.)}
                    129: 
                    130: \vskip.5in
                    131: \begin{verbatim}
                    132: RandomNumber ::=
                    133:     BIT STRING
                    134: 
                    135: Attribute-Groups ::=
                    136:     BITSTRING {
                    137:         storage(0), security(1), private(2)
                    138:     }
                    139: 
                    140: groups Attribute-Groups ::=
                    141:     { storage, private }    -- or '101'B
                    142: \end{verbatim}
                    143: \end{bwslide}
                    144: 
                    145: 
                    146: \begin{bwslide}
                    147: \ctitle        {SOME EXAMPLES:\\ TYPES AND VALUES (cont.)}
                    148: 
                    149: \vskip.5in
                    150: \begin{verbatim}
                    151: Content ::=
                    152:     OCTET STRING
                    153: 
                    154: NULL
                    155: 
                    156: SEQUENCE
                    157: 
                    158: SET
                    159: 
                    160: BilateralInfo ::=
                    161:     ANY
                    162: \end{verbatim}
                    163: \end{bwslide}
                    164: 
                    165: 
                    166: \begin{bwslide}
                    167: \ctitle        {SOME EXAMPLES:\\ TYPES AND VALUES (cont.)}
                    168: 
                    169: \vskip.5in
                    170: \begin{verbatim}
                    171: Name ::=
                    172:     SEQUENCE OF
                    173:         ISO8571-FADU.Node-Name
                    174: 
                    175: SecurityContext ::=
                    176:     SET OF SecurityLabel
                    177: 
                    178: MessageDeliveryEnvelope ::=
                    179:     SEQUENCE {
                    180:         message-delivery-identifier
                    181:             MessageDeliveryIdentifier,
                    182: 
                    183:         message-delivery-time
                    184:             MessageDeliveryTime,
                    185: 
                    186:         other-fields
                    187:             OtherMessageDeliveryFields
                    188:     }
                    189: \end{verbatim}
                    190: \end{bwslide}
                    191: 
                    192: 
                    193: \begin{bwslide}
                    194: \ctitle        {SOME EXAMPLES:\\ TYPES AND VALUES (cont.)}
                    195: 
                    196: \vskip.5in
                    197: \begin{verbatim}
                    198: MessagesWaiting ::=
                    199:     SET {
                    200:         urgent[0]
                    201:             DeliveryQueue,
                    202: 
                    203:         normal[1]
                    204:             DeliveryQueue,
                    205: 
                    206:         nonUrgent[2]
                    207:             DeliveryQueue,
                    208:     }
                    209: 
                    210: queue MessagesWaiting ::=
                    211:     {
                    212:         urgent { ... }, normal { ... }, nonUrgent { ... }
                    213:     }
                    214: \end{verbatim}
                    215: \end{bwslide}
                    216: 
                    217: 
                    218: \begin{bwslide}
                    219: \ctitle {SOME EXAMPLES:\\ TYPES AND VALUES (cont.)}\small
                    220: 
                    221: \vskip.5in
                    222: \begin{verbatim}
                    223: PerMessageSubmissionFields ::=
                    224:     SET {
                    225:        ...
                    226: 
                    227:         content-type
                    228:             ContentType,
                    229: 
                    230:         content-identifier
                    231:             ContentIdentifier
                    232:             OPTIONAL,
                    233: 
                    234:         priority
                    235:             Priority
                    236:             DEFAULT normal,
                    237: 
                    238:         per-message-indicators
                    239:             PerMessageIndicators
                    240:             DEFAULT {},
                    241: 
                    242:        ...
                    243:     }
                    244: \end{verbatim}
                    245: \end{bwslide}
                    246: 
                    247: 
                    248: \begin{bwslide}
                    249: \ctitle        {SOME EXAMPLES:\\ TYPES AND VALUES (cont.)}
                    250: 
                    251: \vskip.5in
                    252: \begin{verbatim}
                    253: PDU ::=
                    254:     CHOICE {
                    255:         FTAM-Regime-PDU,
                    256:         File-PDU,
                    257:         Bulk-Data-PDU
                    258:     }
                    259: 
                    260: SecurityPolicyIdentifier ::=
                    261:     OBJECT IDENTIFIER
                    262: 
                    263: ISO8571-FADU.Node-Name
                    264: \end{verbatim}
                    265: \end{bwslide}
                    266: 
                    267: 
                    268: \begin{bwslide}
                    269: \ctitle        {SOME EXAMPLES:\\ MACROS}
                    270: 
                    271: \vskip.5in
                    272: \begin{verbatim}
                    273: OPERATION MACRO ::=
                    274:     BEGIN
                    275:     TYPE NOTATION  ::= "ARGUMENT" NamedType Result Errors | empty
                    276:     VALUE NOTATION ::= value (VALUE INTEGER)
                    277:     Result         ::= "RESULT" NamedType | empty
                    278:     Errors         ::= "ERRORS" { ErrorNames } | empty
                    279: 
                    280:     NamedType      ::= identifier type | type    
                    281:     ErrorNames     ::= IdentifierList | empty
                    282:     IdentifierList ::= identifier | IdentifierList "," identifier
                    283:     END
                    284: 
                    285: users OPERATION
                    286:         RESULT       IA5List
                    287:         ERRORS       { congested, unableToOpenFile }
                    288:         ::=          2
                    289: \end{verbatim}
                    290: \end{bwslide}
                    291: 
                    292: 
                    293: \begin{bwslide}
                    294: \ctitle {SOME EXAMPLES:\\ MACROS (cont.)}
                    295: 
                    296: \vskip.5in
                    297: \begin{verbatim}
                    298: ERROR MACRO ::=
                    299:     BEGIN
                    300:     TYPE NOTATION  ::= "PARAMETER" NamedType | empty
                    301:     VALUE NOTATION ::= value (VALUE INTEGER)
                    302: 
                    303:     NamedType      ::= identifier type | type
                    304:     END
                    305: 
                    306: unableToOpenFile
                    307:         ERROR
                    308:         PARAMETER    IA5List
                    309:         ::=          2
                    310: \end{verbatim}
                    311: \end{bwslide}
                    312: 
                    313: 
                    314: \begin{bwslide}
                    315: \part* {THE REMOTE OPERATIONS SERVICE}\bf
                    316: 
                    317: \begin{nrtc}
                    318: \item  STANDARDIZED OSI MECHANISM FOR SPECIFYING TRANSACTIONS
                    319: 
                    320: \item  CURRENTLY ONLY CONNECTION-ORIENTED\\
                    321:        (i.e., ONLY CO-ROS IS DEFINED)
                    322: 
                    323: \item  TERMINOLOGY: ROS-USER, ROS-PROVIDER
                    324: \end{nrtc}
                    325: \end{bwslide}
                    326: 
                    327: 
                    328: \begin{bwslide}
                    329: \ctitle        {EXAMPLE INTERACTIONS:\\ INVOKE}
                    330: 
                    331: \vskip.5in
                    332: \diagram[p]{figure25}
                    333: \end{bwslide}
                    334: 
                    335: 
                    336: \begin{bwslide}
                    337: \ctitle        {EXAMPLE INTERACTIONS:\\ RESULT}
                    338: 
                    339: \vskip.5in
                    340: \diagram[p]{figure26}
                    341: \end{bwslide}
                    342: 
                    343: 
                    344: \begin{bwslide}
                    345: \ctitle        {EXAMPLE INTERACTIONS:\\ ERROR}
                    346: 
                    347: \vskip.5in
                    348: \diagram[p]{figure27}
                    349: \end{bwslide}
                    350: 
                    351: 
                    352: \begin{bwslide}
                    353: \ctitle        {EXAMPLE INTERACTIONS:\\ USER REJECTION}
                    354: 
                    355: \vskip.5in
                    356: \diagram[p]{figure28}
                    357: \end{bwslide}
                    358: 
                    359: 
                    360: \begin{bwslide}
                    361: \ctitle        {EXAMPLE INTERACTIONS:\\ PROVIDER REJECTION}
                    362: 
                    363: \vskip.5in
                    364: \diagram[p]{figure29}
                    365: \end{bwslide}
                    366: 
                    367: 
                    368: \begin{bwslide}
                    369: \ctitle        {RO-INVOKE SERVICE}
                    370: 
                    371: \begin{nrtc}
                    372: \item  UNCONFIRMED SERVICE:\\ RO-INVOKE.REQUEST, RO-INVOKE.INDICATION
                    373: 
                    374: \item  PARAMETERS
                    375: \[\begin{tabular}{ll}
                    376:     OPERATION NUMBER&          integer\\
                    377:     OPERATION CLASS&           (a)synchronous (local)\\
                    378:     \ \ \ (optional)&          \\
                    379:     ARGUMENT&                  asn.1 type (APDU)\\
                    380:     INVOCATION IDENTIFIER&     integer\\
                    381:     LINKED-INVOCATION ID&      integer\\
                    382:     PRIORITY (optional)&       integer (local)
                    383: \end{tabular}\]
                    384: 
                    385: \item  ARGUMENT IS OPTIONAL IN NEW-STYLE ROS
                    386: 
                    387: \item  THE LINKED-INVOCATION IDENTIFIER IS NOT PRESENT IN OLD-STYLE ROS
                    388: 
                    389: \item  APDU IS THE USER-SUPPLIED DATA STRUCTURE, AN APPLICATION PROTOCOL DATA
                    390:        UNIT
                    391: \end{nrtc}
                    392: \end{bwslide}
                    393: 
                    394: 
                    395: \begin{bwslide}
                    396: \ctitle        {RO-RESULT SERVICE}
                    397: 
                    398: \begin{nrtc}
                    399: \item  UNCONFIRMED SERVICE:\\ RO-RESULT.REQUEST, RO-RESULT.INDICATION
                    400: 
                    401: \item  PARAMETERS
                    402: \[\begin{tabular}{ll}
                    403:     INVOCATION IDENTIFIER&     integer\\
                    404:     RESULT&                    asn.1 type (APDU)\\
                    405:     PRIORITY (optional)&       integer (local)
                    406: \end{tabular}\]
                    407: 
                    408: \item  RESULT IS OPTIONAL IN NEW-STYLE ROS
                    409: \end{nrtc}
                    410: \end{bwslide}
                    411: 
                    412: 
                    413: \begin{bwslide}
                    414: \ctitle        {RO-ERROR SERVICE}
                    415: 
                    416: \begin{nrtc}
                    417: \item  UNCONFIRMED SERVICE:\\ RO-ERROR.REQUEST, RO-ERROR.INDICATION
                    418: 
                    419: \item  PARAMETERS
                    420: \[\begin{tabular}{ll}
                    421:     INVOCATION IDENTIFIER&     integer\\
                    422:     ERROR NUMBER&              integer\\
                    423:     PARAMETER (optional)&      asn.1 type (APDU)\\
                    424:     PRIORITY (optional)&       integer (local)
                    425: \end{tabular}\]
                    426: \end{nrtc}
                    427: \end{bwslide}
                    428: 
                    429: 
                    430: \begin{bwslide}
                    431: \ctitle        {RO-U-REJECT SERVICE}
                    432: 
                    433: \begin{nrtc}
                    434: \item  UNCONFIRMED SERVICE:\\ RO-U-REJECT.REQUEST, RO-U-REJECT.INDICATION
                    435: 
                    436: \item  PARAMETERS
                    437: \[\begin{tabular}{ll}
                    438:     INVOCATION IDENTIFIER&     integer\\
                    439:     REASON&                    integer\\
                    440: 
                    441:     PRIORITY (optional)&       integer (local)
                    442: \end{tabular}\]
                    443: \end{nrtc}
                    444: \end{bwslide}
                    445: 
                    446: 
                    447: \begin{bwslide}
                    448: \ctitle        {RO-P-REJECT SERVICE}
                    449: 
                    450: \begin{nrtc}
                    451: \item  PROVIDER-INITIATED SERVICE:\\ RO-P-REJECT.INDICATION
                    452: 
                    453: \item  PARAMETERS
                    454: \[\begin{tabular}{ll}
                    455:     INVOCATION IDENTIFIER&     integer\\
                    456:     \ \ \ (optional)&          \\
                    457:     REASON&                    integer\\
                    458:     APDU (optional)&           asn.1 type\\
                    459: \end{tabular}\]
                    460: 
                    461: \item  INVOCATION IDENTIFIER MAY NOT BE PRESENT IF:
                    462:     \begin{nrtc}
                    463:     \item      PROBLEM IS NOT RELATED TO A PARTICULAR INVOCATION, OR
                    464: 
                    465:     \item      THE INFORMATION IS UNAVAILABLE
                    466:     \end{nrtc}
                    467: 
                    468: \item  IF THE LOCAL PROVIDER COULD NOT SEND AN INVOCATION (OR RESULT OR ERROR)
                    469:        THEN APDU IS THE ASSOCIATED USER-SUPPLIED ARGUMENT
                    470: \end{nrtc}
                    471: \end{bwslide}
                    472: 
                    473: 
                    474: \begin{bwslide}
                    475: \ctitle        {REASONS FOR REJECTIONS}
                    476: 
                    477: \begin{nrtc}
                    478: \item  FOUR CLASSES OF REJECTIONS
                    479:     \begin{nrtc}
                    480:     \item      GENERAL PROBLEMS
                    481: 
                    482:     \item      INVOKE PROBLEMS
                    483: 
                    484:     \item      RETURN RESULT PROBLEMS
                    485: 
                    486:     \item      RETURN ERROR PROBLEMS
                    487:     \end{nrtc}
                    488: \end{nrtc}
                    489: \end{bwslide}
                    490: 
                    491: 
                    492: \begin{bwslide}
                    493: \ctitle        {GENERAL PROBLEMS:\\ DETECTED BY THE ROS-PROVIDER}
                    494: 
                    495: \begin{nrtc}
                    496: \item  UNRECOGNIZED APDU
                    497: 
                    498: \item  MISTYPED APDU
                    499: 
                    500: \item  BADLY STRUCTURED APDU   
                    501: \end{nrtc}
                    502: \end{bwslide}
                    503: 
                    504: 
                    505: \begin{bwslide}
                    506: \ctitle        {INVOKE PROBLEMS:\\ DETECTED BY THE ROS-USER}
                    507: 
                    508: \begin{nrtc}
                    509: \item  DUPLICATE INVOCATION
                    510: 
                    511: \item  UNRECOGNIZED OPERATION
                    512: 
                    513: \item  MISTYPED ARGUMENT
                    514: 
                    515: \item  RESOURCE LIMITATION
                    516: 
                    517: \item  INITIATOR RELEASING\footnote{not allowed in old-style ros}
                    518: 
                    519: \item  UNRECOGNIZED LINKED ID$^*$
                    520: 
                    521: \item  LINKED RESPONSE UNEXPECTED$^*$
                    522: 
                    523: \item  UNEXPECTED CHILD OPERATION$^*$
                    524: \end{nrtc}
                    525: \end{bwslide}
                    526: 
                    527: 
                    528: \begin{bwslide}
                    529: \ctitle        {RETURN RESULT PROBLEMS:\\ DETECTED BY THE ROS-USER}
                    530: 
                    531: \begin{nrtc}
                    532: \item  UNRECOGNIZED INVOCATION
                    533: 
                    534: \item  RESULT RESPONSE UNEXPECTED
                    535: 
                    536: \item  MISTYPED RESULT
                    537: \end{nrtc}
                    538: \end{bwslide}
                    539: 
                    540: 
                    541: \begin{bwslide}
                    542: \ctitle        {RETURN ERROR PROBLEMS:\\ DETECTED BY THE ROS-USER}
                    543: 
                    544: \begin{nrtc}
                    545: \item  UNRECOGNIZED INVOCATION
                    546: 
                    547: \item  ERROR RESPONSE UNEXPECTED
                    548: 
                    549: \item  UNRECOGNIZED ERROR
                    550: 
                    551: \item  UNEXPECTED ERROR
                    552: 
                    553: \item  MISTYPED PARAMETER
                    554: \end{nrtc}
                    555: \end{bwslide}
                    556: 
                    557: 
                    558: \begin{bwslide}
                    559: \ctitle        {REMOTE OPERATION MACROS}
                    560: 
                    561: \begin{nrtc}
                    562: \item  THE DEFINITIONS FOR REMOTE OPERATIONS USE THE ASN.1 MACRO FACILITY
                    563: 
                    564: \item  ALTHOUGH PROBLEMATIC FOR PARSERS, IT RESULTS IN VASTLY SIMPLIFIED
                    565:        SPECIFICATIONS
                    566: \end{nrtc}
                    567: \end{bwslide}
                    568: 
                    569: 
                    570: \begin{bwslide}
                    571: \ctitle        {AN EXAMPLE}
                    572: 
                    573: \vskip.5in
                    574: \begin{verbatim}
                    575: finger  OPERATION
                    576:         ARGUMENT        IA5List
                    577:         RESULT          IA5List
                    578:         ERRORS          { congested, unableToAccessFile,
                    579:                           unableToPipe, unableToFork,
                    580:                           errorReading }
                    581:         ::=             5
                    582: 
                    583: congested
                    584:         ERROR
                    585:         ::=             0
                    586: \end{verbatim}
                    587: \end{bwslide}
                    588: 
                    589: 
                    590: \begin{bwslide}
                    591: \ctitle        {REMOTE OPERATION MACROS (cont.)}
                    592: 
                    593: \begin{nrtc}
                    594: \item  USING THE \verb"LINKED" CLAUSE, AN OPERATION CAN DEFINE LINKED
                    595:        OPERATIONS
                    596: 
                    597: \item  AN OPERATION OR ERROR VALUE CAN ALSO TAKE A GLOBAL VALUE
                    598:     \begin{nrtc}
                    599:     \item      AN OBJECT IDENTIFIER IS USED IN ADDITION TO THE
                    600:                OPERATION OR ERROR CODE    
                    601:     \end{nrtc}
                    602: 
                    603: \item  THE \verb"BIND" AND \verb"UNBIND" MACROS ARE USED TO DEFINE BINDING
                    604:        INFORMATION
                    605: \end{nrtc}
                    606: \end{bwslide}
                    607: 
                    608: 
                    609: \begin{bwslide}
                    610: \part* {THE BINDING SERVICE}\bf
                    611: 
                    612: \begin{nrtc}
                    613: \item  OLD- AND NEW-STYLE ROS USE DIFFERENT METHODS FOR BINDING
                    614: 
                    615: \item  FOR OUR PURPOSES, THE METHOD OF BINDING IS UNIMPORTANT
                    616: 
                    617: \item  BUT WE'LL BRIEFLY REVIEW THEM ANYWAY FOR COMPLETENESS
                    618: \end{nrtc}
                    619: \end{bwslide}
                    620: 
                    621: 
                    622: \begin{bwslide}
                    623: \ctitle        {OLD-STYLE BINDING}
                    624: 
                    625: \begin{nrtc}
                    626: \item  IN OLD-STYLE ROS, BINDING WAS DONE IN ONE OF TWO WAYS:
                    627:     \begin{nrtc}
                    628:     \item      BY USING AN EXISTING RELIABLE TRANSFER SERVICE ASSOCIATION
                    629: 
                    630:     \item      BY USING THE RO-BEGIN AND RO-END SERVICE ([ECMA~TR/31] ONLY)
                    631:     \end{nrtc}
                    632: \end{nrtc}
                    633: \end{bwslide}
                    634: 
                    635: 
                    636: \begin{bwslide}
                    637: \ctitle        {OLD-STYLE BINDING (cont.)}
                    638: 
                    639: \vskip.5in
                    640: \diagram[p]{figure7}
                    641: \end{bwslide}
                    642: 
                    643: 
                    644: \begin{bwslide}
                    645: \ctitle        {NEW-STYLE BINDING}
                    646: 
                    647: \begin{nrtc}
                    648: \item  IN NEW-STYLE ROS, BINDING IS ALSO DONE IN ONE OF TWO WAYS:
                    649:     \begin{nrtc}
                    650:     \item      BY USING AN EXISTING RELIABLE TRANSFER SERVICE ASSOCIATION
                    651: 
                    652:     \item      BY USING ASSOCIATION CONTROL
                    653:     \end{nrtc}
                    654: \end{nrtc}
                    655: \end{bwslide}
                    656: 
                    657: 
                    658: \begin{bwslide}
                    659: \ctitle        {NEW-STYLE BINDING (cont.)}
                    660: 
                    661: \vskip.5in
                    662: \diagram[p]{figure8}
                    663: \end{bwslide}
                    664: 
                    665: 
                    666: \begin{bwslide}
                    667: \part* {A DISCIPLINE FOR MEAL PREPARATION}\bf
                    668: 
                    669: \begin{nrtc}
                    670: \item  WE HAVE INTRODUCED
                    671:     \begin{nrtc}
                    672:     \item      A MODEL FOR DISTRIBUTED APPLICATIONS, AND
                    673: 
                    674:     \item      THE SERVICES AVAILABLE TO THE APPLICATION TO REALIZE THIS
                    675:     \end{nrtc}
                    676: 
                    677: \item  WHAT WE NEED IS THE ``DISCIPLINE'' TO FOCUS OUR ENERGIES
                    678: \end{nrtc}
                    679: \end{bwslide}
                    680: 
                    681: 
                    682: \begin{bwslide}
                    683: \ctitle        {INITIATORS}
                    684: 
                    685: \begin{nrtc}
                    686: \item  IN GENERAL, THERE ARE TWO KINDS OF INITIATOR IMPLEMENTATIONS
                    687: 
                    688: \item  INTERACTIVE
                    689:     \begin{nrtc}
                    690:     \item      A USER RUNS A PROGRAM AND INTERACTIVELY DIRECTS THE
                    691:                INVOCATION OF OPERATIONS
                    692:     \end{nrtc}
                    693: 
                    694: \item  EMBEDDED
                    695:     \begin{nrtc}
                    696:     \item      A PROGRAM CAUSES AN ASSOCIATION TO BE AUTOMATICALLY FORMED
                    697:                AND OPERATIONS TO BE INVOKED
                    698:     \end{nrtc}
                    699: \end{nrtc}
                    700: \end{bwslide}
                    701: 
                    702: 
                    703: \begin{bwslide}
                    704: \ctitle        {RESPONDERS}
                    705: 
                    706: \begin{nrtc}
                    707: \item  IN GENERAL, THERE ARE TWO KINDS OF RESPONDER IMPLEMENTATIONS,
                    708:        DEPENDING ON HOW ASSOCIATIONS ARE GIVEN TO THE PROGRAM WHICH
                    709:        IMPLEMENTS THE SERVICE
                    710: 
                    711: \item  SINGLE ASSOCIATION (a.k.a. THE DYNAMIC APPROACH)
                    712:     \begin{nrtc}
                    713:     \item      EACH TIME THE SERVICE IS REQUESTED, A NEW INSTANCE OF
                    714:                THE PROGRAM IS EXECUTED
                    715:     \end{nrtc}
                    716: 
                    717: \item  MULTIPLE ASSOCIATION (a.k.a. THE STATIC APPROACH)
                    718:     \begin{nrtc}
                    719:     \item      EACH TIME THE SERVICE IS REQUESTED, THE REQUEST IS GIVEN TO A
                    720:                SINGLE, ALREADY EXECUTING, INSTANCE OF THE PROGRAM
                    721:     \end{nrtc}
                    722: \end{nrtc}
                    723: \end{bwslide}
                    724: 
                    725: 
                    726: \begin{bwslide}
                    727: \ctitle        {GENERAL ORGANIZATION}
                    728: 
                    729: \begin{nrtc}
                    730: \item  AT COMPILE-TIME:
                    731:     \begin{nrtc}
                    732:     \item      USE RO-SPECIFICATION TO GENERATE SUPPORT FACILITIES
                    733:     \end{nrtc}
                    734: 
                    735: \item  AT RUN-TIME:
                    736:     \begin{nrtc}
                    737:     \item      USE DIRECTORY SERVICES TO LOCATE/REGISTER SERVICES
                    738: 
                    739:     \item      USE ASSOCIATION CONTROL TO BIND/UNBIND APPLICATIONS
                    740: 
                    741:     \item      USE REMOTE OPERATIONS TO INVOKE TRANSACTIONS
                    742:     \end{nrtc}
                    743: \end{nrtc}
                    744: \end{bwslide}
                    745: 
                    746: 
                    747: \begin{bwslide}
                    748: \ctitle        {STATIC (COMPILE-TIME) ORGANIZATION}
                    749: 
                    750: \vskip.15in
                    751: \diagram[p]{figure9}
                    752: \end{bwslide}
                    753: 
                    754: 
                    755: \begin{bwslide}
                    756: \ctitle        {DYNAMIC (RUN-TIME) ORGANIZATION}
                    757: 
                    758: \vskip.15in
                    759: \diagram[p]{figure10}
                    760: \end{bwslide}
                    761: 
                    762: 
                    763: \begin{bwslide}
                    764: \ctitle        {IN PERSPECTIVE}
                    765: 
                    766: \begin{nrtc}
                    767: \item  \emph{THE COOKBOOK} PRESENTS \emph{ONE} POSSIBLE METHOD
                    768:        FOR REALIZING THE MODEL USING THE UNDERLYING FACILITIES
                    769: 
                    770: \item  MANY MORE ARE POSSIBLE\\
                    771:     \begin{nrtc}
                    772:     \item      AND SOME WILL BE VASTLY SUPERIOR
                    773:     \end{nrtc}
                    774: 
                    775: \item  THE APPROACH TAKEN BY \emph{THE COOKBOOK} ATTEMPTS TO BALANCE
                    776:        SIMPLICTY AND EXTENSIBILITY
                    777: 
                    778: \item  HENCE, IT MAY STILL BE UNDERDONE FOR SOME CHEFS AND OVERDONE FOR
                    779:        OTHERS
                    780: \end{nrtc}
                    781: \end{bwslide}

unix.superglobalmegacorp.com

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