КУРСОВА РОБОТА з дисципліни Операційні системи ЗАВДАННЯ НА ВИКОНАННЯ КУРСОВОЇ РОБОТИ Розробка додатків з використанням різних бібліотек та технологій

НАЦІОНАЛЬНИЙ АВІАЦІЙНИЙ УНІВЕРСИТЕТ

Інститут інформаційно-діагностичних систем

Кафедра безпеки інформаційних технологій

 

КУРСОВА РОБОТА

(ПОЯСНЮВАЛЬНА ЗАПИСКА)

з дисципліни «Операційні системи»

Тема: Windows-додаток Інтернет-пейджера по типу ICQ

 

Виконала: студентка 331 групи ІІДС

Дімнич А.М.

Перевірив: доцент кафедри БІТ, к.т.н.

Ковтун В.Ю.

 

 

Київ 2012


НАЦІОНАЛЬНИЙ АВІАЦІЙНИЙ УНІВЕРСИТЕТ

Інститут інформаційно-діагностичних систем

Кафедра безпеки інформаційних технологій

 

ЗАВДАННЯ НА ВИКОНАННЯ КУРСОВОЇ РОБОТИ

студентки Дімнич Анастасії Михайлівни

Загальне завдання

Розробка додатків з використанням різних бібліотек та технологій, орієнтованих на використання спеціальних (особливих) можливостей операційних систем

Індивідуальне завдання

Варіант 3

Розробити сервер Windows-додаток Інтернет-пейджера по типу ICQ.

1. Термін виконання: з 01.02.2012р. по 30.05.2012р.

2. Етапи виконання:

· огляд роботи сервера ICQ;

· розробка алгоритму інтернет-пейджера по типу ICQ;

· розробити протокол взаємодії сервера та клієнта;

· розробити сервер додатка;

· тестування додатка;

· проведення експерименту.

3. Завдання видав___________(Ковтун В.Ю.) «___»___________2012р.

4. Завдання прийняла на виконання___________(Дімнич А.М.)

Курсовий проект захищений з оцінкою_______________________

РЕФЕРАТ

· кількість сторінок – ; · рисунків – ; · таблиць – ;

ЗМІСТ

РЕФЕРАТ.................................................................................................... 3

ЗМІСТ.......................................................................................................... 4

СПИСОК ТЕРМІНІВ ТА СКОРОЧЕНЬ.................................................... 5

ВСТУП......................................................................................................... 6

РОЗДІЛ 1 Інтернет пейджер типу ICQ....................................................... 7

1.1. Можливості ICQ............................................................................ 7

1.2. Специфікація протоколу ICQ........................................................ 8

1.3. Комунікація між сервером та клієнтом........................................ 9

1.4. Повідомлення від клієнта серверу.............................................. 12

1.5. Комунікація між двома клієнтами.............................................. 14

РОЗДІЛ 2 Алгоритм програми................................................................. 16

2.1. Загальний вигляд алгоритму додатка сервера.......................... 16

2.2. Алгоритм циклічної передачі даних........................................... 17

2.3. Алгоритм перекодування даних................................................. 17

РОЗДІЛ 3 Особливості реалізації............................................................. 19

3.1. Вибір мови та середовища програмування............................... 19

3.2. Архітектура додатка на базі сокетів........................................... 20

3.3. Протокол взаємодії додатків клієнта та сервера....................... 23

3.4. Основні бібліотеки, використані в програмі.............................. 24

ВИСНОВКИ.............................................................................................. 27

ДОДАТОК А Інструкція по роботі з додатком....................................... 28

ДОДАТОК Б Тестування програми......................................................... 30

СПИСОК ТЕРМІНІВ ТА СКОРОЧЕНЬ

Інтернетпейджер - це програма для обміну миттєвими повідомленнями через комп’ютерні мережі в режимі реального часу. Клієнт-сервер (англ. Client-server) – обчислювальна або мережева архітектура,… Клієнт (англ. Client) — комп’ютер (або програма), що використовує ресурси, надані іншим комп'ютером (або програмою),…

ВСТУП

В даний час багато додатків використовують для обміну даними відкриті канали зв'язку, і перш за все Internet. Для користувачів часто першочерговою метою є надійність передачі повідомлень та її швидкість. Саме тому сьогодні є актуальною тема розробки додатків, які б підтримували функцію миттєвої передачі повідомлення в мережі. Також виникає необхідність користувачів знати, хто з інших клієнтів додатка є підключеним на даний момент для визначення можливості миттєвого обміну повідомленнями.

