Новое в файловых системах

Новое в файловых системах

Я не понимаю, почему существуют ограничения на размер файла и общую адресуемую память каждой файловой системы. Например, почему FAT32 может иметь максимальный размер файла 4 ГБ?

решение1

В основном, большая часть сводится к старым стандартам (особенно FAT16/32), которые были разработаны в те времена, когда файлы размером 4 ГБ были неслыханными, а раздел размером 2 ТБ был умопомрачительно большим. Они пошли на компромиссы в стандартах, которые на тот момент были вполне разумными.

Если вы посмотрите на это, старые файловые системы были очень ограничены, потому что использование компьютеров было ограничено в то время. Теперь у нас есть возможность создавать разделы настолько большие, что у нас, вероятно, не будет соответствующих устройств еще 20-30 лет.

решение2

Я собираюсь опустить здесь большую часть теории программирования и проектирования ОС, иначе это займет несколько дней.

Проще говоря, потому что на момент их написания были сделаны определенные предположения и приняты определенные решения по реализации, в частности, относительно того, как адресовать файлы и получать к ним доступ.

На компьютерном языке у всего и вся должно быть максимальное значение — бесконечности не существует.

Что еще важнее, каждая запись каталога должна иметь уникальный способ идентификации себя — владельца, какие специальные атрибуты и разрешения у нее есть, какой это тип файла (каталог, символическая ссылка, жесткая ссылка, обычный файл, канал, блочное устройство, символьное устройство и т. д.). В большинстве файловых систем unix это называется 'номер инода', и поскольку каждый из них должен быть уникальным, у вас никогда не может быть больше файлов, чем возможных различных номеров.

Theдругойпроблема заключается (или заключалась) в оптимизации; поскольку операции с файловой системой — это то, что ваша система будет делатьдовольноЧасто проектировщики естественным образом склонны выбирать наименьший диапазон размеров, который, по их мнению, будет разумным, поскольку компьютеры могут выполнять арифметические операции с меньшими (с точки зрения длины бит) числами гораздо быстрее, чем с большими... И когда самые большие жесткие диски, которые вы видите на рынке, имеют объем в один или два гигабайта, вы можете быть склонны предположить, что 65 тысяч файлов и максимальный размер файловой системы в 2 терабайта — это разумно и дальновидно.

Проходит время, и менее чем через десятилетие программисты ядра проклинают ваше имя и вашу недальновидность, пытаясь внести изменения в код вашей файловой системы, чтобы увеличить ее емкость.

Связанный контент