Browse Prior Art Database

Interoperability Between MVS and POSIX Functions

IP.com Disclosure Number: IPCOM000110391D
Original Publication Date: 1992-Nov-01
Included in the Prior Art Database: 2005-Mar-25
Document File: 6 page(s) / 284K

Publishing Venue

IBM

Related People

Ault, DF: AUTHOR

Abstract

New functions in MVS (called OpenMVS) provide a platform of services that contain Open Systems Standard interfaces. These new services can be used in conjunction with existing MVS services from a task in an address space. This ability to mix the old and new services is referred to as interoperability.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 26% of the total text.

Interoperability Between MVS and POSIX Functions

       New functions in MVS (called OpenMVS) provide a platform
of services that contain Open Systems Standard interfaces.  These new
services can be used in conjunction with existing MVS services from a
task in an address space.  This ability to mix the old and new
services is referred to as interoperability.

      The new services are described in International Standard
ISO/IEC 9945-1; 1990 IEEE Std 1003.1-1990.  This will be referred to
as POSIX 1003.1.  The services described in POSIX 1003.1 include
ford, exec, signaling services, and file system services for files
and directories.  These services are standardized versions of many of
the services typically found on *IX systems (e.g., UNIX*, AIX**).

      By combining the C-370 run time library support with these new
MVS services, it is possible to write POSIX compliant applications
that run on MVS.  With OpenMVS interoperability, the following
possibilities exist:
-    A user can port a program from an *IX system and add calls to
MVS services to take advantage of functions only offered on MVS.
-    A user can design an application that uses traditional MVS
services as well as the new OpenMVS services.
-    A user can modify existing MVS applications to take advantage of
OpenMVS services.

      The figure shows how traditional work like TSO and BATCH as
well as new OpenMVS work (forked processed) can make use of existing
MVS services as well as new OpenMVS services.  This combination of
the two environments allows users to take the best of both worlds to
create solutions to their programming problems.

      The key points that produce interoperability between the
traditional MVS environment and the OpenMVS environment are as
follows:
-    Callable services
-    Batch support for OpenMVS
-    Support most MVS environments
-    Initialization on first call
-    Non-intrusive signal delivery

      After discussing the above topics in more detail, a list of the
major functions supported by OpenMVS will be described.
Callable Services

      The OpenMVS functions that provide the basis for POSIX
compliant functions are callable services.  The advantage to using
callable services is that they can be called from any programming
language.  These services are expected to be used by compilers as
well as being available for direct use by applications written in
higher level languages (HLLs) or assembler language.  This
flexibility allows the services to be used with minimal setup or
disruption to existing programs that want to exploit the new
functions.
Batch Support for OpenMVS

      OpenMVS provides the ability to submit batch jobs to execute
programs out of the OpenMVS file system.  This same interface can
also be used to invoke OpenMVS programs and shell functions from TSO
CLISTs, REXX execs, as well as from a program.
Support Most MVS Environments

      The callable se...