Метою роботи є розробка сервера додатку по типу Інтернет-пейджера ICQ, який забезпечує пересилання даних між користувачами в мережі.

Предметом дослідженняє мережевий обмін інформацією між клієнтами в ОС Windows.

Об’єктом дослідження є процес мережевого обміну інформацією між клієнтами в ОС Windows.

Актуальність теми курсового проектувизначається необхідністю миттєвої передачі текстових повідомлень в мережі.

РОЗДІЛ 1 Інтернет пейджер типу ICQ

ICQ– це комунікаційна програма для передачі повідомлень в мережі. В основі її роботи лежить метод збереження всіх повідомлень, що надсилаються… · передавати повідомлення напряму між двома програмами ICQ; · передавати такі повідомлення через сервер компанії Mirabilis, якщо по якійсь причині неможливо передати напряму; …

РОЗДІЛ 2 Алгоритм програми

2.1. Загальний вигляд алгоритму додатка сервера Блок-схема показує етапи створення сокету, очікування клієнта, підключення…  

РОЗДІЛ 3 Особливості реалізації

Вибір мови та середовища програмування

Мова C# розроблялася як мова програмування прикладного рівня для CLR, і як така, залежить, насамперед, від можливостей самої CLR. Це стосується,… MicrosoftVisualStudio - лінійка продуктів компанії Майкрософт, що включають…

Архітектура додатка на базі сокетів

Клієнт-сервер – це вид розподіленої системи, в якій є сервер, що виконує запити клієнта, причому сервер і клієнт спілкуються між собою з… Сокети (англ. socket поглиблення, гніздо, роз'єм) - це назва програмного… Сокет – це один кінець двостороннього каналу зв’язку між двома програмами, які працюють в мережі. Реалізація сокетів…

Протокол взаємодії додатків клієнта та сервера

Якщо сервер отримує повідомлення про те, що з’явився новий клієнт (Command.Login), то записуємо його у список користувачів онлайн… Якщо клієнт відключається, сервер отримує про це повідомлення… Новому клієнту сервер відсилає список всіх користувачів онлайн (msgToSend.strMessage += client.strName +…

Основні бібліотеки, використані в програмі

BitConverter – перетворює базові типи даних в масив байтів і масив байтів в базові типи даних. Enum – надає базовий клас для перечислень. EventArgs – це базовий клас для класів, які містять дані про події.

ВИСНОВКИ

1. Була освоєна архітектура «клієнт – сервер» на основі асинхронних сокетів протоколу ТСР. 2. Було освоєно методи обміну повідомленнями та методи передачі файлів. 3. Досліджена робота інтернет пейджера ICQ.

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ

2. Огляд програми ICQ. URL: http://iserverd.khstu.ru/docum_ext/icqkurs.htm#6 3. Эндрю Кровчик, Винод Кумар, Номан Лагар Сетевое програмирование для… 4. Форум програмістів. URL: http://www.codenet.ru/

ДОДАТОК А Інструкція по роботі з додатком

Для роботи додатка необхідно, щоб був завантажений додаток сервера. Користувач повинен запустити клієнтський додаток, в перше поле ввести свій…

ДОДАТОК Б Тестування програми

Тестування проводилося на ПК з ОС Windows 7. Тип системи – 32-розрядна ОС. Процесор , частота GHz. Об’єм оперативної пам’яті - ГБ.

Для тестування було запущено віртуальну машину VMware Workstation з встановленими на ній ОС Windows 7, Windows XP. Додаток сервера був запущений на ОС Windows XP, додатки клієнтів на обох ОС на віртуальній машині та на основній робочій ОС комп’ютера.

Запуск додатка сервера

Додаток сервера, запущений на ОС Windows XP:

Запуск додатка клієнта

Реєстрація нового клієнта на ОС Windows 7. В полі ІР серверу вказуємо ІР серверу, запущеного на ОС Windows ХР.

 

Вікно клієнта онлайн виглядає так:

Поява нових клієнтів

При появі нових клієнтів у кожного користувача оновлюється список, розташований в правій частині вікна:

Оновлення лога сервера при появі нових клієнтів онлайн:

Пересилання повідомлень

Користувач отримав повідомлення:

Вихід з програми

Якщо будь-який користувач виходить з додатка, він автоматично видаляється зі списку тих, хто онлайн у всіх інших користувачів. Також це фіксується на сервері: