Что такое функционирование в «Реальном масштабе времени»


Download 1.86 Mb.
Pdf ko'rish
bet27/72
Sana19.04.2023
Hajmi1.86 Mb.
#1362511
TuriУчебное пособие
1   ...   23   24   25   26   27   28   29   30   ...   72
Bog'liq
Луканов А.С. Системы реального времени 2020

DPC;
– 
драйверы от третьих фирм и системные драйверы должны 
быть настраиваемыми (уровни прерываний ISR, уровни прерываний 
DPC); 
– 
драйверы от третьих фирм должны быть открыты для 
разработчиков, должно быть известно, по крайней мере, 
максимальное время, затрачиваемое на работу ISR и DPC


60 
– 
должно быть известно время маскирования прерываний.
Коммерческие решения, расширяющие NT возможностями 
обработки в реальном времени. 
Существуют разные варианты использования технологии NT 
для разработки систем реального времени: 
– 
использование NT как она есть для построения мягкой 
системы реального времени;
– 
реализация Win32 API над другой ОС РВ; 
– 
совместная работа на одном процессоре NT и другой ОС РВ 
(или ее части);
– 
использование мультипроцессорной архитектуры, когда NT 
выполняется на одном процессоре (или более), а часть реального 
времени – на остальных.
Во многих решениях производители модифицируют HAL или 
ядро NT. Политика Microsoft заключается в том, чтобы не допускать 
никаких модификаций ядра NT, кроме драйверов устройств. Это 
единственно возможный способ связи с ядром. Политика компании 
относительно HAL другая. HAL (Hardware Abstraction Layer) – 
уровень аппаратных абстракций – уровень, лежащий ниже 
программного обеспечения, который виртуализирует интерфейс NT 
с аппаратурой, допуская переносимость NT с одной аппаратной 
платформы на другую. Такие модификации HAL, как манипуляции 
с часами или замена методов обработки прерываний, 
представляются беспримерно незаконным использованием HAL
Они создают нестандартную среду и могут привести к проблемам 
сопровождения, если, например, Microsoft изменит HAL в 
следующих версиях. Поэтому различие в решениях, предлагаемых 
поставщиками, заключается в попытках сделать модификации HAL 
минимальными. 
Также возможен перехват HAL посредством трюков с 
процессором Intel. Однако это можно реализовать только на 
платформе Intel. Механизмы перехвата посредством обработки 
исключительных ситуаций на уровне устройства поглощают 
определенную вычислительную мощность. 


61 
Использование NT как таковой  
Подобное применение предполагает включение структур
обрабатывающих прерывания. Однако учитывая, что NT не 
предназначена для обработки в реальном времени, это надо делать 
очень аккуратно. 
Иногда вводят усовершенствования в механизм обработки 
прерываний. Единственный способ сделать это – перехватить 
прерывание, для чего необходимо добавить специальное 
аппаратное расширение. LP-Elektronik, например, перехватывает 
прерывание и использует затем NMI (немаскируемое прерывание, 
не используемое на уровне NT) для обработки событий реального 
времени. Этот подход применим только тогда, когда процессор 
имеет отдельный стек прерываний. Программа NMI должна быть 
написана аккуратно: в ней нельзя использовать вызовы ОС и она 
должна быть как можно короче, чтобы не потерять другие 
прерывания. Такое решение дает минимальную задержку 
прерывания, но требует дополнительной аппаратуры. Как и в 
других решениях, здесь необходим дополнительный механизм 
связи между NT и частью реального времени. Разница в том, что при 
этом требуется большая аккуратность в использовании NMI. 
Реализация Win32 API над другой ОС РВ.  
Добавление Win32 API к ОС, предназначенной для обработки 
в реальном времени, избавляет от необходимости модифицировать 

Download 1.86 Mb.

Do'stlaringiz bilan baham:
1   ...   23   24   25   26   27   28   29   30   ...   72




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling