Integrated File System Introduction

 

Large file support for APIs

The integrated file system APIs are enhanced to allow your applications to store and manipulate very large files. The integrated file system allows stream file sizes up to 256 gigabytes in the "root" (/), Open Systems File System (QOpenSys), and user-defined file systems.

The integrated file system provides a set of 64-bit UNIX-type APIs and allows an easy mapping of existing 32-bit APIs to 64-bit APIs that are capable of accessing large file sizes and offsets by using eight byte integer arguments. For details on each 64-bit API, see the Integrated File System APIs topic in the iSeries Information Center.

The following are provided to allow applications to use large file support:

  1. If the macro label _LARGE_FILE_API is defined at compile time, applications have access to APIs and data structures that are 64-bit enabled. For example, an application intending to use stat64() API and stat64 structure will need to define _LARGE_FILE_API at compile time.
  2. If the macro label _LARGE_FILES is defined by the applications at compile time, existing APIs and data structures are mapped to their 64-bit versions. For example, if an application defines _LARGE_FILES at compile time, a call to stat() API is mapped to stat64() API and stat()structure is mapped to stat64() structure.

The applications that intend to use the large file support can either define _LARGE_FILE_API at compile time and code directly to the 64-bit APIs, or they can define _LARGE_FILES at compile time. All the appropriate APIs and data structures are then mapped to the 64-bit version automatically.

Applications that do not intend to use the large file support are not impacted and can continue to use integrated file system APIs without any changes.


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]