ПРОФИЛЬ ПРИКЛАДНОЙ СРЕДЫ ОРГАНИЗАЦИИ ВЫЧИСЛЕНИЙ НА СУПЕР-ЭВМ (PSE10-HIP)

Приложение Г (справочное) СТАНДАРТИЗАЦИЯ В ОБЛАСТИ  ПРИКЛАДНОЙ СРЕДЫ СУПЕР-ЭВМ

Г.1 Введение

В настоящем приложении рассматриваются виды стандартов, необходимых для развития переносимости (мобильности) в среде супер-ЭВМ.

Г.2 Вопросы переносимости

Профиль, описанный в настоящем стандарте, устанавливает требования к переносимости приложений в среде супер-ЭВМ, а также требования, обеспечивающие унификацию как интерфейса пользователя, так и интерфейса системного администратора. Для дальнейшего развития переносимости во всех этих областях необходима разработка дополнительных стандартов.

Г.2.1 Переносимость приложений

На переносимость приложений влияют исходные программы и среда их выполнения.

Переносимость приложений в первую очередь обеспечивается переносимостью исходных программ, обеспечиваемой стандартами на языки. Переносимое приложение должно использовать стандартные системные интерфейсы, определенные в соответствующих стандартах на POSIX. Применяя средства, определенные в данном профиле, приложение будет использовать общий набор услуг, который расширяет переносимость на различные платформы супер-ЭВМ.

Переносимое приложение должно быть в состоянии вызывать соответствующую среду, при необходимости изменять ее и настраиваться под существующие условия среды. Переносимое приложение должно иметь средства для:

  • запроса соответствующих ресурсов;

  • ожидания доступа к требуемым ресурсам;

  • выключения не используемых более ресурсов;

  • сохранения образа выполняемой задачи (контрольной точки).

Переносимые приложения в среде супер-ЭВМ должны обрабатывать значения для:

  • минимальных и максимальных чисел с плавающей точкой с допустимой погрешностью;

  • минимальных и максимальных двойных чисел с плавающей точкой с допустимой
             погрешностью;

  • минимальных и максимальных целых чисел;

  •  минимальных и максимальных длинных целых чисел;

  • минимальных и максимальных коротких целых чисел;

  • максимально допустимой программно-адресуемой памяти;

  • максимально допустимого объема файла прямого доступа;

  • количества доступных для использования центральных процессоров (ЦП).

 Г.2.2 Интерфейс пользователя

Интерфейс пользователя должен обеспечивать возможность для:

  • целенаправленной работы в пакетном и интерактивном режиме;

  • сохранения образа выполняемой задачи (контрольной точки);

  • рестарта с сохраненной контрольной точки;

  • интерактивного выполнения отладки приложения в символических адресах;

  • регулировки приоритетов обработки и сеанса;

  • запроса учетных данных по загрузке и ограничениям;

  • изменения заявленных расходов ресурсов для различных расчетов;

  •  определять имеющиеся варианты компиляции (векторизатор, мультиобработка и т.д.);

  • применять постоянный тип интерфейса пользователя.

Г.2.3 Интерфейс администратора системы

Интерфейс администратора системы должен обеспечивать возможность для:

  • управления ограничениями ресурсов;

  • изменения приоритетов пользователя;

  • управления пакетной системой;

  • создания контрольных точек перед остановкой системы;

  • размещения системных ресурсов по конкретным приложениям;

  • поиска учетных данных;

  • изменения распределения ресурсов;

  • управления лентами и другими сменными носителями.

Г.3 Интерфейс операционной системы

Необходимы стандарты для интерфейсов, указанных в настоящем разделе.

Г.3.1 Интерфейсы для управления ресурсами

Г.3.1.1 Ограничения ресурсов

Ограничения указываются по конкретным ресурсам, таким как ЦП, память, дисковые, ленточные и графические устройства.

Такой объект системных ресурсов, как сеанс применяется для управления ресурсами, используемыми группой связанных процессов. Реализация должна предотвращать возможность выхода процесса из сеанса работы, потому, что это может привести к потере управления ресурсами. Это требование распространяется на механизм удержания процесса в сеансе работы или на определение нового вида сеанса работы.

