Types of Operating System Architected Interfaces

By: Deepti

Source: docs.hp.com

The MPE/iX Architected Interface Facility: Operating System product provides three types of AIFs:

Access management AIFs

Information access AIFs

Functional access AIFs

Access Management Architected Interfaces

Access management AIFs provide a mechanism, the user ID, to validate user access to operating system AIFs.

User IDs

Each purchaser of the Architected Interface Facility: Operating System product is assigned a unique user ID. Whenever you call an AIF, you should identify yourself by using your company's user ID.

Each AIF includes an optional user_id parameter. If your program is only going to make a small number of AIF calls, then you'll want to pass the user ID to each AIF as you call it; however, if your program is going to make a lot of AIF calls, there is a more efficient method to specify your user ID. If your application uses the AIFACCESSON AIF to pass your user ID, all subsequent AIF calls made by your application are assumed to belong to the same user ID. Use AIFACCESSOFF after completing the multiple AIF calls.

What Is the Purpose of User IDs?
Architected Interface Facility user IDs are used by Hewlett-Packard Response Centers to ensure that AIF-based software products are properly supported. The user IDs are not intended to prevent users who have not purchased an Architected Interface Facility product from calling AIFs; instead, user IDs are intended to guarantee the best possible support.
Because AIFs are trusted procedures, their misuse can cause a number of system problems (including system failures and data corruption). If this should happen, Hewlett-Packard's Response Centers can determine the user IDs associated with any AIF calls that result in errors. In this way, identifying and fixing AIF-related system problems can be accomplished quickly.
Information Access Architected Interfaces
Information access AIFs provide access to MPE/iX internal table information while abstracting the structure from the user.
The information access AIFs provide a single AIF, AIFSYSWIDEGET, that is normally the starting point for information retrieval. AIFSYSWIDEGET returns information on the current state of the system. For example, it can provide a list of objects that currently exist on the system and meet a specified set of criteria. The information provided by AIFSYSWIDEGET can be passed to the other information access AIFs so that more detailed information can be acquired.
Information access AIFs can be used without first using AIFSYSWIDEGET. For example, you can call a global file information AIF by passing a known file name.
Each information access AIF attempts to lock all of the tables associated with that object.
Information Get and Put
In most cases, there are two types of AIF for each class of objects that information can be accessed, an AIFnnGET and an AIFnnPUT.
The AIFnnGET AIF returns information about a specific object identified by the input keys. All AIFnnGET AIFs attempt to return as much information as possible each time they are called, returning individual item errors whenever possible. These errors are returned in the itemstatus_array parameter for the items in error, while the rest of the item values are returned normally.
The AIFnnPUT AIFs update relevant tables to obtain a consistent, updated state of the system. Only a subset of the items provided by the AIFnnGET AIFs are available to AIFnnPUT AIFs.
Information Verification
Because there is no guarantee that the information that is returned from an AIFnnGET AIF is still valid when an AIFnnPUT AIF is called, each AIFnnPUT AIF allows for verification of values to take place before a system table update occurs.
A list of items and corresponding values may be specified in the verification arrays to the AIFnnPUT AIF. Each item is checked and validated before attempting to do a system table update. If any single item that is to be verified fails, the information is not placed into the system. This verification helps prevent the system from accidentally being placed into an undesirable state. If no verification items are specified, the system table update is performed unconditionally.
System-Wide Information
The system wide information AIF is
The AIFSYSWIDEGET AIF is normally the first AIF called. It returns information about a whole class of objects, instead of information about a particular object as the other AIFs do.
The AIFSYSWIDEGET AIF enables you to specify an object class as well as a list of criteria that you wish to apply to the objects in that class. It applies all of the criteria to each object located, returning only those objects that meet the criteria that you specify. The AIFSYSWIDEGET AIF returns a list of meaningful object identifiers and, optionally, a corresponding list of alternative input keys, when possible. You can use the alternative input keys with other AIFs to retrieve information faster than using the object identifiers.
The AIFSYSWIDEGET AIF may return a context key that indicates that there are a greater number of objects available than there are elements in the user-defined array passed to the AIF. Use this context key in a subsequent call to retrieve the additional objects.
Accounting Information
The accounting information AIFs are
Accounting information AIFs return or update information associated with directory objects such as users, groups, and accounts. Accounting information AIFs use a user name, group name, or account name as input keys. The input keys default to the calling process' user name, group name, and account name.
File Information
There are two types of file information AIFs:
local file information AIFs
global file information AIFs
Local File Information
Local file information AIFs are
Local file information AIFs use a PID and a process-specific file number as input keys, with a UFID for validation. The AIFFILELGET AIF returns PIDs of the sharers of the file and the file numbers. The returned information can be used with subsequent calls to process information AIFs, global file information AIFs, or other local file information AIFs.
Global File Information
Global file information AIFs are
Global file information AIFs use file names and UFIDs as input keys.
Job or Session Information
Job or session information AIFs are
Job or session AIFs return or update information associated with jobs and sessions. They accept job numbers or session numbers as input keys, returning or updating job or session information associated with the keys. The keys can be obtained either from AIFSYSWIDEGET or from other means (for example, from the SHOWJOB command). The input keys default to the calling process's job or session number.
Process Information
Process information AIFs are
Process information AIFs accept PIDs and PINs as input keys. They return or update process-related information. The input keys can be obtained either from AIFSYSWIDEGET or from file information AIFs.
The AIFPROCGET AIF returns information about all of the files opened by the process, process-specific file numbers, and UFIDs. These three can then be used to query the file interfaces. The AIFPROCGET AIF also returns the default account and group for the process, their names, and UFIDs. This information can be used to query accounting information AIFs.
Reply Information
The reply information AIF requires only a reply request ID as input. It retrieves information on a specified pending reply request. In addition to providing the table information, it also formats the request message as it is displayed on the console by the RECALL command.
The reply information AIF is
Spooler Information
There are two types of spooler information AIFs
spool file information AIFs
spooler process AIFs
Spool File Information
Spool file information AIFs are
The AIFSPFGET and AIFSPFPUT AIFs accept a file name or an address as input keys and return or update information about files that have been spooled.
Spooler Process Information
Spooler process information AIFs are
The AIFSPPGET and AIFSPPPUT AIFs accept device names as input keys and return or update information about spooler processes.
System Configuration Information
System configuration information AIFs are
AIFSCGET and AIFSCPUT do not require any keys, because they access system-wide configuration information. AIFSCGET provides access to the configuration constants and the dynamically maintained system variables, such as upper limits, but does not provide lists of valid objects on the system. AIFSCPUT performs actions similar to the TUNE and ALLOW commands, as well as some of the startup options.
Some of the configuration constants AIFSCGET and AIFSCPUT access are the various dispatcher queue priority limits and quantums. The dynamic system information includes the next job/session number to be allocated, the CS average quantum for transactions, and the current ALLOW mask.
Device Information
Device information AIFs are:
AIFDEVCLASSGET retrieves information on a specific device class. AIFDEVICEGET retrieves information on a specific device (ldev). AIFDEVICEPUT updates information on a specific device (ldev).
Functionality Access Architected Interfaces
The Architected Interface Facility: Operating System product provides AIFs to manage special functionality normally available only to operating system internals. The types of functionality access provided are:
User global area management
Ports management
Spooler management
Magneto-Optical Disk Library System
Miscellaneous utilities
While their external appearance all reflect AIF design standards, each type differs according to the functionality the AIFs provide access to.
User Global Area Management
User global area management AIFs are:
User global area management AIFs enable you to share data between multiple processes and enforce concurrence on access to this data.
Ports Management
Ports management AIFs are:
Ports management AIFs enable you to create and manage Architected Interface Facility user ports. User ports can be used as a fast means of interprocess communication by sending messages from one process to another. User ports do not interfere with or provide access to system ports.
Spooler Management
Spooler management AIFs are:
Spooler management AIFs enable you to manage spool files and spooler processes. For example, you can start, stop, resume, or suspend devices. In addition, you can link files to the MPE/iX spooler facility.
Magneto-Optical Disk Library System
Magneto-Optical Disk Library System AIFs are:
Magneto-Optical Disk Library System AIFs provide a supported external interface to optical disk library systems while extracting internal detail. These AIF's provide a layer above the existing Media Manager routines. The Media Manager is a set of operating system routines that are used to control a Magneto-Optical Disk Library System. The Media Manager functions that are provided through AIF's include: allocating and deallocating an optical media drive, mounting and dismounting optical media, and retrieving and modifying optical disk library system information.
Refer to the following manuals for more information:
Installing and Using the Optical Disk Library System (C1700-90076)
Magneto-Optical Media Management User's Guide (36398-90001)
Utility AIFs provide miscellaneous functionality useful to application developers.
AIFCHANGELOGON enables you to change the logon environment of a process.
AIFCLOSE enables you to save files across account boundaries.
AIFCONVADDR converts compatibility mode relative addresses to corresponding native mode virtual addresses.
AIFGLOBINSTALL is the programmatic equivalent of executing the INSTOS installation utility.
AIFTIME converts ticks and microseconds to a more meaningful time, such as date time, clock time, or a string format.


» More on Software