- •1.Система реального времени (срв). Определение. Основные виды событийных воздействий. Временные параметры задачи.
- •2.Различие систем мягкого и жесткого реального времени. Встроенная система. Области применения осрв.
- •3.Процесс разработки программных модулей (написание кода – компиляция – компоновка – запуск. Программные секции в исполняемом файле.
- •4. Реализация срв без использования ос. Машины состояний.
- •5.Операционные системы реального времени (осрв). Определение, история возникновения, отличия от ос общего назначения.
- •6. Обзор осрв. Стоимость, доступность, набор компонентов,…..
- •7. Основные компоненты ядра ос. Многозадачность. Понятие монолитного ядра и микроядра.
- •8. Состав монолитного ядра ос.
- •9. Состав микроядра ос.
- •10. Планировщик: задача, основные составляющие блока контроля задачи(tcb). Алгоритм планирования Round Robin.
- •11. Планировщик: задача, основные составляющие блока контроля задачи(tcb). Алгоритм планирования вытесняющей многозадачности.
- •12.Планировщик: задача, основные составляющие блока контроля задачи(tcb). Алгоритм планирования fifo
- •13. Контекст задачи. Процесс переключения контекста.
- •14. Задача. Машина состояния задачи, особенности перехода из состояния в состояние.
- •15. Бинарный семафор. Назначение, составляющие блока контроля (scb), машина состояний, пример использования. Особенности использования задания временных параметров на захват занятого семафора.
- •16. Семафор-счетчик. Назначение, составляющие блока контроля (scb), машина состояний, пример использования. Особенности использования задания временных параметров на захват занятого семафора.
- •17. Mutex. Назначение, составляющие блока контроля (scb), машина состояний, пример использования. Особенности использования задания временных параметров на захват занятого muteх.
- •19. Прерывания, общая схема обработки прерываний.
- •20.Прерывания, схема обработки мультиплексированных (разделяемых) прерываний.
- •21. Прерывания, схема обработки вытесняемых прерываний.
- •22.Прерывания, схема обработки прямых и отложенных обработчиков прерываний.
- •23. Время. Основные понятия и характеристики. Необходимость точного измерения и четкой синхронизации для срв. Системный таймер. Часы реального времени.
- •24.Время. Сторожевой таймер. Gps. Ntp.
- •25. Система ввода-вывода. Символьные и блочные типы устройств. Драйвера. Общая структура драйвера. Точки входа, принцип инициализации и работы.
- •26. Таблица драйверов и таблица устройств. Принцип работы и назначение функции ioctl.
- •27. Программные циклы, используемые при проектировании срв. Этап моделирования. Совместный аппаратно-программный цикл разработки.
7. Основные компоненты ядра ос. Многозадачность. Понятие монолитного ядра и микроядра.
Многозадачность – это процесс разделения процессора между несколькими задачами. Многозадачная система похожа на систе¬му, основанную на концепции «основного цикла», но с нескольки¬ми фонами. Многозадачность увеличивает эффективность исполь¬зования процессора, а также обеспечивает возможность модульной конструкции приложения.
Ядро — модули, выполняющие основные функции операционной системы, решающие внутрисистемные задачи организации вычислительного процесса, такие как переключение контекста, управление памятью, обработка прерываний, работа с внешними устройствами и т. п.
Монолитное ядро - все его части работают в одном адресном простр-ве. Состоит из единственного загрузочного модуля, в котором реализованы все функции, возлагаемые на систему, и в частности, все сервисы, которые ядро предоставляет прикладным программам.
Микроядро - базовые функции ядра оформляются в виде отдельной небольшой компоненты, выполняемой в привилегированном режиме, а остальные функции ОС выполняются в пользовательском режиме с использованием примитивов микроядра. Основной сложностью использования микроядерного подхода на практике является замедление скорости выполнения системных вызовов при передаче сообщений через микроядро по сравнению с классическим подходом.
8. Состав монолитного ядра ос.
Монолитное ядро предоставляет богатый набор абстракций оборудования. Все части монолитного ядра работают в одном адресном пространстве. Это такая схема операционной системы, при которой все компоненты её ядра являются составными частями одной программы, используют общие структуры данных и взаимодействуют друг с другом путём непосредственного вызова процедур. Монолитное ядро — старейший способ организации операционных систем. Примером систем с монолитным ядром является большинство UNIX-систем.
Достоинства: Скорость работы, упрощённая разработка модулей[1].
Недостатки: Поскольку всё ядро работает в одном адресном пространстве, сбой в одном из компонентов может нарушить работоспособность всей системы.
User space: ПП<->Сист.библ<->Kernel space:ЯДРО<-> User space: Сервисы
Все части работают в одном адресном простр-ве
1) Планировщик 2) Системные таблицы(табл.потоков процессов, табл.семафоров) 3) Диспетчер вв-выв(обдажает табл.драйверов и устр-в, перехватывает прерыв-я от устр-в) 4)Драйвера 5)Менеджер памяти
6)TCP/IP стек протоколов – один на всю сист-у, если 2 сетевые карты-стек на каком-то ур-не им.2 копии(прикладной HTTP, представит, сеансовый-сокеты, транспортный UDP, TCP, сетевой IP v4/v6, ICMP, ARP:в ядре)
7) Система безопасности – доступ, колнтроль 8) Файловая система
9) Модуль графического интерфейса – FIREWALL, X-Windows Примеры: Linux, MS-Dos
9. Состав микроядра ос.
Микроядро предоставляет только элементарные функции управления процессами и минимальный набор абстракций для работы с оборудованием. Бо́льшая часть работы осуществляется с помощью специальных пользовательских процессов, называемых сервисами. Решающим критерием «микроядерности» является размещение всех или почти всех драйверов и модулей в сервисных процессах, иногда с явной невозможностью загрузки любых модулей расширения в собственно микроядро, а также разработки таких расширений.
Достоинства: Устойчивость к сбоям оборудования, ошибкам в компонентах системы. Основное достоинство микроядерной архитектуры — высокая степень модульности ядра операционной системы. Это существенно упрощает добавление в него новых компонентов. Микроядерная архитектура повышает надежность системы, поскольку ошибка на уровне непривилегированной программы менее опасна, чем отказ на уровне режима ядра.
Недостатки: Передача данных между процессами требует накладных расходов.
Состав ядра ОСЖРВ:
1) Планировщик 2) Системные таблицы(табл.потоков процессов, табл.семафоров) 3) Диспетчер вв-выв(обдажает табл.драйверов и устр-в, перехватывает прерыв-я от устр-в) 4)Драйвера
Примеры: Symbian OS; Windows CE; OpenVMS; Mach, используемый в GNU/Hurd и Mac OS X; QNX; AIX; Minix; ChorusOS; AmigaOS; MorphOS.