Различные виды ограничения ресурсов включают:

  • максимальное время работы ЦП;

  • максимальный объем памяти;

  •  максимальный размер базового файла;

  • максимальное число периферийных устройств;

  • максимальный объем единичного файла;

  • максимальное число ЦП;

  • минимальную точность значения.

Для каждого вида ограничения ресурсов могут быть установлены жесткие или мягкие границы или те и другие одновременно.

Ограничения могут накладываться на один или на все следующие категории:

  • единичный процесс;

  • все процессы в сеансе работы;

  • все процессы в группе процессов;

  • все процессы в группе сеансов работы.

Если ограничения ресурсов нарушены, конкретный процесс (или процессы) должны быть отмечены соответствующим сигналом.

Г.3.1.2 Резервирование, учет и запрос ресурсов

Необходимы функции для резервирования ресурсов, учета и контроля использования ресурсов и запросы доступности ресурсов.

Если приложение не может предварительно зарезервировать ресурс, оно должно находиться в ждущем состоянии до тех пор, пока ресурс не станет доступным. Для обеспечения этого, должна быть реализована возможность обнаружения и управления "мертвыми точками" между многими приложениями.

Г.4 Оболочка и утилиты

Для услуг, указанных в данном разделе, необходимы дополнительные стандарты.

Г.4.1 Утилиты для учета

Необходимы интерфейсы утилит для определения:

  • окончания сеанса некоторого пользователя при увеличении загрузки по какому-либо ресурсу;

  • изменения расчета ресурса, по которому будет увеличена загрузка для данного пользователя
              на следующем сеансе;

  • отчета об увеличении загрузки в текущем сеансе по сравнению с расчетной;

  • отчета об увеличении загрузки по сравнению с расчетными значениями, установленными ранее.

Г.4.2 Утилиты для рестарта с контрольной точки

Необходимы интерфейсы утилит для:

  • определения контрольной точки процесса или группы процессов;

  • рестарта процесса или группы процессов с ранее установленной контрольной точки.

При установлении контрольной точки, создается файл, содержащий информацию, необходимую для рестарта. После успешного рестарта, процесс или группа процессов попадают в среду, восстановленную по состоянию, определяемому функциями рестарта с контрольной точки.

Г.4.3 Утилиты для резервирования ресурсов

Должны быть обеспечены стандартные сервисные программы на уровне команд для:

  • распределения и перераспределения устройств;

  • запроса доступа к устройству:

дополнительного входа;
                   удаленного входа;
                   изменения приоритета;

  • ожидания доступа к устройству и прохождения "мертвой точки".

Г.4.4 Утилиты для контроля ограничения ресурсов

Должны быть определены интерфейсы утилит для выбора и установления ограничений на ресурсы пользователя.

Различные виды ограничений ресурсов охватывают:

  • максимальное время работы ЦП;

  • максимальный объем памяти;

  • максимальный размер базового файла;

  • максимальное число периферийных устройств;

  • максимальный объем единичного файла;

  • максимальное число ЦП;

  • минимальную точность значения.

Для каждого вида ограничения ресурсов могут быть установлены жесткие или мягкие границы или те и другие одновременно.

Ограничения могут накладываться на один или на все следующие категории:

  • единичный процесс;

  • все процессы в сеансе;

  • все процессы в группе процессов;

  • все процессы в группе сеансов.

Если ограничения ресурсов нарушены, конкретный процесс (или процессы) должны быть отмечены соответствующим сигналом.

Г.4.5 Утилиты для разработки программных средств

Г.4.5.1 Символьный отладчик

Для всех необходимых и необязательных компиляторов, за исключением ЛИСП, должна быть установлена утилита отладки в символьных адресах, обладающая следующими минимальными функциональными возможностями:

  • распечатки или отображения значения конкретной переменной в формате, зависящем от
             реализации;

  • отображения значений в различных форматах, включая целочисленные, с плавающей точкой,
             символьный, восьмеричный, шестнадцатеричный и т.д.;

  • инициализации выполнения программы с возможностью передачи параметров для данной
             программы, имитирующей передачу из оболочки;

  • прерывания выполнения программы перед выполнением заданной строки исходной программы;

  •  выбора условных прерываний (наиболее важно прерывание по счетчику итераций);

  • выбора имени блока или устройства отображения, на которых можно отображать переменные;

  • выполнения только следующей строки и останова;

  • возобновления выполнения из состояния останова;

  • изменения значений конкретной переменной;

  • определения адреса символа;

  • отображения хода выполнения в обратном направлении (эта возможность определяется
              реализацией);

  • выхода из отладчика.

