| Introduction to the SAS/C Library |
Most
functions in the SAS/C library are compatible with industry-recognized C library
standards, including
The SAS/C library is fully compliant with the 1990 ISO/ANSI C
standard. Implementation-defined behavior for the ISO/ANSI library is described
in Chapter 2, "Language Definition" in
SAS/C Compiler and Library User's Guide.
The SAS/C library supports a number of functions defined by traditional
(pre-POSIX) UNIX systems. In some cases, these functions are limited to use
with the UNIX System Services (USS) OS/390 operating system, an International
Business Machines Corporation Product. However, in many cases, these functions
have been defined so that they are meaningful in native OS/390 and CMS environments.
For instance, although the
stat
and
link
functions are limited to use with USS files,
other functions such as
open
,
read
,
write
, and
access
can be used with most OS/390 and CMS file types.
Unlike the ISO/ANSI and POSIX libraries, the traditional
UNIX library is not defined as a formal standard. Rather, the traditional
UNIX library is informally defined by consensus with a number of different
UNIX implementations, based on both System V and BSD.
Although SAS/C does not and cannot support every function
defined by every historical UNIX variant, the library does attempt to offer
support for a large subset of the core UNIX functionality, especially functions
frequently used in portable programs. Note, however, that some core functions,
such as
fork
and
kill
, cannot be implemented under OS/390 or CMS by an application-level
library such as the SAS/C library without operating system support (such as
USS OS/390).
In addition
to the functionality provided in earlier releases of SAS/C, Release 6.00 supports
USS OS/390. USS comprises three products:
SAS/C, Release 6.00 directly uses the OS/390 support
for USS, and you can use it with the Shell and Utilities product. The dbx
debugger does not support SAS/C programs, but you can use the traditional
SAS/C debugger under the shell instead of using dbx.
Using the underlying functionality of the OS/390 support
for USS, SAS/C, Release 6.00 enables you to
To support these features, the Institute made some changes
to the SAS/C compiler and debugger, but most changes are localized to the
resident and transient libraries. Compile-time header files are also significantly
changed.
The POSIX 1003.1 standard is an ISO standard that specifies
operating system functionality in a C language interface. With USS, the SAS/C
library implements this interface under OS/390. USS and SAS/C also implement
portions of the 1003.1a draft standard and related extensions. POSIX 1003.1
is based on common elements of a number of UNIX operating systems.
The SAS/C POSIX implementation is documented in Part
3, "SAS/C POSIX Support," in
SAS/C Library Reference, Volume 2.
Copyright © 2001
by SAS Institute Inc., Cary, NC, USA. All rights reserved.