logo
ИванВладимирович / Лекции

2.4.3. Управление процессами

[9, с. 106-108]

Это задача имеет место, если при построении диспетчера использо­вана главная обратная связь по состоянию оборудования.

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

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

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

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

Связь управляющей программы ЧПУ может быть более сильной, чем простая временная синхронизация. Так, для передачи и получения произвольных данных требуются специальные средства связи. Для хра­нения уже посланного, но еще не полученного сообщения необхо­димо место, называемое почтовым ящиком. Почтовый ящик может быть связан с парой управляющих программ ЧПУ, или только с отпра­вителем, или только с получателем. Инициатива в организации и введе­нии почтовых ящиков принадлежит диспетчеру.

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