In addition to conventional files, such as sequential files and
partitioned data sets, the z/OS® XL
C/
C++ runtime library supports the following file types:
- Virtual Storage Access Method (VSAM) data sets
- z/OS XL C/C++ has native support for the following VSAM data sets:
- Key-Sequenced Data Sets (KSDS). Use KSDS to access a record through
a key within the record. A key is one or more consecutive characters
that are taken from a data record that identifies the record.
- Entry-Sequenced Data Sets (ESDS). Use ESDS to access data in the
order it was created (or in reverse order).
- Relative-Record Data Sets (RRDS). Use RRDS for data in which each
item has a particular number (for example, a telephone system where
a record is associated with each telephone number).
For more information on how to perform
I/O operations on these VSAM file types, see "Performing VSAM I/O operations" in z/OS XL C/C++ Programming Guide.
- Hierarchical File System files
- z/OS XL C/C++ recognizes Hierarchical File System (HFS) file names.
The name specified on the fopen() or freopen() call
has to conform to certain rules. See "Opening
Files" in z/OS XL C/C++ Programming Guide for the details
of these rules. You can create regular HFS files, special character
HFS files, or FIFO HFS files. You can also create links or directories.
Note: As of z/OS V1R7,
the Hierarchical File System (HFS) functionality has been stabilized
and z/OS File System (zFS)
is the strategic UNIX System
Services file system for z/OS.
- Memory files
- Memory files are temporary files that reside in memory. For
improved performance, you can direct input and output to memory files
rather than to devices. Since memory files reside in main storage
and only exist while the program is executing, you primarily use them
as work files. You can access memory files across load modules through
calls to non-POSIX system() and C fetch(); they
exist for the life of the root program. Standard streams can be redirected
to memory files on a non-POSIX system() call using command
line redirection.
- IBM® Hiperspace™ expanded storage
- Large memory files can be placed in Hiperspace expanded storage to free up some of your
home address space for other uses. Hiperspace expanded storage or high performance space
is a range of up to 2 GB of contiguous virtual storage space. A program
can use this storage as a buffer (1 gigabyte(GB) = 230 bytes).
- z/OS File System
- z/OS File System (zFS)
is a z/OS UNIX file system that can be used in addition to
the Hierarchical File System (HFS). zFS may provide performance gains
in accessing files that are frequently accessed and updated. The I/O
functions in the z/OS XL C/C++
runtime library support zFS.