Символьный отладчик может не распечатывать переменные и не выбирать точки останова в своих внутренних или библиотечных функциях.

Г.5 Графика

Традиционные супер-ЭВМ используют модель генерации вывода графических результатов, в которой файл выходных команд инициализирует некоторое устройство, выдающее твердую копию результатов. Вызванное устройство в дальнейшем интерактивно работает с программой вывода графики. Для обеспечения унифицированных интерфейсов таких программ с графическими устройствами необходима разработка соответствующих стандартов.

В первую очередь необходима разработка стандартов для интерфейсов POSIX с системой X-window и системы X-window с ИИГСП (иерархической интерактивной графической системой программиста).

Г.6 Языки

Г.6.1 Представление данных в формате с плавающей точкой

Существующие системы супер-ЭВМ имеют различные форматы представления данных с плавающей точкой, в результате чего переносимые программы выдают результаты с различной точностью.

Для унификации результатов работ переносимых программ в формате с плавающей точкой в среде супер-ЭВМ необходима разработка единого стандарта.

Г.6.2 Компиляторы ФОРТРАН 77 и ФОРТРАН 90

Интерфейс утилит существующих компиляторов должен быть расширен для распознавания дополнительных параметров компиляции, перечисленных ниже. Все эти параметры компиляции являются необязательными. Реализация по умолчанию должна:

  • создавать карту загрузки для всех объектных файлов, обрабатываемых при данном вызове компилятора, если компилятор вызывается без опции – с. Карта загрузки должна содержать список точек входа для каждой подпрограммы. Если компилятор размещает переменные статически, он должен перечислять адреса памяти, в которые загружается каждая переменная. Данное перечисление не должно охватывать точки входа для внутренних функций, функций библиотек и стандартных подпрограмм;

  • создавать листинг перекрестных ссылок, указывающий для каждой подпрограммы и переменной номер строки исходного кода, в которой они определяются, и каждой строки исходного кода, в которой на них даются ссылки.

Стандартные механизмы для определения параметров компиляции должны устанавливаться соответствующими стандартами на языки.

Г.7 Защита

Аутентификация пользователя на конкретной машине должна обеспечиваться соответствующей средой защиты. Для сетевых приложений в данной среде также требуется обеспечение аутентификации центральной машиной.

Вопросы реализации средств проверки защиты POSIX в среде супер-ЭВМ требуют дополнительной регламентации.

Г.8 Административное управление системой

Г.8.1 Требования административного управления для периферийных устройств:

  •  освобождение накопителя для пользователя;

  •  управление очередями (исключение, состояния, запуск и останов);

  • уведомление оператора о необходимости подключения накопителя;

  • уведомление пользователя об удовлетворении запросов.

Г.8.2 Требования административного управления для пакетного режима:

  • конфигурация очередей должна быть такой, чтобы к каждой очереди были привязаны
             соответствующие атрибуты, общие ограничения, ограничения по доступу и взаимосвязи
             очередей друг с другом;

  • требования к запуску пакетной системы;

  • требования к отключению пакетной системы;

  • требования по блокировке-разблокировке включения соответствующих запросов в
              конкретную очередь;

  • требования по блокировке-разблокировке обработки запросов в очереди;

  • требования к изменению приоритета запроса в очереди;

  • требования к сопровождению списка доступных центральных машин.

Г.8.3 Требования административного управления для массовой памяти

Необходимы средства административного управления для:

  • реализации стратегии передачи данных в иерархическую массовую память и из нее;

  • санкционирования и контроля доступа пользователя к массовой памяти;

  • систем автоматического архивирования, резервирования и восстановления данных
              административного управления.

Г.8.4 Требования административного управления по учету использования ресурсов

