Основы мехатроники и робототехники



Pdf көрінісі
бет24/49
Дата25.04.2024
өлшемі3,35 Mb.
#201370
түріУчебник
1   ...   20   21   22   23   24   25   26   27   ...   49
Байланысты:
Sholanov 1

N
i
(i=1,… k). Оператор «Конец» 
достигается, когда все программы отработают. При параллельном протекании 
процессов возможны два случая: во-первых, процессы могут быть взаимно 
независимыми; во-вторых, процессы могут быть взаимно связанными. В первом 
случае особых проблем не возникает, а во втором случае необходимо решение 
ряда специфичных проблем взаимного исключения и синхронизации и др. 
Остановимся на возникновении проблемы взаимного исключения. Пусть два 
процесса 
А 
и
В, 
протекающие параллельно, взаимно связаны таким образом что 
они должны иметь доступ к области данных 
D. 
При этом возможен случай, 
когда процесс А обновляет область данных Д а процесс 
В 
считывает данные с 
области данных 
D. 
В таком случае возникает ситуация, когда процесс 
В 
считывает наряду с не обновленными данными и старые данные, что может 
Начало
Конец
N
N
N
N
1
2
k-1
k


49 
привести к ошибке. По этой причине необходимо исключить доступ процесса 
В 
к 
области процесса 

до завершения обновления. Или, наоборот, исключить 
доступ процесса 
А 
к области процесса 

до полного считывания данных про-
цессом 
В. 
Таким образом решение проблемы заключается во взаимном исклю-
чении доступа к области 
D.
При параллельном функционировании нескольких процессов необходимо 
решать и проблемы синхронизации, чтобы упорядочить доступ к ресурсу. В этом 
случае доступ к ресурсу возможен лишь после того как он освободится от другого 
процесса. Синхронизация процессов решается с помощью «семафоров» и 
«событии». «Семафор» представляет метод, который обеспечивает доступ к 
защищенному процессу только одного процесса. Если процессы имеют доступ к 
общему ресурсу только при выполнений определенных условий, то для проверки 
выполнения этих условий и обеспечения очередности в доступе к общему 
ресурсу используется метод «событие». 
Для обеспечения протекания параллельных процессов используется 
управляющая программа. Управляющая программа разбивает время центрального 
процессора на малые интервалы, называемые временные кванты. Управляющая 
программа распределяет выполнение нескольких процессов во временном 
интервале. Например, на рис. показано распределение времени процессора при 
параллельном выполнений 3-х процессов. При этом внешне создается 
впечатление, что все процессы выполняются одновременно. 
Управляющая программа обеспечивает переход процесс из одного состояния 
в другое. Принято считать, что возбужденный процесс может принимать одно из 
трех состояний: 
-
готовность к выполнению (ready); 
-
выполнение (running); 
-
ожидание (waiting). 
Центральная часть управляющей программы содержит основные функции 
управления параллельными процессами, обеспечивающая переход состояний 
процесса, управление последовательностью выполнения процесса, взаимные 
исключения, синхронизации. Для выполнения указанных функций ядро 
использует такие средства, как прерывание по временным квантам, ловушки, 
прерывание внешним сигналом. Ловушка представляет системное программи-
рование предусмотренное на случай возникновения непредвиденных ситуаций, 
при попытке несанкционированных действиях процесса и т.д. 
Программирование в реальном времени имеет не только свои средства 
решения задач, но и предъявляет специальные требования к языкам программи-
рования и к операционной системе. Эти требования можно сформулировать 
следующим образом: 

предоставлять возможности для описания параллельных 
процессов; 

изменять состояние процесса; 

описывать методы синхронизации; 

иметь возможность описывает текущий процесс в 
абсолютном и относительном временном масштабе; 

давать возможность осуществления прямого доступа к 
внешним портам и другим аппаратным средствам; 


50 

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

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


Достарыңызбен бөлісу:
1   ...   20   21   22   23   24   25   26   27   ...   49




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет