Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
IPZ_1modul.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
611.93 Кб
Скачать

23. Керуючі компоненти систем реального часу.

Керуюча програма (диспетчер) системи реального часу є аналогом операційної системи комп'ютера. Вона управляє процесами й розподілом ресурсів в системах реального часу, запускає і зупиняє відповідні процеси для обробки вхідних сигналів і розподіляє ресурси пам'яті і процесора. Проте зазвичай в керуючих програмах відсутні більш складні засоби, властиві операційним системам, наприклад засоби управління файлами.

В роботі [17] представлений повний огляд коштів, необхідних керуючим програмами систем реального часу. Дана тема обговорюється в монографії [80], де також коротко розглянуті комерційні розробки керуючих програм для систем реального часу. Незважаючи на те що на ринку програмних продуктів існує декілька керуючих програм систем реального часу, їх часто проектують самостійно як частини систем через спеціальних вимог, що пред'являються до конкретних систем реального часу.

Компоненти керуючої програми (рис. 13.4) залежать від розмірів і складності проектованої системи реального часу. Зазвичай керуючі програми, за винятком найпростіших, складаються з наступних компонентів.

  1. Годинник реального часу періодично надають інформацію для планування процесів.

  2. Обробник переривань управляє аперіодичними запитами до сервісів.

  3. Планувальник переглядає список процесів, які призначені на виконання, і вибирає один з них.

  4. Адміністратор ресурсів, отримавши процес, запланований на виконання, виділяє необхідні ресурси пам'яті і процесора.

  5. Диспетчер запускає на виконання якої-небудь процес.

Керуючі програми систем, що надають сервіси на постійній основі, наприклад телекомунікаційних або моніторингових систем з високими вимогами до надійності, можуть мати ще кілька компонентів.

  • Конфігуратор відповідає за динамічне переконфігуруванні апаратних засобів [205]. Не припиняючи роботу системи, з неї можна витягти апаратні модулі і змінити систему за допомогою додавання нових апаратних засобів.

  • Менеджер несправностей відповідає за виявлення апаратних і програмних несправностей і застосовує відповідні дії щодо їх виправлення. Питання відмовостійкості та відновлення систем розглядаються в главі 18.

Вхідні сигнали, оброблювані системою реального часу, зазвичай мають кілька рівнів пріоритетів. Для одних сигналів, наприклад пов'язаних з винятковими ситуаціями, важливо, щоб їх обробка завершувалася протягом певного інтервалу часу. Якщо процес з більш високим пріоритетом запитує сервіс, то виконання інших процесів має бути призупинено. Внаслідок цього адміністратор системи повинен уміти керувати принаймні двома рівнями пріоритетів системних процесів.

  1. Рівень переривань є найвищим рівнем пріоритетів. Він присвоюється тим процесам, на які необхідно швидко відреагувати. Прикладом такого процесу може бути процес годин реального часу.

  2. Тактовий рівень пріоритетів присвоюється періодичним процесам.

Ще один рівень пріоритетів може бути у фонових процесів, на виконання яких не накладаються жорсткі часові обмеження, (наприклад, процес самотестування). Ці процеси виконуються тоді, коли є вільні ресурси процесора.

Усередині кожного рівня пріоритетів різним класам процесів можна призначити інші пріоритети. Наприклад, може бути кілька рівнів переривань. Щоб уникнути втрати даних переривання від більш швидкого пристрою повинно витісняти обробку переривань від більш повільного пристрою.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]