Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Операционные системы. Часть 2.pdf
Скачиваний:
10
Добавлен:
05.02.2023
Размер:
6.54 Mб
Скачать

193

5.5 Лабораторная работа по теме №11

Данная лабораторная работа опирается на теоретический материал первой части данного методического пособия. Она посвящена вопросам практического использования разделяемых сегментов памяти и передачи сообщений.

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

С другой стороны, технология передачи сообщений имеет свои внутренние средства синхронизации, поэтому применение ее значительно проще.

Учитывая эти обстоятельства, лабораторная работа разделена на две части:

первая часть посвящена примерам использования разделяемых сегментов

памяти в двух вариантах: с учетом необходимости синхронизации доступа к ним и без необходимости такого учета;

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

Замечание

Главная практическая цель, которую должен усвоить студент выполняющий лабораторную работу №11 — эффективность применения средств пакета IPC по сравнению с базовыми средствами управления процессами, изученными в теме №9.

5.5.1 Задачи с разделяемыми сегментами памяти

Учебный материал данного подраздела предполагает, что студент успешно освоил часть технологии пакета IPC, изложенной в теме №10.

Задание 5.1

Изучить теоретический материал, изложенный в подразделах 5.1 и 5.2 данного методического пособия.

Всреде разработки Eclipse: создать проект с именем lab11.1, набрать и отладить программу по тексту листинга 5.1.

Всреде разработки Eclipse: создать проект с именем lab11.2, набрать и отладить программу по тексту листинга 5.2.

Скопировать исполняемые файлы проектов в директорию ~/bin. Запуская программы lab11.1 и lab11.2, изучить их работу. Отразить содержание проделанной работы в личном отчете.

194

Задание 5.2

Изучить теоретический материал, изложенный в подразделе 5.3 данного методического пособия.

Всреде разработки Eclipse: создать проект с именем lab11.3, набрать и отладить программу-читателей по тексту листинга 5.3.

Всреде разработки Eclipse: создать проект с именем lab11.4, набрать и отладить программу-писателя по тексту листинга 5.4.

Скопировать исполняемый файл программы-читателей в директорию ~/bin. Запуская программу-читателя lab11.3 из терминала, а программу-писателя lab11.2 из среды разработки Eclipse, - изучить их работу.

Отразить содержание проделанной работы в личном отчете.

5.5.2 Программы передачи сообщений

Задание 5.3

Изучить теоретический материал, изложенный в подразделе 5.4 данного методического пособия.

Всреде разработки Eclipse: создать проект с именем lab11.5, набрать и отладить программу-читателей по тексту листинга 5.5.

Всреде разработки Eclipse: создать проект с именем lab11.6, набрать и отладить программу-писателя по тексту листинга 5.6.

Запуская программу lab11.5, передающую набор сообщений, а также программу lab11.6, читающую сообщения, - изучить их работу.

Отразить содержание проделанной работы в личном отчете.

Замечание

Программы проектов lab11.5 и lab11.6 можно, по очереди, запускать из среды разработки Eclipse или скопировать их исполняемые файлы проектов в директорию ~/bin.