Отчет по лабораторной работе №4 по курсу «Операционные системы»
Федеральное агентство по образованию РФ
Государственное образовательное учреждение
высшего профессионального образования
«ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Факультет автоматики и вычислительной техники
Кафедра информатики и проектирования систем
«ПРАКТИЧЕСКОЕ ЗНАКОМСТВО С ПРОЦЕССАМИ, ПЕРЕДАЧЕЙ ДАННЫХ МЕЖДУ ПРОЦЕССАМИ И ИХ СИНХРОНИЗАЦИЕЙ»
Отчет по лабораторной работе №4
по курсу «Операционные системы»
Студент группы 8В72 ___________________ М. В. Шевчик
Проверил ассистент ___________________ Д. В. Сидоров
Томск 2010
Цель работы
Практическое знакомство с объектом процесс, основными механизмами передачи данных между процессами, а так же синхронизацией взаимодействующих процессов в ОС Unix.
Задание
Изучить базовые возможностей оболочки bash ОС Unix по управлению процессами (заданиями). Разработать приложения реализующие схему «клиент» - «сервер» с использованием средств межпроцессного взаимодействия: семафоров, разделяемой памяти, программных каналов и одной очереди сообщений.
Выполнение работы
2. Запустить несколько заданий (например, команд просмотра файлов less), возвращаясь в командную строку комбинацией клавиш Ctrl-Z и изучить действие команд ps, jobs, fg, bg, kill, killall.
Команда ps выдает список протекающих в настоящее время процессов
Команда jobs выдает список процессов, запущенных пользователем.
Команды fg и bg служат для возобновления приостановленного процесса соответственно на «переднем плане» или в фоновом режиме.
Команда kill служит для уничтожения процессов, а killall – для завершения процессов по имени.
Задание 3. Обеспечить синхронизацию процессов и передачу данных между ними на примере приложения «клиент» - «сервер», создав два процесса (два исполняемых файла) – процесс «клиент» (первый исполняемый файл) и процесс «сервер» (второй исполняемый файл). Обеспечить с помощью механизмов межпроцессного взаимодействия передачу информации от «клиента» к «серверу» и, наоборот, в качестве типа передаваемой информации можно использовать: данные, вводимые с клавиатуры; данные, считываемые из файла; данные, генерируемые случайным образом и т. п.
4. Обмен данными между процессами «клиент»-«сервер» осуществить следующим образом:
с испоьзованием программных каналов (именнованых либо неименнованых, ПУП);
с использованием (ПУП) одного из перечисленных вариантов:
разделяемая память (обязательна синхронизация процессов, например с помощью семафоров);
очередь сообщений.
Вывод
Изучен объект процесс, основные механизмы передачи данных между процессами, такие, как очереди сообщений, сегменты разделяемой памяти и каналы, а также синхронизация взаимодействующих процессов в ОС Unix посредством семафоров.
страница 1
скачать
Другие похожие работы: