11.6. 64-bit Files in Solaris
For many years Sun shipped systems with a maximum file system and file size of 2 gigabytes. This size was a constraint imposed by the number of bits in the offset data types in the kernel. The size limitation occurred in three main places: the disk address type, daddr_t; the file system interface, off_t data type; and the uio structure used for device drivers and some file system interfaces. The pre-Solaris 2.0 types are both 32 bits, as shown below.
typedef long daddr_t; typedef long off_t; struct uio { struct iovec *uio_iov; int uio_iovcnt; off_t uio_offset; short uio_segflg; short uio_fmode; int uio_resid; };
The daddr_t and uio_t structures are used by device drivers and by some of the file system interfaces ...
Get Solaris™ Internals: Core Kernel Components now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.