QNX Software Systems Чарльз Иган (Charles Eagan) Вице-президент по разработкам ceagan@qnx.com.

Презентация:



Advertisements
Похожие презентации
Решения виртуализации для IT Платонов Евгений. Технологические тенденции архитектуры x86 Многоядерные процессоры развиваются 2 ядра в , 4 ядра в.
Advertisements

1 Современные системы программирования. Часть 2. Системное и прикладное программное обеспечение Малышенко Владислав Викторович.
Основы операционных систем. Литература к курсу (основная) В.Е.Карпов, К.А.Коньков Основы операционных систем.
Архитектура операционных систем. Архитектура ОС Состав модулей (компонент) ОС Структура связей между отдельными модулями ОС Принципы взаимодействия модулей.
Архитектура операционных систем Семестр 2, Лекция 1.
Учебный курс Основы операционных систем Лекция 1 кандидат физико-математических наук, доцент Карпов Владимир Ефимович.
Методы оценки времени отклика задач в двухъядерных системах реального времени СоискательГуцалов Н.В. Научный руководитель д.т.н., профессор Никифоров В.В.
Операционные системы Подготовила Подготовила студентка студентка 1 курса группы Э курса группы Э-108 Шпудейко Кристина Шпудейко Кристина.
Обзор операционных систем ВОУНБ им. М. Горького «Операционная система - это совокупность программ, обеспечивающих управление процессом обработки информации.
Выполнили: Мартышкин А. И. Кутузов В. В., Трояшкин П. В., Руководитель проекта – Мартышкин А. И., аспирант, ассистент кафедры ВМиС ПГТА.
Распределенная обработка информации Разработано: Е.Г. Лаврушиной.
Распределенная система мониторинга и диспетчеризации процессов гетерогенной среды студент Костюков В.В., профессор к.ф-м.н Крючкова Е.Н., АлтГТУ / ПОВТ.
Технические возможности. Наши цели Максимальная гибкость Максимальная скорость считывания и обработки данных Стабильность работы Максимальная простота.
Операционная система. Базовые понятия Операционная система – это комплекс программ, обеспечивающий контроль за существованием, распределением и использованием.
1 Работа под управлением ОС Windows. 2 Темы для обсуждения 1. Что такое операционная система Что такое операционная система Понятие ОС Виды ОС 2. Операционная.
Операционные системы Введение (часть 4) 4.Основы архитектуры операционных систем 4.1.Базовые понятия 4.2.Свойства ОС 4.3.Структура ОС 4.4.Логические функции.
Архитектура операционной системы. Ядро и вспомогательные модули операционной системы При функциональной декомпозиции ОС модули разделяются на две группы:
Администрирование информационных систем Лекция 4. Система управления базами данных.
Работу выполнила студентка гр. 9 Бд 111 Евженко Дарья.
СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ. Системное программное обеспечение - это комплекс программ, которые обеспечивают эффективное управление компонентами.
Транксрипт:

QNX Software Systems Чарльз Иган (Charles Eagan) Вице-президент по разработкам

2 All content copyright QNX Software Systems QNX выбор лидеров рынка телекоммуникационных систем

3 All content copyright QNX Software Systems Наши рынки ВПК Промышленная автоматизация Networking Медицинское оборудование Автомобильный Потребительская электроника Наш самый быстрорастущий рынок QNX – компания номер 1 для автомобилестроения; 140 автомоделей с QNX; Наш самый большой потенциальный рынок 2-ой по скорости роста рынок; самый большой клиент (Cisco); рынок наибольших потенциальных доходов. Наш самый большой рынок большинство клиентов; большая часть доходов. Стабильные и развитые рынки Инф.-развл. системы, которые пригодны и для потребительского рынка. Теле- коммуникации QNX отличный партнер для компаний в индустрии телекоммуникаций

4 All content copyright QNX Software Systems Принятие решений Как сетевая компания определяет свою стратегию в отношении операционной системы? Многие руководители не знают о возможности повышения производительности за счет применения коммерческой операционной системы и инструментов разработки. Те инженеры, которые знают об этих возможностях, зачастую не могут влиять на принятие решений. Период времени для качественного перехода с одной операционной системы на другую весьма ограничен. Для осуществления перехода требуется решительность, а также грамотное и эффективное руководство.

5 All content copyright QNX Software Systems Почему выбирают QNX Целостный инженерный подход Гибкая модель операций Гибкие условия делового сотрудничества Передовые технологии Конкурентная стратегия развития Консалтинг по инструментам и разработке

6 All content copyright QNX Software Systems Развитие разработки Cisco выбирает QNX в качестве стратегического партнера в период 1996/1997 гг. Интересно отметить, что в тот момент QNX-технологии были основаны преимущественно на процессорах Intel, а системы Cisco – на процессорах MIPS. Квалификация и опыт команды QNX в сочетании с эффективными инженерными решениями и согласованными рабочими подходами и планированием привели к новаторскому сотрудничеству. Применение технологий QNX привело к созданию более 10 различных рабочих групп в компании Cisco.

7 All content copyright QNX Software Systems Официальное начало сотрудничества

8 All content copyright QNX Software Systems Many other hardware platforms Экосистема QNX Базовая технология QNX и набор инструментов CRS Коммутатор Catalyst 6k Ethernet Семейство адаптеров сетевых портов Cisco Many other hardware platforms CRS-1 Многие другие аппаратные платформы

9 All content copyright QNX Software Systems Важные технологические аспекты Высокопроизводительная архитектура высокой готовности. Гибкая, масштабируемая архитектура, полностью распределенная или монолитная. Безопасность. Применение следующих стандартов по технологиям и разработке: IEEE POSIX, Unix Java, C++, C, gcc Гибкость Независимость от порядка следования разрядов двоичного слова (Endian abstraction) Поддержка различных семейств процессоров: MIPS, PPC, Intel Инструменты повышения производительности.

10 QNX Confidential. All content copyright QNX Software Systems. Масштабируемые решения для Cisco QNX Neutrino для широкого круга приложений: от интерфейсов фреймеров до системы маршрутизации CRS-1 Поддержка от одного процессора до тысячи сетевых процессоров, функционирующих как единый вычислительный ресурс

11 QNX Confidential. All content copyright QNX Software Systems. Многоядерные технологии Асимметричная многопроцессорность поддержка существующей программной базы; неоптимизированные однопроцессорные приложения; гетерогенная прикладная база требует AMP нетривиальное разделяемое использование ресурсов; масштабирование свыше двух ядер достаточно сложно. Исключительная многопроцессорность возможность переноса существующей программной базы; совместное использование существующих приложений с оптимизированными многоядерными приложениями; прозрачное масштабирование свыше двух ядер; передовая разработка компании QNX. Симметричная многопроцессорность оптимизированные многоядерные приложения; разделяемое использование ресурсов на уровне ОС; прозрачное масштабирование свыше двух ядер. Многопроцес- сорность надежная поддержка любых многоядерных архитектур; полный набор инструментов разработчика для профилирования и оптимизации многоядерных приложений; профессиональный консалтинг и обучение; широкий набор BSP-пакетов для многоядерных плат. Решение QNX обеспечивает программный переход на многоядерные процессоры:

12 All content copyright QNX Software Systems Высокая готовность Ingress Egress Файловая система Администратор процессов BGP ISIS Перенаправление Обмен сообщениями: прозрачное взаимодействие автономных процессов; POSIX-вызовы основаны на сообщениях. Обмен сообщениями: прозрачное взаимодействие автономных процессов; POSIX-вызовы основаны на сообщениях. Защита памяти: самая важная технология, которая обязательна для настоящей системы высокой готовности; 90% всех системных сбоев происходят из-за конфликтов обращения к памяти. Защита памяти: самая важная технология, которая обязательна для настоящей системы высокой готовности; 90% всех системных сбоев происходят из-за конфликтов обращения к памяти. Самая эффективная в мире архитектура высокой готовности. Процессы взаимодействуют посредством обмена сообщениями. Самая эффективная в мире архитектура высокой готовности. Процессы взаимодействуют посредством обмена сообщениями. Перенаправление Разделяемая память: доступ к большим массивам данных и оборудованию. Разделяемая память: доступ к большим массивам данных и оборудованию. µK Шина обмена сообщениями Микроядро

