КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Понятие о параллельных процессах
Наиболее плодотворной идеей для увеличения производительности ВС является организация параллельной обработки информации, т.е. совмещение во времени этапов решения одной или нескольких задач. ЭВМ первых двух поколений и некоторые современные простейшие контроллеры, получив приказ о начале выполнения некой программы, записанной в главной памяти, шаг за шагом выполняют все ее инструкции, связанные как с вычислениями, так и с операциями ввода-вывода. Реальная картина работы современных мультипрограммных ВС строится на совершенно других принципах. Мультипрограммная ВС в любой момент времени выполняет несколько параллельных процессов. Процесс – это программа в стадии выполнения, т.е. «живая душа» процедуры. Процессы «рождаются», «живут» какое-то время, «порождают» другие процессы и «умирают». Внутренний информационный мир машины неповторим. Процессы имеют свою локальную среду, а общаются с другими процессами через глобальную среду. В понятие среды включает все, что может видоизменяться процессором: · регистры процессора · ячейки оперативной памяти · дисковая память · бумага
Рисунок 2.1.2 – Процессы в вычислительной системе
В момент включения машины должен начинаться главный процесс, который мы в дальнейшем будем называть управлением. Главный процесс соответствует выполнению управляющей процедуры, т.е. программа ОС. Далее возникает множество процессов, «жизнь» которых описывается в любой момент времени векторами состояния. Более подробно об их структуре мы поговорим ниже. Однако, самое важное, что в векторе состояния должен присутствовать признак состояния процесса. Процесс может выполняться (состояние свободен) или может быть приостановлен (состояние прерван). В векторе состояния должна отражаться причина приостановки и информация, необходимая для его продолжения. Для связи с другими процессами, для порождения нового или прекращения выполняющегося процесса (в том числе и самого себя) процессы вырабатывают т.н. экстракоды, имеющие вид специальной машинной команды или сигнала запроса прерывания. Экстракоды направляются в адрес главного процесса, который единолично обслуживает связь между процессами. Экстракоды делятся на две группы: 1. экстракоды возбуждения и прекращения процессов · возбуждения (для возбуждения нового процесса В процесс А выдает экстракод, сопровождаемый вектором начального состояния для процесса В, который среди прочего должен содержать начальный адрес соответствующей программы) Этот процесс напоминает обращение к подпрограмме, но отличием является то, что новый процесс В будет выполняться одновременно с породившем его процессом А. · завершения (посыл требования главному процессу прекратить другой процесс или данный процесс, выдавший экстракод) 2. экстракоды операций над семафорами (маркерами связи) · изменение значения данного семафора (например, увеличить на 1) · прерывание процесса, выдавшего экстракод (пока заданное отношение, включающее значение семафора, не станет истинным; если оно истинно уже в данный момент, процесс не прерывается) · проверка выполнения условия (если выполняется – применить к семафору указанную операцию и перейти к следующей команде, если не выполняется – перейти по указанному адресу) Рисунок 2.1.3 – Классификация экстракодов
Только экстракоды, а не обычные команды, меняют значения семафоров, т.к. эти изменения могут повлечь за собой побочный эффект возобновления какого-либо прерванного процесса.
Дата добавления: 2014-01-11; Просмотров: 440; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |