Symbian OS - это операционная система для смартфонов и коммуникаторов, разрабатываемая консорциумом Symbian,
основанным в июне 1998 года компаниями: Psion, Nokia, Ericsson и
Motorola. Позже к консорциуму присоединились компании: Sony Ericsson,
Siemens, Panasonic, Fujitsu, Samsung, Sony и Sanyo. В настоящий момент
в консорциуме Symbian Nokia принадлежит 47.9%, Ericsson - 15.6%, Sony
Ericsson - 13.1%), Panasonic - 10.5%, Siemens AG -8.4% и Samsung - 4.5%.
Symbian OS является потомком операционной системы EPOC, разработанной компанией Psion для своих портативных устройств, прежде всего PDA, и работает исключительно на процессорах ARM.
ARM - это архитектура 32-битных
RISC-процессоров, разработанных компанией ARM Limited для мобильных
устройств. По причине их высоких энергосберегающих функций, процессоры
ARM занимают 75% рынка встраиваемых 32-битных RISC-процессоров в мире.
Существует несколько модификаций системы Symbian (для разных типов устройств), наиболее известные из них - UIQ, Series 60, Series 40, Series 80 и FOMA:
- UIQ является основной для смартфонов,
выпускаемых Sony Ericsson и Motorola. Отличительная особенность UIQ -
поддержка устройств с сенсорным экраном. С ноября 2006 года принадлежит
Sony Ericsson.
- Series 60 - это основная платформа для смартфонов компании Nokia, также лицензируемая Samsung, Siemens и LG. Разработана для устройств с телефонной клавиатурой (с сокращённым набором кнопок).
- Series 80 - платформа, также разработанная Nokia, для
устройств с полноразмерными клавиатурами (в настоящее время развитие
этой ветки Symbian OS приостановлено в связи с усовершенствованием
Series 60 для устройств данного вида).
- FOMA (Freedom of Mobile Access). Распространена в
Японии. Продвигается крупнейшим сотовым оператором NTT DoCoMo, по
заказу которого устройства на FOMA производят компании Mitsubishi,
Fujutsu, Sony Ericsson и Sharp.
Кроме этого существует несколько отдельно стоящих
устройств, использующих нестандартные модификации Symbian OS. К ним
относятся смартфоны Nokia 7710 (Series 90) и Nokia 9210.
Развитие ОС Symbian от версии к версии:
- 1999 г. - Symbian OS v5.0 (порядковый номер унаследован от ОС EPOC Release 5, которой
она и являлась). Финансовые сложности вынудили копанию Psion лицензировать свою ОС третьим компаниям.
Первым устройством на Symbian OS v5.0 был Ericsson MC218
- 2000 г. - Symbian OS v5.1, первый поддерживащий аппарат - Ericsson R380.
- 2001 г. - Symbian OS v6.0 и v6.1 (первый поддерживащий аппарат -Nokia 9210).
- 2003 г. - Symbian OS v7.0 и v7.0s, начала массового появления на рынке
смартфонов с ОС Symbian.
- 2004 г. - Symbian OS v8.0. Версия давала выбор ядра между EKA1 и EKA2. Однако в полной мере
поддержка ядра EKA2 была реализована в Symbian OS 8.1b. Symbian OS 8.1a
- последняя версия Symbian для ядра EKA1. Symbian OS 6.0-8.1a были
между собой бинарно - совместимы, что позволяло исполнять одни и те же
приложения на различных версия ОС. Начиная с версии 8.1b это стало
невозможным для последующих версий.
- Конец 2004 г. - выход предназначенной только для внутреннего использования Symbian OS 9.0.
- 2005 г. - Symbian OS v9.1. Улучшена безопасность,
введена подписка приложений, что позволило привязывать их к конкретному
телефону с целью защиты авторских прав разработчиков.
- Начало 2006 г. - Symbian OS v9.2. Поддержка Bluetooth
2.0 и OMA Device Management 1.2 (протокол управления мобильными
устройствами, разработанный Open Mobile Alliance (http://www.openmobilealliance.org/)
- Середина 2006 г. - Symbian OS v9.3. Поддержка HSDPA
(стандарт мобильной связи, рассматриваемый как переходной к технологиям
мобильной связи четвертого поколения - 4G, максимальная теоретическая
скорость передачи данных - 14,4 Мбит/сек), встроенная поддержка Wi-Fi
802.11
- 2007 г. - Symbian OS v9.5. уменьшение до 75 % времени
запуска приложений, улучшенная поддержка VoIP, новое разрешение экрана
640x360 (т.н. стандарт nHD - девятая часть разрешения HDTV),
сенсорный экран, а так же поддержка нескольких карт памяти
одновременно.
Структура OS Symbian
Структура Symbian OS подобна большинству настольных
операционных систем с такими функциями, как приоритетная
многозадачность, многопоточной обработкой и защитой памяти.
Преимуществом системы является нацеленность ее функций на переносные
устройства с ограниченными ресурсами, которые должны работать в течении
многих месяцев и лет. К таким функциям относится минимизация
использования памяти и редкость ее утечки. Так же следует отметить
оптимизацию использования CPU в целях снижения энергопотребления -
процессор отключается, когда приложения находятся в режиме ожидания.
Структуру же самой системы можно условно разбить на уровни.
На самом низком уровне находятся основные компоненты Symbian, состоящие из ядра (EKA1, для Symbian 6.0-8.1a, или EKA2 для Symbian 8.1b-9.5) и пользовательская библиотека,
позволяющая программам сторонних производителей обращаться к функциям
ядра. Symbian OC имеет микроядерную архитектуру, что означает, что ядро
содержит минимум необходимых функций операционной системы. К этим
функциям относится поддержка многозадачности и управление памятью.
Поддержку файловой системы и сетевой составляющей осуществялют серверы пользовательской стороны, расположенные на базовом уровне.
Файловый сервер обеспечивает подобное DOS отображение файловой системы
устройства (каждому диску назначена определенная буква, обратный слеш
определяет каталог). Symbian поддерживает различные типы файловых
систем, включая FAT32 и специфическую для Symbian систему NOR.
На уровень выше файловой системы находятся системные
библиотеки, которые выполняют такие функции как преобразование
кодировок символов, поддержку базы данных DBMS и обработку файлов
ресурсов.
Остальное программное обеспечение находится на верхнем уровне.
Средства разработки для Symbian OS
Основным языком программирования для Symbian OS является C++ (даже сама система написана на этом языке).
Вместе с тем, многие устройства на Symbian OS могут быть программируемы на OPL, Python, Visual Basic,
Simkin и Perl, а также Java ME и PersonalJava.
Фирмы-разработчки устройств на Symbian как правило предоставляют комплект средств разработки (SDK) для
своих устройств. Естественно, что для каждой платформы они различны.
|