reforef.ru 1
Задание на курсовую работу


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

Минимальный функционал сервера:

- создание заданного средства коммуникации;

- получение данных от клиента;

- вывод полученных данных на экран.

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

Таблица 1. Задание на курсовую работу

№ варианта

Способ коммуникации

Клиент 1 определяет и передает

Клиент 2 определяет и передает

1, 19

отображение файлов

- имя компьютера, имя пользователя;

- версию операционной системы;


- процент используемой физической памяти;

- процент используемой виртуальной памяти;

2 , 20

почтовые ящики

3, 21

каналы

4, 22


отображение файлов

- системные цвета (для 2-3-х элементов);

- код раскладки клавиатуры;

- идентификатор текущего процесса;
- дескриптор текущего процесса;


5 , 23

почтовые ящики

6, 24

каналы

7, 25

отображение файлов

- текущее местное время

- продолжительность текущего сеанса работы;

- приоритеты серверного и клиентских процессов;
- дельта-приоритеты их потоков;



8 , 26

почтовые ящики

9, 27

каналы

10, 28

отображение файлов

- количество клавиш мыши;

- наличие колеса прокрутки;

- размер файла подкачки в байтах;

- количество свободных байтов файла подкачки;


11, 29

почтовые ящики

12, 30

каналы

13, 31

отображение файлов

- ширину и высоту рамки окна;

- ширину и высоту экрана;

-количество потоков серверного и клиентских процессов;
- количество модулей серверного и клиентских процессов;


14, 32

почтовые ящики

15, 33

каналы

16, 34


отображение файлов

- код последней ошибки;

- текущее положение каретки;


- полное имя модуля текущего процесса;
- идентификаторы серверного и клиентских процессов;


17, 35

почтовые ящики

18, 36

каналы