HPlogo NetIPC 3000/XL Programmer's Reference Manual: HP 3000 MPE/iX Computer Systems > Chapter 2 Cross-System NetIPC

Calls Affecting the Local Process

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Glossary

 » Index

There are two categories of calls when considering cross-system NetIPC communication — local and remote. Calls made for the local process do not directly affect the remote process. The local NetIPC calls are used to set up or prepare the local node for interprocess communication with the remote node. That is, the resulting impact on the local calls is only to the local node. There is no information that needs to be passed to the remote node. This is true whether or not the remote node is another HP 3000 computer system. Table 2-1 “NetIPC Calls Affecting the Local Process” lists the NetIPC calls affecting the local process.

Table 2-1 NetIPC Calls Affecting the Local Process

HP 3000

HP 1000

HP 9000

PC

ADDOPT

Addopt

addopt ()

AddOpt

Not implemented

Adrof

Not implemented

Not implemented

Not implemented

Not implemented

Not implemented

ConvertNetworkLong

Not implemented

Not implemented

Not implemented

ConvertNetworkShort

INITOPT

InitOpt

initopt()

InitOpt

IPCCHECK

Not implementedNot implemented

Not implemented

IPCCONTROL

IPCControl

ipccontrol()

IPCControl

IPCCREATE

IPCCreate

ipccreate()

IPCCreate

IPCERRMSGNot implemented

Not implemented

Not implemented

IPCGET

IPCGet

Not implemented

Not implemented

IPCGIVE

IPCGive

Not implemented

Not implemented

IPCNAME

IPCName

ipcname()

Not implemented

IPCNAMERASE

IPCNamerase

ipcnamerase()Not implemented
Not implemented

IPCSelect

ipcselect()Not implemented

Not implemented

Not implemented

Not implemented

IPCWait

OPTOVERHEAD

Not implemented

optoverhead()

OptOverhead

READOPT

ReadOpt

readopt()

ReadOpt

 

The intrinsics listed in Table 2-1 “NetIPC Calls Affecting the Local Process” affect only local processes and therefore have no adverse affects if used in a program communicating with an unlike system (e.g., an HP 3000 program communicating with an HP 1000 program). However, keep in mind that the calls (even those of the same name) differ between system types. The following are some local call differences of which you should be aware:

  • Maximum number of sockets. The maximum number of socket descriptors owned by an HP 3000 process at any given time is 64; on the HP 1000 the maximum is 32; on HP 9000 systems, the maximum is 60 (including file descriptors). On the PC, the maximum number of socket descriptors is 21. This number includes both call socket and virtual circuit socket descriptors.

  • IPCCONTROL parameters. The IPCCONTROL intrinsic supports different sets of request codes on different system types. Refer to the NetIPC documentation for a particular system (this manual only documents the HP 3000) for a full description of the request codes available on that system.

  • Manipulation of descriptors. On the HP 3000, the IPCGIVE, IPCGET, IPCNAME, and IPCNAMERASE calls can be used to manipulate call socket descriptors. On the HP 9000, you can manipulate call socket and destination descriptors with the ipcname() and ipcnamerase() intrinsics. On the HP 1000, you can only manipulate call socket descriptors with the IPCName and IPCNamerase intrinsics. In addition, on the HP 1000, you can manipulate call socket, vc socket, and path report descriptors with the IPCGive and IPCGet intrinsics.

  • Asynchronous I/O. The HP 3000 utilizes the MPE XL intrinsics IOWAIT and IODONTWAIT to perform asynchronous I/O. On the HP 9000 and HP 1000, The NetIPC intrinsics ipcselect() and IPCSelect are used to perform asynchronous I/O. On the PC use the NetIPC intrinsic IPCWait.

  • Call sockets. On the PC, call sockets are called source sockets and call socket descriptors are called source socket descriptors. Both sets of terms are used in the same way.

NOTE: There are many additional differences between local NetIPC calls for the HP 3000 and those used for other HP systems. Because these differences only affect the local node, they should not affect the cross-system communication capabilities of your program. Refer to the corresponding system's NetIPC documentation for more information.
Feedback to webmaster