2.3 Структура модулей программы
Для достижения наибольшей эффективности работы программы, возможности контроля исключительных ситуаций и легкости внесения модификаций, при разработке программы применялись элементы концепции структурного программирования, что привело к необходимости выделять ряд модулей, содержащих функции, сгруппированные по выполняемым ими задачам.
Все модули программы можно разделить на несколько групп:
· Система инициализации - обеспечивает настройку всех систем и запуск сервера.
· Сервер - обеспечивает настройку сетевых средств, принятие входящих подключений и передачу данных.
· Система управления подключаемыми библиотеками - предоставляет серверному модулю интерфейс загрузки динамических библиотек и выполнения содержащихся в них функций.
· Система журналирования - предоставляет всем модулям интерфейс для записи событий во внешний файл (журнал).
· Система безопасности - обеспечивает управление учетными записями и проверку авторизации пользователя.
· Динамические библиотеки - подключаются во время работы программы по запросам и реализуют получение системной информации.
· Дополнительные модули - содержат вспомогательные функции.
Системы и их взаимодействие представлены на рисунке 3.1:
- 1. Исследовательский раздел
- 1.1 Постановка задачи
- 1.2 Передача данных
- 1.2.1 Протоколы передачи данных
- 1.3 Системная информация ОС Linux
- 1.3.1 Расположение системной информации
- 1.3.2 Файловая система /proc
- 2. Технологический раздел
- 2.1 Выбор языка программирования
- 2.2. Программные средства
- 2.2.2 Семафоры и мьютексы
- 2.3 Структура модулей программы
- 2.3.1 Система инициализации
- 2.3.2 Сервер и система управления динамическими библиотеками
- 2.3.3 Система журналирования
- 2.4 Динамические библиотеки
- 2.4.1 PROCESSES - информация о процессах
- 2.4.2 MEMINFO - информация о системной памяти
- 2.4.3 DISKFREE - информация о свободном месте на дисках
- 2.4.4 NETWORK - информация о сетевых устройствах
- 2.4.5 VERSION - версия операционной системы
- 2.4.6 INDEX - страница помощи
- 2.5 Использование программы
- 2.5.1 Настройка сервера
- 2.5.2 Доступ к серверу
- 2.5.3 Завершение работы сервера