24545

Виды программных модулей

Доклад

Информатика, кибернетика и программирование

никакие внешние события не могут прервать работу модуля и он непрерывно выполняется от начала до конца. Структура привилегированного модуля приведена на рис. Структура привилегированного модуля Непривилегированные модули – это обычные программные модули которые могут быть прерваны во время своей работы.2 приведен пример использования реентерабельного модуля В процессами А и С.

Русский

2013-08-09

48.36 KB

12 чел.

Вопрос 8. Виды программных модулей.

§3.2 Виды программных модулей.

Под модулем, в общем случае, понимают функционально законченный элемент программы, выполненный в соответствии с межмодульными интерфейсами. Модуль имеет средства сопряжения с подобными элементами данной или другой программы и предполагает легкий способ модификации и замены при наличии заданных интерфейсов. Разделение ОС на модули происходит именно по функциональному признаку.

Модули, в особенности системные, могут использоваться как программные ресурсы и могут быть разделены несколькими выполняющимися процессами. Различают привилегированные, непривилегированные и реентерабельные программные модули.

Привилегированные модули, работают в привилегированном режиме при отключенной системе прерываний. Т.е. никакие внешние события не могут прервать работу модуля, и он непрерывно выполняется от начала до конца. Такой модуль может выступать как попеременно разделяемый ресурс. Структура привилегированного модуля приведена на рис. 3.1.

Рис. 3.1. Структура привилегированного модуля

Непривилегированные модули – это обычные программные модули, которые могут быть прерваны во время своей работы. В общем случае их нельзя считать разделяемыми, поскольку после прерывания его в рамках одного вычислительного процесса и вызова его вновь из другого процесса, промежуточные результаты прерванных вычислений могут быть утеряны.

Реентерабельные (reenterable) – повторно прерываемые модули допускают повторное многократное прерывание своего исполнения и повторный запуск из других процессов.

На рис. 3.2 приведен пример использования реентерабельного модуля В процессами А и С. Опишем состояние процессов в каждый из моментов времени Т1-Т6:

Т1 – модуль А обращается к модулю В;

Т2 – при выполнении модуля В, поступил запрос на прерывание от внешнего устройства (модуля С). Приоритет у процесса С выше, чем у А и В, поэтому модуль В временно прекращает свою работу и управление передается модулю С для обработки поступившего запроса;

Т3 – во время работы модуль С обратился к модулю В;

Т4 – модуль С получает результат своего запроса от модуля В;

Т5 – завершается обслуживание внешнего устройства и управление передается модулю В. Далее модуль В завершает процесс, инициированный модулем А, используя значения переменных, сохраненных в момент прерывания Т2;

Т6 – модуль В завершает свою работу и результат передается модулю А.

Рис. 3.2. Использование реентерабельного модуля В  процессами А и С

Принцип реентерабельности достигается за счет отделения кода программы от данных. При каждом обращении к модулю ему выделяется новая область памяти под данные. Выделение памяти может реализовано 2 способами: статическим и динамическим. Структура реентерабельного модуля при наиболее распространенном динамическом способе выделения памяти приведена на рис. 3.3.

Рис. 3.3. Структура реентерабельного модуля

В головной части реентерабельного модуля из системной привилегированной секции осуществляется запрос на получение в системной области памяти блока ячеек, необходимого для размещения всех текущих данных. При этом на вершину стека помещается указатель на начало области данных и ее объем. В этой системной области памяти располагаются текущие переменные реентерабельного модуля.

В конце привилегированной секции система прерываний включается, поэтому работа центральной (основной) части реентерабельного модуля может быть прервана. Если прерывания не было, то в третьей секции модуля осуществляется запрос на освобождение использованного блока системной памяти. Если же во время работы центральной секции возникает прерывание и к этому же реентерабельному модулю обращается другой процесс, то для нового процесса заказывается новый блок памяти и системной области памяти. На вершину стека записывается новый указатель. Возможно многократное повторное вхождение в реентерабельный модуль до тех пор, пока в соответствующей системной области памяти есть место.

При статическом способе выделения памяти для фиксированного числа процессов заранее резервируются области памяти для хранения переменных реентерабельных модулей: для каждого процесса – своя область памяти. Чаще всего в качестве таких процессов выступают процессы ввода/вывода и речь идет о реентерабельных драйверах, управляющих параллельно несколькими однотипными устройствами.

Кроме реентерабельных существуют еще и повторно входимые модули (reentrance). Повторно входимые модули состоят из привилегированных секций и повторное обращение к ним возможно только после завершения работы какой-нибудь из секций. Т.е. в таких модулях четко определены все допустимые точки входа для прерывания модуля. Повторно входимые модули встречаются чаще, чем реентерабельные.


 

