Я хочу использовать APR для mmap действительно большого файла, больше 4Gb. Сначала мне нужно создать такой большой файл, но я нашел эту функцию apr_file_seek
принимает параметр типа apr_seek_where_t
это просто псевдоним для int. Так что можно искать только первые 4 концерта. Можно ли обрабатывать большие файлы с помощью APR?
Вы можете искать несколько раз с APR_CUR.
Также обратите внимание, что int
в 32-битной системе позволяет вам искать два два вперед, а не четыре.
Также обратите внимание, что в 32-битной системе mmap
скорее всего, не удастся отобразить более двух-трех гибибайт. (Когда адресное пространство ограничено 32 битами, максимальное адресное пространство составляет четыре гибибайта, но операционная система должна зарезервировать часть этого адресного пространства для себя).
Других решений пока нет …