Контрольная работа по "Информатике"
Курсовая работа, 09 Мая 2012, автор: пользователь скрыл имя
Краткое описание
Контрольная работа по дисциплине "Информатика"
Содержимое работы - 1 файл
контрошка№2.docx
— 61.93 Кб (Скачать файл)таблица сформирована на основании экспериментальных данных,
полученных на базе вычислительных комплексов, построенных на основе
процессоров Intel 80486DX.
Время реакции
Только ОСРВ, но даже они могут быть бессильны –
Менее 10 мкс это граница выбора между схемным и программным
решениями
10 – 100 мкс Любые операционные системы реального времени
ОСРВ, RTAI, RT LINUX, расширения
100 мкс – 1 мс
реального времени для Windows NT, CE
Можно пытаться делать что-то с Linux и
1 мс Windows NT, но не для систем, где опоздания
реакции могут привести к
Таким образом, видно, что временные рамки ОСРВ достаточно
жесткие. Среди современных операционных систем есть класс продуктов,
разработанных специально для построения систем жесткого реального
времени – VxWorks, OS9, QNX, LynxOS, OSE и другие. Эти системы
содержат необходимый набор инструментов и в некоторых случаях
являются единственным выбором. Однако достаточно часто требования к
реальному времени (полная предсказуемость времени реакции) допускают
компромиссы, например, необходимо добиться только нужной средней
производительности.
Иногда
достаточно жестко
допуская при этом задержки реакций на остальные. В подобных случаях
возможности выбора расширяются и желаемых результатов можно
достичь, используя такие широко распространенные операционные
системы как LINUX, Windows NT, Windows CE, дополняя их
расширениями
реального времени (RTAI, RT LINUX, RTX).
11
ГЛАВА 2. ОСНОВНЫЕ
ОПРЕДЕЛЕНИЯ И ПОЛОЖЕНИЯ
Программа – это описание на некотором формализованном
языке алгоритма,
решающего поставленную задачу.
Процесс – это динамическая сущность программы, ее код в
процессе своего
выполнения.
Процесс имеет:
−
собственные области памяти
− собственный стек;
− собственное отображение виртуальной памяти на физическую (в
системах с виртуальной памятью);
−
собственное состояние.
Стек – это область памяти, в которой размещаются локальные
переменные, аргументы
и возвращаемые значения функций.
Виртуальная память – это память, в адресном пространстве
которой работает
процесс.
Виртуальная память:
1. Позволяет увеличить объем памяти, доступной процессам за счет
дисковой памяти;
2. Обеспечивает выделение каждому из процессов виртуально
непрерывного блока памяти, начинающегося с одного и того же
адреса;
3. Обеспечивает
изоляцию одного процесса от
другого.
Межпроцессное взаимодействие – это тот или иной способ
передачи информации
из одного процесса в другой.
Наиболее
распространенными формами
1. Разделяемая
память – два или более
одному и тому же блоку памяти.
2. Семафоры – два или более процесса имеют доступ к одной
переменной, принимающей значение 0 или 1.
3. Сигналы – это сообщения, доставляемые посредством операционной
системы процессу.
4. Почтовые
ящики – это очередь сообщений,
почтовый
ящик процессами.
Событие – это оповещение процесса со стороны операционной
системы о той
или иной форме межпроцессного взаимодействия.
По типу взаимодействия различают два вида процессов:
1. Сотрудничающие процессы:
− Процессы, разделяющие только коммуникационный канал, по
которому один передает данные, а другой их получает;
− Процессы, осуществляющие взаимную синхронизацию.
2. Конкурирующие процессы:
− Процессы, использующие совместно разделяемый ресурс;
− Процессы, использующие критические секции;
− Процессы, использующие взаимные исключения.
Критическая
секция – это участок
запрещается переключение
задач для обеспечения
использования
ресурсов текущим процессом.
Взаимное
исключение – это способ
работающих процессов, использующих разделяемый постоянный
критичный ресурс.
Задача
– это одна из ветвей
Задача:
− разделяет с процессом область памяти под код и данные;
− имеет собственный стек;
−
разделяет с процессом
физическую (в системах с виртуальной памятью);
− собственное состояние.
Всякий процесс содержит одну или несколько задач. ОСРВ
позволяет задаче порождать новые задачи. Задачи по своей манере
действовать можно
разделить на три категории (рисунок 1).
Рисунок 1.
Ресурс – это объект, необходимый для работы процессу или
задаче.
Ресурсы
можно разделить на несколько
видов (рисунок 2).
Рисунок 2.
Разделяемые
ресурсы можно разделить на
два вида (рисунок 3):
15
− не критичные (могут одновременно использоваться несколькими
процессами);
− критичные (могут использоваться
только одним процессом).
Приоритет
– это число, приписанное
каждому процессу
и задаче.
Чем выше это число, тем важнее этот процесс или задача и тем
больше процессорного времени он или она получит.
В
зависимости от архитектуры
подходы к написанию программ в ОСРВ можно разделить на три группы
(рисунок 4).
Рисунок 4.
17
ГЛАВА 3. СТАНДАРТЫ
ОСРВ
Большие различия в спецификациях ОСРВ выдвигают на передний
план проблему стандартизации в области систем реального времени.
Основной целью введения стандартов является облегчение переноса
программного обеспечения из одной ОСРВ в другую.
Рассмотрим
кратко несколько стандартов.
Стандарт POSIX
Наиболее
ранним и распространенным
стандарт POSIX. Он был создан как стандартный интерфейс сервисов
операционных систем. Первоначальный вариант стандарта POSIX
появился в 1990 г. и был предназначен для UNIX-систем, первые версии
которых появились в 70-х годах прошлого века. Спецификации POSIX
определяют стандартный механизм взаимодействия прикладной
программы и операционной системы и в настоящее время включают набор
более чем из 30 стандартов. Для ОСРВ наиболее важны семь из них
(1003.1a, 1003.1b, 1003.1c, 1003.1d, 1003.1j, 1003.21, 1003.2h), но широкую
поддержку в коммерческих ОСРВ получили только три первых.
Спецификации POSIX задают стандартный механизм
взаимодействия приложения и ОСРВ. Соответствие стандарту POSIX для
ОСРВ и аппаратной платформы должно быть сертифицировано с помощью
прогона на них тестовых наборов [POSIXTestSuite]. Однако если ОСРВ не
является Unix-подобной, выдержать это требование становится непростой
задачей. Тестовые наборы существуют только для POSIX 1003.1a.
Поскольку структура POSIX является совокупностью необязательных
возможностей, поставщики ОС могут реализовать только часть
стандартного интерфейса, и при этом говорить о POSIX-комплиантности
своей системы.
Стандарт 1003.1a содержит базовые интерфейсы ОСРВ – поддержку
единственного процесса, поддержку многих процессов, управление
заданиями, сигналами, группами пользователей, файловой системой,
файловыми атрибутами, управление файловыми устройствами,
блокировками файлов, устройствами ввода/вывода, устройствами
специального назначения, системными базами данных, каналами,
очередями FIFO, а также поддержку языка C.
Стандарт 1003.1b содержит расширения реального времени –
сигналы реального времени, планирование выполнения (с учетом
приоритетов, циклическое планирование), таймеры, синхронный и
асинхронный ввод/вывод, ввод/вывод с приоритетами, синхронизация