КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Основная концепция прерывания
ОБРАБОТКА ПРЕРЫВАНИЙ
Прерывние – это сигнал, заставляющий ПК менять обычный порядок исполнения потока команд. Возникновение сигнала прерываний обусловлено такими событиями, как завершение операции ввода-вывода, истечение заданного интервала времени, попытка деления на ноль.
Последовательность событий, происходящих в ответ на прерывание такова: Например, нажатие клавиши на клавиатуре. Клавиатура -стандартное устройство- ее основные функции не нуждаются в поддержке специальными системными программами- драйверами.Необходимое ПО для начала работы уже есть в микросхеме ПЗУ в составе BIOS, поэтому ПК реагирует на нажатие клавиш сразу после включения. Принцип действия клавиатуры заключается в следующем: 1 При нажатии на клавишу специальная микросхема,встроенная в клавиатуру,выдает скэн-код(вообще генерируется 2 байта- код ASCII и соответствующий скэн-код). 2 Скэн-код поступает в микросхему, выполняющую функции порта клавиатуры(порт- специальное аппаратно-логическое устройство, отвечающее за связь процессора с другими устройствами. Порт находится на основной плате внутри системного блока). 3 Порт клавиатуры выдает процессору прерывание с определенным номером (int 9h-interrupt). Это аппаратное прерывание. Его назначение - воспринять определенное количество клавишных действий и запомнить их в буфере.
Совместное действие прерываний 9h и 16h
Буфер воспринимает клавишные действия даже тогда, когда программа занята обработкой другой информации. 4 Получив прерывание, процессор откладывает текущую работу, и по номеру прерывания обращается в специальную область ОП, в которой находится так называемый вектор прерываний(ВП). ВП -это список адресов, nо этим адресам содержатся программы, которые должны обслуживать прерывания с заданным номером. 5 Далее процессор приступает к выполнению программы, обслуживающей данное прерывание. Простейшие программы обработки прерываний зашиты в ПЗУ, но пользователь может подставит вместо них свои программы обработки.Для этого надо изменить данные в векторе прерывания. 6 Программа- обработчик прерывания- направляет процессор к порту клавиатуры, где находится скэн-код, загружает его в свои регистры, а потом под управлением программы-обработчика определяет, какой код символа соответствует данному скэн-коду. 7 Далее обработчик прерываний отправляет полученный код символа в небольшую область памяти –буфер клавиатуры и прекращает свою работу, известив об этом процессор.
8 Процессор прекращает обработку прерываний и возвращается к отложенной задаче. 9 Введенный символ хранится в буфере клавиатуры до тех пор, пока его не заберет оттуда программа, для которой он предназначался, например, текстовый процессор. Для передачи символа из буфера в вашу программу требуется обслуживание программы-прерывания с номером INT16h, которая считывает символы из буфера. Итак, в точке прерывания управление автоматически передается на блок обработчика прерывания, который является частью ОС. Этот блок предназначен для выполнения некоторых действий в ответ на условие,вызвавшее прерывание. После завершения обработки управление может быть передано в точку программы, где возникло прерывание. В общем случае невозможно предсказать,когда и по какой причине программа А была прервана. За сохранность текущего состояния машины во время прерывания программы А,а также за его восстановлением, когда программа А будет продолжена,следят аппаратные и программные средства.Благодаря этому в случае прерывания НИЧТО за исключением времени не влияет на ее исполнение.
На самом деле Windowsрет на себя заботу не только о клавиатуре, но и о дисплее, портах, мыши, памяти и выполнении самой программы. Важно понимать, что Windows способна выполнять все, что она делает, благодаря своей аппаратуре. Только за счет управления аппаратурой Windowsожет делить экран на несколько окон, перехватывать ввод пользователя и распределять его в виде сообщений соответствующим приложениям. В рамках Windows приложение не может выводить свои данные непосредственно на экран, обрабатывать аппаратные прерывания или осуществлять вывод непосредственно на принтер. Вместо этого приложение использует функции Windows или ожидает соответствующих сообщений. С точки зрения приложения сообщение является уведомлением о том, что произошло некоторое событие, которое может требовать, а может и не требовать определенных действий. Таким событием может быть нажатие на клавишу, вызов пункта меню и тому подобное.
Подсистема управления памятью
Дата добавления: 2014-01-06; Просмотров: 931; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |