крути педали...

Почему существует такая большая разница между «Размер» и «Размер на диске»? Размер и размер на диске


«Размер» и «На диске» в свойствах файла: какая между ними разница

При просмотре свойств любого файла вы можете видеть два параметра, указывающих его вес – «Размер» и «На диске». И эти показатели будут разными. И, наверняка, вам было интересно, почему они разные, чем они отличаются, и каков действительный вес просматриваемого файла. В данной статье я вам это доступно объясню.

«Размер» и «На диске» — в чём разница

Итак, если кликнуть правой кнопкой на файл и выбрать пункт «Свойства», то мы видим окно, в котором можем посмотреть вес данного файла. Они указываются в строках «Размер» и «На диске». Эти параметры разные.

Почему они разные и какой реальный вес файла? Чтобы это понять, отойдём от компьютерной темы и обратимся к жизненному примеру.

Представьте себе, что у вас есть 3 бочки по 10 литров каждая. И вам необходимо сохранить в них 12 литров пива и 5 литра томатного сока. Вы заливаете пиво в первую бочку, туда пометилось только 10 литров. Оставшиеся 2 литра пива вы заливаете во вторую бочку. 5 литров томатного сока можно пометить в последнюю третью бочку.

В результате у вас получилась одна полная почка пива, одна бочка пива заполнена лишь на 2 литра, и ещё одна бочка томатного сока, заполнена только наполовину.

Вернёмся к компьютерам. На жёстком диске с файловой системой NTFS (на компьютерах чаще всего именно такая файловая система) существуют ячейки размером по 4 Кб. Это как наши бочки по 10 литров. Файлы, сохраняемые на жёстком диске, будут заливаться в эти «бочки» по 4 Кб. Таким образом, если мы сохраняем на компьютере файл размером, допустим, в 8 Кб, он займёт 2 ячейки памяти (2 бочки). Если мы сохраняем файл размером в 5 Кб, он тоже замёт 2 ячейки (4 Кб в одну и 1 Кб в другую). Файлы, размером менее 4 Кб занимают одну ячейку.

Продолжаем вести линию от бочек с пивом и томатным соком. Когда вы залили 10 литров пива в одну бочку, а оставшиеся 2 литра в другую, вы не стали наполнять эту не до конца залитую бочку пива томатным соком (ведь нельзя же смешивать пиво и сок). Вы в этом случае использовали другую, новую бочку.

Так и с ячейками памяти. Если файл размером 5 Кб, занимает 2 ячейки (4 Кб в одной и 1 Кб в другой), то эта не заполнена до конца ячейка, не займётся другим файлом. Другой файл будет записываться в следующую свободную ячейку.

И теперь вернёмся к самому началу – параметрам «Размер» и «На диске». «Размер» указывает, сколько есть реального объёма файла, то есть, сколько пива было в действительности. А «На диске» показывает, сколько этот файл занял места на диске, то есть, сколько объёма бочек ушло на сохранения имеющегося пива.

Параметр «Размер» является реальным размером файла. Файл будет таким, на какой носитель вы бы его не переместили. А «На диске» указывает, сколько места он занимает на жёстком диске. Он может зависеть от файловой системы носителя. «Размер» и «На диске» всегда близки, но первый меньше второго.

Для закрепления знаний обратимся к скриншотам с примерами. На первом скриншоте мы видим параметры «Размер» и «На диске» равные 10 байт и 4 Кб, соответственно.

Это значит, что файл реально всего весит 10 байт, на жёстком диске занимает одну целую ячейку – 4 Кб. В этой ячейке другие файлы не будут записаны.

На втором скриншоте параметры «Размер» и «На диске» равны 5.99 Кб и 8 Кб, соответственно.

Это значит, что реальный размер файла 5,99 Кб, а на диске он занимает две ячейки памяти, то есть 8 Кб. При этом одна из них заполнена полностью на 4 Кб, а вторая частично – на 1,99 Кб. И другой файл в эту, не до конца заполненную, ячейку памяти не запишется.

system-blog.ru

В чем разница между «Размер» и «На диске» в свойствах файла Windows?

Наверняка многие видели в свойствах файла два значения размера («Размер» и «На диске»), которые имели похожие значения, но все же отличались. Причем в одном случае различия могут быть очень велики, а в другом почти незаметны. С чем это может быть связано и как именно правильно определять размер файла или в папки в этом случае? На самом деле все достаточно просто и ниже я расскажу почему.

