Основы методологии мониторов и устройства жесткого диска. Планирование работы дисков с использованием мониторов. Теоретические основы параллельного программирования. Микропроцессорная реализация параллельных процессов на основе технологии мониторов.
При низкой оригинальности работы "Использование методологии мониторов для реализации параллельных процессов", Вы можете повысить уникальность этой работы до 80-100%
Параллельное программирование возникло в 1962 г. с изобретением каналов - независимых аппаратных контроллеров, позволявших центральному процессору выполнять новую прикладную программу одновременно с операциями ввода-вывода других (приостановленных) программ. В результате не только были поставлены новые задачи разработчикам операционных систем, но и появились новые возможности у прикладных программистов. Первой важной задачей параллельного программирования стало решение проблемы так называемой критической секции. Для решения данной проблемы и упрощения работы программиста были разработаны такие элементы синхронизации, как семафоры и мониторы. Сети привели к росту распределенного программирования, которое стало основной темой в 80-х и, особенно, в 90-х годах. Суть распределенного программирования состоит во взаимодействии процессов путем передачи сообщений, а не записи и чтения разделяемых переменных. Параллельная программа содержит несколько процессов, работающих совместно над выполнением некоторой задачи. Каждый процесс- это последовательная программа, а точнее - последовательность операторов, выполняемых один за другим. Если используются разделяемые переменные, то один процесс осуществляет запись в переменную, считываемую другим процессом. При любом виде взаимодействия процессам необходима взаимная синхронизация. Существуют два основных вида синхронизации - взаимное исключение и условная синхронизация. Монитор содержит переменные, хранящие состояние объекта, и процедуры, реализующие операции над ним. Лежащие в основе мониторов механизмы синхронизации (неявное исключение и условные переменные для сигнализации), реализованы также в операционной системе Unix. Монитор как представитель абстрактных типов данных обладает тремя свойствами. Одно из привлекательных свойств монитора, как и любого абстрактного типа данных, - возможность его относительно независимой разработки. Условные переменные также применяются для запуска приостановленных процессов, когда условие становится истинным. (Возможен вариант, когда сигнализатор помещается в начало очереди ожидающих процессов; это называется сигнализировать и срочно (urgent) ожидать.) Рисунок 1 - Диаграмма состояний для синхронизации в мониторах Диаграмма состояний на рисунке 1 иллюстрирует работу синхронизации в мониторах. Описание устройства жесткого диска 2.1 Компоненты дискового устройства Дисковое устройство использует быстро перемещающийся для чтения и записи данных с плоского диска, покрытого магнитными частицами. Если диск занят и выполняется условие cyl > position, то процесс вставляет значение cyl в C, иначе (cyl position) wait (scan[c], cyl); else wait (scan[n], cyl); } procedure release() { int temp; if(!empty(scan[c])) position = minrank(scan[c]); elseif (empty(scan[c]) && !empty(scan[n])) { temp = c; c=n; n= temp; position = minrank(scan[c]); } else position = -1; signal(scan[c]); } } Представим программу монитора в виде ГСА (Рисунок 6).
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы