Large POSIX files are files of a POSIX file system which can be larger than 2 gigabytes. Large POSIX files can only be created in POSIX file systems which are based on a large container and can thus exceed the limit value of 2 gigabytes, see the previous section.
The maximum size of a POSIX file is limited by the size of the container file which contains it. You can also specify a maximum file size in POSIX, which applies to all files of the POSIX file system (command ulimit or parameter FILESIZE in the POSIX information file).
Program interfaces for large POSIX files
To work with POSIX files, there are a number of C-library functions, such as open(), close(), which are made available by CRTE. A subset of these functions is available in 64-bit form, so that they can process large POSIX files. These functions have the same name, with the additional suffix “64”, e.g. open64(). Some data structures and data types were also converted to 64-bit form. For further information, see section “Program interface for large POSIX files”.
Shell commands for large POSIX files
Most file processing commands of the POSIX shell can recognize and sometimes also process large POSIX files. They fall into two categories:
large file aware | This command can process large POSIX files correctly. Some of the |
large file safe | This command recognizes large POSIX files but rejects processing |
To determine which category a command belongs to, see section “Commands belonging to the POSIX shell” in the column LFS.
BS2000 programs which work with POSIX files in the same way (e.g. HSMS, SORT, SPOOL) have been adapted when it seems necessary or advisable to process large files.