Page 4 of 10
Re: tmpdisk - менеджер виртуальных дисков
Posted: Thu Feb 28, 2013 1:43 pm
by Leency
Словил на r3287. "Файлы" на диске - это содержимое одного из копируемых документов.
Дополнено: скорее всего, это случилось после того, как я прочитал и пытался записать несуществующий файл.
Re: tmpdisk - менеджер виртуальных дисков
Posted: Thu Feb 28, 2013 3:04 pm
by CleverMouse
Я буду реализовывать получение информации о файловой системе на третьем этапе процесса, описанного здесь:
viewtopic.php?f=35&t=1854
Leency
Уверен ли ты, что обновил tmpdisk.obj? Насколько стабильно проявляется эффект? Какой размер диска и размер записываемых данных?
Re: tmpdisk - менеджер виртуальных дисков
Posted: Fri Mar 01, 2013 2:30 pm
by CleverMouse
Аналогично, ошибка в форматировании внутри tmpdisk.obj, только теперь в FAT32 и с формированием немного некорректной структуры. r3305 уже здесь.
Re: tmpdisk - менеджер виртуальных дисков
Posted: Fri Mar 01, 2013 2:59 pm
by CleverMouse
Об ошибке "слишком много виртуальных дисков" tmpdisk сигнализирует через @notify. Но если диск не удалось создать, например, из-за нехватки памяти, то никакой видимой сигнализации нет - нажатие на кнопку "Добавить" не приводит ни к каким видимым последствиям.
Re: tmpdisk - менеджер виртуальных дисков
Posted: Fri Mar 01, 2013 4:06 pm
by Leency
Я хоть и говорил, что не буду комиттить свои изменения, но существование этой программы в т.ч. твоя заслуга (не было бы драйвера - небыло бы и GUI), плюс я восхищён твоим перфекционизмом в исправлении ошибок драйвера.
Встречайте #3306 - добавлено вывод ошибок через notify, уменьшено потребление программой памяти с 1Мб до 2 Кб, вывод в окно размера свободной оперативной памяти, небольшое обновление кода.
Re: tmpdisk - менеджер виртуальных дисков
Posted: Fri Mar 22, 2013 4:57 am
by yogev_ezra
New SVN revision #3401 by yogev_ezra in /programs/cmm/tmpdisk: tmpdisk memory allocation is in sectors, but displayed free RAM is in MB (Исправил вывод в окно размера свободной оперативной памяти). Сравниваем показания GMON и TMPDISK до и после фикса (GMON в KB, TMPDISK - MB).
До:
Spoiler:

-
EBOX3.png (70.94 KiB)
Viewed 4888 times
После:
Spoiler:

-
EBOX4.png (66.06 KiB)
Viewed 4888 times
Заодно исправил индусский код (вычисление размера свободной памяти дважды в двух соседних строчках), вследствие чего размер упакованного бинарника уменьшился на 43 байта (4047 вместо 4090)

