Показать полную графическую версию : [решено] Как более точно понять,сколько занято место на жестком диске?
fd4tvk,
Пример: при кластере 4кб возмём файл размером тоже 4кб и разобьём его на 4096 части оп 1байт каждая »
Хорошо если так, а если файл, например 9 КБ ? 2 кластера будут забиты полностью, а в одном будет всего 1Кб - и он будет все-равно считаться заполненным. В файловых системах ntfs и fat32 насколько я знаю нет возможности дописать в неполный кластер "кусок" другого файла, а в некоторых других ФС такое возможно, например в ReiserFS.
Дефрагментация только упорядочивает кластеры с фрагментами файла таким образом - чтоб они шли по-порядку, снижая таким образом время доступа к файлу, но не заполняет "недописанные" кластеры.
Хорошо если так, а если файл, например 9 КБ ? 2 кластера будут забиты полностью, а в одном будет всего 1Кб - и он будет все-равно считаться заполненным. »
А если 3 кластера в каждом по 3кб, а если 9 кластеров в каждом по 1кб? Вот дефрагментация всё и уложыт в озвученные Вами 2 кластера: один занят полностью, во втором всего 1кб, и поставит их по порядку.
но не заполняет "недописанные" кластеры »
Но уменьшает их количество, потому, что:упорядочивает кластеры с фрагментами файла таким образом - чтоб они шли по-порядку »
В приведённом мной выше (http://forum.oszone.net/post-1975603-20.html) примере дефрагментация упорядочит всё в один кластер.
Но уменьшает их количество, потому, что: »
Как можно уменьшить количество незаполненных кластеров если есть файлы с "хвостами"??? Куда по вашему они допишутся если В файловых системах ntfs и fat32 [...]нет возможности дописать в неполный кластер "кусок" другого файла »
Кластер с 1Кб информации как был неполным так неполным и останется, просто программа дефрагментатор переместит его поближе к другим кускам этого же файла - в этом суть дефрагментации (http://ru.wikipedia.org/wiki/%D0%94%D0%B5%D1%84%D1%80%D0%B0%D0%B3%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D0%B8%D1%8F_%D0%B4%D0%B8%D1 %81%D0%BA%D0%B0).
Как можно уменьшить количество незаполненных кластеров если есть файлы с "хвостами"??? »
Видимо путём уменьшения количества этих хвостов. Если к примеру, файл ранее бел разбит на несколько частей каждая из которых с хвостом, то после дефрагментации он будет состоять из одной части с не более чем одним хвостом.
В файловых системах ntfs и fat32 [...]нет возможности дописать в неполный кластер "кусок" другого файла
А дописывать и не нужно, нужно лишь записать копаю файла в последовательную цепочку свободных кластеров, а оригинал стереть.
WSonic, fd4tvk, Ребят, чем то не тем вы занимаетесь. Ну прикиньте сами - на диске 500Г грубо говоря 120 миллионов кластеров по 4кБ (это стандартный размер кластера NTFS, задаваемый по умолчанию). Теперь подсчитайте количество файлов на вашем диске... Где нибудь в районе 2-3-х миллионов у среднего пользователя. Ну пусть 3,6 миллиона будет для ровного счета. Если даже теоретически представить самый клинический случай с точки зрения растранжирования свободного места, что все ваши файлы имеют размер 1kБ (т.е. 3/4 вашего драгоценного места впустую ими растрачивается), то окажется все это дико неоптимизированное стадо файлов займет всего лишь 3% от объема диска. Можно и по другому прикинуть - пусть каждый ваш файл произвольной длины, но такой, что всегда занимает один лишний кластер одним "не уместившимся" байтом. Потенциально это потеря 3,6 миллионов кластеров - те же 3%. Честно говря немного, учитывая, что для нормального функционирования той же службы дефрагментации надо чтобы на диске было 15% свободного места... Уменьшив кластер до размера сектора (кстати в SSD и HDD с Advebsed Format уменьшить не удастся, там сектор или страница в случае SSD как раз 4кВ) вы выиграете
Домашних систем с десятками и сотнями миллионов файлов не бывает. Так что оставим кластеры и размеры страйпов в RAID сисадминам с их серверами баз данных. Но и там размер страйпа в основном инструмент повышения быстродействия, а не экономии дискового пространства.
SergAS70
23-08-2012, 20:35
файл ранее был разбит на несколько частей каждая из которых с хвостом »
файл разбивается ровно на размер заданного кластера! т.е. ищет пустые и заполняет, хвост остается только один!
те же 3% » я про это уже говорил .. )
fd4tvk,
Специально, чтоб разрешить спор провел дефрагментацию на диске C - результат 114 Кб освободившегося пространства! :lol:
Думаю на этом стоит закончить....
Согласен, что приведённые мною примеры на практике мало вероятны, но позволяют наглядно увидеть проблему и осознать масштабы которых в теории она может достичь. :)
SergAS70
23-08-2012, 20:47
Специально, чтоб разрешить спор провел дефрагментацию на диске C - результат 114 Кб освободившегося пространства! »
да нет.. ты только разгорел костер.. теперь все будут выяснять от куда вдруг освободилось.. :biggrin:
SergAS70,
Вот так, 3 страницы обсуждения - моей ошибки (http://forum.oszone.net/post-1975424-9.html). Дернуло меня это написать. Теперь, вот хочу исправится, пишу как оно на самом деле, а мне не верят. Вот как быть? :crazy:
minos66, Спасибо, хоть вы помогли прекратить этот ненужный спор :Beer:
SergAS70
23-08-2012, 20:56
вот и первая теория родилась.. :tongue: NTFS по тихоньку и так занимается дефрагом и мелкие файлы скидывает в mft. Если провести вручную дефрагментацию, мы как бы ускоряем этот процесс.. тем самым как бы увеличивая место.
мы как бы ускоряем этот процесс.. тем самым как бы увеличивая место. »
Ага, аж на 114 Кб! :laugh:
Всё! Я обиделся, больше писать не буду! :tease: Наверное!!!
Ага, аж на 114 Кб! »
Зависит от степени фрагментации.
Тему во флейм. :)
Пример: при кластере 4кб возмём файл размером тоже 4кб и разобьём его на 4096 части оп 1байт каждая, запишем его на диск и получится, что кажжая его часть займёт 1 кластер »
Вы не можете «разбить файл на чаcти»: работа с разделом возможна только целыми кластерами (хотя ОС и оптимизирует работу с накопителем, выравнивая передаваемые данные по размеру сектора).
А если 3 кластера в каждом по 3кб, а если 9 кластеров в каждом по 1кб? Вот дефрагментация всё и уложыт в озвученные Вами 2 кластера: один занят полностью, во втором всего 1кб, и поставит их по порядку. »
Не «уложит».
В приведённом мной выше примере дефрагментация упорядочит всё в один кластер. »
Не «упорядочит».
Видимо путём уменьшения количества этих хвостов. Если к примеру, файл ранее бел разбит на несколько частей каждая из которых с хвостом, то после дефрагментации он будет состоять из одной части с не более чем одним хвостом. »
Кластер не может содержать части разных файлов.
Согласен, что приведённые мною примеры на практике мало вероятны, »
Невозможны, а не «мало вероятны».
По поводу мелких файлов, размер неименованного потока данных которого (и прочих атрибутов) позволяет целиком уместить его в записи MFT: 5.3 Resident vs. non-resident data streams (http://en.wikipedia.org/wiki/NTFS#Resident_vs._non-resident_data_streams).
Иллюстрация на тему:
http://img708.imageshack.us/img708/1034/image00020120824033928.png
Общий итог: я поддержу коллег в том, что для NTFS проблема потери дискового пространства в «хвостах» файла не имеет какого-либо серьёзного практического значения.
SergAS70
24-08-2012, 07:33
Ага, аж на 114 Кб! »
а.. опять раздуваешь огонь.. :biggrin: Кстати, а как и что ты мерил, сколько до и после дефр-ции? Надеюсь учел что при работе прог в некоторых папках (например TEMP , WINDOWS и т.д.) файлы постоянно меняются-удаляются?
Iska,
:yes: :up
Размер если их все выделить около 7 Гб.
Если выбрать свойство локального диска,там показывает 10 Гб. »скриншоты можете выложить?
bugmenotagain
24-08-2012, 11:43
http://s02.radikal.ru/i175/1208/e6/85e7512eceb7.jpg
http://s44.radikal.ru/i106/1208/fc/783e17d2ace5.jpg
bugmenotagain, разница из-за того, что в explorer не показываются (и, соответственно, в "свойствах выделенных файлов" не учитываются) файлы с атрибутом "системный"
а это и большой файл подкачки c:\pagefile.sys и файл гибернации и ещё ряд более мелких файлов
http://i3.imageban.ru/thumbs/2012.08.24/814aa9aa1ef1ec4d39ce89553ed6a46b.png (http://imageban.ru/show/2012/08/24/814aa9aa1ef1ec4d39ce89553ed6a46b/png)
Как более точно понять,сколько занято место на жестком диске? »"свойства диска" , строчка "занято"
В вашем случае 11 270 643 712 байт
Petya V4sechkin
24-08-2012, 19:42
bugmenotagain, судя по скриншотам, у вас XP, дополнительно почитайте
Пропало место на диске .:[все вопросы]:. (http://forum.oszone.net/thread-59937.html)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC