DIGITAL Software Product Description ___________________________________________________________________ PRODUCT NAME: POSIX for OpenVMS VAX, Version 3.0 SPD 34.82.06 DESCRIPTION POSIX[R] for OpenVMS[TM] Version 3.0 brings support for the POSIX (Portable Operating System Interface for Computing Environments) Industry Stan- dards and for the X/Open[TM] BASE Profile specifications as defined in the X/Open Portability Guide Issue 4, to OpenVMS on the VAX[TM] plat- form. POSIX and XPG4 define a set of interface standards for various parts of an operating system. Both provide a comprehensive set of standards, draft standards, and specifications that support interoperability and portability of applications at the source code level. Because of the consistency they afford to applications at the operating system level, the POSIX standards and XPG4 specifications are essential underpin- nings of open computing environments. In fact, POSIX for OpenVMS Ver- sion 3.0 provides the capability on OpenVMS to develop and run appli- cations conforming to the POSIX and the XPG4 standards. The POSIX standards development effort is sponsored by the Institute of Electrical and Electronic Engineers (IEEE[R]). As individual POSIX standards are approved, organizations such as the International Or- ganization for Standardization (ISO) are also embracing them. XPG4 has been developed by X/Open, which is an independent consortium of com- puter systems manufacturers; XPG4 specifies a comprehensive applica- tions interface that includes POSIX 1003.1-1988 (as upgraded by POSIX 1003.1-1990) and POSIX 1003.2-1992 as well as an additional set of de facto and formal standards. 15-December-1995 POSIX for OpenVMS Version 3.0 includes support for the standards and draft standards for the POSIX system application programming inter- face (POSIX 1003.1, 1988 and 1990), POSIX shell and utilities (POSIX 1003.2, which includes the User Portability Extension, formerly POSIX P1003.2a), and real time programming (1003.1b, formerly POSIX P1003.4). POSIX for OpenVMS Version 3.0 also supports the XPG4 BASE Profile spec- ifications, internationalized system calls and functions, commands and utilities, with the C language. (For a listing of the specific stan- dards supported by POSIX for OpenVMS Version 3.0, refer to following sections). User Environments o Program Development Environment The program development environment for POSIX for OpenVMS Version 3.0 allows the use of tools from both the OpenVMS development environment and the POSIX for OpenVMS Version 3.0 environment. Program develop- ers who choose to work at DCL level can use the OpenVMS program de- velopment environment tools, including the supported C compilers, the OpenVMS Linker, and OpenVMS Debugger, as well as application build- ing tools included in VAXset[TM]. Program developers who choose to work at the POSIX for OpenVMS Version 3.0 shell level can use the POSIX en- vironment defined in POSIX 1003.2, including the vi text editor, c89 (for linking and compiling programs), make (for building applications), ar (for archiving object modules). Also supplied are the lex lexical analyzer and the yacc compiler compiler. o Interactive User Environment The interactive user environment for POSIX for OpenVMS Version 3.0 pro- vides the user with a set of UNIX[R]-like commands and utilities that include functions similar to DCL, in addition to functions unavail- able in the DCL environment. For example the POSIX for OpenVMS Ver- sion 3.0 shell supports "pipes" which allow the output of one command to become the input of a subsequent command. 2 Assistance on how to use the POSIX for OpenVMS Version 3.0 features is available both via standard OpenVMS Online Help and a POSIX-conformant man command. The man command supplies reference information on all of the supported utilities, callable functions, datatypes and data struc- tures using the typical user interface familiar to UNIX users. o End User Environment (Running POSIX and XPG4 Programs) POSIX for OpenVMS Version 3.0 programs are run from either the Open- VMS DCL level or the POSIX for OpenVMS Version 3.0 shell level. A cap- tive account can also be created, in which a user who accesses the sys- tem is limited to running one or more POSIX or XPG4 applications. POSIX Standards This section gives more detail on the POSIX standards implemented by POSIX for OpenVMS Version 3.0. o POSIX 1003.1 POSIX 1003.1 is an approved standard, adopted by the IEEE and endorsed by X/Open, ANSI, and ISO. It was first approved in 1988 as IEEE Std 1003.1-1988. In 1990 the standard was revised to IEEE Std 1003.1-1990 and also became the international standard ISO/IEC 9945-1. POSIX 1003.1 is the standard most commonly supported by open system vendors today. It defines a standard for the basic system services to be provided by an operating system. These are the services which will allow an application to perform operations such as process creation and execution, file system access, and I/O device management. o POSIX P1003.1a The draft standard IEEE P1003.1a covers extensions to IEEE 1003.1 and has not yet been incorporated into the final standard. POSIX for Open- VMS Version 3.0 currently implements draft 4. o POSIX 1003.1b 3 POSIX 1003.1b is an approved standard, adopted by the IEEE in 1993. It was formerly the POSIX P1003.4 draft standard. It addresses require- ments for real-time computing and support for such functions as mem- ory management, semaphores, message queues, scheduling, real-time files and signals, asynchronous I/O operations and timers. o POSIX 1003.2 POSIX 1003.2 is an approved standard, adopted by the IEEE in 1992, and endorsed by X/Open, ANSI, and ISO. It includes the User Portability Extension (UPE) functionality formerly defined in the POSIX P1003.2a draft standard. It provides an interactive interface to shell and util- ity services, and a series of callable functions for regular expres- sion handling. The 1003.2-based interactive interface to POSIX for OpenVMS Version 3.0 is a set of UNIX-like commands and utilities. The POSIX for Open- VMS Version 3.0 command language interpreter (shell) has many of the functions and features of the Korn Shell. The POSIX for OpenVMS Ver- sion 3.0 interactive interface also includes a group of complex util- ities (such as awk, lex, make and yacc), a series of C-language pro- gramming de- velopment utilities, and a text editor, vi. XPG4 BASE Profile Specifications This section gives more detail on Issue 4 of the X/Open Portability Guide specifications implemented by POSIX for OpenVMS Version 3.0. o XPG4 System Interfaces and Headers The XPG4 specifications include all the POSIX 1003.1 system calls and functions together with extensions. POSIX for OpenVMS Version 3.0 im- plements all the mandatory functions defined in this specification as well as the functionality indicated as "extension" and "FIPS". o XPG4 Commands and Utilities 4 With the XPG4 specifications, a number of new commands and utilities are required in addition to those defined with POSIX 1003.2. POSIX for OpenVMS Version 3.0 implements the mandatory commands and utilities defined in this specification as well as the functionality indicated as "extension" and "FIPS". o XPG4 Internationalization Features The internationalization features provided within XPG4 allow for the run-time environment of a program to be set up to provide the correct processing/presentation of local language text and cultural data; no recompiling or relinking is required. Program messages may be stored separate from the logic of a program and translated into several lan- guages using the Message Catalogue system. The cultural environment of a program is obtained by associating it with a specific set of lo- calization data, called a "locale". POSIX for OpenVMS Version 3.0 con- tains the locale for American English; users can build their own lo- cales for other languages. Examples of other locales are provided. The specification provides support for the ISO 8859-1:1987 8 bit char- acter set which covers the major European languages. XPG4 multibyte character internationalization for the shell and util- ities is not supported. C Language Extensions Conformance to the POSIX standards and XPG4 specifications has meant changes and additional functionality for the C run-time library pro- vided with the C compiler. The stdio library functions support the behavior required by POSIX 1003.1. The C run-time library supports the ISO C features required by POSIX 1003.1. POSIX for OpenVMS Version 3.0 includes support for internationalized regular expression matching and compiling functions, native language message handling functions, and native language versions of the er- ror handling functions. 5 POSIX for OpenVMS Version 3.0 also supports table creation/search/deletion functions for linear tables, hash tables, and tree structured tables, as well as mathematical functions. Further additions and changes have been necessary to incorporate the TCP/IP Sockets calls. POSIX for OpenVMS Version 3.0 supports all the floating point features introduced by OpenVMS Version 6.1. All the above enhancements are part of the POSIX C RTL which is in- voked by the c89 preprocessor provided as part of POSIX for OpenVMS Version 3.0. Supported Standards and Components - a Summary The following list summarizes the formal and draft POSIX standards and components of the XPG4 BASE Profile specification implemented by POSIX for OpenVMS Version 3.0: o POSIX IEEE Std. 1003.1-1988 o POSIX IEEE Std. 1003.1-1990 ISO/IEC 9945-1:1990 o a part of POSIX IEEE 1003.1a, draft 4 o POSIX IEEE Std. 1003.1b-1993 o POSIX IEEE Std. 1003.2-1992 o All system interfaces not defined as "optional" that are contained in the first two volumes of the XPG4. o The curses Interface Library defined in Volume 3 of Issue 3 of the X/Open Portability Guide. 6 POSIX and XPG4 Conformance and Certification o POSIX Conformance The POSIX standards require that suppliers who claim conformance pro- vide a conformance document that describes how the supplier implements the standard. This is the only proof of conformance required by the IEEE. In the United States, the National Institute of Standards and Technology (NIST) has developed the POSIX Conformance Test Suite or PCTS. The PCTS tests for conformance to NIST's Federal Information Pro- cessing Standard (FIPS 151-2), which is based on POSIX 1003.1-1990. All versions of OpenVMS from V5.5 onwards are FIPS 151 certifiable; the V6.1 release of the OpenVMS operating system on both VAX and Al- pha platforms has achieved FIPS 151-2 certification. The V6.2 and V7.0 releases of the OpenVMS operating system on both VAX and Alpha plat- forms are FIPS 151-2 certifiable. o XPG4 Base Profile Branding Software vendors whose products implement XPG4 BASE Profile specifi- cations can apply to X/Open for the right to display the X/Open BASE Profile brand. The X/Open BASE Profile brand identifies that a sys- tem fulfills the comprehensive and stringent set of X/Open require- ments by: - Implementing the minimum set of components required to create the XPG4 Common Applications Environment. This set of XPG4 BASE Profile components consists of the internationalized system calls and functions, commands and utilities, and the C language as im- plemented on a specific hardware platform. - Passing those portions of the Verification Suite for X/Open (VSX) that test the implementation of these XPG4 BASE Profile compo- nents. Components must pass a series of more than 10000 tests in VSX to earn the X/Open BASE Profile Brand. OpenVMS VAX V5.5 and V6.0 are XPG3 BASE branded (as of June 1992). The V6.1 and V6.2 releases of the OpenVMS operating system on both VAX and Alpha platforms achieved XPG4 BASE Profile Branding. V7.0 release of 7 the OpenVMS operating system on both VAX and Alpha platforms is XPG4 brandable. Documents relating to the FIPS 151-2 Certification and the XPG4 Base Profile Branding are available on request. To obtain copies, please send mail to: vittorio.mezzano@edo.mts.dec.com Interoperability with OpenVMS Components and other Layered Products POSIX for OpenVMS Version 3.0 contains a number of enhancements which provide for interoperability with components of OpenVMS and with Key Layered products. o DECWindows[TM] Motif[R] POSIX for OpenVMS Version 3.0 applications can take advantage of the DECwindows/Motif functions. DECwindows/Motif V1.2.4 or greater is re- quired. o DEC TCP/IP Services for OpenVMS The network APIs provided by DEC TCP/IP Services for OpenVMS are ac- cessible by POSIX for OpenVMS Version 3.0 applications via a sock- ets interface. These interfaces provide support for sockets in the Inter- net domain and are based on the BSD Sockets definition. The Sockets Library is included as part of the POSIX for OpenVMS C RTL. Documentation The POSIX for OpenVMS Version 2.0 documentation is valid for POSIX for OpenVMS 3.0 as well. The POSIX for OpenVMS Version 2.0 documentation set describes all the callable functions and utilities provided together with guides to pro- gramming. Also included are a number of conformance documents for the POSIX standards. Note that the POSIX standards and the XPG4 specifi- cations are widely available. 8 The full documentation set is as follows: o POSIX for OpenVMS Installation and System Management Guide o POSIX for OpenVMS Reference Manual: Callable Interface o POSIX for OpenVMS Reference Manual: Shell and Utilities o POSIX for OpenVMS Guide to Programming o POSIX for OpenVMS Guide to Using the Shell The reference material provided by the above manuals is also supplied in the form of OpenVMS Online Help and a POSIX.2-conformant man pages system. Ordering Information The right to use license is included as part of OpenVMS. Hard copy doc- umentation and binaries are orderable as follows: Binaries on TK50 QA-GXXAB-H5 Binaries on MT09 QA-GXXAB-HM Binaries on CDrom QA-GXXAB-H8 Product Doc. on QA-GXXAB-G8 CDrom Product Doc. hard- QA-GXXAB-GZ copy Software Product Services: Media and Docu- QT-GXXAB-E5 mentation Updates (MT) Media and Docu- QT-GXXAB-EM mentation Updates (TK50) 9 Product Documenta- QT-GXXAB-KZ tion Update Installation QT-GXXA9-I9 Software Licensing No specific license is required for POSIX for OpenVMS Version 3.0. The OpenVMS license includes the right to use POSIX for OpenVMS Version 3.0. This software is furnished under the licensing provisions of Digital Equipment Corporation's Standard Terms and Conditions. For more in- formation about Digital's licensing terms and policies, contact your local Digital office. Software Warranty Warranty for this software product is provided by Digital with the pur- chase of a license for the OpenVMS operating system as defined in the Software Warranty Addendum of the OpenVMS SPD. Supported Processors POSIX for OpenVMS Version 3.0 is available on all processors supported by OpenVMS VAX Version 7.0. Cluster Environment POSIX for OpenVMS Version 3.0 may be installed in a mixed VAX/Alpha cluster. 10 Space Requirements The following disk space requirements exist (block cluster size = 1): ___________________________________________________________________ Table_1:_Disk_Space_Requirements___________________________________ PCSI KIT: Operating Blocks during System____Installation_____Blocks_after_installation_______________ OpenVMS 50 000 50 000 VAX_V7.0___________________________________________________________ These counts refer to the disk space required on the system disk. The sizes are approximate; actual sizes may vary depending on the user's system environment, configuration, and software options. A minimum of 6 Mbytes of memory is required to support POSIX for Open- VMS Version 3.0 along with the OpenVMS operating system. Growth Considerations Note that the minimum hardware/software requirements for any future version of this product may be different from the requirements for the current version. Software Requirements POSIX for OpenVMS Version 3.0 can be installed on the following ver- sion of OpenVMS: o OpenVMS VAX Version 7.0 11 Distribution Media o 9-track 1600 BPI Magtape, TK50 Streaming Tape, CDrom. This product is no longer available as part of the OpenVMS Consoli- dated Software Distribution on CDROM. Statement of Validity The above information is valid at time of release. Please contact your local Digital office for the most up-to-date information. © Digital Equipment Corporation 1996. All Rights Reserved. DECwindows, OpenVMS, VAX, VAXset, and the DIGITAL logo are trademarks of Digital Equipment Corporation. IEEE is a registered trademark of the Institute of Electrical and Elec- tronics Engineers Inc. Motif is a registered trademark of Open Software Foundation, Inc. POSIX is a registered certification mark of the Institute of Electri- cal and Electronics Engineers. UNIX is a registered trademark licensed exclusively by X/Open Company Ltd. X/Open is a trademark of the X/Open Company Limited. 12