Процессы называются параллельными, если они существуют одновременно. Параллельные процессы могут работать совершенно независимо друг от друга или они могут быть асинхронными— это значит, что им необходимо периодически синхронизироваться и взаимодействовать. Параллельное выполнение нескольких программ заманчиво, как один из вариантов повышения быстродействия, и как следствие – производительности ОС.В отличие от программирования последовательных вычислений, концептуальную основу которого составляет понятие алгоритма, реализуемого по шагам строго последовательно во времени, в параллельном программировании программа порождает совокупность параллельно протекающих процессов обработки информации, полностью независимых. Относительная простота алгоритмов распараллеливания выражений позволяет реализовать их автоматически в ЭВМ с помощью специальных программ или аппаратными средствами.Большее ускорение может быть получено за счет распараллеливания обработки структурных данных. Наиболее известными и простыми программными механизмами синхронизации являются семафоры и события. Семафор - это специальная управляющая переменная, принимающая целочисленные значения. Семафор обычно связан с некоторым конфликтным ресурсом.Механизм семафоров широко используется в языках управления процессами в операционных системах ЭВМ и в ряде универсальных языков программирования. Механизм событий включает управляющие переменные, текущие значения которых отмечают наступление каких-либо программных или системных событий и специальные операторы ожиданиясобытий. Стремление повысить надежность программирования приводит к появлению более сложных механизмов синхронизации: "почтовые ящики" - особые структуры для обмена сообщениями, для которых фиксированы правила работы с ними параллельных процессов; мониторы - наборы процедур и данных, к к-рым процессы могут обращаться только поочередно и к-рые содержат заданные программистом правила организации взаимодействий.Чисто асинхронное П. п. используется для организации вычислений в распределенных вычислительных системах, в которых полностью исключены конфликты по ресурсам. Стремление упростить организацию взаимодействий между процессами с общими ресурсами привлекает внимание к асинхронным методам вычислений, в к-рых разрешен нерегламентированный доступ параллельных процессов к общим ресурсам.Напр., разрабатываются асинхронные алгоритмы, в к-рых параллельные процессы обмениваются данными собщей памятью, причем неупорядоченный доступ к памяти не мешает достижению однозначного результата.