<< Пред.           стр. 7 (из 32)           След. >>

Список литературы по разделу

 ? UIQ 2.1 MIDP SDK - установка библиотеки MIDP для Java 2 ME про
 граммирования;
 ? Documentation - документация к SDK. He устанавливайте этот элемент,
 сняв флажок напротив названия этой опции. На компакт-диске к книге
 ?
 
 
 Рис. 4.6. Диалоговое окно Symbian OS Kit Installer
 в папке \Sony Ericsson имеется файл, обновляющий документацию и ряд системных библиотек; ? Example project - демонстрационные примеры для платформы UIQ.
  6. На этом инсталляция SDK закончена, но нужно обязательно выполнить обновление установленных компонентов. В папке \Sony Ericsson на компакт-диске находится ZIP-архив с названием uiq21_updatel_winscw. Если вы не устанавливали документацию, то просто разархивируйте этот пакет в папку C:\Symbian\UIQ_21. Если компонент Documentation был инсталлирован, воспользуйтесь средствами операционной системы Windows и через Установку и удаление программ удалите Documentation. Только после этого разархивируйте uiq21_updatel_winscw в папку C:\Symbian\UIQ_21.
 4.1.2. Эмуляторы телефонов Sony Ericsson
  В комплекте SDK поставляются эмуляторы телефонов компании Sony Ericsson. Среда программирования Metrowerks CodeWarrior определит SDK автономно. В C++ BuilderX 1.5 Mobile Edition уже входят инструментальные средства разработчика, но если вы устанавливаете дополнительные SDK, то их необходимо подключить самостоятельно, выполнив команду меню Tools => Symbian SDK Configuration.
  При тестировании проекта на компьютере в UIQ 2.0 используется эмулятор телефона Sony Ericsson P800, а в UIQ2.1 используется некий собирательный образ различных марок телефонов двух видов. На рис. 4.7 изображены эмуляторы платформы UIQ2.1.
  Один из эмуляторов телефонов, изображенных на рис. 4.7, используется по умолчанию, а для подключения второго эмулятора нужно произвести одну несложную операцию. Зайдите в каталог C:\Symbian\ UIQ_21\epoc32\data и найдите в этой папке два файла epoc.bmp и epoc.ini. Затем переименуйте оба найденных файла (например, в epocl.bmp, epocl.ini) и найдите два других файла под
 
 
 
 
 
 
 Рис. 4.7. Эмулятор телефона для платформы UIQ 2.1
 названием StandardQ.bmp и StandardQ.ini. Переименуйте эти два файла в epoc.bmp и epoc.ini, произведя тем самым замену одного эмулятора на другой. Более того, в папке C:\Symbian\UIQ_21\P900 Emulator Bitmap находится эмулятор телефона Sony Ericsson P900. Для подключения этого эмулятора выполните перечисленные выше действия и наслаждайтесь эстетичной картинкой телефона. И еще один бонус. На компакт-диске в папке \Sony Ericsson находится дополнения, где вы найдете эмулятор телефона Sony Ericsson P800, на рис. 4.8 изображены эмуляторы телефонов Sony Ericsson P900 и Sony Ericsson P800. При тестировании приложения на эмуляторах работа с ними строится простейшим образом: используйте курсор мыши для нажатия на кнопки или иконки на экране телефона, эмулируя тем самым действия по работе с реальным телефоном.
 4.2. Программные средства компании Nokia
  Компания Nokia имеет, пожалуй, самое большое количество программного обеспечения. На сайте http://www.forum.nokia.com можно найти множество информации о программном обеспечении, созданном компанией Nokia для Sym-bian OS и платформы Java 2 ME.
 Инструментальные пакеты разработчика для Symbian OS делятся на три серии:
 ? серия 60 - разрешение экрана от 176 х 208 пикселей;
 ? серия 80 - разрешение экрана от 200 х 640 пикселей;
 ? серия 90 - разрешение экрана от 320 х 640 пикселей.
 ?
 
 
 
 
 Рис. 4.8. Эмуляторы телефонов Sony Ericsson P900 и Sony Ericsson P800
 
 
  Серии 80 и 90 используются в дорогих коммуникаторах, и массового распространения этих устройств пока ожидать не приходится. Поэтому основная масса устройств от компании Nokia базируется на серии 60. Например, смартфон Nokia N-Gage QD стоит всего 6,5 тысяч рублей и, учитывая возможность работы на этом смартфоне специализированных мобильных игр с качественной трехмерной графикой, этот вид продукта выдвигается на одно из первых мест в своей категории. Кстати, для создания специальных игр для N-Gage, распространяемых на карте памяти, есть специальный SDK N-Gage. Он распространяется только для лицензированных разработчиков, поэтому на сайте компании и компакт-диске этот SDK вы не найдете. В состав SDK N-Gage входят дополнительные библиотеки, утилиты и масса документации. Дело в том, что смартфоны N-Gage и N-Gage QD базируются на SymbianOS6.1 и множество библиотек из Sym-bian OS 7.0, улучшающих работу с графикой, недоступны. Это, конечно, не основная причина создания специализированного SDK для смартфона N-Gage, но все же такой SDK существует и доступен он не каждому. А чтобы снять все вопросы по поводу качества трехмерной графики в смартфонах серии 60, советую найти игры Pandemonium (только для N-Gage) или Doom для всех смартфонов серии 60 и просто поиграть в них!
 4.2.1. Серия 60
  Основной и самой распространенной платформой среди смартфонов является серия 60. На этой платформе базируются смартфоны Nokia, Siemens, Sendo X, Panasonic, Samsung, Lenovo, поэтому, установив SDK этой серии, вы получите возможность создавать программы для телефонов, перечисленных выше. За всю историю существования серии 60 было выпущено несколько версий платформы - это серия 60 версия 0.9 (1.0, 1.2, 2.0, 2.1) и, совсем недавно Nokia анонсировала версию серии 60 2.8, поддерживающую Symbian OS 8.0. На момент написания книги версии 2.8 на сайте компании Nokia еще не было. Из большого количества версий серий 60 самые распространенные - серия 60 версии 1.2 и серия 60 версии 2.1. На компакт-диске к книге находится дистрибутив серии 60 версии 2.1. Серия 60 версия 1.2 предназначена для создания приложений под Symbian OS 6.1, а серия 60 версии 2.1 для Symbian OS 7.0 (7.0s). Серия 60 версии 2.1 имеет два вида установочных пакетов: для среды программирования Met-rowerks CodeWarrior (WINSCW) и C++ BuilderX (WINS). Более того, есть SDK и для Microsoft Visual Studio (серия 60 версии 1.2 и 0.9). Тут нас опять спасает компания Borland со своей средой программирования C++ BuilderX, где реализована поддержка обоих видов SDK. Установка SDK серии 60 не должна вызвать у вас затруднений, единственное непременное условие - это инсталляция SDK в директорию C:\Symbian\6.1 (или 7.0, 7.0s)\Series60. Это каталог по умолчанию, и не изменяйте пути при установке SDK. В комплекте поставки серии 60 отсутствует Java Runtime Environment и Perl, поэтому вам необходимо самостоятельно установить эти библиотеки до установки SDK серии 60!
  При работе с Metrowerks CodeWarrior установленный SDK автоматически идентифицируется средой программирования, а в C++ BuilderX нужно явно
 
 
 подключит SDK, выполнив команду меню Tools => Symbian SDK Configuration и в появившемся диалоговом окне добавить установленный SDK (подробности в главе 3раздел 3.3). Все рабочие проекты, готовые к упаковке в SIS архив должны располагаться в директории C:\Symbian\7.0s(6.1)\Series60 \Epoc32, это обязательное условие для упаковки программы в SIS архив.
  При работе над проектом в одной из сред программирования, после компиляции можно протестировать программу на эмуляторе телефона. В SDK серии 60 имеется эмулятор, изображенный на рис. 4.10, обобщающий все модели телефонов этой серии.
 4.2.2. Серия 80
 РИС. 4.10. Эмулятор серии 60
  Компания Nokia имеет несколько коммуникаторов, работающих на основе серии 80. Это телефоны с разрешением экрана от 200 х 640 пикселей и с полноценной QWERTY клавиатурой, например, Nokia 9210. Описание этой модели вы можете найти в приложении 2.
  Серия 80 включает в себя несколько версий дистрибутивов, на компакт-диске в папке \Nokia находится версия, предназначенная для работы в C++
 BuilderX и Visual Studio C++ 6. Установка SDK несложна, но есть моменты, на которые необходимо обратить свое внимание.
  1. При инсталляции SDK серии 80 в диалоговом окне Choose Destination Location, необходимо проследить, чтобы SDK был установлен на диск С в папку \Symbian, как это показано на рис. 4.11.
 
 РИС. 4.11. Диалоговое окно Choose Destination Location серии 80
 
  2. При дальнейшей установке SDK выберите комплектацию Custom и убедитесь, что в появившемся диалоговом окне Select Features, изображенном на рис. 4.12, выбраны все компоненты, и флажки проставлены напротив имеющихся названий.
 
 
 
 
 Рис. 4.12. Диалоговое окно Select Features серии 80
 
 
 файл Series8070s.xml. Затем перейдите в каталог, где установлена среда программирования C++ BuilderX в папку С:\С++ BuilderX\sdktemplate и вставьте скопированный файл из буфера обмена. Далее откройте C++ BuilderX и с помощью команды меню Tools => Symbian SDK Configurations подключите SDK в C++ BuilderX. На этапе добавления SDK в диалоговом окне Add SDK Configurations, изображенном на рис. 4.14, в списке SDK Template выберите название Series 80 SDK 7.0s (Microsoft version).
  В дальнейшем работа с C++ BuilderX и SDK серией 80 ни чем не отличается от рассмотренной ранее серии 60. При тестировании программы на эмуляторе серии 80 используйте курсор мыши для нажатия кнопок эмулятора. На рис. 4.15 изображен эмулятор серии 80.
  3. В конце инсталляции в диалоговом окне
 Network Configuration Setup (рис. 4.13), будет
 предложено настроить сетевые опции. Если вам
 не нужна поддержка сети, то нажмите кнопку No,
 доведя процесс инсталляции SDK серии 80 до ло
 гического окончания.
  4. И последний момент состоит в конфигура
 ции SDK в среде программирования C++ Buil-
 derX. После установки серии 80, перейдите в ка
 талог SDK в папку C:\Symbian\7.0s\Series80 и
 скопируйте в буфер обмена находящийся там
 
 
 Рис. 4.13. Диалоговое окно
 Network Configuration
 Setup
 
 
 
 Рис. 4.14. Диалоговое окно Add SDK Configurations
 
 Рис. 4.15. Эмулятор телефона серии 80
 4.2.3. Серия 90
  В телефонах компании Nokia, использующих серию 90, существует гораздо больше моделей в отличие от серии 80, но цена коммуникаторов этой серии достаточно высока (например, телефон Nokia 9500 стоит сейчас 24000 рублей). Телефоны серии 90 имеют полноценную QWERTY клавиатуру и разрешение экрана от 320 х 640 пикселей.
  На компакт-диске в папке \Nokia вы найдете SDK серии 90 для среды программирования Metrowerks CodeWarrior. Установка дистрибутива напоминает инсталляцию SDK серии 80. В поставку серии 90 входят Java Runtime Environment и Perl, но если у вас уже установлены эти компоненты, то мастер установки автоматически определит их и не предложит инсталляции. Рассмотрим важные моменты, возникающие в процессе установки SDK серии 90.
  1. Директория для инсталляции SDK серии 90 определяется в диалоговом окне Choose Destination Location, по традиции это папка на диске C:\Symbian (рис. 4.16).
 
 
 Рис. 4.16. Диалоговое окно Choose Destination Location серии 90
  6. В диалоговом окне Select Features, изображенном на рис. 4.17, необходимо проставить флажки напротив всех компонентов, чтобы установить максимально возможное количество элементов SDK. По умолчанию документация и примеры не предлагаются к инсталляции, поэтому проследите за выполнением вышеперечисленных действий.
 
 Рис. 4.17. Диалоговое окно Select Features серии 90
  7. В конце установки SDK будет предложено сконфигурировать сеть, если вам это необходимо, то нажмите в диалоговом окне Series 901.0 Beta 2 for Symbian OS Metrowerks Edition, изображенном на рис. 4.18, кнопку ОК. Если сетевые настройки вам не нужны, нажмите кнопку Cancel.
  В среде программирования Metrowerks CodeWarrior инструментальное средство разработчика серии 90 определится автоматически, а в C++ BuilderX необ-
 
 
 
  Рис. 4.18. Диалоговое окно Series 90 1.0 Beta 2 for Symbian OS
 ходимо добавить пакет, выполнив команду меню Tools => Symbian SDK Configuration, и в диалоговом окне добавить установленный SDK серии 90 (подробности см. в главе 3, раздел 3.3). При работе с проектом, тестирование приложения производится с помощью эмулятора (рис. 4.19).
 4.2.4. Программа SISAR
  В SDK серий 60 и 90 входит программа SISAR для упаковки готовой откомпилированной программы под платформу ARM I. Программу можно открыть, выбрав команду в меню ПУСК => Все программы => Series
 
 
 Рис. 4.19. Эмулятор коммуникаторов серии 90
 60 (90) Development Tools => SDK =" Tools => Sisar. Для корректной работы программы нужно, чтобы на компьютере была установлена Java Runtime версии 3.1.1 в папке JavaSoft (см. раздел 4.1 этой главы).
 
  Работа с программой SISAR строится на проектах. Для создания нового проекта выберите в меню программы команду File => New Project (Ctrl+N), и созданный проект откроется в окне программы SISAR, как показано на рис. 4.20. Как только вы создали проект, обязательно сохраните его в папке, где находится ваше приложение готовое к упаковке.
 
 Рис. 4.20. Программа SISAR
 Окно проекта разделено на шесть следующих вкладок:
 ? Header;
 ? Name;
 ? Requisites;
 ? Capabilities;
 ? Entries;
 ? Configuration.
  В созданный и сохраненный проект нужно импортировать файл PKG, для этого выберите в меню программы команду Tools => Import PKG, в появившемся диалоговом окне Choose PKG file to open перейдите в каталог с программой и изберите файл PKG вашего приложения, нажав кнопку Open. При этом проект должен обязательно находится в папке C:\Symbian\7.0s(6.1)\Series60(90)\Epoc32. Если приложение выполнено правильно и откомпилировано для платформы ARMI, то на всех шести вкладках появятся различные атрибуты с полной информацией о программе. На рис. 4.21 изображена вкладка Configuration программы SISAR.
  Для упаковки программы воспользуйтесь командой меню Tools => Build SIS File (Ctrl+B) и в директории, определенной для сохранения SIS-архива, на вкладке Configuration в поле SIS file появится готовый дистрибутив для работы на телефоне. Воздержитесь от создания дистрибутива до изучения главы 7.
 
 
 Рис. 4.21. Вкладка Configuration программы SISAR
 
 Глава 5. Архитектура Symbian OS
 Большой класс устройств, представленных на сегодняшний день, позиционируются производителями как мобильные устройства:карманные персональные компьютеры (КПК), телефоны, смартфоны, коммуникаторы. Подразумевается, что эти устройства действительно мобильны как по скорости работы с данными, так и по своим размерам.
  Технические характеристики мобильных устройств в силу малых размеров имеют ряд ограничений: маленькая мощность процессора, небольшое количество памяти и отсутствие накопителей большой емкости. Все эти критерии, конечно, влияют на используемое в устройствах программное обеспечение. Именно поэтому операционные системы в мобильных устройствах должны соответствовать определенным системным требованиям. Это вполне очевидно: невозможно установить Symbian OS на компьютер, a Windows XP на телефон. Поэтому при создании любой операционной системы учитывается аппаратная составляющая того или иного устройства, а разработчики программного обеспечения обязаны знать, на какой аппаратной архитектуре предполагается использование создаваемой ими операционной системы. На основе имеющихся сведений происходит разработка операционной системы, поэтому такое тесное сотрудничество компании, разрабатывающей операционную систему, и компании, создающей аппаратную часть устройства, является обязательным условием. Все мы видим плоды сотрудничества компаний Intel и Microsoft и это притом, что компьютеры в принципе могут быть любого размера, особых требований к компактности не предъявляется. Но в мобильных устройствах размеры самого устройства, в том числе аппаратная часть, весьма ограничены, никому не хочется носить в кармане кирпич с большим вентилятором. Используемая операционная система должна быть компактной и тщательным образом оптимизированной для работы на мобильном устройстве. Не стоит забывать и о стабильности в работе системы. В отличие от компьютерных операционных систем, мобильную операционную систему нельзя удалить, заменить или переустановить. Если все требования должным образом учтены, то пользователь получает хорошо отлаженную операционную систему, оптимизированную для определенной аппаратной архитектуры.
  Операционная система Symbian OS - это тщательно продуманная многозадачная и объектно-ориентированная система. Множество программистов компании Symbian Ltd. работают над программным кодом операционной системы Symbian OS. Оптимизация программного кода Symbian OS под аппаратную составляющую устройства сказывается на надежности и стабильности работы этой системы. В этой главе мы поговорим как о программной архитектуре Symbian OS, так и об аппаратной части мобильных устройств.
 
 5.1. Аппаратная архитектура
  Мобильные телефоны по своим размерам невелики и использование мощных процессоров с большой тактовой частотой пока невозможно. Более мощным процессорам требуется соответствующее охлаждение, что ведет к увеличению размеров, стоимости и шума издаваемого устройством. Поэтому в смартфонах и коммуникаторах используются процессоры семейства ARM (Advanced RISC Machine), имеющие высокую производительность при малом энергопотреблении. Аббревиатура ARM используется в названии английской компании разрабатывающей так называемые RISC-микроконтроллеры, построенные на ядре ARM. Для простоты будем называть эти микроконтроллеры процессорами, коими, по сути, они и являются. У компании ARM нет своего производства процессоров, она лишь является разработчиком теоретической части процессора: электрических схем, топологии ядра процессора и описания на особом языке процессорного ядра. Все это передается производителям процессоров на основании лицензирования. В число производителей процессоров на базе ARM архитектуры входят такие известные компании, как Intel, Samsung, Motorola, Texas Instruments Inc.
 Семейство процессоров ARM делится на несколько групп:
 ? ARM 4;
 ? ARM 5;
 ? ARM 6;
 ? ARM 7;
 ? ARM 9;
 ? ARM 10.
  Каждая группа имеет свое ядро и может содержать несколько различных модификаций базового ядра или так называемого макроядра.
  Семейство ядер от ARM 7 имеет 32-разрядную RISC архитектуру, обеспечивающую производительность от 130 до 220 миллионов операций в секунду. При этом энергопотребление может составлять не более 0,25 мВт/МГц, что очень хорошо для телефонов с ограниченными энергоресурсами. С другой стороны, такая частота работы процессоров (100-200 МГц и выше) при топологии в 0,35-0,18 мкм, может ввести в заблуждение относительно своей малой мощности. Засчет хорошо продуманной и разработанной системы кэширования макроядра и использования низкочастотной системной шины надобность в высокочастотных запросах отпадает. Применение низкочастотной шины ведет к малому потреблению питания, а пропускная полоса системной шины и памяти достаточна для решения серьезных задач.
  Семейство ядер ARM 7 было построено на архитектуре фон-Неймана с общей памятью команд и данных. На сегодняшний день в смартфонах используется мощное ядро ARM 9, построенное на Гавардской архитектуре с разделенными шинами команд и данных.
 Семейство ядер ARM характеризуется следующим набором свойств:
 ? высокопроизводительная 32-разрядная архитектура;
 ? модулированные операции по перемножению/аккумулированию 16 х 32
 за один машинный цикл;
 ?
 ? совместимость с низковольтными CMOS технологиями;
 ? асинхронная и синхронная однопотоковая конфигурация процессора и
 шины;
 ? использование модуля управления памяти MMV, реализующего трансля
 цию логических адресов в физические и защиту памяти;
 ? система Thumb, обеспечивающая наилучшую плотность кода;
 ? поддержка технологии Jazelle для улучшения работы Java 2 ME программ;
 ? возможность использования специализированного математического про
 цессора для работы с дробными числами (пока не используется);
 ? контроллеры памяти, клавиатуры и дисплея;
 ? интерфейсы USB, SDLC, IrDA
  Все перечисленные достоинства процессоров семейства ARM при небольшой себестоимости и размерах делают эти процессоры незаменимыми при изготовлении мобильных телефонов. А разумная политика лицензирования компании ARM дает отличную базу для производства процессоров.
 5.2. Системные библиотеки
  При создании приложений под операционную систему Symbian разработчику можно использовать несколько языков программирования. Это C++, Java, Ассемблер, JavaScript, Visual Basic, OPL. Однако следует исходить из того, что родным языком для Symbian OS является все-таки язык C++. Язык программирования Java применяется при создании Java 2 ME приложений, и существует как бы параллельно языку C++, выполняя фактически тот же набор операций. Платформа Java 2 ME, поддерживаемая Symbian OS, реализована в виде отдельного модуля; поэтому создание программ на C++ и Java - это два абсолютно разных подхода, не пересекающихся между собой, но решающих примерно один и тот же круг задач. О программировании Java приложений под платформу Symbian OS вы узнаете из главы 10. В последующих главах в качестве основного языка программирования используется язык C++.
  Каждая платформа, будь то UNIX, Windows или Linux, имеет определенный набор системных библиотек для упрощения, а иногда даже для единственной возможности работы с системой. Symbian OS в этом плане не исключение. Более того, создание практически всех программ строится на основе применения классов системной библиотеки (API). Операционная система Symbian OS содержит сотни классов, тысячи всевозможных функций для работы с датой, временем, строками, массивами, графикой, списками, диалогами, WAP, Bluetooth, IrDA TCP/IP, обработкой ошибок и многим другим. Работа с системой сводится к работе с библиотечными классами. Symbian OS очень компактная система со своими механизмами, направленными на эффективную работу всей операционной системы на телефоне. Поэтому в Symbian OS включено огромное количество системных классов, помогающих создавать программы. Такой подход одновременно и усложняет, и упрощает работу программиста. Когда мы говорим об усложнении работы в создании программ под Symbian OS, то понимаем и представляем,
 
 что сложность заключается лишь в изучении имеющихся системных библиотек. Но с другой стороны, гораздо проще воспользоваться готовым материалом и построить программу, чем создавать этот материал самому. Для облегчения изучения API Symbian OS в книгу включено приложение 1, с подробным описанием основных системных классов для версии Symbian OS 7.0s. Системная библиотека значительно упрощает и облегчает процесс создания конечного программного продукта, поэтому одной из ваших первоочередных задач будет изучение имеющихся системных классов.
  Системная библиотека разбита на множество разделов, в каждом из которых собран свой набор функциональных возможностей. Например, раздел Graphics (Графика) содержит классы, функции, макросы, структуры и константы, направленные на работу с графикой.
  Как вы видите, схема подхода в Symbian OS для реализации собственных проектов схожа с платформой Java 2 ME или с классами MFC в Windows. Это вполне логично - разработчики Symbian OS позаботились о сторонних программистах, а, учитывая возможность возникновения критических ситуаций в работе некорректно созданного приложения, - это видится единственно правильным и взвешенным подходом.
 5.3. Программная архитектура
  На сегодняшний день Symbian OS имеет несколько версий, последние из которых v6.1, v7.0, v7.0s, v8.0, v8.0a. Восьмая версия Symbian OS пока используется в одном телефоне (на момент написания книги). Ситуация с шестой и седьмой версиями тоже несколько запутана: на рынке сейчас очень много телефонов под управлением обоих версий Symbian OS и вытеснение версии 6.1 версией 7.x пока не происходит. Производители по-прежнему выпускают телефоны под управлением Symbian OS 6.1 и 7.x. Отчасти это связано с увеличением стоимости телефона, работающего с более новой версией Symbian OS. Но, по всей видимости, такое положение дел на рынке будет существовать еще долго. Наверно, только Symbian OS 8 или 9 в ближайшие годы потихоньку вытеснят предыдущие версии этой операционной системы. В связи с этим при разработке программ, вам предстоит столкнуться с некоторыми трудностями, но каждая версия, по сути, расширяет функциональные возможности предыдущей, поэтому присутствует обратная совместимость с программами для ранних версий Symbian OS. Мы остановимся на анализе архитектуры Symbian OS 7.0s.
  Прежде всего, нужно понимать, что Symbian OS для производителей телефонов разделена на две части: ядро и графическую систему. Благодаря этому производители телефонов могут создавать свой вид пользовательского интерфейса, о чем уже не раз упоминалось в книге.
  Программная архитектура Symbian OS создана по принципу модульного построения, состоящего из надстраиваемых друг над другом уровней. Посмотрите на рис. 5.1, где показана архитектура Symbian OS.
 ? Kernel and Hardware Integration - ядро и аппаратная часть системы;
 ? Base Services - базовые сервисы;
 ?
 
 ? OS Services - сервисы операционной системы;
 ? Application Services - пользовательские сер
 висы;
 ? UI Frameworks - инфраструктура пользова
 тельского интерфейса;
 ? Java 2 ME - платформа Java 2 ME.
 Рис. 5.1. Архитектура Symbian OS
  Всего Symbian OS включает в себя пять уровней и модуль поддержки технологии Java 2 ME. В свою очередь, каждый из перечисленных уровней содержит разный набор компонентов, на основе которых и происходит работа всей системы в целом. Описание компонентов платформы Java 2 ME вы найдете в главе 11. Давайте перейдем к рассмотрению составляющих каждого уровня.
 5.3.1. Ядро
 
 и аппаратная часть системы
  Абстрактный уровень ядра и аппаратной части системы (Kernel and Hardware Integration) состоит из двух подсистем, изображенных на рис. 5.2.
 РИС. 5.2. Уровень Kernel and Hardware Integration
  Ядро системы (Kernel Services) оптимизировано для работы на процессорах архитектуры ARM с эффективным управлением всех имеющихся сервисов системы. Ядро системы обеспечи-
 вает многопоточность работы, управление памятью и питанием, а также обеспечивает возможность переноса на любое аппаратное обеспечение.
  Драйверы устройства (Device Driver) обеспечивают низкоуровневую поддержку программных контроллеров для следующих устройств:
 ? клавиатура;
 ? дисплей;
 ? карта памяти;
 ? цифровой преобразователь;
 ? инфракрасный и последовательный порты связи;
 ? USB1.1.
 5.3.2. Базовые сервисы
  Базовые сервисы системы (Base Services) обеспечивают основной или базовый каркас для последующих компонентов Symbian OS. Уровень базовых сервисов состоит из двух подсистем: Low Level Libraries (Низкоуровневые библиотеки) и Fileserver (Файл сервер). На рис. 5.3. представлен базовый уровень.
 
 
  Компонент Low Level Libraries содержит низкоуровневые библиотеки и утилиты, с помощью которых можно решать задачи в следующих областях:
 ? криптография;
 ? базы данных;
 ? структура управления питанием;
 ? поддержка кодировок;
 ? работа с памятью;
 ? работа с архивами.
 
 Рис. 5.3. Уровень Base Services
 
  Файл сервер требуется для корректной работы с файловыми системами. Поддерживаются типы носителей:
 ? RAM (Random Access Memory)- оперативно-запоминающее устройство
 (ОЗУ), применяющееся для чтения и записи данных;
 ? NOR flash;
 ? NAND flash;
 ? ММС-карта памяти;
 ? SD-карта памяти.
 5.3.3. Сервисы операционной системы
  Сервисы операционной системы (OS Services) содержат набор компонентов инфраструктуры Symbian OS для работы с графикой, мультимедиа, криптографией, связью и так далее. Это полноценные микропрограммы, базовая составляющая которых основывается на предыдущих уровнях операционной системы.
  Уровень OS Services разделен на четыре подсистемы, с набором различных компонентов. На рис. 5.4 изображен уровень OS Services.
 
 Рис. 5.4. Уровень OS Services
  Сервис связи с компьютером (PC Connect Services) обеспечивает связь телефона с компьютером посредством специализированного программного обеспечения, а так же инструментальные средства разработчика (Toolkit) для создания программ на компьютере.
  Графический сервис (Graphics Services) предусматривает работу с экраном и клавиатурой на основе- графической подсистемы, предоставляя прямой доступ к экрану, устройству ввода и сглаживанию графики. Все это происходит на основе HAL (Hardware Abstraction Layer - уровень аппаратной абстракции).
 
  Сервис передачи данных (Comms Services) обеспечивает для Symbian OS инфраструктуру коммуникаций. Прежде всего, это телефония (Telephony), работа с сетью (Networking Services) и сервис связи с последовательным и инфракрасным портами, USB и Bluetooth.
 Система телефонии предоставляет возможность работы со стандартами:
 ? GSM (Phase2+),
 ? GPRS (r4, Class В),
 ? CDMA 2000 (lx),
 ? EDGE (ECSD, EGPRS),
 ? WCDMA(r4).
 Сетевой интерфейс поддерживает протоколы связи:
 ? TCP, IPv4, IPv6, MSCHAPv2;
 ? IPSec;
 ? TCP/IP;
 ? WAP;
 ? множественная адресация.
  В свою очередь сервис связи предусматривает работу с основными средствами связи:
 ? IrDA;
 ? USB;
 ? Bluetooth.
  Подсистема в уровне OS Services - это Generic Services (Общие сервисы), состоит из двух сервисов: Cryptography Services (Криптография) и Multimedia (Мультимедиа). Криптография отвечает за безопасность системы в области криптографии, управления сертификатами и инсталляции программного обеспечения на телефон. В криптографии поддерживаются стандарты:
 ? DES;
 Q 3DEC;
 ? AES;
 ? RC2;
 ? RC2-128;
 ? RC4;
 ? RC5;
 ? RSA;,
 ? DSA;
 ? DH;
 ? PKCS#7.
  Система мультимедиа необходима для работы со звуком, видео и графикой (как 2D, так и 3D). Работа с этими компонентами осуществляется через соответствующие системные библиотеки. На рис. 5.5 представлена составляющая системы мультимедиа.
  Создание трехмерных игр в Symbian OS возможно при соответствующей аппаратной поддержке и на основе OpenGL ES. Работа с 2D графикой построена
 
 
 Рис. 5.5. Система мультимедиа
 через GDI (Graphics Device Interface - интерфейс графического устройства) системы Symbian. Также все телефоны под управлением Symbian OS поддерживают работу со звуком и видео.
 5.3.4. Пользовательские сервисы
  Уровень пользовательских сервисов (Applications Services) инкапсулирует различные механизмы, обеспечивающие пользователю работу с данными. Symbian OS содержит встроенный пакет приложений, таких как: календарь, заметки, будильник, передача SMS, доступ к электронной почте и так далее. Сервис пользовательских услуг состоит из четырех подсистем, изображенных на рис. 5.6.
 
 Рис. 5.6. Уровень пользовательских сервисов
  PIM(Personal Information Manager - персональный информационный менеджер) обеспечивает стандартные механизмы по работе с пользовательскими данными. Примером могут служить простой органайзер, записная книжка или офисные приложения, реализованные в Symbian OS. Имеется большой набор API для создания своих пользовательских программ.
  Синхронизация данных (Data Synchronization) построена на основе механизма ОМА SyncML 1.1, обеспечивающего синхронизацию данных по принципу сервер/клиент.
 Передача сообщений (Messaging) поддерживает все основные виды сообщений:
 ? SMS;
 ? EMS;
 ? MMS.
 ?
  Также поддерживается работа по протоколам POP, SMTP/ШАР для передачи и приема, например, электронной почты. Осуществляется поддержка WAP, HTTP, XHTTP, а системная библиотека имеет множество классов для создания своих программ.
 5.3.5. Инфраструктура пользовательского интерфейса
  Инфраструктура пользовательского интерфейса (UI Framework) - это система, на основе которой производители мобильных устройств могут создавать свой графический интерфейс на базе механизмов Symbian OS. Это мудрое и взвешенное решение компании Symbian Ltd. по разделению системы на ядро и графику. Инфраструктура пользовательского интерфейса состоит из двух компонентов. Первый - UI Applications Framework (Прикладная инфраструктура Ш) - предоставляет возможность в создании собственного пользовательского интерфейса, который вы можете наблюдать на своем телефоне. Второй - UI Toolkit (Инструментальные средства разработчика пользовательского интерфейса). На основе этих средств производители телефонов разрабатывают свои SDK, с которыми вы познакомились в главе 4 и с помощью которых программисты создают свои программы. Такой подход расширяет круг производителей, заинтересованных в пор-тировании Symbian OS на свои модели телефонов.
 5.4. Файловая система
  В отличие от операционных систем, предназначенных для работы на компьютерах, Symbian OS не может быть переустановлена на телефоне. Компьютерные системы содержат жесткий диск больших размеров, CD-ROM для установки системы, да и в целом весь подход смены и переустановки операционной системы иной. Symbian OS изначально создавалась для работы на телефоне, поэтому основные требования - это стабильность и компактность, так как смена системы невозможна. Естественно, в заводских условиях при наличии соответствующего оборудования и самой Symbian OS сделать это возможно, но такие действия могут осуществлять лишь лицензированные компании,
 
 производящие телефоны.
 Рис. 5.7. Файловая система N-Gage
  Операционная система Symbian располагается в памяти ROM (Read Only Memory - постоянное запоминающее устройство (ПЗУ)) - это небольшая по размеру микросхема, находящаяся внутри телефона с возможностью только чтения данных. Как уже говорилось, перепрограммировать ее можно только в заводских условиях. Особенности ROM памяти заключаются в том, что при отключении питания телефона все данные (как пользовательские, так и системные) остаются в целости и сохранности. На основе памяти ROM в Symbian OS и формируется файловая система на базе логических дисков. Посмотрите на рис. 5.7, где изображена файловая систе-
 
 ма телефона N-Gage серии 60. С файловой системой нам помогает разобраться файловый менеджер FileMan 1.01 компании SymbianWare.
  Логические диски С, D и Z лежат в области ROM памяти, формируя тем самым файловую систему. Диск Е - это карта памяти. Symbian OS поддерживает работу с 26 буквами английского алфавита от А до Z. Но чаще всего производителями используются буквы С, D, Z, Е и G по аналогии с компьютерными системами.
 5.4.1. Диск!
 
 
 Рис. 5.8. Свойства диска Z
 
 Диск Z - это основная и самая большая часть ROM памяти, где прошита Symbian OS. Если запустить файловый менеджер и в установках выставить возможность доступа к ROM памяти, то можно "порыться" в диске Z и посмотреть имеющиеся системные папки. А если в том же FileMan выделить курсором любой диск и нажать на клавиатуре кнопку 5 (Свойства), то появится информационное окно со свойствами данного логического диска. Посмотрите на рис. 5.8, где показаны свойства диска Z на телефоне Nokia N-Gage. Все данные системы, прошитые на диске Z, удалить при помощи файлового менеджера невозможно. Диск Z имеет автономное энергоснабжение.
 
 5.4.2. Диск С
  Логический диск С в серии 60 имеет размерность от 3,4 Мб до 10 Мб, но в среднем это около 4 Мб. У Sony Ericsson, Motorola размерность несколько выше. Из всех доступных 4 Мб порядка 700 Кб занимают системные файлы, куда входят различные пользовательские приложения, звуковые и видеофайлы, которыми изначально комплектуется телефон. При установке программ лучше не ставить приложения в эту область памяти, а использовать для этих целей карту памяти. Тем более что при установке программ некоторые данные, очень малень-
 
 Рис. 5.9. Свойства диска С
 кие по размеру, все равно располагаются на логическом диске С. Например, при инсталляции программы с ограниченным сроком работы, эта программа обязательно расположит некий идентификационный файл, на основе которого будет исчисляться время работы этой программы. Конечно, при желании найти такие файлы можно и вопрос здесь скорее нравственный: покупать или не покупать. Как программист знать об этом вы обязаны и, создавая уже свой коммерческий продукт, вам нужно будет спрятать идентификационный файл похитрее и подальше от шаловливых рук пользователей. Диск С так же независим от энергоснабжения. На рис. 5.9 изображены свойства диска С.
 
 5.4.3. Диски
  Логический диск D - это небольшой по размеру виртуальный диск оперативной памяти (RAM - Random Access Memory), содержащий временные прикладные и системные данные. При выключении телефона все данные на диске D будут утеряны. Диск D инициализируется каждый раз вновь при включении устройства.
 5.4.4. ДискЕ
 

<< Пред.           стр. 7 (из 32)           След. >>

Список литературы по разделу