I need to save very large amounts of data (>500GB) which is being streamed (800Mb/s) from another device connected to my PC. The speed rules out use of a database e.g. MySQl/ISAM and I am looking for a fast, light library which sits on top of the 'C' stdio file lib (i.e. fopen/fclose/fwrite) which will allow me to write/read a very large file (up to available disk-space). 

Behind-the-scenes, the large file can be broken up into smaller files e.g. 1GB and I want the API to take care of these details.

The data arrives at the PC in a compressed binary format and no further processing is needed before writing it to the hard-disk.

The library should be work for Windows and Linux.