Контрольная работа по "Информатике"

Автор работы: Пользователь скрыл имя, 09 Мая 2012 в 21:37, курсовая работа

Краткое описание

Контрольная работа по дисциплине "Информатика"

Содержимое работы - 1 файл

контрошка№2.docx

— 61.93 Кб (Скачать файл)

таблица     сформирована      на   основании   экспериментальных       данных,

полученных на базе вычислительных комплексов, построенных  на основе

процессоров Intel 80486DX.

                                                                    Таблица 1

  Время реакции                        Использованные ОС

                         Только ОСРВ, но даже они могут  быть бессильны –

   Менее  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. Обеспечивает     выделение     каждому   из   процессов   виртуально

     непрерывного  блока памяти, начинающегося с  одного и того же

     адреса;

                                   12 
 

  3. Обеспечивает  изоляцию одного процесса от  другого. 
 

     Межпроцессное взаимодействие – это тот или иной способ

передачи информации из одного процесса в другой. 
 

     Наиболее  распространенными формами взаимодействия  являются:

   1. Разделяемая  память – два или более процесса  имеют доступ к

     одному  и тому же блоку памяти.

   2. Семафоры  – два или более процесса  имеют доступ к одной

     переменной, принимающей значение 0 или 1.

   3. Сигналы  – это сообщения, доставляемые  посредством операционной

     системы  процессу.

   4. Почтовые  ящики – это очередь сообщений,  которые помещаются в

     почтовый  ящик процессами. 
 

     Событие  – это оповещение процесса  со стороны операционной

системы о той  или иной форме межпроцессного взаимодействия. 
 

     По  типу взаимодействия различают  два вида процессов:

   1. Сотрудничающие  процессы:

       − Процессы, разделяющие только  коммуникационный канал, по

            которому один передает данные, а другой их получает;

       − Процессы, осуществляющие взаимную  синхронизацию.

   2. Конкурирующие  процессы:

        −   Процессы, использующие совместно  разделяемый ресурс;

        −   Процессы, использующие критические  секции;

        −   Процессы, использующие взаимные  исключения.

                                 13 
 

     Критическая  секция – это участок программы,  на котором

запрещается переключение задач для обеспечения исключительного

использования ресурсов текущим процессом. 
 

     Взаимное  исключение – это способ синхронизации  параллельно

работающих процессов, использующих разделяемый постоянный

критичный ресурс. 
 

     Задача  – это одна из ветвей исполнения  процесса. 
 

     Задача:

     −   разделяет с процессом область  памяти под код и данные;

     −   имеет собственный стек;

     −   разделяет с процессом отображение  виртуальной памяти на

         физическую (в системах с виртуальной памятью);

     −   собственное состояние.

     Всякий  процесс содержит одну или  несколько задач. ОСРВ

позволяет задаче порождать новые задачи. Задачи по своей манере

действовать можно  разделить на три категории (рисунок 1). 
 
 
 

                                   14 
 

                             Рисунок 1. 
 

     Ресурс  – это объект, необходимый для  работы процессу или

задаче.

     Ресурсы  можно разделить на несколько  видов (рисунок 2). 
 
 
 

                             Рисунок 2.

     Разделяемые  ресурсы можно разделить на  два вида (рисунок 3): 

                               15 
 

       −   не критичные (могут одновременно использоваться несколькими

           процессами);

       −   критичные (могут использоваться только одним процессом). 
 
 
 

                                  Рисунок 3.

     Приоритет  – это число, приписанное операционной  системой

каждому процессу и задаче. 
 

     Чем  выше это число, тем важнее  этот процесс или задача и  тем

больше процессорного  времени он или она получит.

     В  зависимости от архитектуры целевого  компьютера и назначения,

подходы к написанию  программ в ОСРВ можно разделить  на три группы

(рисунок 4). 
 
 
 

                                 16 
 

Рисунок 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 является совокупностью необязательных

возможностей,    поставщики    ОС       могут     реализовать     только    часть

                                   18 
 

стандартного  интерфейса, и при этом говорить о POSIX-комплиантности

своей системы.

     Стандарт 1003.1a содержит базовые интерфейсы  ОСРВ – поддержку

единственного процесса, поддержку многих процессов, управление

заданиями, сигналами, группами пользователей, файловой системой,

файловыми        атрибутами,      управление      файловыми       устройствами,

блокировками      файлов,      устройствами     ввода/вывода,       устройствами

специального     назначения,     системными     базами     данных,     каналами,

очередями FIFO, а  также поддержку языка C.

     Стандарт 1003.1b содержит расширения реального  времени –

сигналы реального  времени, планирование выполнения (с  учетом

приоритетов,     циклическое     планирование),      таймеры,   синхронный    и

асинхронный ввод/вывод, ввод/вывод с приоритетами, синхронизация

Информация о работе Контрольная работа по "Информатике"