13 All content copyright QNX Software Systems Мост обмена сообщениями Гибкая архитектура – полностью распределенная или монолитная Файловая система Администратор процессов OSPF BGPMPLS Мост между ядрами обеспечивает прозрачный обмен сообщениями между шинами с помощью различных средств (Ethernet, MOST, Internet и др. виды сетей) Мост между ядрами обеспечивает прозрачный обмен сообщениями между шинами с помощью различных средств (Ethernet, MOST, Internet и др. виды сетей) Приложения и Серверы работают в распределенном режиме без помощи специального кода. Унифицированный доступ ко всем удаленным аппаратным и программным ресурсам без проверки прав доступа. Приложения и Серверы работают в распределенном режиме без помощи специального кода. Унифицированный доступ ко всем удаленным аппаратным и программным ресурсам без проверки прав доступа. µKµK Интернет Администратор процессов Поток сетевых данных µKµK Приложение Сетевое взаимодействие Управление сетевым трафиком Шина обмена сообщениями Микроядро Новые службы, добавленные на одном из процессоров, прозрачным образом доступны всем другим процессорами. Система функционирует как единый маршуртизатор на основе прозрачного взаимодействия между множеством слабо- или сильносвязанных процессоров.

14 All content copyright QNX Software Systems CPU CPU SMP BMP AMP DMP Процессор маршрутизации Контроллер маршрутизации Распределенный маршрутизатор Распределенная вычислительная архитектура Протокол прозрачного безопасного распределения OSPFBGP Line Card/ Forwarded Plane MPLS BGP Приложения могут прозрачным образом взаимодействовать со всеми интерфейсами (line card/forwarded plane).

15 QNX Confidential. All content copyright QNX Software Systems. Автообнаружение и выравнивание нагрузки Мост обмена сообщениями Файловая сист. во флеш-памяти База данных Приложение Микроядро Очереди сообщений Сетевой стек Файловая сист. во флеш-памяти Приложение Микроядро Интернет Шина обмена сообщениями Прозрачные распределенные вычисления: распределенная POSIX- модель; платформа для динамического взаимодействия между оборудованием и программным обеспечением на удаленных узлах; служба глобальных имен для обнаружения нового оборудования и приложений; Остановка приложений на одном узле и перезапуск на другом: без необходимости перезагрузки; прозрачное управление всем соединениями; широкое применение в CRS-1

16 All content copyright QNX Software Systems Принципы безопасности Разделение привилегий: разные уровни привилегий для разных приложений; приложению присваивается низший необходимый уровень привилегий. Полный контроль безопасности: тотальная проверка на доступ. Установки по умолчанию для отказоустойчивости: низший необходимый уровень привилегий/доступа по умолчанию. Разработка: принципы объектно-ориентированной разработки; абстрагирование, модульность, инкапсуляция, изоляция. важно, если эти принципы поддерживаются на уровне ОС Защита ресурсов на прикладном уровне: память, процессорные циклы, регистры, периферия и т.д. Архитектура ОС может значительно влиять на работу этих принципов и даже возможность их применения.

17 All content copyright QNX Software Systems Высокая готовность: защита от сбоев и восстановление Готовность= MTBF MTBF + MTTR Способность восстановления характеризуется уровнемготовности: Вероятность того, что система или подсистема выполнит предназначенную функцию в заданный период времени. MTBF – среднее время наработки на отказ MTTR – среднее время до восстановления Готовность на уровне 99,999% (пять девяток) = меньше 5,25 минут простоя (запланированного и незапланированного) в год. Сетевые компании и аналитики ИТ-индустрии обращают особое внимание на эти показатели.

