Техническое Описание (КП - регистратор событий)

2017-12-28СтудИзба

Описание файла

Файл "Техническое Описание" внутри архива находится в следующих папках: КП - регистратор событий, Регистратор событий по прерыванию на экран. Документ из архива "КП - регистратор событий", который расположен в категории "". Всё это находится в предмете "системное программирование" из 5 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "системное программирование" в общих файлах.

Онлайн просмотр документа "Техническое Описание"

Текст из документа "Техническое Описание"

Московский государственный технический университет им. Н.Э. Баумана

Утверждаю:

Большаков С.А. "__"_____________2002 г.

Курсовая работа по системному программированию

“Регистратор событий по прерыванию на экран”

техническое описание

(вид документа)

писчая бумага

(вид носителя)

5

(количество листов)

Исполнитель:

студент группы ИУ5-54

Терентьев Д.Б.

____________________

"__"___________2002 г.







Москва - 2002

СОДЕРЖАНИЕ

  1. ОБЩИЕ СВЕДЕНИЯ О ПРОГРАММНОМ ОБЕСПЕЧЕНИИ…………………………. 3

  2. МОДУЛЬНАЯ СТРУКТУРА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ…………………… 3

  3. ОПИСАНИЕ МОДУЛЕЙ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.………………………. 3

  4. ДАННЫЕ И ФАЙЛЫ ДАННЫХ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ……………….. 3

  5. ОСНОВНЫЕ АЛГОРИТМЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ…………………… 4

  6. ПРОЦЕДУРЫ И ФУНКЦИИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ…………………… 4

  7. ВЕКТОРА ПРЕРЫВАНИЙ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ…………………….. 6

1. ОБЩИЕ СВЕДЕНИЯ О ПРОГРАММНОМ ОБЕСПЕЧЕНИИ

Язык программирования: Ассемблер

Компилятор: Turbo Assembler Version 4.1 Copyright (c) 1988, 1996 Borland International

Компоновщик: Turbo Link Version 7.1.30.1. Copyright (c) 1987, 1996 Borland International

Размер исполняемого файла (log.com) 1186 байта.

Размер резидентной части программы 986 байт.

2. МОДУЛЬНАЯ СТРУКТУРА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Программа состоит из трёх модулей исходного кода:

-основной модуль;

-модуль резидентной части;

-модуль загружающей части;

Основной модуль последовательно с помощью директивы INCLUDE включает в себя модуль резидентной части и модуль загружающей части.

Программа состоит из одного исполняемого модуля (LOG.COM).

3. ОПИСАНИЕ МОДУЛЕЙ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

3.1. Описание основного модуля

Файл основного модуля – Log.asm

Основной модуль содержит в себе основную программу (main). Он предназначен для объединения модулей резидентной и загружающей частей.

3.2. Описание модуля резидентной части

Файл модуля резидентной части – Resident.asm

В модуле резидентной части содержатся новые обработчики прерываний 2Dh и 21h. Новый обработчик прерывания 21h выполняет работу по выводу сообщений о создании и удалении файлов в системе. Новый обработчик прерывания 2Dh используется в качестве мультиплексного прерывания и необходим для загрузки и выгрузки программы.

Кроме того, этот модуль содержит в себе процедуры, необходимые для работы новых обработчиков прерываний: PrintStr и CRLF.

3.3. Описание модуля загружающей части

Файл модуля загружающей части – Init.asm

Назначение модуля загружающей части – загружать и выгружать резидентную часть программы по требованию пользователя.

В модуле загружающей части содержится процедура загрузки резидентной части программы в память (Init).

4. ДАННЫЕ И ФАЙЛЫ ДАННЫХ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Данные резидентной части

Old_21h

DWORD

Адрес старого обработчика прерывания 21h (прерывание DOS)

Old_2Dh

DWORD

Адрес старого обработчика прерывания 2Dh (используемого в качестве мультиплексного)

MesCRLF

Byte Array

Символы возврата каретки и перевода строки

MesNew

Byte Array

Сообщение ‘Внимание! Был создан новый файл: ’

MesTemp

Byte Array

Сообщение ‘Внимание! Был создан временный файл в каталоге: ’

MesDel

Byte Array

Сообщение ‘Внимание! Был удален файл: ’

Данные нерезидентной (инициализирующей) части

UnloadFlag

Byte

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

Temp_21h

DWORD

Временный адрес обработчика прерывания 21h (прерывание DOS)

Temp_2Dh

