Cтраница 4
Каждое устройство резервируется в том порядке, в каком они появляются в списке аргументов. Если все назначения успешны, исполняется следующая команда в строке. Когда устройство занято ( зарезервировано другим пользователем), оставшиеся аргументы не обрабатываются. Команда автоматически повторяется, пока не будет назначено это устройство. Затем обрабатывается следующий аргумент. Программист имеет возможность задать максимальное время ( в секундах), которое можно ждать до освобождения устройства. Оно записывается после параметров и отделяется двоеточием. [46]
Устройства ( приборы) - это объекты, которые имеют несколько атрибутов, наиболее важным из которых является право на его использование. Право на использование устройства в любой момент времени может иметь только один транзакт. Таким образом устройство может быть занято или свободно. Существует возможность замены транзакта, в данный момент занимающего устройство, активным транзактом - реализация абсолютного приоритета. В случае, если транзакт не может занять устройство, он задерживается и дожидается его освобождения. Устройство имеет несколько списков для транзактов, которые ожидают наступления события, связанного с устройством. Каждое устройство имеет список задержки для транзактов, ожидающих освобождения устройства; список отложенных прерываний для транзактов, претендующих на прерывание обслуживания других транзактов; список прерываний, в который входят транзакты, обслуживание которых было прервано. Когда устройство освобождается, следующий владелец устройства выбирается из списков транзатов, ожидающих занятие устройства: первыми выбираются транзакты из списка отложенных прерываний, затем выбираются ранее прерванные транзакты и только потом выбираются транзакты, ожидающие освобождения устройства в обычной очереди в соответствии с приоритетами. [47]
Устройства ( приборы) - это объекты, которые имеют несколько атрибутов, наиболее важным из которых является право на его использование. Право на использование устройства в любой момент времени может иметь только один транзакт. Таким образом устройство может быть занято или свободно. Существует возможность замены транзакта, в данный момент занимающего устройство, активным транзактом - реализация абсолютного приоритета. В случае, если транзакт не может занять устройство, он задерживается и дожидается его освобождения. Устройство имеет несколько списков для транзактов, которые ожидают наступления события, связанного с устройством. Каждое устройство имеет список задержки для транзактов, ожидающих освобождения устройства; список отложенных прерываний для транзактов, претендующих на прерывание обслуживания других транзактов; список прерываний, в который входят транзакты, обслуживание которых было прервано. Когда устройство освобождается, следующий владелец устройства выбирается из списков транзатов, ожидающих занятие устройства: первыми выбираются транзакты из списка отложенных прерываний, затем выбираются ранее прерванные транзакты и только потом выбираются транзакты, ожидающие освобождения устройства в обычной очереди в соответствии с приоритетами. [48]
Некоторые устройства, например, такие, как устройства ввода-вывода перфокарт, устройства печати, магнитные ленты, по их природе могут-пспользоваться только одной программой и называются выделяемыми устройствами. Невозможно так перетасовать вводимые перфокарты, чтобы две параллельно выполняемые программы, совместно использующие одно устройство ввода с перфокарт, всегда получали свои собственные входные карты. Наличие таких выделяемых устройств, очевидно, сужает возможности для мультипрограммирования. Это же касается и печатающих устройств, поскольку почти каждое задание предусматривает некоторый вывод через печатающее устройство. Поэтому выделяемые устройства необходимо освобождать как можно скорее. Во-первых, как только задание завершилось, все его устройства автоматически освобождаются. Например, устройство ввода перфокарт может быть освобождено сразу же после ввода всех карт с начальными данными. Третий способ предусматривает освобождение устройств с помощью управляющих операторов задания после того, как завершается шаг задания, использующий эти устройства. [49]