Re: Мост # 3 - специализированный компьютер для чтения дискет
Запустил FTP на плате. Работает.
Количество задач растёт, но их размер/сложность стремительно уменьшается. Поэтому составил ToDo-list.
Выглядит конспектом - поэтому под катом, но это реальный список, по которому сейчас работаю, поэтому пусть будет. Знак "+" в начале строки означает, что задача решена. Знак "-" не означает ничего :)
0) Подключение и отключение внешних накопителей (SD, USB). Сейчас делаю вручную, но давно уже есть кнопка на плате и светодиод и они должны быть программно связаны.
почему клавиатура в инсталяторе не работает ? (не нужна, но всё таки...)
MAIN: command invalid 2 ('')
uninitialized urandom read
уменьшить число инодов на cfg и storage
на storage изменить владельца на 6502
3) Инсталятор. Сейчас ПО работает с внешней SD-карты, инсталятор должен уметь закидывать ПО внутрь SoM.
Вроде бы я его когда-то начинал делать, но так и не попробовал - работает он или нет.
Проверил: я его не доделал :)
4) На плате должен быть SSH-сервер. Вообще-то сейчас там стоит какой-то лайтовый SSH, он пускает без проблем, но он, вроде бы, не умеет строить туннели. Туннель нужен для того, чтобы техподдержка платы могла зайти на устройство даже в случае его работы за домашним NAT. Т.е. устройство само строит туннель до сервера техподдержки, а ТП заходит на сервер и затем, через туннель, ныряет на плату. И там уже можно апдейтить софт, поглядеть журналы ошибок, потестировать запуск отдельных прог вручную и даже использовать встроенный отладчик. Эта задача видится сейчас как наиболее неопределённая по времени, но, в целом, ясно, что нужно брать OpenSSH и пытаться его скомпилировать под наше железо и встроить в прошивку.
кстати, в этом ssh как раз есть поддержка туннелей. да и openssh тоже уже скомпилирован. Осталось только настроить.
web-интерфейс: главная странциа
+ управление кнопками
+ накопители
- синхро номера и шаблона
web-интерфейс:
установка времени / отключение/включ ntp
установка IP / DHCP
удаление снятых образов
mount/umount storages
перезапуск операционки
остановка операционки
спектрограмма: заголовок для web
скорость 140 - хотя бы пусть без скорости, но позиционер головки нужен
- нужно на мелкий экран хотя бы номер трека выдавать
+ нужно отвязать фразы от 840 ("нет сигнала от датчика"...)
зависон при остановке и libtherad_db
+ ! рекурсивный вызов ui_client ! понятно почему, не ясно как избежать
Error 'UI client: lock semaphore' in ui-clientl.c: ui_client:164: Inappropriate ioctl for device
Error 'UI client: lock semaphore' in ui-clientl.c: ui_client:164: Inappropriate ioctl for device
kill -9 из web
зомби шелла
1) Всё отладить и потестить. Там сложного ничего, но само количество точек тестирования приличное (поработать с разными дисководами, проверить создание, удаление образов, с платы и с web-...) - именно не каждую отдельную часть, а в комплексе. Это тест не только на технические ошибки, но и usability.
+2) Нужно воткнуть для начала ftp-сервер. Это самый быстрый способ забирать готовые образы с платы. Либо нужно выдёргивать флешку и читать её на компе. Собранный ftp у меня уже есть, так что только слить в прошивку и прошерстить конфиги, чтобы работал анонимный доступ.