пятница, 10 мая 2013 г.

Архитектура ГУ (Software)

Мультимедийная оболочка работает внутри WinCE и представляет собой собой обычное WinCE приложение. Состоит из 3х исполняемых файлов:



iNavi.exe
 (в последней известной версии прошивки просто "navi.exe")

Собственно само приложение оболочки.  Запуск приложения прописан в реестре в ключе HKLMinitLaunch50. На рабочем столе WinCE есть ярлык с именем "RenderTest" к этому приложению.

Приложение монолитное, имеет размер 1.2-1.9мб, в зависимости от версии. Основные изменения между версиями приходится на него. Содержит внутри статически слинкованные библиотеки:
  • LibPng
  • JPEG
  • TinyXml
  • zlib
  • FreeType Lib
Приложение жестокое - убивает в эксплорере весь taskbar вместе с треем и кнопкой Start, сниматься дружественно не хочет - прибивается только после повторного вопроса системы.

Соответственно, сама система не умеет инициализировать коммутатор на основной плате, поэтому звук появляется только после запуска оболочки. После этого можно использовать системные звуки и программы воспроизведения.

Оболочка запоминает окно, созданное запущенной по команде "навигация" программой,
и переключает именно туда, а что там было запущено из этой программы - оболочке до фени.

Имя PDB в версиях 130-191:
\NavTCC89xx\Test\RenderTest\RenderTest\STANDARDSDK_500 (ARMV4I)\Release\RenderTest.pdb
Имя PDB в последнй версии:
d:\WORKS\Test\KOA_Navi\KOA_Navi\KOA_Navi\STANDARDSDK_500 (ARMV4I)\Release\KOA_Navi.pdb


Grt.dll
UserMode интерфейс к драйверу режима ядра. Именно через него оболочка управляет периферией. Размер около 15кб. Между версиями меняется слабо.


Имя PDB в версиях 130-191:
\NavTCC89xx\GRTWRAP\Grt\Grt\STANDARDSDK_500 (ARMV4I)\Release\Grt.pdb
Имя PDB в последнй версии:
d:\WORKS\Test\GRTWRAP\Grt\Grt\STANDARDSDK_500 (ARMV4I)\Release\Grt.pdb



Cgd.dll
Драйвер режима ядра. Открывает именованное устройство, через которое с ним общается "Grt.dll". Размер 23-34кб, в зависимости от версии. Между версиями меняется слабо.

Драйвер создаёт два ядерных потока, обслуживающие прерывания:

  • от сигнала включения камеры заднего вида.
  • от изменения уровня громкости аппаратным "колесом".


createc.dll

Присутствует во всех версиях прошивки без изменений. Скорее всего не используется. Размер 64кб. По функционалу внешне очень напоминает grt.dll. Так же примечательно имя PDB:


d:\My Document\Visual Studio 2005\Projects\createV2.1\CreateV2\grt\LYT (ARMV4I)\Debug\grt.pdb

Комментариев нет:

Отправить комментарий