[lug] File size limit issue

G. Mallén mallen at chispa.com.mx
Sun Nov 19 10:43:25 MST 2000


I've done my homework regarding maximum file size in Linux.

The 2 GB limit comes from the fact that C uses a long integer (signed) to store
the position of the file where you are reading/writing. 2 GB is 2^31 (the other
bit is used for the sign, IMO a stupid thing in this case).

This is obvious in the fseek and fpos man page:

SYNOPSIS
       #include <stdio.h>

       int fseek( FILE *stream, long offset, int whence);
       long ftell( FILE *stream);

Some databases use raw disks to overcome this limitation.

With the modern huge disks this should change, but I don't know if there is
someone working on the problem.

Regards

Guillermo




More information about the LUG mailing list