IRIS $ZF
系统功能是一套相关功能的容器。$ZF
套件中的大多数函数都由函数调用的第一个参数标识,该参数将是一个负数,-100
或-3
到-6
。例如,调用操作系统命令的函数具有$ZF(-100, <oscommand>)
的形式,其中<oscommand>
是包含要执行的命令的字符串。当讨论这个函数时,它将被称为$ZF(-100)
。以同样的方式,其他函数将被称为$ZF(-3)
到$ZF(-6)
,只使用实际函数调用的第一个参数。也可以在不带负数参数的情况下调用$ZF()
函数,在这种情况下,它调用名为iriszf
的特殊Callout
库中的函数。
注:Callout Libraries
是动态链接的文件(Windows
为DLL
文件,UNIX
及相关操作系统为SO
文件)。Callout
库是一个共享库,它包含到$ZF Callout
接口的钩子,允许各种$ZF
函数在运行时加载它并调用库函数。
$ZF
函数集包括以下接口:
$ZF()
函数(不带负数参数)主要的$ZF()
函数提供了对来自名为iriszf
的特殊Callout
库的函数的直接访问。当定义并编译了这个自定义库后,只需指定函数名和参数(例如,$ZF("myFunction",arg1))
,就可以调用它的函数。与$ZF(-3)
、$ZF(-5)
或$ZF(-6)
不同,不需要加载库或指定库标识符。
$ZF(-100)
函数$ZF(-100)
函数用于运行shell
命令和操作系统服务调用。它不用于访问Callout
库,可以在没有任何先前设置的情况下调用。
$ZF(-3)
函数$ZF(-3)
函数是一种加载Callout
库并使用一条语句调用库函数的简单方法。库及其函数都是通过名称指定的,并且库保留在内存中,直到被对另一个库的调用所替换。
$ZF(-4)
函数$ZF(-4)
函数为$ZF(-5)
和$ZF(-6)
提供了一组服务。它是由前两个参数($ZF(-4,1)
到$ZF(-4,8)
)标识的八个效用函数的容器。$ZF(-5)
函数接口使用$ZF(-4,1)
到$ZF(-4,3)
函数,$ZF(-6)
函数接口使用$ZF(-4,5)
到$ZF(-4,8)
函数。
$ZF(-5)
函数接口$ZF(-5)
函数及其实用函数允许高效地处理多个库。库及其函数都由系统定义的ID
值标识。多个库可以同时位于虚拟内存中。以下$ZF(-4)
函数用于加载和卸载库,并获取库和函数ID值:
$ZF(-4,1)
加载由名称指定的库,并返回一个库ID
。$ZF(-4,2)
卸载一个库。$ZF(-4,3)
返回指定库ID和函数名的函数ID
。$ZF(-6)
函数接口$ZF(-6)
函数及其实用函数提供了一种编写不需要硬编码库名称的Callout
应用程序的方法。相反,实际的库文件名包含在一个单独的索引表中,其中每个库都与一个唯一的用户定义的索引号相关联。一旦定义了索引表, IRIS实例中的所有进程都可以使用它。Callout
应用程序通过索引号识别一个库,并通过读取索引表来加载它。多个库可以同时在内存中。以下函数用于管理索引和加载或卸载库:
$ZF(-6)
调用一个库函数,如果库不在内存中,则加载该库。$ZF(-4,4)
卸载一个库。$ZF(-4,5)
和$ZF(-4,6)
用于创建和维护系统索引表,该索引表可以被 IRIS
实例中的所有进程访问。$ZF(-4,7)
和$ZF(-4,8)
用于创建和维护进程索引表,该索引表可用于覆盖单个进程中的系统索引。