- •1. Определение и основные особенности осрв.
- •2. Определение осрв. Типичные времена реакции на внешние события в управляемых осрв процессах.
- •3. Основные области применения осрв.
- •4. Особенности оборудования, на котором работают осрв.
- •5. Основные определения: программа, процессор, процесс, состояние, стек, виртуальная память.
- •6. Основные определения: межпроцессное взаимодействие (семафоры и т.П.), событие, задача, ресурс, связывание.
- •Типы задач. Виды программирования.
- •8. Виды ресурсов. Состояние процесса
- •9)Типы взаимодействия процессов.
- •10)Стандарты на осрв. Нормы esse консорциума vita. Стандарт posix 1003.1b.
- •11. Стандарт на осрв sceptre
- •12. Типы архитектур осрв
- •13.ОБъектно-ориентированный подход к программированию. Основная концепция объектно-ориентированного подхода
- •14. Монолитная архитектура осрв
- •15. Модульная арх-ра осрв(на основе микроядра)
- •16. Объектная арх-ра на основе объектов-микроядер
- •17. Строение ос
- •18. Синхронизация и взаимодействие процессов
- •19. Семафоры.
- •20. События (сигналы).
- •21. Почтовые ящики
- •23.Собъекты синхронизации стандарта Posix, Mutex, Condvar
- •24.Управление задачами. Планирование задач.
- •25. Планирование задач. Приоритеты.
- •26. Стратегии планирования задач.
- •27. Планирование периодических задач
- •28.Переключение контекста.
- •29. Классификация осрв.Краткий обзор современных осрв
- •30.Системы на основе Linux
- •31.Осрв на основе Windows nt
- •32.Критерии выбора языка программирования для срв
- •32.Языки разработки для осрв
- •35. Типовая структура программ, работающих в рв.
- •36. Необходимость оптимизации программ.
- •37. Осрв qnx. Краткая характеристика.
- •38. Осрв qnx. Особенности.
- •39. Элементы стандарта posix в осрв qnx.
5. Основные определения: программа, процессор, процесс, состояние, стек, виртуальная память.
Программа - описание алгоритма, решающего поставленную задачу на некотором формализованном языке. Программа представляет собой статическую единицу, т.е. явл-ся неизменяемой с точки зрения ОС.
Процессор - это устройство, выполняющее определенный набор команд (являются входным языком процессора). Для того, чтобы программа была выполнена, она должна быть переведена с формализованного языка на входной язык процессора. Этот процесс называется компиляцией. Входной язык процессора наз-ся машинным кодом.
Процесс - это код программы в процессе выполнения. Явл-ся динамической сущностью программы. Процесс имеет собственную область памяти, подкод и данные, собственные стек и состояние. Процесс может находиться в различном состоянии, кол-во состояний и их особенности зависят от конкретн. ОС
Стек- область памяти, предназначенная для хранения промежуточных данных. Данные храняться в стеке по принципу «первым вошел -последним вышел»
Стек имеет аппаратную поддержку со стороны микропроцессора.
Виртуальная память-память, в адресном пространстве которой работает процесс.
6. Основные определения: межпроцессное взаимодействие (семафоры и т.П.), событие, задача, ресурс, связывание.
Межпроц. взаимод-ие – тот или иной способ передачи информации от одного процесса к другому.
Формы взаимод-ия: 1.Семафоры. 2 или более процесса имеют доступ к одной перемен-й (0 или 1). Семафоры орг-ся самой ОС. 2. Сигналы. С. Доставляются процессу посредством ОС. Процесс должен зарегистрировать обработчик этих сигналов. 3. Почтовые ящики. П.Я. орг-ся ОС, в них может храниться целая группа сообщений. Неск-ко процессов могут иметь доступ к одному П.Я.
Событие – это оповещение ОС процесса о той или иной форме межпроцес. взаим-ия.
Задача – одна из ветвей выполнения процесса.
Ресурс – это объект, необх. для работы процессу или задаче.
Связывание (компановка) – процесс превращения скомпелированного (объектного) модуля в восполняемый загрузочный модуль.
Статическое связывание – когда код необх. для работы программы библиотечных функций физически добавляется к объектному модулю для получения исполняемого модуля.
Динамическое связывание – когда в загрузочном модуле указ-ся только ссылки на код необ-х библиотечных функций, при этом сам код будет добавлен только в этапе выполнения.
Типы задач. Виды программирования.
Типы задач.
Периодические – к-рые выполняются ч/з определенный период.
Циклические – к-рые выполняются непрерывно и по завершению начинаются сначала.
Импульсные – выполняются эпизодически.
Виды программирования.
Последовательное – каждое действие, выполняемое программой, выполняется последовательно.
Параллельное (квазипараллельное). Предполагает, что программа на этапе исполнения будет разбита на несколько независимых потоков исполнения. При этом организация потоков исполнения и их синхронизация закладывается на этапе написания программы. При этом используются специальные функции.
Программирование под ОСРВ. Это (2) или сочетание (2) и (1).