
- •«Московский технический университет связи и информатики»
- •Отчёт по курсовой работе
- •Задание на курсовую работу
- •1 Введение
- •2 Постановка задачи
- •3 Теоретические основы разрабатываемой темы
- •4 Разработка и описание алгоритма работы приложения
- •5 Описание структуры программы
- •6 Результат работы программы
- •7 Заключение
- •Список использованных источников
- •Приложение
5 Описание структуры программы
Модули:
Для клиента:
iostream - модуль iostream предоставляет средства для ввода и вывода данных в стандартном потоке, что позволяет работать с консольным вводом и выводом.
sys/socket.h – для работы с сокетами.
arpa/inet.h - предоставляет функции для работы с интернет-адресами, такие как inet_addr().
unistd.h - предоставляет доступ к API операционной системы POSIX, включая функции для ввода/вывода файлов, управления процессами и других системных операций.
cstring - предоставляет доступ к различным функциям обработки строк.
Для сервера 1 и 2:
iostream - модуль iostream предоставляет средства для ввода и вывода данных в стандартном потоке, что позволяет работать с консольным вводом и выводом.
unistd.h - предоставляет доступ к API операционной системы POSIX, включая функции для ввода/вывода файлов, управления процессами и других системных операций.
cstring - предоставляет доступ к различным функциям обработки строк.
sys/socket.h – для работы с сокетами.
fcntl.h - предоставляет функции для управления файловыми дескрипторами.
sys/sysinfo.h - содержит структуры и функции для получения информации о системе, такой как загрузка процессора, объем свободной и используемой памяти.
ctime - предоставляет функции для работы с временем и датами, включая преобразование времени в строковый формат и получение текущего времени.
pthread.h - для работы с потоками в C/C++.
netinet/in.h - определяет структуры и константы для работы с интернет-протоколами, такими как TCP и UDP. Он включает в себя определения для работы с IP-адресами и портами.
sys/resource.h - предоставляет функции для управления ресурсами системы, такими как лимиты на использование процессорного времени, памяти и других ресурсов.
sstream - предоставляет классы для работы с потоками строк.
Для сервера логирования:
sys/stat.h - предоставляет функции и структуры для получения информации о атрибутах файлов.
string - для работы с текстовыми данными.
iostream - модуль iostream предоставляет средства для ввода и вывода данных в стандартном потоке, что позволяет работать с консольным вводом и выводом.
fstream - предоставляет классы для работы с файловыми потоками, позволяя выполнять операции чтения и записи в файлы.
unistd.h - предоставляет доступ к API операционной системы POSIX, включая функции для ввода/вывода файлов, управления процессами и других системных операций.
Функции:
Для клиента:
handleServer1 – для взаимодействия с сервером 1
handleServer2 – для взаимодействия с сервером 2
connectToServer1 – для подключения к серверу 1
connectToServer2 – для подключения к серверу 2
Для сервера 1:
logEvent – для логирования событий
getHostname – для получения имени компьютера
getUsername – для получения имени пользователя
getFreeMemory – для получения свободной физической памяти
getCurrentTime – для получения времени
handleClient – для обработки клиента
Для сервера 2:
logEvent – для логирования событий
getProcessPriority – для получения приоритета процесса
getThreadId – для получения идентификатора потока
getCurrentTime – для получения времени
handleClient – для обработки клиента
Для сервера логирования:
logMessage – для записи событий в файл логирования