А также другие работы, которые могут Вас заинтересовать

40005. Информационные процессы в маркетинге и объективная необходимость их автоматизации 335.5 KB
  Бурное развитие информационных процессов вызвано также изменениями в подходах к оценке роли информации в политической и экономической жизни страны. Наше общество стало открытым возросли требования к потребляемой им информации которая должна быть актуальной достоверной полной и доступной. Вопервых в результате законотворческой и регулирующей деятельности государства ужесточились требования к достоверности своевременности и законности отчетностатистической информации вырабатываемой на уровне микроэкономического объекта. Вовторых...
40006. Маркетинговые информационные системы 552.5 KB
  Поставщики маркетинговой информации. Поставщики маркетинговой информации. В систему маркетинговой информации входят подсистемы данных используемых в различных видах и на разных этапах деятельности. Среди этих подсистем выделяются: Подсистема научнометодической информации обеспечивающая научных и практических работников методологией и методикой маркетинговой деятельности научным анализом состояния и тенденций развития данной области знания сведениями о школах направлениях концепциях существующих в научной и практической деятельности.
40007. Сущность и функции управления маркетингом 286 KB
  Принципиальная возможность развития маркетинга в России была определена реформами 90х гг. В зависимости от стадии развития маркетинга и его ориентации на внешнюю среду можно выделить три уровня использования маркетинговой концепции в управлении организацией: изолированная реализация отдельных элементов маркетинга реклама стимулирование сбыта ценообразование с учетом спроса и др.; маркетинг как концепция рыночного управления организацией что предопределяет не просто создание службы маркетинга но и изменение философии ее деятельности....
40008. Стратегическое планирование маркетинга и способы его осуществления 699.5 KB
  Построение карты рынка и выбор вариантов стратегического развития с помощью системы Mrketing Expert. Существует широкий спектр маркетинговых решений называемых стратегическими который охватывает с одной стороны направления развития рынка а с другой целенаправленный его выбор. Тактические решения больше полагаются на внутреннюю информацию полученную в результате анализа хозяйственной деятельности или исследований возможностей рынка. Среди них: анализ окружения оценка конкуренции и стратегической ситуации в целом состояние товарного...
40009. Управление комплексом маркетинга (инструментальные стратегии) 902.5 KB
  Управление каналами распределения товаров и услуг. В процессе формирования товарной стратегии предусматривается решение следующих задач: определение позиции предлагаемых товаров специфический товар ассортиментная группа товаров совокупность товаров для обслуживания целевых рынков; установление стратегических целей для предлагаемых выпускаемых товаров; выбор марочной стратегии; разработка и внедрение стратегии для новых и существующих товаров. Товарная стратегия определяет позицию каждого вида товара или комбинации товаров по...
40010. Оценка и анализ потенциала рынков предприятия 156 KB
  Оценка и анализ потенциала рынков предприятия Содержание занятия: 1. Предварительная оценка рынка предприятия. Прогнозирование динамики потребительского спроса на выпускаемую продукцию предприятия. Количественное определение спроса и доли рынка предприятия.
40011. Оценка конкурентного окружения предприятия 319 KB
  Оценка конкурентного окружения предприятия Содержание занятия: 1. Микросреда предприятия – это система отношений предприятия с ее непосредственным окружением: поставщиками посредниками конкурентами прессой властными структурами общественными организациями деловыми кругами стратегическими партнерами в первую очередь инвесторами потребителями. Возможности предприятия по выбору поставщиков по работе со средствами массовой информации по формированию связей с властными структурами по взаимодействию с общественными организациями по...
40012. Оценка конкурентных преимуществ предприятия 266 KB
  Оценка конкурентных преимуществ предприятия Содержание занятия: 1. Анализ конкурентных преимуществ предприятия. Все эти преимущества сводятся к тому чтобы убедить покупателя в получении им больших выгод от приобретения продукции предприятия по сравнению с аналогичной продукцией конкурентов. Стратегия дифференциации – это стремление предприятия к уникальности в какомлибо аспекте существенном для большинства сегментов рынка или потребителей целевого рынка.
40013. Анализ целей и стратегий предприятия 232.5 KB
  Стратегия существования продукции. Проведение SWOTанализа в промышленном маркетинге связаны с прогнозированием и получением информации касающейся условий совершения покупки и характеристик покупаемой продукции. Маркетинговые исследования потребительских рынков охватывают широкие области особенно для производителей продукции с широким и сложным ассортиментом. Если руководство предприятия оценив текущее положение приходит к выводу о достаточности ресурсов для дальнейшего развития то встает проблема выбора наилучшего способа с большей...