При форматировании диска он разбивается на ячейки (параметр «Размер единицы распределения» в настройках форматирования). В файловой системе NTFS данный размер равен 4Кб. В файловой системе FAT он равен 64Кб. Это значение является минимальным объемом, который может занимать файл на диске. Если записать в такую ячейку файл, который равен размеру ячейки, то он будет занимать на диске столько же, сколько и эта ячейка. Если же размер файла меньше размера ячейки, то на диске он будет занимать размер равный этой ячейке.

Для наглядного примера можно взять три файла разного размера. Первый файл имеет размер 1.5Кб, второй файл 4Кб, а третий файл 6Кб. Соответственно, при минимальном размере ячейки в 4Кб первый и второй файлы будут занимать 4Кб на диске (одну ячейку), а третий файл будет занимать 8Кб (2 ячейки по 4Кб каждая), хотя его размер составляет 6Кб. Первая ячейка заполнена, а вторая лишь частично.

Отсюда получается, что фактический размер файла делится на размер сектора и округляется до целого в большую сторону. Если файл занимает 2.2 сектора, то в поле «на диске» показывается 3 сектора и так далее. Чем меньше размер отдельного сектора, тем меньше разница между двумя полями «Размер» и «На диске».

Как быть, если «На диске» значительно больше «Размера»?

В этом случае есть два выхода. Первый заключается в том, что можно переформатировать устройство хранения данных с меньшим значением показателя «Размер единицы распределения». Если вы используете FAT, то можно попробовать переформатировать в FAT32 или NTFS. Если же сделать это невозможно, то остается второй вариант – смириться.

См. также: «Как получить больше свободного места на диске»

review-software.ru

Общий размер и Размер на диске - в чем разница

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

Кликнув на файле или каталоге правой кнопкой "мыши" и выбрав пункт "Свойства" можно увидеть разницу между «Размер» и «На диске». Например в файловом менеджере SpaceFM эта информация представлена как "Общий размер" и "Размер на диске".

Почему "Размер на диске" больше чем "Общий размер"

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

Большинство современных файловых систем могут работать с размерами блока от 1 КБ (1024 байта) до 64 КБ (65536 байт). При создании файла для его хранения на диске ему отводится определённое количество блоков.

Например, если в файловой системе, которая отформатирована с размером блока в 4 КБ (4096 байт), создать пустой текстовый файл, то его «Размер» (Общий размер) будет 0 байт, а фактически «На диске» (Размер на диске) он будет занимать 4 КБ (4096 байт).

Другими словами, под хранение файла отводится минимум один блок файловой системы, а если файл не помещается в один блок, то ему отводится ещё один, и так далее пока файл не поместится полностью. Когда файл не помещается в один блок, то в таком случае мы получаем его фрагментацию - т.е. файл разбивается на фрагменты размером в 4 КБ (4096 байт) и помещается в отдельные ячейки (блоки) файловой системы.

Почему "Общий размер" больше чем "Размер на диске"

Бывают также и такие, казалось бы парадоксальные, случаи, когда файловый менеджер может выдать результат в котором «Размер» (Общий размер) окажется больше, чем фактически «На диске» (Размер на диске).

Например "Общий размер:" корневого раздела / 281,0 Г ( 1071898461 байт ), а "Размер на диске:" 274,5 Г ( 2703195136 байт ). Так может произойти, например, из-за использования NTFS сжатия на разделе.

В данном случае так и произошло, ОС Linux, анализировался корневой раздел / в структуре которого в точку /mnt/BACKUP был смонтирован NTFS раздел с размером блока в 64 кб и активированным на нём NTFS сжатием.

Какой размер блока выбирать при форматировании диска

Для операционной системы, включая домашние каталоги пользователей, вполне оптимальным размером является стандартный размер блока в 4 КБ.

А вот для хранения больших мультимедиа (аудио, видео) файлов, минимальный размер каждого из которых всегда больше 1-3 МБ, лучше конечно выделить отдельный раздел и отформатировать его с максимальным размером блока в 64 КБ.

Что касается виртуальных серверов используемых под обычные веб-сайты, то в этом случае возможно будет лучше снизить размер блока до 2, а то и до 1 КБ - ведь от общего числа файлов хорошо оптимизированного сайта может быть около половины файлов не превышающий даже 1 КБ (80, 500, 800 байт).

Рекомендуемый контент

Об авторе

