设置共享内存选项

您可以在相同系统上的客户机和服务器之间使用共享内存通信。 要使用共享内存,必须在系统上安装 TCP/IP V4。

关于此任务

以下示例显示共享内存设置:
commmethod     sharedmem
   shmport     1510
在此示例中,SHMPORT 指定使用共享内存时服务器的 TCP/IP 端口地址。 使用 SHMPORT 选项可指定另一的 TCP/IP 端口。 缺省端口地址是 1510。
可以在 IBM Storage Protect 服务器选项文件中多次使用 COMMMETHOD ,每次使用不同的值。 例如,以下示例是可能的:
commmethod tcpip
commmethod sharedmem

AIX 操作系统并发共享内存会话的最大数量基于可用的系统资源。 每个共享内存会话使用一个最大为 4 MB 的共享内存区域和四个 IPCS 消息队列,具体取决于 IBM Storage Protect 客户机级别。

AIX 操作系统如果服务器和客户机未以相同的用户标识运行,那么服务器必须是根。 这将避免发生共享内存通信错误。

Linux 操作系统使用共享内存时,可能从服务器接收到以下消息:
ANR9999D shmcomm.c(1598): ThreadId<39>
Error from msgget (2), errno = 28 
该消息意味着必须创建消息队列,但是将超过最大消息队列数 (MSGMNI) 的系统限制。
Linux 操作系统要找出系统上的最大消息队列数 (MSGMNI) ,请发出以下命令:
cat /proc/sys/kernel/msgmni 
要增大系统上的 MSGMNI 值,请发出以下命令:
sysctl -w kernel.msgmni=n
其中,n 是您希望系统允许的最大消息队列数。