FORTRAN Reference Manual
FORTRAN Reference Manual—528615-001
14-1
14 Interprocess Communication
Topics covered in this section include:
An application in an HP NonStop environment frequently consists of numerous 
communicating processes. Each process is designed to perform a particular set of 
tasks. Dividing an application into multiple processes enables you to more easily 
maintain your application because you design each process to perform a series of 
related functions. In addition, your application can take advantage of the 
multiprocessor hardware of HP NonStop systems by running processes in different 
CPUs, thereby achieving a high degree of parallelism. Finally, you can run identical 
processes in different CPUs and distribute activities among them, further increasing 
the amount of parallelism in your application.
For example, your application might have three separate databases. You might have a 
process that accesses databases for your application, rather than having each process 
in the application access the databases. In so doing, you further divide your application 
by isolating in one process all the code that accesses databases. Figure 14-1 
illustrates this.
You might further refine your application by having a separate process for each of the 
databases in your application and isolate in each of these processes all the code 
required to access a single database. In addition, you might run identical processes in 
multiple CPUs. When a process in your application requires information from a 
particular database, it can choose from all the processes that access that database the 
process that is least busy. In Figure 14-2 on page 14-2, a process can access 
database 1 by sending a request to any of servers A, B, or C.
Topic Page
Managing $RECEIVE
14-3
Using $RECEIVE 14-5
Message Queuing 14-11
Figure 14-1. A Process That Access Databases
VST1401.vsd
Server
Database I I IDatabase I I
Database I










