Cтраница 3
Третья область, занимающая низ правой стороны экрана, отведена для сообщений. На рис. 6.3 показан момент, когда программа выдала сообщение, в котором указано имя активного набора. [31]
Архивы, наборы и записи имеют имена, причем имена архивов и наборов устанавливаются самими пользователями, а имена записей зафиксированы в обрабатывающих программах при разработке системы. Доступ к конкретным записям осуществляется на основе составного имени, образованного из заданного пользователем имени набора и фиксированного имени записи. [32]
Рассматриваемые здесь примеры относятся к IMS / VS. Основное отличие в процедурах управления заданием для IMS / VS и IMS / 360 состоит в именах наборов данных системы IMS. Процедуры, ориентированные на среду DOS или DOS / VS, в этой книге не приводятся. [33]
Аналогично в зависимости от уровня программного обеспечения прикладной программист в одном случае может сообщать только имя элемента данных или записи, которую он хочет получить. В другом случае ( при наличии другого программного обеспечения) он должен будет сообщать идентификацию элемента данных и имя набора, в котором этот элемент данных содержится. В худшем варианте прикладной программист для получения элемента данных должен также знать организацию набора данных. В этом случае ему, возможно, придется задать машинный адрес данных. Если отсутствует независимость данных, прикладному программисту необходимо знать точный физический формат записи. [34]
![]() |
Основные идеи синтаксиса предложений схемы. [35] |
В предложениях DBTG 1971 г. введена концепция подсхемы. Идея заключается в том, что каждый пользователь должен работать с определенным подмножеством схемы, используя свои собственные синонимы для имен наборов, полей и типов записей. [36]
Запрос пользователя вводится либо непосредственно во время сеанса работы, либо готовится стандартными средствами ОС ЕС заранее. Запрос, подготовленный до сеанса работы, записывается в виде раздела в библиотечный набор данных, и во время работы пользователь указывает имя набора и имя раздела, в котором хранится запрос пользователя. [37]
Для него необходимо задавать операнды SPACE и BLOCK. Для новых библиотечных наборов данных необходимо также задать операнд DIR. Если указано имя набора, TO набор после окончания сеанса работы сохраняется и каталогизируется. [38]
Операторы применяются к текущей записи типа имя записи. При включении записи предварительно должен быть сделан текущим требуемый экземпляр набора типа имя набора. Включенная запись становится текущей записью набора типа имя набора, а также текущей процесса. При исключении записи текущая набора типа имя набора принимает значение не определено. Однако соответствующая позиция может быть учтена при выполнении поиска следующей и предыдущей записи в наборе. [39]
РЕДАКТОРОМ СВЯЗЕЙ будет помещен полученный загрузочный модуль. Если имя раздела не указано, Система будет использовать имя TEMPNAME. Если операнд LOAD опущен, то система строит имя набора, добавляя идентификатор абонента и описательный уточнитель LOAD к первому имени в списке имен наборов для объектных модулей. [40]
Затем записываем операторы, обеспечивающие управление решением и получение нужных отчетов. Затем с позиции 5 указываем оператор DATA, который открывает доступ к именуемому файлу исходных данных. Оператор MAXIMIZE указывает на то, что определяется максимальное значение целевой функции, а оператор BOUNDS - имя набора граничных условий. [41]
РЕДАКТОРОМ СВЯЗЕЙ будет помещен полученный загрузочный модуль. Если имя раздела не указано, Система будет использовать имя TEMPNAME. Если операнд LOAD опущен, то система строит имя набора, добавляя идентификатор абонента и описательный уточнитель LOAD к первому имени в списке имен наборов для объектных модулей. [42]
Операторы применяются к текущей записи типа имя записи. При включении записи предварительно должен быть сделан текущим требуемый экземпляр набора типа имя набора. Включенная запись становится текущей записью набора типа имя набора, а также текущей процесса. При исключении записи текущая набора типа имя набора принимает значение не определено. Однако соответствующая позиция может быть учтена при выполнении поиска следующей и предыдущей записи в наборе. [43]
Две внешние процедуры ( PR1 и PR2) находятся в наборах данных MASTER. Первая процедура транслируется отладочным транслятором, вторая ( подпрограмма) - оптимизирующим. Затем они редактируются и выполняются с помощью команды LOADGO. Так как в командах PLIC и PLI ( которая используется для вызова оптимизирующего транслятора), не указаны имена наборов, где будут храниться объектные модули и интерпретируемый код, система сама построит эти имена. Для процедуры PR1 эти имена соответствуют MASTER. [44]
Для контроля доступа и управления аппаратными ресурсами операционная система должна иметь возможность однозначной адресации к ним. Трудностей в связи с этим не возникает, поскольку и периферийные устройства, и центральные процессоры имеют свои уникальные идентификаторы. Расположение отдельных областей памяти можно определить по содержимому регистров границ памяти, значениям флажков и ключей или элементов таблиц перемещений виртуальной памяти. Операционная система различает программы по их именам и точкам входа, а хранимые на внешних устройствах наборы данных - по именам наборов. [45]