Для определения требований административного управления по учету использования ресурсов необходимы интерфейсы утилит, позволяющие системному администратору или оператору блокировать и разблокировать учет использования ресурсов, изменять набор используемых ресурсов при возрастании нагрузки со стороны пользователя, выбирать и изменять ресурсы, используемые по умолчанию, при вхождении в систему пользователя, требующего использование дополнительных ресурсов, а также выдавать следующую отчетную информацию:

  • используемые ресурсы обработки, по каждому из которых должна быть выдана следующая информация по каждому сеансу:

       время и длительность сеанса;
контролируемый объект;
время загрузки пользователем ЦП;
время загрузки ЦП системой;
приоритет сеанса;
общий объем используемой оперативной памяти;
максимальный объем используемых внешних запоминающих устройств;
максимальный объем используемой области выгрузки программ;
число переданных физических блоков ввода-вывода;
число используемых устройств со сменными носителями;

  • используемые ресурсы запоминающих устройств, работающих с ЦП;

  • используемые стандартные подпрограммы.

Г.8.5 Требования административного управления для рестарта с контрольной точки

Для определения требований административного управления для рестарта с контрольной точки необходимы интерфейсы утилит, позволяющие системному администратору или оператору создать контрольную точку, а затем перезапускать с нее все процессы.

Г.8.6 Требования административного управления для ограничения контролируемых ресурсов

Для определения требований административного управления для ограничения контролируемых ресурсов необходимы интерфейсы, позволяющие системному администратору или оператору устанавливать или менять ограничения на все используемые ресурсы.

Требования к ограничениям ресурсов см. Г.3.1.1.

Г.9 Организация сети

Для организации сети необходимы, как минимум, следующие средства:

  • протокол передачи файла, позволяющий пользователю вызывать файл для передачи через сеть;

  • средства для пользователя с удаленного рабочего места, позволяющие ему обращаться к супер-ЭВМ через сеть и выполнять свои задачи на данной машине;

  • средства для передачи строк графического протокола через супер-ЭВМ на удаленные устройства отображения;

  • средства для обработки на супер-ЭВМ процедур запросов от удаленного пользователя, переданных через сеть, а также для пересылки запросов на соответствующий сервер сети.

Г.10 Хранилище памяти

Г.10.1 Массовая память

Большое количество данных, связанных с обрабатываемыми на супер-ЭВМ приложениями, требует средств массовой памяти для архивирования, передачи, резервирования и восстановления данных. Эти средства должны обеспечить пользователей виртуальной памятью неограниченного объема. Организация средств массовой памяти может быть обеспечена путем построения иерархии соответствующих запоминающих устройств.

Средства массовой памяти необходимы для:

  • передачи данных в массовую память и из нее;

  • обеспечения пользователю прозрачного доступа к массовой памяти;

  • обеспечение работы автоматических систем архивирования, резервирования и восстановления данных;

  • обеспечения удаления файлов.

Г.10.2 Системы запоминающих устройств

Системы запоминающих устройств образуются из запоминающих устройств различного уровня, подключаемых локально или через сеть. Файлы могут передаваться по различным уровням и иерархии запоминающих устройств. Важно, чтобы движение данных было прозрачно для пользователя. Место физического хранения конкретного файла не должно интересовать пользователя. Соответственно пользователи могут использовать все утилиты управления файлами без привязки к конкретному месту хранения файлов.

Г.11 Сменные носители

Для обеспечения управления сменными носителями и доступа к ним необходима разработка стандарта для команд пользователя.

Г.11.1 Функции прикладного программного интерфейса

Должны быть обеспечены функции для:

  •  перемотки лент;

  •  вызова сменного носителя для загрузки и разгрузки на соответствующем устройстве;

  •  записи конца файла;

  •  определения переполнения носителя и выдачи соответствующего сообщения.

Г.11.2 Утилиты для устройств со сменными носителями

Должны быть обеспечены стандартные сервисные программы на уровне команд для:

  •  перемотки носителя;

  •  загрузки носителя;

  •  разгрузки носителя;

  • определения подключенного носителя;

  • определения типа разметки;

  • перемещения по пространству файла;

  • размещения записей в пространстве файла.

Предыдущая глава

    ОГЛАВЛЕНИЕ    

Следующая глава