Download GLADE User's Guide
Transcript
i Table of Contents About This Guide. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 What This Guide Contains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 Introduction to Distributed Systems . . . . . . . . 3 1.1 1.2 1.3 2 Using OS Network Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Using a Middleware Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Using a Distributed Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 The Distributed Systems Annex . . . . . . . . . . . . 7 2.1 2.2 2.3 2.4 Architecture of a Distributed Ada95 Application . . . . . . . . . . . . . . . 7 Categorization Pragmas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Pragma Declared Pure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Pragma Remote Call Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.4.1 Overview of Pragma Remote Call Interface . . . . . . . . . . . . . . 10 2.4.2 Regular Remote Subprograms (RCI) . . . . . . . . . . . . . . . . . . . . 10 2.4.3 Remote Access to Subprograms (RAS) . . . . . . . . . . . . . . . . . . 11 2.4.4 Remote Access to Class Wide Types (RACW) . . . . . . . . . . . 12 2.4.5 Summary on Pragma Remote Call Interface . . . . . . . . . . . . . 13 2.5 Pragma Remote Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.5.1 Overview of Pragma Remote Types . . . . . . . . . . . . . . . . . . . . . 13 2.5.2 Distributed Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.5.3 Transmitting Dynamic Structure . . . . . . . . . . . . . . . . . . . . . . . . 15 2.5.4 Summary on Remote Types Units . . . . . . . . . . . . . . . . . . . . . . . 17 2.6 Pragma Shared Passive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.6.1 Overview of Pragma Shared Passive. . . . . . . . . . . . . . . . . . . . . 17 2.6.2 Shared and Protected Objects . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.6.3 Summary on Pragma Shared Passive . . . . . . . . . . . . . . . . . . . . 18 2.7 More About Categorization Pragmas . . . . . . . . . . . . . . . . . . . . . . . . 18 2.7.1 Variables and Non-Remote Access Types . . . . . . . . . . . . . . . . 18 2.7.2 RPC Failures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.7.3 Exceptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.7.4 Pragma Asynchronous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.7.5 Pragma All Calls Remote . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.7.6 Generic Categorized Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.7.7 Categorization Unit Dependencies . . . . . . . . . . . . . . . . . . . . . . . 23 2.8 Partition Communication Subsystem. . . . . . . . . . . . . . . . . . . . . . . . . 23 2.8.1 Marshaling and Unmarshaling Operations . . . . . . . . . . . . . . . 24 2.8.2 Incorrect Remote Dispatching . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.8.3 Partition Ids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.8.4 Concurrent Remote Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.8.5 Consistency and Elaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.8.6 Abortion and Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.9 Most Features in One Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26