110 likes | 285 Views
СИСТЕМА АВТОМАТИЗИРОВАННОГО ОПОВЕЩЕНИЯ ПОЛЬЗОВАТЕЛЕЙ В ЛОКАЛЬНОЙ СЕТИ. Давыдова Мария, лицей № 1580. ЦЕЛЬ РАБОТЫ. Разработка программного комплекса для автоматизации отправки текстовых сообщений пользователям локальной сети. ТРЕБОВАНИЯ К КОМПЛЕКСУ.
E N D
СИСТЕМА АВТОМАТИЗИРОВАННОГО ОПОВЕЩЕНИЯ ПОЛЬЗОВАТЕЛЕЙ В ЛОКАЛЬНОЙ СЕТИ Давыдова Мария, лицей№1580 ЦЕЛЬ РАБОТЫ Разработка программного комплекса для автоматизации отправки текстовых сообщений пользователям локальной сети ТРЕБОВАНИЯ К КОМПЛЕКСУ • Работа под управлением MS-DOS и поддержка протокола Novell IPX • Работа на маломощных компьютерах и сетях с невысокой пропускной способностью • Надежность и простота использования • Психологическая ненавязчивость интерфейса 1
AРХИТЕКТУРА КОМПЛЕКСА ПРИНЦИПЫ ПОСТРОЕНИЯ КОМПЛЕКСА • Независимость компонентов комплекса • Наличие единого протокола взаимодействия между компонентами • Максимально возможное разделение функций компонентов • Централизованное управление компонентами Сервер(MSGSend) Клиент(MSGShow) Локальнаясеть Протокол VSMP Протокол VSMP Другой компонент Локальнаясеть Локальнаясеть Протокол VSMP 2
КЛИЕНТСКАЯ ЧАСТЬ • Перехват прерываний • Менеджмент памяти • Контроль копий компонента на отдельной рабочей станции • Динамическое перепрограммирование знакогенератора • Работа с видеопамятью напрямую • Изменение видеорежима • Сохранение/восстановление регистров CRT-контроллера • Поддержка протокола IPX • Поддержка внутреннего протокола комплекса СТРУКТУРА КОМПОНЕНТА ФУНКЦИИ МОДУЛЕЙ Клиент Загрузочный модуль Модуль работы со знакогенератором Модуль работы с видеоадаптером Протокол 3
СЕРВЕРНАЯ ЧАСТЬ СТРУКТУРА КОМПОНЕНТА ФУНКЦИИ МОДУЛЕЙ Сервер • Контроль всех копий MSGShow и станций, на которых они запущены Модуль контролясостояния комплекса • Разбор входного файла • Менеджмент сообщений между станциями Модуль отправкисообщения • Многоуровневый дамп состояния протокола и статистики пакетов • Печать текущего состояния объектов компонента Модуль контроля состояния комплекса • Поддержка протокола IPX • Поддержка внутреннего протокола комплекса Протокол 4
1 2 3 4 5 6 7 8 9 . . . . . . 82 83 01 09 H e l l o ! ПРОТОКОЛ VSMP <00> SAP: Сервисный пакет Сервер Клиент INITRQ: Запрос на инициализацию <01> <02> ATTACH: ID этой копии MSGShow MSGRQ: Запрос на новое сообщения <03> <01> MSG: Новое сообщение..... …..DETACH: Отсоединение от MSGSend <02> ФОРМАТ ПАКЕТА С ДАННЫМИ • Текст сообщения • Дополнительная информация (ID или начало сетевого адреса) • Код пакета 5
ИЗМЕНЕНИЕ ВИДЕОРЕЖИМА Регистр начала вертикального гашения луча CRTC + вертикальный размер символа Регистр длительности участка отображения в кадре Vertical Blanking StartRegister + вертикальный размер символа Vertical Display EndRegister Регистр начала вертикального обратного хода луча Vertical Retrace StartRegister + вертикальный размер символа / 2 Регистр вертикального размера символа Maximum Scan Lines Register 6
РАБОТА СО ЗНАКОГЕНЕРАТОРОМ 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 10000000 11100000 00111000 00000000 11000000 10110000 01101100 10000000 01100000 10000000 01100000 00011000 11000110 10000000 01100000 00011000 11000110 10000000 11100000 00011000 11000110 10000000 01100000 11111000 11111110 10000000 01100000 00011000 11000110 10000000 01100000 00011000 11000110 10000000 01100000 00000000 00000000 00011000 11000110 00000000 00000000 00011000 11000110 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ASCII код 0ffh ASCII код 0ffh ASCII код 0ffh ASCII код 065h 7
Клавиатура DOS MUX DOS Safe Video BIOS Таймер int 28h int 10h int 08h int 2Fh int 09h Манипуляции со знакогенератором, VSMP Инсталляция, разбор командной строки Контроль внешних попыток изменить видеорежим Безопасное обращение в функциям DOS Поддержка управляющих клавиш ЗАГРУЗОЧНЫЙ МОДУЛЬ • перехват прерываний - сохранение вектора старого ISR - установка нового вектора ISR • завершение программы резидентом Инсталляция Вызов прерывания • выполнение нового обработчика • вызов старого обработчика • восстановление векторов ISR • освобождение памяти Завершение работы ПЕРЕХВАТЫВАЕМЫЕ ПРЕРЫВАНИЯ
ДИАГРАММА НАСЛЕДОВАНИЯ КЛАССОВ CЕРВЕРА CObj CDump CList CNode CRecord CNet CInfo CList<CNode> CList<CRecord>
РЕАЛИЗАЦИЯ ПРОТОКОЛА VSMP СТРУКТУРА ПРОТОКОЛА ФУНКЦИИ МОДУЛЕЙ Протоколы • Реализация асинхронной работы с пакетами данных • Реализация механизма таймаутов для минимизации потерь данных при передаче Надстройка над протоколом IPX • Обработка приходящих пакетов согласно внутреннему протоколу Внутренний протоколVSMP • Инициализация и вызов функций IPX для языка С++ • Инициализация и вызов функцийIPX для языка ассемблера Библиотеки поддержки IPX
ВЫВОДЫ РЕЗУЛЬТАТЫ РАБОТЫ • Разработан модульный масштабируемый программный комплекс для автоматизации оповещения пользователей в локальной сети • Клиентская программа работает в модифицированном видеорежиме на дополнительной текстовой строке • Используется динамическое переопределение знакогенератора • Разработан открытый протокол VSMP и библиотека поддержки VSMP-over-IPX • Разработаны библиотеки поддержки протокола IPX НАПРАВЛЕНИЯ ДАЛЬНЕЙШИХ РАЗРАБОТОК • Разработка и поддержка VSMP API • Разработка серверной части под ОС Novell (MsgSend.NLM) • Разработка версии протокола и соответствующего компонента для обмена личными сообщениями между пользователями • Поддержка других сетевых протоколов, прежде всего TCP/IP • Разработка клиентской части под ОС Windows 8