http://d-v-temnote.livejournal.com/ ([identity profile] d-v-temnote.livejournal.com) wrote in [community profile] useless_faq2014-11-16 02:16 pm

Размер папки

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

[identity profile] spring1976.livejournal.com 2014-11-17 09:21 am (UTC)(link)
Отображает-) Только что проверил. Но есть еще фигня, когда внутри папки надо скопировать список названий файлов, вот это бы реализовали.

[identity profile] amashkovtsev.livejournal.com 2014-11-17 09:22 am (UTC)(link)
У меня отображает.

[identity profile] andvari-loki.livejournal.com 2014-11-17 09:23 am (UTC)(link)
Да. И чтобы можно было сортировать по размеру папки. Но нет! Не хочет!

[identity profile] mudlaws.livejournal.com 2014-11-17 09:25 am (UTC)(link)
да, действительно, разве это сложно?
Image
(deleted comment) (Show 16 comments)
(deleted comment) (Show 1 comment)

[identity profile] sotona666.livejournal.com 2014-11-17 09:59 am (UTC)(link)
Очевидно же: потому что это требует больше дисковых операций.
Если у вас в папке лежит миллион файлов по 0б и суммарный размер папки в этом случае =0б, то системе все равно придется пройтись по всем этим файлам, перечислить их размер и просуммировать его. А зачем систему зря нагружать такими действиями, если вы случайно навели мышку на папку.

[identity profile] djdance.livejournal.com 2014-11-17 10:00 am (UTC)(link)
потому что в общем случае размер файла - это, условно, одна запись в таблице размещения, а папка - много таких записей, иногда сотни тыщщ. Обсчитывать приходится при каждом обращении. А это бывает долго.
Поэтому меня больше бесит не то что "некоторые винды" размер папки сразу не показывают, а то что "некоторые другие винды" начинают его подсчитывать когда не надо (не на ту папку навелся), и сиди жди пока отдуплится.
(deleted comment) (Show 3 comments)

[identity profile] bangor-flying.livejournal.com 2014-11-17 11:01 am (UTC)(link)
На Sparta DOS Атари тоже было имя CON (эту систему создавали по образцу DOS), но система чуть поумнее была, цитирую Вики: It has strict separation of devices and files: even though there is the "CON:" device in the system, SpartaDOS X (unlike MS-DOS) has no problems differentiating it from a disk file named "CON", if such one exists.

[identity profile] irq-a.livejournal.com 2014-11-17 12:53 pm (UTC)(link)
У меня тоже всё отображается, но, Как здесь писали, совершенно очевидно, что размер папки - это размер всех её подпапок и файлов. Если для файла по FAT можно определить его размер относительно быстро, то для папки это сделать нельзя. Необходимо высчитывать каждый файл и все подпапки отдельно и затем суммировать. Очевидно, что это дольше, а в случае наличия большого количества файлов намного дольше.
ext_1775189: Bezenchuk (Bezenchuk)

[identity profile] spelller.livejournal.com 2014-11-17 06:49 pm (UTC)(link)
"Папка" - это просто такой маленький файл. Внутри него список ссылок на другие файлы/папки, которые в этой папке "помещаются". Чтобы вычислить размер папки, надо пройтись по всему списку файлов, в ней содержащихся, прочитать их размер и суммировать. Это занимает время. В более продвинутых файловых системах, типа WAFL, этот процесс может быть более оптимизирован, чем в NTFS, в ту или другую сторону.

"а при копировании папки система как-то очень быстро сообщает "копирование .... Гб" - во-первых, не так уж и быстро, во-вторых - не так уж и точно.