Board.KolibriOS.org
http://board.kolibrios.org/

Ошибки файловой системы
http://board.kolibrios.org/viewtopic.php?f=31&t=3397
Страница 6 из 11

Автор:  0CodErr [ Пн дек 26, 2016 6:04 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

Siemargl, например,
Цитата:
mkdir "C:/"
Отказано в доступе.

Автор:  0CodErr [ Вт янв 10, 2017 9:58 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

Я тут было хотел кое-какие тесты провести. Но возникли некоторые проблемы.
Думаю, что связано с размером кластера на FAT32. Скопировал я файлы с RD на HD(64 Kb кластер). Потом хотел уже скопированные файлы скопировать в другое место. При попытке копирования
Спойлер: Показать
Вложение:
1.PNG
1.PNG [ 13.72 КБ | 1018 просмотров ]
После проверки chkdsk
Цитата:
\1\DRIVERS\FM801.SYS Неправильный штамп времени.
Действительно, там было
Цитата:
1 января 2001 г., 01:01:00
Вон там viewtopic.php?f=9&t=3294#p65580 на втором скриншоте похожий баг с неверными атрибутами.

Автор:  Pathoswithin [ Вс янв 22, 2017 8:43 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

Siemargl
revision #6845
Исправил на всякий случай.

Автор:  Siemargl [ Вс янв 22, 2017 10:47 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

Pathoswithin писал(а):
Siemargl
revision #6845
Исправил на всякий случай.

Ну не то чтобы совсем исправил, скорее больше сломал )

unzip testmake.zip -d /tmp0/1
unzip testmake.zip -d /tmp0/1/111

unzip на FAT (tmp0) при записи и в корень и в подпапку получает ошибку записи, хотя файл создается. Ошибка в возврате кода ошибки?

unzip на NTFS при попытке распаковки в корень, получает ошибку 5, в подпапку работает
Не подтверждаю, какая то временная замутка с libc -
Выяснено, у меня была библиотека импорта libc.dll.a непарная той dll, что актуальна в системе - обновил из svn:/contrib/data и починилось

Автор:  Pathoswithin [ Пн янв 23, 2017 3:33 am ]
Заголовок сообщения:  Re: Ошибки файловой системы

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

Автор:  Siemargl [ Вт янв 24, 2017 6:59 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

По поводу ошибки записи на FAT.
Вот состояние после вызова 70.3 - типа записано 0 байт, но и ошибки нет.
В окне данных - информационная структура, с начала
http://clip2net.com/s/3GKyKzs

Имя файла корректное, я проверил.
Я сессию пока заморозил, если что надо показать из данных под отладчиком - напиши.

Собственно, это код функции
http://websvn.kolibrios.org/filedetails ... Fiowrite.c

Автор:  Pathoswithin [ Вт янв 24, 2017 8:51 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

А, не возвращает размер... оно ещё и кому-то надо.

revision #6846

Автор:  Siemargl [ Вт янв 24, 2017 11:02 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

По размеру идет контроль, либо записаны все данные, либо кончилось место на диске.

Для 70.0, 70.2 тоже должно возвращать.

Кстати, без возврата размера сломалось много фукнций - fwrite, fclose, fflush. Теперь работают.

Автор:  Pathoswithin [ Ср янв 25, 2017 12:30 am ]
Заголовок сообщения:  Re: Ошибки файловой системы

Ну если ошибки нет, то нужно считать что прочитано/записано всё что требовалось. Если ошибка не end_of_File и не disk_full, то количество может быть не правильным.

Автор:  Siemargl [ Ср янв 25, 2017 12:44 am ]
Заголовок сообщения:  Re: Ошибки файловой системы

Pathoswithin писал(а):
Ну если ошибки нет, то нужно считать что прочитано/записано всё что требовалось. Если ошибка не end_of_File и не disk_full, то количество может быть не правильным.
Все это правильно, но в стандартной библиотеке С, логика обратная. Там пляшут от размера http://www.cplusplus.com/reference/cstdio/fread/

В Паскале, кстати, также как в С

Автор:  0CodErr [ Чт янв 26, 2017 3:14 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

Pathoswithin писал(а):
А, не возвращает размер... оно ещё и кому-то надо.
Размер должен возвращаться. В документации это ясно написано
Цитата:
ebx = number of written bytes (possibly 0)


Pathoswithin писал(а):
Ну если ошибки нет, то нужно считать что прочитано/записано всё что требовалось.
Ну это ты так думаешь :)
А алгоритм может быть и таким: если прочитано/записано всё что требовалось, то ошибки нет.

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

Автор:  Pathoswithin [ Чт янв 26, 2017 3:23 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

Ну так я мог бы исправить документацию вместо кода. :wink:

Автор:  Siemargl [ Чт фев 02, 2017 11:18 am ]
Заголовок сообщения:  Re: Ошибки файловой системы

По поводу глобального лока:
-запускаем Unzip cmake на один диск ext2 (любой)
-FAR начинаем удалять каталог с тысячами файлов на другом диске (usb)

прекрасно видно, что бегущие строки файлов распаковки в первом окне останавливаются до окончания удаления

Ну и надо дальше работать с кэшем - скорость записи в 120кб/с на диск никак не к лицу быстрой системе.

Автор:  Pathoswithin [ Чт фев 02, 2017 2:23 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

120 КБ/с на диск? У меня даже со старым драйвером 1 МБ/с было, а сейчас где-то 60 МБ/с.
У тебя там виртуалка? Какая загрузка процессора?

Автор:  Siemargl [ Чт фев 02, 2017 6:45 pm ]
Заголовок сообщения:  Re: Ошибки файловой системы

Это продолжение предыдущей темы про деградацию.
viewtopic.php?f=31&t=659&start=210#p67990

Ничего не поменялось, просто 120кб/с это если поделить 3мб на 25с.

У меня виртуалка, но машина достаточно быстрая.

Копирование cmake.zip (20Mb) с флешки на ext2 hdd в shell занимает 20с, в KFAR 3c, CPU 50%
Shell копирует кусочками по 4Кб

Запустил копировать 1Гиг в Shell, потом отпишусь.....

Страница 6 из 11 Часовой пояс: UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/