Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС_курсач.docx
Скачиваний:
0
Добавлен:
31.08.2025
Размер:
1.25 Mб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ

КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования

«Московский технический университет связи и информатики»

(МТУСИ)

Кафедра «Системное программирование»

Пояснительная записка

К курсовой работе

по дисциплине

«Операционные системы»

Выполнил:

Проверил:

Задание

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

Многозадачное приложение реализуется на основе технологии «клиент-сервер» средствами интегрированной среды разработки Microsoft Visual Studio/Visual C++, по согласованию с преподавателем возможно использование других компиляторов и языков программирования. Процессы 1 и 2 выступают как серверы приложений, третий процесс является их клиентом. Обмен данными между клиентами и серверами осуществляется при помощи сокетов.

И клиентский, и серверные процессы оформляются как отдельные приложения, запускаются и завершают работу независимо друг от друга. Серверы должны быть многопоточными, то есть допускать одновременное подключение нескольких клиентов. Серверные процессы по запросу получают системную информацию в соответствии с вариантом задания и передают ее клиенту. На стороне клиента необходимо реализовать интерфейс, позволяющий пользователю подключиться по выбору к первому или второму серверу, а также возможность раздельного получения и отображения данных по каждому из пунктов индивидуального задания.

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

Системная информация:

Первый сервер:

  • Размер окна серверного процесса

  • Количество мониторов

Второй сервер:

Содержание

Задание 2

Введение 4

Основная часть 5

Заключение 16

Список использованных источников 17

Приложение 18

Введение

Клиент-серверная архитектура представляет собой модель организации вычислительных систем, в которой задачи распределяются между клиентами и серверами. В этой архитектуре клиенты обращаются к серверам с запросами на услуги или ресурсы, а серверы отвечают, предоставляя необходимые данные или функциональность. Такая модель обеспечивает удобство масштабирования и гибкость взаимодействия между различными компонентами. Клиент-серверные приложения лежат в основе современных сетей благодаря своей универсальности и способности обеспечивать взаимодействие между элементами распределённых систем.

В Linux разработка многозадачных клиент-серверных приложений основывается на использовании стандартных механизмов межпроцессного взаимодействия. Одним из ключевых инструментов для этого являются сокеты, которые обеспечивают универсальный и эффективный способ обмена данными между процессами, независимо от того, находятся ли они на одной машине или взаимодействуют через сеть.

Целью данной курсовой работы является углубление теоретических знаний в области современных операционных систем и приобретение практических навыков разработки клиент-серверных приложений в среде GNU/Linux с использованием стандартных механизмов межпроцессного взаимодействия. В ходе работы, при разработке серверного и клиентского приложений, будут изучены механизмы обмена данными в Linux, средства синхронизации процессов и потоков, функции API, а также возможности получения системной информации о процессах, потоках и состоянии памяти. Кроме того, будет рассмотрен практический аспект применения этих механизмов.