АдМинь БагоИскатель ярый борец за безглючную работу любых механизмов и организмов во всей вселенной и потому пребывает в вечном поиске всяческих багов, а тот кто ищет как известно всегда находит. Когда что-то или кого-то вылечить не в состоянии, то со словами "Я в аду, а вы все черти" уходит в запой выйдя из которого снова берётся лечить неизлечимое.

Ещё статьи автора

www.remoteshaman.com

«Размер» и «На диске» в свойствах файла: какая между ними разница

При просмотрe свойств любого файла вы можeтe видeть два парамeтра, указывающих eго вeс – «Размeр» и «На дискe». И эти показатeли будут разными. И, навeрняка, вам было интeрeсно, почeму они разныe, чeм они отличаются, и каков дeйствитeльный вeс просматриваeмого файла. В данной статьe я вам это доступно объясню.

«Размeр» и «На дискe» — в чём разница

Итак, eсли кликнуть правой кнопкой на файл и выбрать пункт «Свойства», то мы видим окно, в котором можeм посмотрeть вeс данного файла. Они указываются в строках «Размeр» и «На дискe». Эти парамeтры разныe.

Почeму они разныe и какой рeальный вeс файла? Чтобы это понять, отойдём от компьютерной тeмы и обратимся к жизнeнному примeру.

Прeдставьтe сeбe, что у вас eсть 3 бочки по 10 литров каждая. И вам нeобходимо сохранить в них 12 литров пива и 5 литра томатного сока. Вы заливаeтe пиво в пeрвую бочку, туда помeтилось только 10 литров. Оставшиeся 2 литра пива вы заливаeтe во вторую бочку. 5 литров томатного сока можно помeтить в послeднюю трeтью бочку.

В рeзультатe у вас получилась одна полная почка пива, одна бочка пива заполнeна лишь на 2 литра, и eщё одна бочка томатного сока, заполнeна только наполовину.

Вeрнёмся к компьютерам. На жёстком дискe с файловой систeмой NTFS (на компьютерах чащe всeго имeнно такая файловая систeма) сущeствуют ячeйки размeром по 4 Кб. Это как наши бочки по 10 литров. Файлы, сохраняeмыe на жёстком дискe, будут заливаться в эти «бочки» по 4 Кб. Таким образом, eсли мы сохраняeм на компьютерe файл размeром, допустим, в 8 Кб, он займёт 2 ячeйки памяти (2 бочки). Если мы сохраняeм файл размeром в 5 Кб, он тожe замёт 2 ячeйки (4 Кб в одну и 1 Кб в другую). Файлы, размeром мeнee 4 Кб занимают одну ячeйку.

Продолжаeм вeсти линию от бочeк с пивом и томатным соком. Когда вы залили 10 литров пива в одну бочку, а оставшиeся 2 литра в другую, вы нe стали наполнять эту нe до конца залитую бочку пива томатным соком (вeдь нeльзя жe смeшивать пиво и сок). Вы в этом случаe использовали другую, новую бочку.

Так и с ячeйками памяти. Если файл размeром 5 Кб, занимаeт 2 ячeйки (4 Кб в одной и 1 Кб в другой), то эта нe заполнeна до конца ячeйка, нe займётся другим файлом. Другой файл будeт записываться в слeдующую свободную ячeйку.

И тeпeрь вeрнёмся к самому началу – парамeтрам «Размeр» и «На дискe». «Размeр» указываeт, сколько eсть рeального объёма файла, то eсть, сколько пива было в дeйствитeльности. А «На дискe» показываeт, сколько этот файл занял мeста на дискe, то eсть, сколько объёма бочeк ушло на сохранeния имeющeгося пива.

Парамeтр «Размeр» являeтся рeальным размeром файла. Файл будeт таким, на какой носитeль вы бы eго нe пeрeмeстили. А «На дискe» указываeт, сколько мeста он занимаeт на жёстком дискe. Он можeт зависeть от файловой систeмы носитeля. «Размeр» и «На дискe» всeгда близки, но пeрвый мeньшe второго.

Для закрeплeния знаний обратимся к скриншотам с примeрами. На пeрвом скриншотe мы видим парамeтры «Размeр» и «На дискe» равныe 10 байт и 4 Кб, соотвeтствeнно.

Это значит, что файл рeально всeго вeсит 10 байт, на жёстком дискe занимаeт одну цeлую ячeйку – 4 Кб. В этой ячeйкe другиe файлы нe будут записаны.

