ISO/IEC 9945-2:1993

Information technology - Portable Operating System Interface (POSIX) - Part 2: Shell and Utilities
This part of ISO/IEC 9945 defines a standard source-code-level interface to command interpretation, or "shell," services and common utility programs for applica- tion programs. These services and programs are complementary to those specified by ISO/IEC 9945-1: 1990 (IEEE Std 1003.1-1990) {8}, hereinafter referred to as "POSIX.1 {8}." When the User Portability Utilities Option is included, this part of ISO/IEC 9945 has additional scope. The list of utilities and features is extended to provide a common interactive environment for system users and program developers. This part of ISO/IEC 9945 has been designed to be used by both application programmers and system implementors. When the User Portability Utilities Option is included, it is also to be used by system users and program developers. How- ever, it is intended to be a reference document and not a tutorial on the use of the services, the utilities, or the interrelationships between the utilities. The emphasis of this part of ISO/IEC 9945 without the User Portability Utilities Option is on the shell and utility functionality required by application programs (including "shell scripts") and not on the direct interactive use of the shell command language or the utilities by humans. When the User Portability Utilities Option is included, the emphasis is extended to support terminal users in a consistent manner across all conforming systems. There are three constraining factors that limit this user portability scope: (1) The users in this context are limited to the group of individuals who are familiar with the style of interaction characteristic of historically derived systems based on one of the UNIX operating systems. Typical users would include program developers, engineers, or general purpose time-sharing users. (2) The environment to be supported is a multi-user time-sharing system supporting character-oriented display terminals. Alternatively, it is a collection of single-user systems interconnected via local area networks or telephone lines, but with similar user interfaces. This part of ISO/IEC 9945 does not include support that is tailored for bit-mapped or graphics display terminals, although it is expected that such terminals could emu-late the character orientation required by this environment. When facili-ties require cursor addressability from the terminal hardware, this is specifically identified in this part ofISO/IEC 9945. (3) The facilities to be provided are based on the historical models of the fol- lowing documents: the System V Interface Definition {B37}, the BSD User Manual {B46}, the X/Open Portability Guide {B49}, and documentation for the KornShell {B38}. Emphasis is placed on standardizing existing practice for existing users, with changes or additions limited to correcting deficiencies in the following areas: (a) Support for international character sets and other localization requirements, such as date formats, collation sequences, etc. (b) Reconciliation of differences between the historical implementa­tions. (c) Elimination of system or device dependencies. (d) Corrections of features that could reduce system or user security/integrity. Portions of this part of ISO/IEC 9945 comprise optional language bindings to sys-tern service interfaces. (See, for example, the C-Language Bindings Option in Annex B.) This part of ISO/IEC 9945 is intended to describe language interfaces and utilities in sufficient detail so that an application developer can understand the required interfaces without access to the source code of existing implementations on which they may be based. Therefore, it does not attempt to describe the source programming language or internal design of the utilities; they should be , considered "black boxes" that exhibit the described functionality. For language interfaces, or functions, this part of ISO/IEC 9945 has been defined exclusively at the source-code level. The objective is that a conforming portable application source program can be translated to execute on a conforming implementation. This part of ISO/IEC 9945 assumes that the source program may need to be retranslated to produce target code for a new environment prior to execution in that environment. There is no requirement that the base operating system supporting the shell and utilities be one that fully conforms to ISO/1EC 9945-1: 1990 {8}. (The base system could contain a subset of POSIX.1 {8} functionality, enough to support the require- ments for this part of ISO/IEC 9945 as described in 2.9.1, but it could not claim full conformance to all of POSIX.l {8}.) Furthermore, there is no requirement that the shell command interpreter or any of the standard utilities be written as POSIX.1 {8} conforming programs or be written in any particular language. Although not requiring a fully conforming POSIX.1 {8} base, this part of ISO/IEC 9945 is based upon documentation and the knowledge of existing programs that assume an interface and architecture similar to that described by POSIX.1 {8}. Any questions regarding the definition of terms or the semantics of an underlying concept should be referred to POSIX.1 {8}.
SDO:
IEC
Language:
English
ICS Codes:
35.060
Status:
Replaced
Publish date:
1993-12-22
Standard Number:
ISO/IEC 9945-2:1993