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 – первым пришел – первым ушел). При получении заявки на печать, в то время, как печатающее устройство используется, поступившая заявка ставится в очередь и обрабатывается после освобождения печатающего устройства.


 

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

1436. Алгоритм решения задачи с использованием программ Microsoft Excel и MathCAD 265.69 KB
  Данная работа посвящена автоматизации процессов расчетов. Ее целью является закрепление знаний по всем разделам дисциплины Информатика, проверка навыков практической работы с программными средствами обработки информации.
1437. Основные модели данных 182.57 KB
  В зависимости от используемой модели СУБД называются соответственно: сетевыми, иерархическими и реляционными. Манипулирование данными. Сетевая база данных. Достоинства и недостатки иерархических и сетевых СУБД.
1438. Теоретическое и экспериментальное исследование процесса сушки абрикос с применением токов высокой частоты 3.32 MB
  Современные теоретические представления о тепло- массопереносе в процессах сушки. Электрофизические параметры абрикос и их влияние на объемное тепловыделение. Экспериментальное определение электрофизических параметров абрикос. Математическая модель динамики изменения электрофизических параметров абрикос.
1439. Использование распознавания образов для обработки и восстановления музыкальных сигналов 7.15 MB
  Определение полного перечня признаков, характеризующих объекты, преобразование информации при распознавании музыкального сигнала. Статический подход к распознаванию образов. Общая характеристика современной техники восстановления.
1440. Лингвопереводческие концепции американских переводоведов второй половины ХХ-начала ХХІ века 19.04 MB
  Перевод как один из древнейших видов человеческой деятельности, его роль в развитии социума, особая роль лингвопереводческих концепций Ю.А. Найды в развитии теории и практики межъязыковой коммуникации в США. Предпосылки развития генеративной лингвистики, формальная и динамическая эквивалентность, роль рецептора перевода.
1441. Методика складання розкладу занять 213.34 KB
  Важливим елементом організації роботи навчального закладу є науковий підхід до складання розкладу занять, розглянутий у роботі В.Пайкеса Методика складання розкладу занять у загальноосвітній установі. Раціонально складений розклад занять сприяє ефективності НВП, зниженню і ліквідації перевантажень учнів, підвищенню працездатності учнів і вчителів.
1442. Прогнозирование курсов валют на рынке Forex 196.69 KB
  Главная задача любого инвестора — купить дешевле и продать дороже. Чем выше изменчивость цен актива, тем больше имеется возможностей для проведения выигрышных стратегий торговли, но они сопряжены с высоким риском. Ключевым вопросом при этом является определение направления, величины и волатильности (изменчивости) будущих цен на основе прошлых данных. В статье дается пример прогноза курсов валют на рынке Forex, полученного с применением нейронных технологий.
1443. Основы экономического управления 170 KB
  Конечные производственные результаты (выручка от реализации всей продукции). Внешняя норма доходности. Жизненный цикл проекта. Разработка концепции проекта. Показатели бюджетной эффективности. Сальдо накопленных реальных денег.
1444. Топливные насосы дизельных двигателей 183.5 KB
  Механическое регулирование топливоподачи. По способу дозирования и управления топливоподачей эти топливные насосы напоминают традиционные механические ТНВД распределительного типа. Некоторые электронные ТНВД создают давление впрыскивания около 1500 бар.