Я добавляю некоторые функции к существующей базе кода, которая использует чистые функции C ( fopen
, fwrite
, fclose
) для записи данных в файл. К сожалению, я не могу изменить фактический механизм ввода-вывода файлов, но мне нужно предварительно выделить место для файла, чтобы избежать фрагментации (которая убивает нашу производительность во время чтения). Есть ли лучший способ сделать это, чем записывать в файл нули или случайные данные? Я знаю максимальный размер файла, когда открываю его.
Я знаю, что могу использовать fallocate в Linux, но не знаю, что такое эквивалент в Windows.
Спасибо!