На втором скриншотe парамeтры «Размeр» и «На дискe» равны 5.99 Кб и 8 Кб, соотвeтствeнно.

Это значит, что рeальный размeр файла 5,99 Кб, а на дискe он занимаeт двe ячeйки памяти, то eсть 8 Кб. При этом одна из них заполнeна полностью на 4 Кб, а вторая частично – на 1,99 Кб. И другой файл в эту, нe до конца заполнeнную, ячeйку памяти нe запишeтся.

Добавить комментарий

pckryiz.ru

В чем разница между размером и размером на диске? Bilee

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

Вместо этого среда разбивается на куски, блоки, блоки, группы, все, что вы хотите назвать их (технический термин – это кластеры ), каждый из которых содержит число с последовательным числом байтов (обычно вы можете указать размер Кластеров, поскольку различные виды использования требуют разных размеров для сокращения отходов).

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

Когда вы просматриваете свойства файла, вы видите истинный размер файла, а также размер, который он занимает на диске, который включает в себя любые « слабые », то есть «советы кластера», которые не используются. Обычно это не так много для каждого файла, и размер на диске обычно будет почти равным фактическому размеру, но когда вы добавляете потерянное пространство из всех тысяч файлов на диске, они могут складываться. Поэтому, когда вы просматриваете размер большой папки, особенно со множеством крошечных файлов, размер которых меньше кластера, размер на диске (т. Е. Объем дискового пространства, помеченного как использованный) может оказаться значительно больше, чем фактический Размер (т. Е. Объемное пространство, которое требуется фактическим файлам).

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

Даже на более низком уровне, если каждый кластер представляет собой только один сектор , если только файл не является точным кратным размеру секторов на диске (обычно по 512 байт традиционно, теперь часто 4096 с дисками расширенного формата ), тогда все равно будет Быть неиспользуемым пространством между концом файла и концом сектора.

Другой сценарий, в котором вы можете увидеть разницу между фактическим размером файла и размером на диске, – это сжатие. Когда дис

www.bilee.com

Что означает «размер на диске» у папки Windows?

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

Но оказывается, что в рекурсивном поиске по подпапкам есть свои хитрости. Одна из «особых» хитростей: точки повторной обработки обнаруживаются и рекурсивные переходы по ним не производятся. Другая хитрость обусловлена простым совпадением: размер символических ссылок на файлы не засчитывается. Причина не в особой «мудрости» кода поиска по подпапкам, а в том, что в файловой системе размер символических ссылок считается равным нулю. Теперь мы знаем, как считается размер файлов, но откуда берутся упомянутые цифры?

Измерение размера не составляет проблем — надо просто получить перечень размеров всех файлов, возвращенных функцией Find­First­File в структуре WIN32_FIND_DATA (nFile­Size­Low и nFile­Size­High). Но надо помнить, что эти цифры не обязательно верны из-за особенностей обновления записей каталога в файловой системе NTFS. Этому можно посвятить целую книгу, но вкратце суть в том, что возвращенная информация о размере файлов, запись которых не завершилась, не совсем верна, пока не будет закрыт описатель файла. Но даже после этого будет обновлена запись в каталоге, использованная для открытия файла.

С параметром «На диске» (Size on disk) все еще сложнее. Если диск поддерживает сжатие (что можно узнать по состоянию флага FILE_FILE_COMPRESSION, возвращенного функцией Get­Volume­Information) и файл является сжатым или разраженным (флаги FILE_ATTRIBUTE_COMPRESSED, FILE_ATTRIBUTE_SPARSE_FILE), значение параметра «На диске» этого файла будет равным значению, возвращенному функцией Get­Compressed­File­Size.

Это размер сжатого файла (если он сжат) или размер файла за вычетом незанятых частей, которые логически считаются пустыми (если это разреженный файл). Если файл не разрежен и не сжат, параметр «На диске» равен значению, возвращенному функцией Find­First­File, после его округления до ближайшего кластера.

Изначально алгоритм вычисления параметра «На диске» был создан разработчиками Windows 95. Их понимание строения файловой системы происходило из знаний, полученных при работе с MS-DOS. В то время единственной дисковой файловой системой была FAT. Таких вещей, как жесткая ссылка или альтернативный поток данных, еще не существовало. Содержимое файлов хранилось в кластерах.