Re: tmpdisk - менеджер виртуальных дисков
Posted: Sat Mar 23, 2013 2:00 am
by Leency
За фикс спасибо. 4090 -> 4047 не даёт никакого выгриша в секторах дискеты, потому подобная оптимизация несущественна. Всё же когда стал проще и логичней - это плюс.
: Уголок любознайки: в своё время индусам платили не за часы работы или выполненные проекты, а за количество написанных строк кода. Тогда и начали появляться вот такие фрагменты кода, прозванные индусскими:
[code]if (1==1) { рабочик код } else {а тут рубим бабло написав хоть 1000 строк ниочём }[/code]
другой вариант происхождения - это ответ одного индуса на форуме - как узнать сколько секунд пройдёт с сегодняшнего дня текущего времен до 7.00 завтрашнего дня:
[code]
int sek;
loop
{
sek++;
if (CurTime()==NeedTime()) break;
}
printf(sek);
[/code]
То есть запустил программу и ушёл пить чай...
Re: tmpdisk - менеджер виртуальных дисков
Posted: Fri Jun 28, 2013 11:46 am
by Maxis
Если я не ошибаюсь насчёт того, что данные записанные по определённому физическому адресу RAM сохраняютя после перезагрузки(если их целенаправленно не стирать) или ресета, то эту особенность можно использовать для вытаскивания логов зависшей системы: работает себе board, пишет потихоньку логи и тут пользователь запускает скажем аудиоплеер, грузящий драйвер звуковухи который в свою очередь вешает систему и единственный способ достать ЧАСТЬ логов это фотоаппарат. Если board будет писать на такой tmpdisk часть содержимого которого не будет обнулятся при перезагрузке или ресете, то можно будет при следующей удачной загрузке достать этот лог.
Re: tmpdisk - менеджер виртуальных дисков
Posted: Fri Jun 28, 2013 8:29 pm
by CleverMouse
debug_direct_print = 1 при компиляции ядра - и выводятся ВСЕ логи. При зависании системы board, будучи обычным приложением, может не успеть даже прочитать несколько последних сообщений, не говоря уже о том, чтобы что-нибудь с ними сделать.
Re: tmpdisk - менеджер виртуальных дисков
Posted: Sat Jul 06, 2013 6:28 pm
by 0CodErr
Не удаётся скопировать в корень "/tmp1/1" более 128-ми папок\файлов. Возвращается "диск заполнен". Если не ошибаюсь, в FAT12\FAT16 ограничение 256 записей в корневом каталоге.
Размер диска был 24 Mb.
svn3758
Например, эти пустые папки:
Re: tmpdisk - менеджер виртуальных дисков
Posted: Tue Jul 09, 2013 3:09 pm
by CleverMouse
Во-вторых, не 256, а столько, сколько помещается в область, выделенную под корневой каталог при форматировании. tmpdisk всегда выделяет 16 секторов, что действительно даёт 256 записей, но на стандартной дискете секторов всего 12.
Во-первых, слово "записей" точное - именно записей, а не файлов/папок. Пробелы не могут входить в короткое имя файла, поэтому для "Folder 1" создаётся две записи - короткое имя типа FOLDER~1 и длинное имя, которое пока ещё умещается в одну запись - поэтому одна такая папка расходует две записи. Диагностика "диск заполнен" после 256/2 таких папок - совершенно точное поведение, и не стоило ради этого меня отвлекать.
Re: tmpdisk - менеджер виртуальных дисков
Posted: Wed Jul 10, 2013 8:18 am
by 0CodErr
CleverMouse, спасибо, теперь понятно.
У меня есть раздел FAT16, и было не понятно, почему на него копируется, а на tmp — нет.
А у этого раздела оказалось "Root directory capacity: 512 entries in 32 sectors".
Re: tmpdisk - менеджер виртуальных дисков
Posted: Sat Aug 10, 2013 8:59 pm
by punk_joker
Virtual Disk Manager 0.46
- добавлено поле в GUI для указания размера диска
Известные проблемы:
- конфликт цифровых и функциональных клавиш (при нажатии на 3ку, происходит попытка создания диска)
- курсор в edit'е не перемещается при помощи стрелок
Re: tmpdisk - менеджер виртуальных дисков
Posted: Sat Aug 10, 2013 9:26 pm
by punk_joker
Ах да, большое спасибо Leency, без его советов и подсказок, я бы еще долго со всем этим разбирался.
Re: tmpdisk - менеджер виртуальных дисков
Posted: Sun Aug 11, 2013 3:02 pm
by Leency
Хорошо, осталось только вычистить все баги:
- нерабочие клавиши влево вправо
- добавление диска по клавише 3
- недочёт: текст "Размер" и кнопка "Добавить" должны находиться на одной линии по левому краю
Подсказываю решение второй проблемы: переназначить добавление с клавиши F2 на клавишу Ins (Insert).