Задания на лабораторную работу

Напишите программы клиента и сервера, которые решая задачу вашего варианта лабораторной работы, работает в двух режимах:

1. Клиент запрашивает у пользователя режим работы и если этот режим — упаковка, запрашивает у пользователя слова состояния устройства и передает их по именованному каналу в сервер, который упаковывает их и передает по другому именованному каналу упакованное слово клиенту который выводит его на экран.

2. Клиент запрашивает у пользователя режим работы и если этот режим — распаковка, запрашивает у пользователя упакованное слово состояния устройства, то передает его по именованному каналу в сервер, который распаковывает его и передает по другому именованному каналу слова состояния клиенту который выводит их на экран.

Программа распаковки (сервер) должна быть откомпилирована в отдельном файле.

В программах должен быть предусмотрен вывод на экран промежуточных результатов (результатов распаковки и т.п.).

Должны быть реализованы проверки правильности выполнения всех операций с каналами.

В таблице 2 представлены форматы слова состоянии устройства в соответствии с вариантами индивидуальных заданий.

Таблица 2 — Форматы слова состояния устройства для вариантов индивидуальных заданий

вариант задание
№ разряда
значение H H T T T T T T T T T S S S S S
№ разряда
значение C C C C E I P K K K
№ разряда
значение N N N N E C C C C C C C C C P
№ разряда
значение D R R R R A A A A
№ разряда
значение P P P F F H H H H V V V
№ разряда
значение T T D N N N N N N N N N
№ разряда
значение S S S D F B B B B B B B B
№ разряда
значение U U U U U U U U R W E X
№ разряда
значение O O O O O C D N N N N N N N N N
№ разряда
значение G G G G G G G G S S S S P
№ разряда
значение C C C U U U U U E E E E E E B
№ разряда
значение D A A A B B B
№ разряда
значение D D D D D M M M M M Y Y Y Y Y Y
№ разряда
значение S S S S S M M M M M M H H H H H
№ разряда
значение F F F F F F F F R W L L L L L L
№ разряда
значение F F F F F F F F R W L L L L L L

Продолжение таблицы 2.

вариант задание
№ разряда
значение G G G G G G G G S S S S P
№ разряда
значение O O O O O O O O P L L L L L L
№ разряда
значение X X X X X X Y Y Y Y Y Y C C C C
№ разряда
значение C C F F D D D D D D D D D D D D
№ разряда
значение O A A R R R D D D D D D D D
№ разряда
значение N N N N P P P U U U U U U U U
№ разряда
значение N N N M M M L W W W W W W W W
№ разряда
значение S S S S S S D D D D D D C C C
№ разряда
значение T T T S S S S L L L L L L L L
№ разряда
значение C C P N N N N N N N

ТехническиЕ средствА ДЛЯ выполнения работы.

1. Компьютерный класс с установленными ОС WINDOWS и виртуальными машинами позволяющими запускать ОС Linux.

Порядок выполнения лабораторной работы

1. Произвести запуск виртуальной машины и загрузку в ней операционной системы LINUX.

2. Произвести регистрацию с именем пользователя и паролем, указанным преподавателем.

3. В меню «Устройства» виртуальной машины выбрать пункт «Общий буфер обмена» и настроить режим «Из основной в гостевую ОС»

4. Создать в пользовательском каталоге два пустых текстовых файла с расширением .с.

5. Перенести текстовые файлы с программами из приложений А и Б в созданные файлы.

6. Откомпилировать программы с помощью gcc (gcc имя.c -o имя).

7. Произвести запуск программы (./имя )

8. Ввести исходные данные и получить упакованное слово состояния устройства.

9. Создать и отладить программу, соответствующую варианту задания.

Содержание отчета о выполнении лабораторной работы

Отчёт должен содержать:

титульный лист;

— цель лабораторной работы;

— задание соответствующее варианту;

текст программы;

результаты работы программы;

— выводы.

Отчёт по лабораторной работе должен быть выполнен в соответствии требованиями ГОСТ.

Порядок защиты работы

Защита производится при наличии отчета за компьютером и состоит в демонстрации работы программы в соответствии с вариантом задания.

8. Контрольные вопросы

1. Что такое канал?

2. Что такое FIFO?

3. Как создать именованный канал??

4. Для чего служит файл метка FIFO?

5. С помощью какого системного вызова можно удалить файл?

6. С помощью какого системного вызова можно изменить права доступа текущего процесса?

7. Как организовать передачу данных от одного процесса другому через именованный канал?

8. С помощью каких системных вызовов можно организовать запись в файл, чтение из файла?

9. Каково назначение системного вызова open()?

10.Что представляет собой модель взаимодействия «клиент-сервер».

Access. Лабораторная работа 2. Часть 1 (задания 1 — 5)


Похожие статьи.

Понравилась статья? Поделиться с друзьями: