3631

Теория с вычислительных процессов

Лабораторная работа

Информатика, кибернетика и программирование

Процессы. Параллельные процессы. Последовательные процессы Цель работы: Усвоить понятие процесса. Изучить виды процессов и способы их взаимодействия. Рекомендации по выполнению работы 1. проработать материал лекции 9-14 2. При оформлении выполненног...

Русский

2012-11-04

63.5 KB

18 чел.

Процессы. Параллельные процессы. Последовательные процессы

Цель работы: Усвоить понятие процесса. Изучить виды процессов и способы их взаимодействия.

Рекомендации по выполнению работы

1. проработать материал лекции 9-14

2. При оформлении выполненного пункта задания не руководствуйтесь пословицей “краткость- сестра таланта”, расписывайте свои аргументы подробнее

Задания

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

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

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

Задание 1

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

Решение

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

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

Проблема обедающих философов — классическая проблема с параллелизмом и разделяемыми ресурсами.

Формулировка задачи, предложенная Эдсгером Дейкстрой, заключается в следующем:

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

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

Решение задачи заключается в обеспечении согласованного доступа нескольких потоков к разделяемым ресурсам.

Задание 2

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

Решение

Последовательным называется процесс, имеющий в алфавите символ естественно, что это событие может быть только последним в работе процесса. По этой причине мы ставим условием, что  не может служить альтернативой в конструкции выбора:

{х : В->Р{х)) неверно, если В

При проектировании процесса для решения некоторой сложной задачи часто бывает полезно разбить ее на две под­задачи, одна из которых успешно завершается до начала другой. Если Р и Q— последовательные процессы с одним и тем же алфавитом, их последовательная композиция Р; Q представляет собой процесс, ведущий себя сначала как Р, а после успешного завершения Р продолжающий вести себя как Q. Если успешного завершения Р не происходит, то не завершается и (Р; Q) .

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

Законы для последовательной композиции аналогичны законам для конкатенации протоколов, а ПРОПУСК играет роль единицы:

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

Задание 3

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

Решение

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

  1.  Организация критических секций. В момент вхождения программы в критическую секцию, все действия, которые могут помешать ее исполнению, запрещаются. Их разрешение выполняется только по факту завершения исполнения процесса (его критической секции);
  2.  Семафоры. Механизм семафоров основан на создании некоторые виртуальных ресурсов – семафоров. Процесс, в котором необходимо получить доступ к ресурсу, первоначально обращается к семафору и если он открыт, закрывает его и выполняет требуемые действия. По факту завершения работы, семафор открывается. В случае, если при обращении к семафору он закрыт, процессе ожидает его открытия;
  3.  Планирование ресурсов. Данный метод позволяет избежать ошибки в разрешении конфликтов. Возможны ситуации, когда один и тот же процесс при разрешении конфликтов будет непрерывно получать доступ к требуемому ресурсу, тогда как прочие ресурсы будут бесконечно находиться в очереди.  Для исключения подобных ситуаций выполняется планирование ресурсов (определяется дисциплина обслуживания очереди: первым пришел – первым ушел и т. д.).
  4.  Организация очереди.  Для организации совместного использования печатающих устройств используется очередь FIFO (First In First Out – первым пришел – первым ушел). При получении заявки на печать, в то время, как печатающее устройство используется, поступившая заявка ставится в очередь и обрабатывается после освобождения печатающего устройства.


 

А также другие работы, которые могут Вас заинтересовать

5262. Основы банковского маркетинга 96.5 KB
  Основы банковского маркетинга Банковский маркетинг: понятие, задачи, функции Концепция банковского маркетинга и маркетинговая деятельность Содержание маркетинговой деятельности банка Вопрос 1. Банковский маркетинг: понятие, задачи,...
5263. Основы банковского менеджмента 151 KB
  Основы банковского менеджмента Понятие и общая характеристика системы банковского менеджмента Оценка и качество банковского менеджмента Сущность, значение и принципы реализации банковской политики Финансовый менеджмент...
5264. Коммерческая эффективность и финансовая устойчивость коммерческого банка 113.5 KB
  Коммерческая эффективность и финансовая устойчивость коммерческого банка Понятие коммерческой эффективности и финансовой устойчивости банка Рейтинговые оценки устойчивости банков Система оценки финансового состояния кредитных...
5265. Банковские риски 83 KB
  Банковские риски Сущность и классификация банковских рисков и их характеристика Управление банковскими рисками Вопрос 1. Сущность и классификация банковских рисков и их характеристика Как известно из мировой практики, банковский бизнес входит в числ...
5266. Ликвидность коммерческого банка 92 KB
  Ликвидность коммерческого банка Банковская ликвидность: сущность, структура, функции Оценка ликвидности коммерческого банка Управление ликвидностью коммерческого банка Управление резервами ликвидности Вопрос 1. Банковская лик...
5267. Посреднические операции коммерческих банков 201.5 KB
  Посреднические операции коммерческих банков Посреднические операции банков: сущность, основные виды, роль Расчетно-кассовое обслуживание клиентов Посреднические операции банков: сущность, основные виды, роль Посреднические услуги б...
5268. Патентный анализ технической литературы 291.5 KB
  Патентный анализ технической литературы В качестве исследовательской части проекта проведем патентный анализ в области башенных кранов. Первое техническое решение:изобретение относится к подъемно-транспортному машиностроению, а именно к способ...
5269. Бизнес-план издательства: Учебное пособие 693 KB
  Введение Книжный бизнес в последнее десятилетие занял особое место в экономической и социально-культурной области жизни российского общества. Поэтому важно определить, какое значение в деловой сфере имеет планирование. Практика показывает, что в биз...