18 All content copyright QNX Software Systems Системные гарантии для повышения уровня готовности Повышение MTBF: многократное (!) тестирование и отладка; большинство ОС имеют множество инструментов для повышения MTBF. Также сокращение MTTR: выявление, ограничение и исправление ошибок; готовность приближается к 100% при MTTR, стремящемся к 0. Сценарии восстановления: системная перезагрузка (исполняемый модуль реального времени, монолитное ядро); восстановление за период от неск. секунд до неск. минут; службы перезапуска (микроядро, монолитное приложение); восстановление за миллисекунды (

19 QNX Confidential. All content copyright QNX Software Systems. Система высокой готовности – Монитор ключевых процессов Разработана в сотрудничестве с Cisco (ключевым клиентом компании QNX). Система высокой готовности: пользовательские сценарии восстановления; автоматическое прозрачное восстановление системы за короткое время – обеспечение минимального периода простоя.

20 All content copyright QNX Software Systems Система высокой готовности – Монитор ключевых процессов (МКП) Система высокой готовности и восстановления (монитор ключевых процессов) отслеживает состояние компонентов и производит восстановление при их сбоях. Дублирующий процесс обеспечивает замену процесса высокой готовности при его сбое и защищает от возникновения единой точки сбоя (SPoF). Клиентская библиотека позволяет быстро и прозрачно переподключать компоненты: пользователь может ввести информацию о состоянии и настроить процедуру восстановления. Службы генерации квитанций работоспособности выявляют зависание компонентов, что обеспечивает самомониторинг системы. МКП Прилож- ение Дублер Сохраненное состояние монитора ключевых процессов

21 All content copyright QNX Software Systems Монитор ключевых процессов Микроядро Монитор ключевых процессов Дублирующий процесс Приложение A ДрайверПриложение BДрайвер 1. Сбой драйвера из-за недопустимого обращения к памяти вне защищенной области. 2. Ядро извещает монитор ключевых процессов о сбое. 3. Сбор отладочной информации о неисправном процессе. 4. Завершение драйвера и возвращение всех ресурсов системе. Удаление канала обмена сообщениями. 5. Монитор ключевых процессов перезапускает новый драйвер. 6. Повторное создание каналов обмена сообщениями посредством клиентской библиотеки монитора ключевых процессов. 7. Драйвер запрашивает у монитора информацию о последнем сохраненном состоянии. Работа восстановлена. Информация о состоянии разделяемой памяти

22 QNX Confidential. All content copyright QNX Software Systems. Динамическая модернизация Файловая система Администратор процессов Стек протоколов Микроядро Приложение Микроядро – единственный доверяемый компонент Аудиодрайвер Графический драйвер Шина обмена сообщениями … Приложения, файловые системы и драйверы: существуют как процессы на шине обмена сообщениями; находятся в защищаемом адресном пространстве; запуск, остановка, добавление, удаление, перемещение и обновление компонентов без перезагрузки; невозможность нарушить работу других компонентов.

23 QNX Confidential. All content copyright QNX Software Systems. Momentics: лидер и основатель Eclipse Масштабируемость, надежность и высокая производительность Интегрированная поддержка: различных типов инструментальных, целевых систем, языков программирования и BSP- комплектов; оптимизирующих компиляторов; совместимость со всеми плагинами третьих сторон для Eclipse.

24 All content copyright QNX Software Systems QNX: новейшая технология адаптивной декомпозиции. Инновационное решение для телекоммуникационных приложений

25 All content copyright QNX Software Systems Адаптивная декомпозиция Что такое адаптивная декомпозиция? Новая технология QNX – расширение ОСРВ Neutrino. Позволяет создавать безопасные группы (объединения) из нескольких приложений или потоков. Гарантированное выделение процессорного времени приложениям, входящим в группу. Управление гарантиями происходит на основе бюджетов. Почему адаптивная? Запатентованная технология обеспечивает эффективное (без потерь) выделение всех имеющихся процессорных циклов именно тем группам, которым они требуются. Повышение производительности за счет оптимального использования процессорных ресурсов и перераспределения нагрузки. Легкий старт: разработчикам не нужно переучиваться: программная модель POSIX сохраняется для знакомых методов разработки, программирования и отладки. для реализации группы не требуется вносить изменения в код.

26 All content copyright QNX Software Systems Микроядерная архитектура для обеспечения безопасности Приложения и драйверы: >являются процессами, которые соединяются с шиной обмена сообщениями; >находятся в собственном защищенном адресном пространстве; >никак не могут нарушить работу ядра или других компонентов; >запуск, остановка, модернизация на лету; >при сбоях драйверов не требуется перезапуск системы. Приложение Микроядро QNX Neutrino Приложение Диск Графика Посл. порт Сеть Аудио- система ARM, MIPS, SH4, PowerPC, Xscale, x86

27 All content copyright QNX Software Systems Адаптивная декомпозиция ОСРВ QNX ® Neutrino ® обеспечивает базовую структуру: инкапсуляция приложений и служб ОС на основе обмена сообщениями; надежность и безопасность благодаря аппаратной защите памяти. Адаптивная декомпозиция служит расширением микроядро Neutrino для создания безопасных групп и обеспечения гарантий выделения процессорного времени: группа состоит из набора процессов и потоков; группе назначается изменяемый процент процессорного времени в зависимости от средней нагрузки на процессор в течение некоторого временного периода; действует в дополнение к существующей схеме планирования потоков. Доп. модуль Файловая система Device Driver Приложение Микроядро Приложение 10%70%20%

28 All content copyright QNX Software Systems Файловая система Сеть Максимальная производительность Приложение Микроядро QNX Neutrino Доп. модуль 10% Группа ввода/вывода 70% Группа приложений 20% Некритичная группа Доп. модуль Драйверы устройств Приложение Использование ЦП Гарантии процессорного времени для группы при полной системной нагрузке Динамическое распределение процессорного времени при неполной нагрузке 10%20%70% 55%5%30%10% Простаивание

29 All content copyright QNX Software Systems Маршрутизация и перенаправление Интерфейсы управления (CLI, SNMP) 5% 10% 70% 20% 5% 10% 95% 80% 90% Сценарии обработки нагрузки Что значит адаптивность? Служебные утилиты Простаивание 10% 5%

30 All content copyright QNX Software Systems Группирование позволяют изолировать угрозы Файловая система Control Plane Protocols Приложение Микроядро QNX Neutrino Add-On Драйверы устройств Сетевое управление Атака управляю- щего сегмента Локализация атаки DoS Аварийный доп. модуль изолирован 10%5%25%10% Гарантии выделения процессорного времени 50% Без группирования: аварийные приложения могут лишить базовые приложения процессорных ресурсов; распределенные DOS-атаки могут нагрузить систему задачами сетевой обработки. При возможности группирования: создание групп с фиксированным бюджетом для надежной защиты важнейших системных ресурсов; ограничение угроз и защита базовых приложений и служб.

31 All content copyright QNX Software Systems Гарантии выделения процессорного времени: повышение уровня готовности Гарантированный процессорный ресурс для операций восстановления: аварийные компоненты изолируются и не могут влиять на процессы восстановления. Гарантированный процессорный ресурс для отправки извещений и выполнения действий пользователя: удаленные пользовательские интерфейсы сохраняют работоспособность при любых обстоятельствах. NetworkingПриложение Микроядро QNX Neutrino Аварийное восстановление Автоматическое восстановление Снижение MTTR Файловая система Remote Interface Пользователь- ский интерфейс Драйверы устройств Приложение Извещение об авариях Сеть – Локализация DOS-атаки

32 All content copyright QNX Software Systems Сложность программного обеспечения Взгляд со стороны разработчиков Большие команды, географически распределенная разработка возможность совмещения различных географических и временных зон. Распределение обязанностей, функций и областей компетенции: сочетание различных наборов навыков разработки Лицензирование и интеграция технологий третьих сторон для сокращения затрат на разработку: невозможность контролировать разработку технологий третьих сторон. Параллельная разработка с последующей системной интеграцией и испытаниями Маршрутизация и перенаправление Управляющие интерфейсы Обслуживание

33 All content copyright QNX Software Systems Построение сложных систем Системная интеграция Системная интеграция – важный этап в проекте по разработке: всегда является критической фазой. Проблемы, обнаруженные на поздних этапах в цикле разработки, порождают самые большие затраты: затраты на первичное тестирование для выявления ошибок; как правило, приводит к задержкам всего проекта; требуются системные инженеры для выявления и устранения неисправностей; затраты на повторную реализацию и тестирование. Изменения проекта на поздних этапах приводят к повышению рисков: как правило, "простые" решения применяются для снижения трудоемкости и соблюдения сроков сдачи проекта; в итоге снижается качество и производительность продукта. На этапе интеграции типичные проблемы связаны с производительностью, ошибками памяти и зависаниям процессов.

34 All content copyright QNX Software Systems Заключение Компания QNX продолжает развитие на тех рынках, которые уже принесли успех, и весьма активно осваивает новые рынки для создания основы для будущего роста. Наши планы технологического развития нацелены на сохранение лидерства и удовлетворение требований целевых рынков.