DWORD

Временный адрес старого обработчика прерывания 2Dh (используемого в качестве мультиплексного)

MesLoaded

Byte Array

Сообщение о том, что программа загружена резидентно в память

MesLoaded

Byte Array

Сообщение о том, что программа успешно выгружена из памяти

MesWrongParam

Byte Array

Сообщение о неверном параметре командной строки

MesHelp

Byte Array

Строка с подсказкой по использованию данной программы

MesOtherLoaded

Byte Array

Сообщение о невозможности выгрузки программы из памяти

  1. ОСНОВНЫЕ АЛГОРИТМЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

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

  1. Проверить командную строку на присутствие параметров

  2. Проверить загружена ли программа в память

  3. Если отсутствуют параметры, а программа загружена – выгрузка

  4. Если отсутствуют параметры, а программа незагружена – загрузить резидентную часть программы в память

  5. Если отсутствуют параметры, а программа загружена – проверить, не переопределены ли вектора прерываний другой программой

  6. Если вектора переопределены – ошибка

  7. Если вектора не переопределены – выгрузить резидентную часть программы

6. ПРОЦЕДУРЫ И ФУНКЦИИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Название

Входные данные

Выходные данные

Описание

New_2Dh

AH=0C8h

AL=00h| AL=01h

AL=0FFh | AL=99h

Если AH==0C8h и AL==00h, то устанавливает AL в 0FFh и завершает обработку прерывания, возвращая управление пользователю.

Если AH==0C8h и AL==01h, то восстанавливает старые обработчики прерываний.

Если AH и AL содержат какие-либо другие значения – просто вызывает старый обработчик данного прерывания.

New_21h

AH=3Ch| AH=5Bh |

AH=5Ah |

AH=41h |

AX=7141h |

AX=716Ch

Выведено сообщение или нет

Если AH=3Ch | AH=5Bh | AH=5Ah | AH=41h | AX=7141h | AX=716Ch , то выводится соответствующее сообщение о создании или удалении файла. Потом вызывает старый обработчик данного прерывания.

Если не одно из условий не выполнено - просто вызывает старый обработчик данного прерывания.

CreateFile

Адрес имени файла в DS:BX

Вывод сообщения

Выводится сообщение о создании файла, содержащее имя этого файла. Выводится символ перевода строки.

CreateTempFile

Адрес пути к файлу в DS:BX

Вывод сообщения

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

DeleteFile

Адрес имени файла в DS:BX

Вывод сообщения

Выводится сообщение об удалении файла, содержащее имя этого файла. Выводится символ перевода строки.

PrintStr

Адрес строки в DS:BX

Вывод строки

Выводится строка символов средствами BIOS.

CRLF

Нет

Вывод символа перевода строки

Выводится символ перевода строки средствами BIOS.

Init

Командная строка

Загрузка программы в память, выгрузка программы из памяти или сообщение об ошибке

См. описание алгоритма процедуры Init

CheckOther

Адреса векторов прерываний и адреса новых процедур обработки прерываний

Вывод сообщения

Если адреса векторов прерываний и адреса новых процедур обработки прерываний, то вывод сообщения об ошибке и выход из программы.

SaveOldVectors

Адреса векторов прерываний

Old_2Dh

Old_21h

Адреса векторов прерываний сохраняются в Old_2Dh и Old_21h

SetNewVectors

Адреса новых процедур обработки прерываний

Новые процедуры обработки прерываний для векторов 21h и 2Dh

Для прерываний 21h и 2Dh устанавливаются новые процедуры обработки прерываний

CmdLine

Командная строка

Вывод сообщения

Если в командной строке имеется неизвестный ключ, то выводится сообщение об ошибке. А если имеется ключ ‘/?’, то выполняется соответствующее действие. См. процедуру ScanHelp.

ScanUnload

Командная строка

UnloadFlag

Если в командной строке нет параметров, то UnloadFlag:=1 иначе UnloadFlag:=0.

ScanHelp

Командная строка

Вывод справки о программе

Если в командной строке имеется ключ ‘/?’, то выводится справка по работе с программой и программа завершается

Help

Нет

Вывод справки о программе

Выводится справка по работе с программой и программа завершается

7. ВЕКТОРА ПРЕРЫВАНИЙ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

21h - прерывание DOS

2Dh - прерывание, используемое в качестве мультиплексного

6


Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5160
Авторов
на СтудИзбе
439
Средний доход
с одного платного файла
Обучение Подробнее