Page 9 of 20

Re: NTFS

Posted: Tue Mar 15, 2016 4:14 am
by Pathoswithin
Суть дебильного архитектурного решения:
Размер индексной записи почти всегда равен 4 кб. В загрузочном секторе её размер указывается в кластерах. Если она меньше кластера, используются отрицательные значения для обозначения размера в секторах, но это ещё по божески. Размер записей каждой конкретной папки, а также смещения каждой записи, тоже указываются в кластерах. И здесь если размер записи меньше кластера, просто используются значения в секторах. Подумаешь, тип данных меняется...
Serge wrote:время на операцию сильно возрастает, если доступ к концу файла
Так это в детской FAT (там и размер файла максимум 4 Гб), а во взрослых файловых системах это не имеет значения. Для служебных данных есть кэш, это эффективно и гораздо проще файловых дескрипторов.

Re: NTFS

Posted: Tue Mar 15, 2016 7:03 am
by Serge
Pathoswithin
А поиск файла как происходит ? И кластера со смещением 20Гб ?

Re: NTFS

Posted: Tue Mar 15, 2016 9:42 am
by Pathoswithin
Данные файла состоят из фрагментов, фрагменты описываются двумя цифрами — адрес и размер. Имеет значение количество фрагментов, а не размер файла.

revision #6340
Баг с чтением должен исчезнуть.

Re: NTFS

Posted: Tue Mar 15, 2016 7:27 pm
by Sewer
ревизия 6340.
Баг исчез. Копирование, удаление работают штатно.
Другие размеры кластера проверять?

Re: NTFS

Posted: Thu Apr 28, 2016 12:56 am
by punk_joker
Проверил последнюю НС. На разделе с Windows, папка и файл успешно создались, и удалились. Удаляются только те файлы, которые были записаны под Колибри. Файлы и папки записанные Windows не удаляются. Копирование на этот раздел не работает практически, копируется пару файлов и затем ошибка (позже разберусь с этим вопросов повнимательнее)

Re: NTFS

Posted: Thu Apr 28, 2016 1:18 am
by punk_joker
Логический диск, кластер 4Кб, объем 975 мб, читается, файлы копируются лучше, но все равно после n-шо файла ошибка, при этом удалить файлы я смог, а вот папки нет. Причем из под Windows тоже. Скрин ошибки прилагаю.

Re: NTFS

Posted: Thu Apr 28, 2016 7:43 pm
by Pathoswithin
Количество файлов по прежнему ограничено. Прежде всего меня интересует, нет ли падений или зависаний. И на разделе с Windows пока лучше не экспериментировать.
Файлы и папки записанные Windows не удаляются.
Вообще никакие? Но при этом читаются? Ситуация с каждым файлом может быть уникальна.
удалить файлы я смог, а вот папки нет
При этом папка была пуста? Сколько файлов в ней было раньше?

Re: NTFS

Posted: Fri Apr 29, 2016 12:46 pm
by punk_joker
Pathoswithin wrote:При этом папка была пуста? Сколько файлов в ней было раньше?
Я копировал содержимое с RD диска, так что их содержимое аналогично. На скрине ошибка при попытке удалить их в Windows

Re: NTFS

Posted: Fri Apr 29, 2016 3:58 pm
by Pathoswithin
NTFS имеет огромное количество состояний, и разные операции могут не поддерживаться в случае одного конкретного файла/папки. С Windows действительно возможны некоторые проблемы, но это потом. Ещё раз, по порядку:

1) Файлы и папки, записанные Windows, в Колибри не удаляются вообще или только некоторые?
2) Папки, записанные Колибри, в Колибри не удаляются вообще или только некоторые?
3) Доступны ли для чтения файлы и папки, которые не удаляются?
4) Пусты ли папки, которые не удаляются в Колибри?

Re: NTFS

Posted: Sat Apr 30, 2016 5:51 pm
by punk_joker
И так. Тестировал на отдельном разделе, Логический диск, кластер 4Кб, объем 975 мб. Все файлы читаются. Файлы удаляются все, и те что записаны Колибри, и те что записаны Windows. Папки не удаляются никакие, при этом они пустые. Папки записанные Windows, в Windows при этом открываются, но не удаляются. Папки созданные Колибри, не открываются и не удаляются. Тесты на разделе с Windows не проводил, но если надо могу провести (про сохранность можно не волноваться, я Windows загружаю только для запуска Warcraft :) )

Re: NTFS

Posted: Thu Dec 01, 2016 1:15 pm
by Leency
Все таки это viewtopic.php?f=45&t=3237&start=75#p67581 бага.

"../lib/io.h" работает на TMP и не работает на NTFS.
Видео и тестовые данные в аттаче.

Re: NTFS

Posted: Thu Dec 01, 2016 1:33 pm
by Pathoswithin
Это не баг NTFS, а фича FAT: в ней физически присутствуют папки "..", и в EXT тоже, а в NTFS таких папок нет.

Re: NTFS

Posted: Thu Dec 01, 2016 1:47 pm
by Siemargl
Pathoswithin wrote:Это не баг NTFS, а фича FAT: в ней физически присутствуют папки "..", и в EXT тоже, а в NTFS таких папок нет.
Значит надо имитировать поведение. В Винде то нет разницы для пользователя.

Re: NTFS

Posted: Fri Dec 02, 2016 9:39 am
by 0CodErr
Siemargl wrote:Значит надо имитировать поведение. В Винде то нет разницы для пользователя.
Вот-вот. Я вон там viewtopic.php?f=44&t=973&start=690#p65581 говорил уже
0CodErr wrote:И правильнее было бы обеспечить единообразие, то есть наличие таких входов во всех папках.

Re: NTFS

Posted: Sat Dec 03, 2016 12:09 am
by 0CodErr
Хотел вот скопировать папку
Spoiler:
7.PNG
7.PNG (35.54 KiB)
Viewed 5364 times
но некоторые файлы скопировались всё же.