|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T v
Length: 7607 (0x1db7) Types: TextFile Names: »volume4.toc«
└─⟦2d1937cfd⟧ Bits:30007241 EUUGD22: P.P 5.0 └─⟦35176feda⟧ »EurOpenD22/isode/isode-6.tar.Z« └─⟦de7628f85⟧ └─⟦this⟧ »isode-6.0/doc/manual/volume4.toc«
\contentsline {part}{\uppercase {i}\phspace {1em}Introduction}{1} \contentsline {chapter}{\numberline {1}Overview}{3} \contentsline {section}{\numberline {1.1}Fanatics Need Not Read Further}{4} \contentsline {section}{\numberline {1.2}The Name of the Game}{5} \contentsline {section}{\numberline {1.3}Operating Environments}{5} \contentsline {section}{\numberline {1.4}Organization of the Release}{7} \contentsline {section}{\numberline {1.5}A Note on this Implementation}{9} \contentsline {section}{\numberline {1.6}Changes Since the Last Release}{10} \contentsline {part}{\uppercase {ii}\phspace {1em}Overview}{13} \contentsline {chapter}{\numberline {2}Motivation and Concepts}{15} \contentsline {section}{\numberline {2.1}A Model for Distributed Applications}{15} \contentsline {subsection}{\numberline {2.1.1}Abstract Data Types}{16} \contentsline {subsection}{\numberline {2.1.2}Operations}{17} \contentsline {subsection}{\numberline {2.1.3}Associations}{18} \contentsline {section}{\numberline {2.2}Design Guidelines}{18} \contentsline {subsection}{\numberline {2.2.1}Reliability Characteristics}{19} \contentsline {subsection}{\numberline {2.2.2}Keeping Total Operations Total}{19} \contentsline {section}{\numberline {2.3}For Further Reading}{20} \contentsline {chapter}{\numberline {3}A Discipline for Meal Preparation}{21} \contentsline {section}{\numberline {3.1}Defining A New Service}{21} \contentsline {section}{\numberline {3.2}Defining A Remote Operations Module}{23} \contentsline {section}{\numberline {3.3}Defining Concrete Data Structures}{24} \contentsline {section}{\numberline {3.4}Building An Initiator}{24} \contentsline {section}{\numberline {3.5}Building A Responder}{24} \contentsline {section}{\numberline {3.6}Putting It All Together}{25} \contentsline {part}{\uppercase {iii}\phspace {1em}Utensils}{27} \contentsline {chapter}{\numberline {4}Remote Operations Stub-Generator}{29} \contentsline {section}{\numberline {4.1}Remote Operations Module}{29} \contentsline {subsection}{\numberline {4.1.1}Operation Definitions}{29} \contentsline {subsection}{\numberline {4.1.2}Error Definitions}{30} \contentsline {subsection}{\numberline {4.1.3}Type Definitions}{30} \contentsline {section}{\numberline {4.2}ROSY Environment}{35} \contentsline {subsection}{\numberline {4.2.1}Abstract Syntax Module}{35} \contentsline {subsection}{\numberline {4.2.2}C Language Stubs}{35} \contentsline {section}{\numberline {4.3}Known Deficiences}{36} \contentsline {section}{\numberline {4.4}Running ROSY}{36} \contentsline {subsection}{\numberline {4.4.1}Options}{36} \contentsline {subsection}{\numberline {4.4.2}Makefiles}{37} \contentsline {subsection}{\numberline {4.4.3}Grinding}{38} \contentsline {chapter}{\numberline {5}Pepy Optional Structure-Generator}{39} \contentsline {section}{\numberline {5.1}Abstract Syntax Module}{39} \contentsline {section}{\numberline {5.2}POSY Environment}{43} \contentsline {subsection}{\numberline {5.2.1}C Language Structures}{43} \contentsline {subsubsection}{Controlling the names that POSY generates}{46} \contentsline {subsection}{\numberline {5.2.2}Augmented Abstract Syntax Module}{48} \contentsline {section}{\numberline {5.3}Known Deficiences}{52} \contentsline {section}{\numberline {5.4}Running POSY}{52} \contentsline {subsection}{\numberline {5.4.1}Options}{52} \contentsline {subsection}{\numberline {5.4.2}Makefiles}{53} \contentsline {chapter}{\numberline {6}Compiling Data-Structures}{59} \contentsline {section}{\numberline {6.1}Warning}{59} \contentsline {section}{\numberline {6.2}Syntax Rules}{59} \contentsline {subsection}{\numberline {6.2.1}ASN.1 Notation}{60} \contentsline {subsection}{\numberline {6.2.2}ASN.1 Extensions}{60} \contentsline {subsubsection}{Compiler Directives}{62} \contentsline {subsubsection}{Action Statements}{63} \contentsline {subsubsection}{Control Statements}{66} \contentsline {subsubsection}{Value Passing Statements}{67} \contentsline {section}{\numberline {6.3}Known Deficiencies}{72} \contentsline {subsection}{\numberline {6.3.1}ASN.1 Syntax}{72} \contentsline {subsection}{\numberline {6.3.2}ASN.1 Semantics}{73} \contentsline {section}{\numberline {6.4}PEPY Environment}{73} \contentsline {subsection}{\numberline {6.4.1}Starting Things Off}{73} \contentsline {subsection}{\numberline {6.4.2}Diagnostic Output}{74} \contentsline {subsection}{\numberline {6.4.3}Debug Output}{75} \contentsline {section}{\numberline {6.5}Pretty-printers}{75} \contentsline {section}{\numberline {6.6}Compiling and Loading}{76} \contentsline {subsection}{\numberline {6.6.1}External Modules}{76} \contentsline {subsection}{\numberline {6.6.2}Options}{76} \contentsline {subsection}{\numberline {6.6.3}Makefiles}{77} \contentsline {subsection}{\numberline {6.6.4}Grinding}{78} \contentsline {section}{\numberline {6.7}An Example}{78} \contentsline {section}{\numberline {6.8}For Further Reading}{87} \contentsline {part}{\uppercase {iv}\phspace {1em}Recipes}{89} \contentsline {chapter}{\numberline {7}Run-Time Environment}{91} \contentsline {section}{\numberline {7.1}Notice}{91} \contentsline {section}{\numberline {7.2}Conventions}{91} \contentsline {subsection}{\numberline {7.2.1}Interface from ROSY}{92} \contentsline {section}{\numberline {7.3}Routines for Initiators}{94} \contentsline {section}{\numberline {7.4}Routines for Invokers}{94} \contentsline {section}{\numberline {7.5}Routines for Responders}{100} \contentsline {section}{\numberline {7.6}Routines for Performers}{100} \contentsline {subsection}{\numberline {7.6.1}Registering Operations}{100} \contentsline {subsection}{\numberline {7.6.2}Responding to Operations}{102} \contentsline {section}{\numberline {7.7}Waiting for Events}{103} \contentsline {section}{\numberline {7.8}Miscellaneous Routines}{105} \contentsline {subsection}{\numberline {7.8.1}Association Termination}{105} \contentsline {subsection}{\numberline {7.8.2}Utility Routines}{105} \contentsline {section}{\numberline {7.9}Error Conventions}{107} \contentsline {section}{\numberline {7.10}Compiling and Loading}{107} \contentsline {chapter}{\numberline {8}Boilerplate for Initiators}{108} \contentsline {section}{\numberline {8.1}Embedded Initiator}{108} \contentsline {subsection}{\numberline {8.1.1}Association Establishment}{108} \contentsline {subsection}{\numberline {8.1.2}Operation Invocation}{111} \contentsline {subsubsection}{Synchronous Invocation}{111} \contentsline {subsubsection}{ASynchronous Invocation}{114} \contentsline {subsection}{\numberline {8.1.3}Association Release}{117} \contentsline {subsection}{\numberline {8.1.4}Error Handling}{118} \contentsline {section}{\numberline {8.2}Interactive Initiator}{122} \contentsline {subsection}{\numberline {8.2.1}Include File}{122} \contentsline {subsection}{\numberline {8.2.2}Worker Routines}{123} \contentsline {subsection}{\numberline {8.2.3}An Example}{134} \contentsline {chapter}{\numberline {9}Boilerplate for Responders}{136} \contentsline {section}{\numberline {9.1}Static Responder}{136} \contentsline {subsection}{\numberline {9.1.1}Association Management}{137} \contentsline {subsection}{\numberline {9.1.2}Operation Response}{148} \contentsline {subsection}{\numberline {9.1.3}Error Handling}{151} \contentsline {subsection}{\numberline {9.1.4}An Example}{154} \contentsline {chapter}{\numberline {10}A Complete Example}{155} \contentsline {section}{\numberline {10.1}Service Definitions}{155} \contentsline {section}{\numberline {10.2}Remote Operations Module}{156} \contentsline {section}{\numberline {10.3}Interactive Initiator}{164} \contentsline {section}{\numberline {10.4}Responder}{170}