Все эти принципы в NTFS не работают — даже принцип хранения файлов в кластерах. В NTFS файл может занимать нуль кластеров под данные, разместившись в пространстве основной таблицы файлов (master file table, MFT). Подробнее см. статью The Four Stages of NTFS File Growth. Естественно, что в параметре «На диске» не учитывается пространство, необходимое файловой системе для хранения файла, такое как место, занимаемое именем файла, записью в каталоге, метаданными файла и альтернативными потоками данных.

Значения, отображаемые в параметрах «Размер» (Size) и «На диске» (Size on disk) не нужно использовать, как точный размер «до байта» общего пространства, занимаемого файлами на диске. Это всего лишь грубая оценка, основанная на предположении, что большинство файлов стандартно, а файлов экзотических форматов нет или очень мало. Я имею в виду, что нет жестких ссылок и пренебрежительно мало альтернативных потоков данных. Если в вашем каталоге много жестких ссылок, таких как, например, сами Windows-каталоги, цифры на странице свойств будут неверными.

Можно использовать параметр «На диске» как оценку размера папки, но имейте в виду, что это очень базовая цифра. Если нужно внимательно следить за использованием дискового пространства, лучше воспользуйтесь дисковыми квотами, которые позволяют более точно выполнять эту задачу.

winlined.ru

Почему существует такая большая разница между «Размер» и «Размер на диске»? Bilee

Я буду предполагать, что вы используете файловую систему FAT / FAT32 здесь, поскольку вы упоминаете, что это SD-карта. NTFS и exFAT ведут себя аналогично в отношении единиц распределения. Другие файловые системы могут быть разными, но в любом случае они не поддерживаются в Windows.

Если у вас много мелких файлов, это, безусловно, возможно. Учти это:

Итак, теперь минимальное пространство составляет 50 000 * 32 000 = 1,6 ГБ (с использованием префиксов СИ, а не двоичных, чтобы упростить математику). Пространство, которое каждый файл занимает на диске, всегда кратно размеру единицы размещения – и здесь мы предполагаем, что каждый файл на самом деле достаточно мал, чтобы вписаться в единое целое, с некоторым оставшимся (потерянным) пространством.

Если каждый файл усреднил 2 кБ, вы получите около 100 МБ общего объема, но вы также тратите 15х (30 кБ на файл) в среднем из-за размера единицы размещения.

Углубленное объяснение

Почему это происходит? Ну, файловая система FAT32 должна отслеживать, где хранится каждый файл. Если бы он содержал список каждого байта, таблица (например, адресная книга) будет расти с той же скоростью, что и данные, и тратить много места. Поэтому они используют «единицы распределения», также известные как «размер кластера». Громкость разделена на эти единицы распределения, и, что касается файловой системы, они не могут быть разделены – это самые маленькие блоки, которые могут быть адресованы. Как и у вас есть номер дома, но ваш почтальон не заботится о том, сколько у вас комнат или кто живет в них.

Итак, что происходит, если у вас очень маленький файл? Ну, файловой системе все равно, будет ли файл 0 kB, 2 kB или даже 15 kB, он даст ему наименьшее пространство, которое он может – в приведенном выше примере – 32 kB. В вашем файле используется только небольшое количество этого пространства, а остальное – в основном впустую, но все равно принадлежит к файлу – подобно спальне, которую вы оставляете незанятой.

Почему существуют разные размеры единиц размещения? Ну, это становится компромиссом между большим столом (адресной книгой, например, говоря, что Джон владеет домом на 123 Fake Street, 124 Fake Street, 666 Satan Lane и т. Д.), Или больше потраченного впустую места в каждой части (доме). Если у вас большие файлы, имеет смысл использовать более крупные единицы размещения – потому что файл не получает новую единицу (дом), пока все остальные не будут заполнены. Если у вас много маленьких файлов, ну, в любом случае у вас будет большая таблица (адресная книга), чтобы они могли также дать им небольшие единицы (дома).

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

Дробление?

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

Возможные решения

Как предположил gladiator2345 , ваши единственные реальные варианты на этом этапе – жить с ним или переформатировать с меньшими единицами распределения.

Ваша карта может быть отформатирована в FAT16, которая имеет меньший предел для размера таблицы и поэтому требует гораздо больших блоков распределения, чтобы обратиться к большему объему (с верхним пределом в 2 ГБ с 32 КБ единицами распределения). Источник любезно предоставлен Брайамом . Если это так, вы должны быть в состоянии безопасно форматировать как FAT32 в любом случае.

www.bilee.com