Предыстория: как часть попытки обеспечить полное покрытие в моих модульных тестах, я испытываю стресс-тестирование некоторых проверок переполнения.
Итак, я попытался создать разреженный файл 16 EiB.
Однако в Linux / Btrfs это похоже на ошибку 8 EiB (2 ^ 63 байта), а не 16 EiB (2 ^ 64 байта), вероятно, потому что off_t
подписано.
Существует ли комбинация ОС / файловой системы, которая на самом деле , а не теоретически, позволяет создавать такие файлы?
(- 1 опущено в каждом из чисел выше)
Это работает:
dd if=/dev/zero of=sparse_file bs=1 count=0 seek=9223372036854775807
Это не удалось:
dd if=/dev/zero of=sparse_file bs=1 count=0 seek=9223372036854775808