Глядя на свойства файла Windows, я получаю два атрибута: «Размер» и «Размер на диске», а «Размер на диске» всегда больше.
Что означают эти две метрики?
windows
filesystems
Гэвин Миллер
источник
источник
Ответы:
Размер - это фактический размер файла в байтах.
Размер на диске - это фактический объем места, занимаемого на диске. Они отличаются тем, что диск разделен на дорожки и сектора, и может выделять блоки дискретного размера.
редактирование
Для более подробного объяснения см. Этот текст, который я скопировал с другого сайта:
Источник: в чем разница между размером и размером на диске в свойствах папки Windows .
источник
Это связано с размерами единиц размещения, которые использовались на вашем диске при его первом форматировании.
Представьте, что у вас в машине две канистры по 2 х 10 галлонов. Каждый баллон с газом является единицей распределения. Вам нужно получить 12 галлонов газа, поэтому вам нужно использовать обе канистры. В основном, используя 20 галлонов выделенного пространства - но только заполняя 12 галлонов.
Вот размер по умолчанию для Windows XP
Если вы думаете о размере кластера как о каждой из ваших канистр с газом: держите по 4 КБ «газа» каждая. Но ваш файл имеет размер 2 КБ, тогда размер заливки равен 2 КБ, а размер на диске - 4 КБ.
источник
Пространство Кластера
Вы не можете получить доступ к каждому отдельному байту на носителе отдельно. Это было бы ужасно неэффективно, потому что системе нужен какой-то способ отслеживать, какие из них используются, а какие свободны (т. Е. Список), поэтому выполнение этого для каждого байта в отдельности создаст слишком много перехвата (для каждого отдельного байта, то есть 1 к 1, список будет таким же большим, как и сам носитель!)
Вместо этого носитель разбивается на куски, блоки, блоки, группы, как вы хотите их называть (технический термин - кластеры ), каждый из которых содержит - согласованное - количество байтов (обычно вы можете указать размер кластеры, поскольку разное использование требует разных размеров для сокращения отходов).
При сохранении файла на диск, размер файла делится он размером кластера и округляется до , если это необходимо. Это означает, что если размер файла не делится точно на размер кластера, некоторые из кластеров в конечном итоге не используются и, следовательно, теряются.
Когда вы просматриваете свойства файла, вы видите истинный размер файла, а также размер, который он занимает на диске, включая любые « слабые места », то есть «кластерные подсказки», которые не используются. Обычно это не так много для каждого файла, и размер на диске , как правило, почти равен фактическому размеру, но когда вы добавляете потраченное впустую пространство из всех тысяч файлов на диске, они могут сложиться. Поэтому при просмотре размера большой папки, особенно той, в которой много мелких файлов, которые меньше кластера, размер на диске (т. Е. Объем дискового пространства, помеченный как использованный) может оказаться значительно больше фактического размер (т. е. объем пространства, который требуется файлам).
В случае, подобном описанному выше, вы можете уменьшить размер кластера, чтобы каждый файл занимал меньше места. Как правило, диск с большей частью потерянных небольших файлов должен использовать наименьший возможный размер кластера (для уменьшения потерь), а диск с большей частью больших файлов должен использовать наибольший возможный размер кластера (таким образом, структуры бухгалтерского учета в конечном итоге становятся меньше).
Даже на более низком уровне, если каждый кластер представляет собой только один сектор , если файл не является точным кратным размеру секторов на диске (обычно 512 байт традиционно, теперь часто 4096 с дисками расширенного формата ), тогда все равно будет Неиспользуемое пространство между концом файла и концом сектора.
компрессия
Другой сценарий, в котором вы можете увидеть разницу между фактическим размером файла и размером на диске, связан со сжатием. Когда диск сжимается (например, с помощью DriveSpace , NTFS-сжатия и т. Д.), Тогда будет разница между размером фактического файла (который необходимо знать) и фактическим размером, который файл занимает (т. Е. Использует или «занимает») на диске.
Ярлыки и жесткие ссылки
Еще один сценарий, который может привести к разнице, связан с жесткими ссылками . В файловых системах, которые поддерживают жесткие ссылки, при создании дубликата файла вместо создания целого нового файла, который занимает место для себя, файловая система создает ярлык для файла, чтобы оба (или все три, и т. Д.) копии указывают на один и тот же физический файл на диске. Поэтому, когда два файла указывают на одни и те же данные, они имеют одинаковый размер, но занимают лишь немного больше места, чтобы хранить одну копию.
источник
Еще одна вещь, которая может значительно уменьшить значение «Размер на диске», - это ситуации, когда файл на самом деле не хранится на диске, но по-прежнему доступен различными способами.
Например, функция «Автономные файлы» OneDrive позволяет пользователю сохранять файл таким образом, чтобы он был доступен через интернет-соединение. Файл все еще существует на диске и имеет определенный размер, но, поскольку он не находится на диске, пока он не загружен, он не занимает места.
Пример на папку внутри ...
источник