Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учеб Пособ_Гончаровский.doc
Скачиваний:
1317
Добавлен:
29.03.2015
Размер:
3.65 Mб
Скачать

Вопросы для самоконтроля

  1. Когда целесообразно использовать реконфигурируемую логику?

  2. Как в реконфигурируемой логике реализуется многообразие логических функций?

  3. Почему для моделирования и синтеза используются разные подмножества языка VHDL?

  4. Почему одна entity может содержать несколько архитектурных тел?

  5. Почему оператор присваивания значения сигналу в одном случае является последовательным, а в другом параллельным?

  6. В чем суть различия переменной и сигнала?

  7. Какие конструкции являются базовыми для задания поведения архитектуры с учетом параллельности выполняемых действий?

  8. Какова роль списка чувствительности в операторе process?

  9. В каком варианте используется оператор wait для синтеза?

  10. В чем суть событийного моделирования?

  11. Что моделирует сила сигнала?

  12. Что означает второе свойство модели программно-управляемого автомата об ее рекурсивности.

Модуль 3

2. Программное обеспечение встроенных систем

Программное обеспечение (ПО) встроенных систем можно разделить на два основных класса: системное и прикладное ПО. Системное ПО это такие программы как драйверы устройств, пакеты поддержки плат (BSP – Board Support Package), операционные системы (ОС) и промежуточное ПО. Прикладное ПО это программы верхнего уровня, которые и определяют назначение и функции встроенной системы, а также управляют большинством элементов взаимодействия с окружающей средой.

Драйверы устройств это библиотеки программ для инициализации аппаратных средств, управления доступа к ним элементами вышестоящего уровня.

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

Встроенные системы часто напрямую не взаимодействуют с человеком как персональные компьютеры. Как следствие совокупность необходимых сервисов ОС, в которых они нуждаются, может быть очень разным. Microsoft Windows, MacOS X и Linux сегодня являются доминирующими ОС для персональных компьютеров общего назначения. Они обеспечивают сервисы, которые для встроенных MPS могут потребоваться, а могут и нет. Например, многие встроенные приложения не требуют графического интерфейса пользователя (GUI), файловой системы, управления фонтами и даже сетевого стека.

Несколько ОС были спроектированы специально для встроенных приложений: Windows CE (WinCE) от Microsoft, VxWorks от WindRiver Systems (приобретена Intel в 2009), QNX от QNX Software Systems (приобретена в 2010 Research in Motion (RIM)), Embedded Linux (поддерживает открытое сообщество) и FreeRTOS (поддерживает другое открытое сообщество). Эти ОС разделяют много особенностей с ОС общего назначения, но обычно имеют специализированное ядро операционных систем реального времени (RTOS). RTOS обеспечивает ограниченную задержку при выполнении подпрограмм обработки прерываний и программы планировщика для процессов с ограничениями реального времени.

Мобильные операционные системы являются третьим классом ОС, спроектированных для управления такими устройствами как мобильные телефоны и карманные компьютеры. Примерами являются Symbian OS (открытая с поддержкой Symbian Foundation), Android от Google, BlackBerry OS от RIM, iPhone OS от Apple, Palm OS от Palm, Inc.( приобретена Hewlett Packard и 2010) и Windows Mobile, Windows Phone от Microsoft. Эти ОС имеют специальную поддержку для беспроводного взаимодействия и мультимедиа-форматов.

Сердцевиной любой ОС является ядро (kernel), которое управляет порядком, в котором процессы выполняются, какую память используют и как информация передается к периферийным устройствам и сетям через драйверы устройств.

Микроядро (microkernel) – очень маленькая ОС, которая обеспечивает только эти сервисы (или даже подмножество сервисов). ОС могут поддерживать и другие сервисы: виртуальную память, выделение и освобождение памяти, защиту памяти, файловую систему и сервисы для программ, такие как семафоры, мутексы и библиотеки передачи сообщений.

Промежуточное ПО обычно является посредником между приложением и ядром ОС или драйверами устройств.

Основная целькомпонент BSP это обеспечить уровень абстракции между ОС и драйверами устройств.

На рис. 63 представлены различные уровневые модели встроенных систем, отличающихся стеком программ системного ПО.

Рис. 63. Варианты уровневых моделей встроенных систем