Следующие переменные реализации из POSIX.1 (ИСО/МЭК 9945-1 [9]) имеют минимальные требования, указанные ниже. Фактические значения должны быть установлены в ЗСР (см. таблицу 2).
Таблица 2
В ЗСР должно быть приведено краткое описание реализации, включая возможность рестарта с контрольной точки и ограничений ресурсов. См. 6.3.1.2.
5.3.2. Варианты
Настоящий стандарт (POSIX.10) предусматривает ряд вариантов. В ЗСР должен быть определен уровень поддержки для каждого из следующих вариантов:
- язык Ада и привязки языка Ада (POSIX.5) (ИСО/МЭК 8652 [2], ИСО/МЭК 14519 [10]). Наличие этого варианта обозначено конфигурационной переменной {POSIX_SUPER_ADA};
- язык ФОРТРАН 90 (стандарты серии ИСО/МЭК 1539 [5] - [7]). Наличие этого варианта обозначено конфигурационной переменной {POSIX_SUPER_F90};
- услуги справочника POSIX (P1224.2) (ИСО/МЭК 14392 [13]). Наличие этого варианта обозначено конфигурационной переменной {POSIX_SUPER_DIRNAME};
- ленты, размеченные по ИСО (ИСО 1001 [8]). Наличие этого варианта обозначено конфигурационной переменной {POSIX_SUPER_ISO1001}.
Приложением, строго соответствующим настоящему стандарту (POSIX.10), является приложение, которое использует только средства, требуемые аттестуемой реализацией. Такое приложение должно допускать любое поведение, описанное в разделе 6 как неопределенное или зависящее от реализации, а для символических констант - допускать любое значение в диапазоне, разрешенном в разделе 6. Такие приложения разрешается адаптировать к средствам, которые обозначены константами в 6.2.
5.4.2. Соответствие используемым вариантам профиля
Приложение соответствует используемым вариантам профиля, если оно использует только средства, требуемые аттестуемой реализацией, и один или несколько вариантов, предусмотренных настоящим стандартом. Такое приложение должно удовлетворять требованиям, установленным для строго соответствующего приложения, а также должно допускать любое поведение, установленное для используемых вариантов.
5.4.3. Соответствие с расширениями
Приложение является соответствующим с расширениями, если для него требуются средства помимо указанных в настоящем стандарте.
5.4.4. Заявка о соответствии приложения
Для приложения, претендующего на соответствие настоящему стандарту, должна быть подготовлена заявка о соответствии (ЗС) приложения. В ЗС должно быть определено, является ли приложение строго соответствующим, соответствующим используемым вариантам или соответствующим с расширениями.
Если приложению требуются некоторые варианты из настоящего стандарта, требуемые варианты должны быть перечислены в ЗС.
Если приложение является соответствующим с расширениями, в ЗС должны быть перечислены требуемые расширения и описано поведение каждого расширения.
В ЗС для аттестуемого приложения должны быть определены минимальные системные ресурсы, необходимые для функционирования приложения.
В настоящем разделе определены стандарты, являющиеся частью описываемого профиля, и область применения состояния любых необязательных (факультативных) требований, содержащихся в этих стандартах.
Конфигурационные переменные должны быть использованы для установления наличия или отсутствия каждого варианта в описываемом профиле. Имена конфигурационных переменных, начинающиеся со строки "POSIX_SUPER_", зарезервированы для использования в данном профиле.
Утилита getconf из POSIX.2 (ИСО/МЭК 9945-2 [1]) должна быть расширена для распознавания каждой конфигурационной переменной с именем, начинающимся с "POSIX_SUPER_". Реализация должна задавать значение каждой конфигурационной переменной для определения вариантов, обеспечиваемых данной реализацией.
Если данный вариант поддерживается реализацией, значение соответствующей конфигурационной переменной должно быть равно 1; иначе конфигурационная переменная должна быть неопределенной. Утилита getconf должна возвращать соответствующее значение, когда одно из имен конфигурационной переменной, указанных в этом разделе, используется как параметр.
Соответствие профилю, описанному в настоящем стандарте, должно быть установлено как:
{POSIX_SUPER_VERSION}=1.
Данным профилем устанавливаются следующие конфигурационные переменные:
Конфигурационные переменные POSIX.10:
{POSIX_SUPER_VERSION};
{POSIX_SUPER_ADA};
{POSIX_SUPER_F90};
{POSIX_SUPER_DIRNAME};
{POSIX_SUPER_ISO1001}.
В некоторых ссылочных базовых стандартах наличие или отсутствие варианта обозначено так же, как в настоящем стандарте. В описываемом профиле использованы нижеперечисленные обозначения вариантов для ссылки на состояния вариантов в некоторых базовых стандартах.
Обозначения вариантов базового стандарта:
{_POSIX_JOB_CONTROL};
{_POSIX_SAVED_IDS};
{_POSIX_CHOWN_RESTRICTED};
{_POSIX_NO_TRUNC};
{_POSIX_VDISABLE};
{_POSIX_ASYNCHRONOUS_IO};
{POSIX2_SW_DEV};
{POSIX2_C_DEV};
{POSIX2_C_BIND};
{POSIX2_FORT_DEV};
{POSIX2_FORT_RUN};
{POSIX2_UPE};
{POSIX2_CHAR_TERM};
{POSIX2_PBS}.
6.3.1. Обязательные стандарты
6.3.1.1. Системный интерфейс POSIX.1
Система должна соответствовать POSIX.1 (ИСО/МЭК 9945-1 [9]) с вариантами и значениями, установленными в настоящем пункте.
Должны быть определены следующие конфигурационные переменные из POSIX.1 и обеспечена поддержка поведения, связанного с каждой конфигурационной переменной:
{_POSIX_JOB_CONTROL};
{_POSIX_SAVED_IDS};
{_POSIX_CHOWN_RESTRICTED};
{_POSIX_NO_TRUNC};
{_POSIX_VDISABLE}.
Реализация должна обеспечивать значения, равные или большие следующих минимальных значений для указанных переменных из POSIX.1 (см. таблицу 3). Фактическое значение для каждой переменной должно быть определено в ЗСР.
Таблица 3
Объект в языке, привязываемый соответственно к типу данных off_t из POSIX.1, должен содержать по крайней мере 32 бита. Фактическое число битов в off_t должно быть определено в ЗСР.
После входа в систему среда должна содержать переменные HOME и LOGNAME.
Реализация должна включать в себя определяемую реализацией возможность рестарта с контрольной точки.
Реализация должна включать в себя определяемую реализацией возможность ограничения ресурсов. Любая аттестуемая реализация должна гарантировать, что setsid() не может быть использован общим пользователем для выхода из пределов ресурсов.
Реализация должна соответствовать POSIX.9 (ИИЭЭ Стд 1003.9 [11]). См. также 6.6.2.2, который требует соответствия стандарту языка ФОРТРАН 77 (АНСИ X3.9 [4]).
POSIX флажок ввода-вывода должен быть автоматически установлен кодом запуска среды ФОРТРАН 77 к значению, которое заставляет выполнять POSIX ввод-вывод.
Среда ФОРТРАН 77 должна содержать переменные HOME и LOGNAME.
Все конфигурационные переменные и обозначения вариантов, установленные в настоящем профиле, должны иметь те же самые значения при доступе к программам на языке ФОРТРАН 77 или Си.
6.3.1.4. Расширения в реальном масштабе времени (POSIX.4)
Реализация должна соответствовать POSIX.4 (ИСО/МЭК 9945-1 [9] в отношении расширений в реальном масштабе времени ППИ):
- асинхронный ввод и вывод.
Должно быть обеспечено поведение, связанное с {_POSIX_ASYNCHRONOUS_IO}.
6.3.2. Варианты интерфейса операционной системы
Данный вариант должен соответствовать POSIX.5 (ИСО/МЭК 14519 [10]). См. также 6.6.3.2, который требует соответствия стандарту на язык Ада (ИСО/МЭК 8652 [2]).
Если предусмотрен языковой процессор, соответствующий ИСО/МЭК 8652 [2], тогда должен быть реализован POSIX.5.
Среда Ады должна содержать переменные HOME и LOGNAME.
Если язык Ада обеспечен, то все конфигурационные переменные и обозначения вариантов, установленные в настоящем профиле, должны иметь те же самые значения при доступе к программам на языках Ада, ФОРТРАН 77 или Си.
В ЗСР должно быть указано, что данный вариант реализован или нет.
Если вариант языка Ада поддерживается, конфигурационная переменная {POSIX_SUPER_ADA} должна иметь значение, равное 1.
6.4.1. Обязательные стандарты
6.4.1.1. Оболочка и утилиты POSIX.2
Система должна соответствовать POSIX.2 (ИСО/МЭК 9945-2 [1]) с учетом вариантов, определенных в настоящем пункте.
Должны быть определены следующие конфигурационные переменные из POSIX.2 и обеспечено поведение, соответствующее каждой конфигурационной переменной:
{POSIX2_SW_DEV} - вариант утилит разработки программных средств (раздел 6 ИСО/МЭК 9945-2 [1]);
{POSIX2_C_DEV} - вариант утилит разработки на языке Си (приложение A к ИСО/МЭК 9945-2 [1]);
{POSIX2_C_BIND} - вариант привязок языка Си (приложение B к ИСО/МЭК 9945-2 [1]);
(POSIX2_FORT_DEV) и {POSIX2_FORT_RUN} - вариант утилит разработки на ФОРТРАНе (приложение C к ИСО/МЭК 9945-2 [1]);
{POSIX2_UPE} - расширение переносимости пользователя;
{POSIX2_CHAR_TERM} - вариант символьного терминала.
6.4.1.2. Организация пакетных очередей по POSIX.15
Реализация должна соответствовать POSIX.15 (ИИЭЭ Стд 1003.2d [12]).
Должно быть обеспечено поведение, связанное с конфигурационной переменной {POSIX2_PBS}.
6.5.1. Обязательные стандарты
В данной версии профиля графические расширения не требуются.
6.6.1. Обозначение
Наличие необязательного (факультативного) языка программирования должно быть определено конфигурационной переменной. Идентификаторами необязательных языков являются:
{POSIX_SUPER_ADA} и
{POSIX_SUPER_F90}.
6.6.2. Обязательные стандарты
6.6.2.1. Язык Си
Реализация должна соответствовать стандарту на язык Си (ИСО/МЭК 9899 [3]).
Реализация должна соответствовать стандарту на язык ФОРТРАН 77 (АНСИ X3.9 [4]). См. также 6.3.1.3, в котором требуется соответствие стандарту по привязкам языка ФОРТРАН 77 к POSIX (ИИЭЭ Стд 1003.9 [11]).
6.6.2.3. Взаимодействие языков
Прикладные программы, написанные на любом из языков, указанных в настоящем профиле, должны обеспечивать обмен данными с использованием текстовых файлов в конкретной POSIX-области в соответствии с POSIX.2 (2.5.1 ИСО/МЭК 9945-2 [1]). Определение текстовых файлов - по POSIX.2 (2.2.2.181 ИСО/МЭК 9945-2 [1]).
Кроме того, языки Си и ФОРТРАН 77 должны обеспечивать двоичный обмен данными в конкретной центральной системе. Не требуется обмен двоичными данными между различными видами главных (хост) машин или между различными реализациями соответствующей среды. В ЗСР для реализации должно быть указано, какие версии компиляторов и вспомогательных библиотек требуются для обмена двоичными данными.
Формат двоичных данных не определен; файл двоичных данных является потоком битов, выгружаемых из памяти. Для записи файла двоичных данных должна быть использована соответствующая привязка к функции write() из POSIX.1 (ИСО/МЭК 9945-1 [9]). Для чтения файла двоичных данных должна быть использована соответствующая привязка к функции read() из POSIX.1 (ИСО/МЭК 9945-1 [9]). Двоичный файл данных, записанный программой на одном языке и затем считанный программой на другом языке, должен создавать исходную последовательность битов в пространстве памяти читателя.
Все другие взаимодействия языков определяются реализацией.
6.6.3. Варианты языков
Реализация следующих языков является необязательной. В случае реализации эти языки должны соответствовать конкретным стандартам.
6.6.3.1. Язык ФОРТРАН 90
Этот вариант должен соответствовать стандарту на язык ФОРТРАН 90 (стандарты серии ИСО/МЭК 1539 [5] - [7]).
Если обеспечивается вариант реализации стандарта на язык ФОРТРАН 90, конфигурационная переменная {POSIX_SUPER_F90} должна принимать значение, равное 1.
В ЗСР должно быть указано о реализации или отсутствии данного варианта.
Если обеспечивается вариант реализации стандарта на язык Ада, то должны быть обеспечены привязки языка Ада, указанные POSIX.5 (ИСО/МЭК 14519 [10]).
Если обеспечивается вариант реализации стандарта на язык Ада, конфигурационная переменная {POSIX_SUPER_ADA} должна принимать значение, равное 1.
В ЗСР должно быть указано о реализации или отсутствии данного варианта.
6.7.1. Обязательные стандарты
В настоящей версии профиля расширения защиты не требуются.
6.8.1. Обязательные стандарты
В настоящей версии профиля расширения административного управления не требуются.
6.9.1. Обозначение
Наличие сетевого варианта должно быть указано соответствующей конфигурационной переменной {POSIX_SUPER_DIRNAME}.
6.9.2. Обязательные стандарты
В настоящей версии профиля сетевые стандарты не требуются. Все сетевые стандарты являются необязательными.
6.9.3. Варианты организации сети
В ЗСР должно быть указано о реализации или отсутствии каждого варианта.
6.9.3.1. Услуги справочника P1224.2
Этот вариант должен соответствовать P1224.2 (ИСО/МЭК 14392 [13]).
Наличие этого варианта должно быть указано значением 1 для конфигурационной переменной {POSIX_SUPER_DIRNAME}.
В настоящей версии профиля услуги хранилища данных не требуются.
6.11.1. Обозначение
Наличие варианта сменных носителей должно быть указано конфигурационной переменной {POSIX_SUPER_ISO1001}.
6.11.2. Обязательные стандарты
В настоящей версии профиля расширения сменных носителей не требуются.
6.11.3. Варианты сменных носителей
6.11.3.1. Размеченные ленты
Реализация варианта размеченных магнитных лент является необязательной. Если такой вариант реализуется, он должен соответствовать стандарту на размеченную ленту (ИСО 1001 [8]).
Этот стандарт определяет структуры файла и разметку магнитных лент для обмена информацией.
Наличие этого варианта должно быть указано значением 1 для конфигурационной переменной {POSIX_SUPER_ISO1001}.
В ЗСР должно быть указано о реализации или отсутствии данного варианта.
(обязательное)
В настоящем разделе перечислены варианты, определенные в настоящем профиле. Для каждого варианта установлена конфигурационная переменная, которая должна принимать определенное значение, если конкретная реализация обеспечивает данный вариант.
Конфигурационная переменная {POSIX SUPER VERSION} указывает обозначение версии профиля, которая обеспечивается конкретной реализацией. Для версии профиля, описанной в настоящем стандарте, данная переменная должна принимать значение, равное 1.
Конфигурационные переменные, перечисленные в таблице А.1, определены в настоящем стандарте. Если конкретный вариант обеспечивается реализацией, соответствующая ему конфигурационная переменная должна принимать значение, равное 1. Если конкретный вариант не обеспечивается реализацией, соответствующая ему конфигурационная переменная должна быть неопределенной.
Таблица А.1
Конфигурационные переменные реализации
В настоящем профиле требуется обеспечение тех функциональных возможностей, которые в базовых стандартах являются необязательными. Обозначения вариантов, перечисленные в таблице А.2, должны быть определены в реализации, а соответствующие им функциональные возможности должны быть обеспечены реализацией.
Таблица А.2
Указатели вариантов базовых стандартов
(справочное)
Базовые стандарты POSIX взаимоувязаны. В настоящем приложении рассмотрены связи для случаев, не охваченных базовыми стандартами.
Данная матрица помогает определить взаимодействие между стандартами. В таблице Б.1 показаны виды взаимодействий между каждой парой стандартов, на которые даны ссылки в настоящем профиле.
Таблица Б.1
Взаимосвязи между стандартами
???????????????????????????????????????????????????????????????????????????
? Стандарт ? A ? B ? C ? D ? E ? F ? G ? H ? I ? J ? K ?
???????????????????????????????????????????????????????????????????????????
?A POSIX.1 ? ? * ? * ? * ? * ? * ? * ? 1 ? 1 ? 1 ? 5 ?
???????????????????????????????????????????????????????????????????????????
?B POSIX.2 ? * ? ? * ? * ? * ? * ? * ? + ? + ? + ? + ?
???????????????????????????????????????????????????????????????????????????
?C POSIX.4 ? * ? * ? ? * ? * ? * ? * ? 1 ? 1 ? 1 ? 5 ?
???????????????????????????????????????????????????????????????????????????
?D POSIX.5 ? * ? * ? * ? ? * ? * ? * ? + ? + ? * ? + ?
???????????????????????????????????????????????????????????????????????????
?E POSIX.9 ? * ? * ? * ? * ? ? * ? * ? * ? + ? + ? 5 ?
???????????????????????????????????????????????????????????????????????????
?F POSIX.15 ? * ? * ? * ? * ? * ? ? * ? + ? + ? + ? + ?
???????????????????????????????????????????????????????????????????????????
?G P1224.2 ? * ? * ? * ? * ? * ? * ? ? 1 ? 1 ? 1 ? 5 ?
???????????????????????????????????????????????????????????????????????????
?H ФОРТРАН 77 ? 1 ? + ? 1 ? + ? * ? + ? 1 ? ? 3 ? 2 ? 4 ?
???????????????????????????????????????????????????????????????????????????
?I Си ? 1 ? + ? 1 ? + ? + ? + ? 1 ? 3 ? ? 2 ? 4 ?
???????????????????????????????????????????????????????????????????????????
?J Ада ? 1 ? + ? 1 ? * ? + ? + ? 1 ? 2 ? 2 ? ? 4 ?
???????????????????????????????????????????????????????????????????????????
?K ФОРТРАН 90 ? 5 ? + ? 5 ? + ? 5 ? + ? 5 ? 4 ? 4 ? 4 ? ?
???????????????????????????????????????????????????????????????????????????
? Примечания ?
? 1. Символьные обозначения: ?
? - + - отсутствует взаимодействие для данной пары; ?
? - * - взаимодействия определяются базовыми стандартами. ?
? 2. Цифровые обозначения: ?
? - 1 - взаимодействие между языком программирования и POSIX?
?определяется привязкой языка; ?
? - 2 - приложение может обмениваться данными, используя текстовые?
?файлы, с приложением, написанным на одном из языков, определенных в?
?настоящем профиле; ?
? - 3 - приложения, написанные на Си и ФОРТРАН 77, могут обмениваться?
?текстовыми файлами и файлами двоичных данных; ?
? - 4 - привязка ФОРТРАН 90 к POSIX отсутствует. Поэтому профиль может?
?требовать только обмена текстовыми файлами с приложениями, написанными на?
?других языках; ?
? - 5 - привязка ФОРТРАН 90 к POSIX отсутствует. Следовательно, любые?
?взаимодействия с базовыми стандартами POSIX не определены. ?
???????????????????????????????????????????????????????????????????????????
Каждая строка и колонка матрицы отмечена буквами, обозначающими один из стандартов. Буквы имеют следующие смысловые значения:
A - POSIX.1 (интерфейс POSIX по ИСО/МЭК 9945-1 [9]);
B - POSIX.2 (оболочка и утилиты POSIX по ИСО/МЭК 9945-2 [1]);
C - POSIX.4 (расширения реального времени по ИСО/МЭК 9945-1 [9]);
D - POSIX.5 (интерфейсы языка Ада с POSIX по ИСО/МЭК 14519 [10]);
E - POSIX.9 (интерфейсы языка ФОРТРАН 77 с POSIX по ИИЭЭ Стд 1003.9 [11]);
F - POSIX.15 (пакетные расширения POSIX по ИИЭЭ Стд 1003.2d [12]);
G - P1224.2 (услуги справочника по ИСО/МЭК 14392 [13]);
H - стандарт ФОРТРАН 77 (АНСИ X3.9 [4]);
I - стандарт Си (ИСО/МЭК 9899 [3]);
J - стандарт Ады (ИСО/МЭК 8652 [2]);
A - POSIX.1 (интерфейс POSIX по ИСО/МЭК 9945-1 [9]).
Этот базовый стандарт определяет прикладной интерфейс с примитивами нижележащих операционных систем.
B - POSIX.2 (оболочка и утилиты POSIX по ИСО/МЭК 9945-2 [1]).
Этот базовый стандарт определяет команды оболочки и строки команд утилит, которые используются пользователями и командными файлами.
C - POSIX.4 (расширения реального времени по ИСО/МЭК 9945-1 [9]).
Этот базовый стандарт определяет только возможности асинхронного ввода-вывода, требуемые настоящим стандартом.
D - POSIX.5 (интерфейсы языка Ада с POSIX по ИСО/МЭК 14519 [10]).
Этот базовый стандарт определяет интерфейсы языка Ада с примитивами операционной системы, определенными в POSIX.1.
E - POSIX.9 (интерфейсы языка ФОРТРАН 77 с POSIX по ИИЭЭ Стд 1003.9 [11]).
Этот базовый стандарт определяет интерфейсы языка ФОРТРАН 77 с примитивами операционной системы, определенными в POSIX.1.
F - POSIX.15 (пакетные расширения POSIX по ИИЭЭ Стд 1003.2d [12]).
Этот базовый стандарт определяет интерфейс командной строки с переносимой системой организации пакетных очередей.
G - P1224.2 (услуги справочника по ИСО/МЭК 14392 [13]).
Этот базовый стандарт определяет интерфейс с именованной услугой, которая может быть использована для поиска информации, необходимой для доступа к некоторому объекту, локально или через сеть.
H - стандарт ФОРТРАН 77 (АНСИ X3.9 [4]).
Этот базовый стандарт определяет синтаксис и семантику языка ФОРТРАН 77.
I - стандарт Си (ИСО/МЭК 9899 [3]).
Этот базовый стандарт определяет синтаксис и семантику языка Си.
J - стандарт Ады (ИСО/МЭК 8652 [2]).
Этот базовый стандарт определяет синтаксис и семантику языка Ада.
Эти базовые стандарты определяют синтаксис и семантику языка ФОРТРАН 90.
(справочное)
В настоящем приложении рассмотрены виды стандартов, необходимых для развития переносимости (мобильности) в среде суперЭВМ.
Профиль, описанный в настоящем стандарте, устанавливает требования к переносимости приложений, пользователей и системных администраторов в среде суперЭВМ. Для дальнейшего развития переносимости во всех этих областях необходима разработка дополнительных стандартов.
В.2.1. Переносимость приложений
На переносимость приложений влияют исходные программы и среда их выполнения.
Переносимость приложений в первую очередь обеспечивается переносимостью исходных программ, определяемой стандартами на языки. Переносимое приложение должно использовать стандартные системные интерфейсы, определенные в соответствующих стандартах на POSIX. Применяя средства, определенные в настоящем профиле, приложение будет использовать общий набор услуг, который расширяет переносимость на различные платформы суперЭВМ.
Переносимое приложение должно быть в состоянии вызывать соответствующую среду, при необходимости изменять ее и настраиваться на существующие условия среды. Переносимое приложение должно иметь средства для:
- запроса соответствующих ресурсов;
- ожидания доступа к требуемым ресурсам;
- выключения неиспользуемых более ресурсов;
- сохранения образа выполняемой задачи (контрольной точки).
Переносимые приложения в среде суперЭВМ должны обрабатывать значения для:
- минимальных и максимальных чисел с плавающей точкой с допустимой погрешностью;
- минимальных и максимальных двойных чисел с плавающей точкой с допустимой погрешностью;
- минимальных и максимальных целых чисел;
- минимальных и максимальных длинных целых чисел;
- минимальных и максимальных коротких целых чисел;
- максимально допустимой программно-адресуемой памяти;
- максимально допустимого объема файла прямого доступа;
- числа используемых доступных центральных процессоров (ЦП).
В.2.2. Переносимость пользователя
Пользователи суперЭВМ применяют широкий спектр системных услуг. Переносимость пользователя предполагает, что различные платформы суперЭВМ будут иметь один и тот же стандартный интерфейс для всех требуемых услуг.
Пользователи должны иметь возможность:
- целенаправленной работы в пакетном и интерактивном режимах;
- сохранения образа выполняемой задачи (контрольной точки);
- рестарта с сохраненной контрольной точки;
- интерактивного выполнения отладки приложения в символических адресах;
- регулировки приоритетов обработки и сеанса;
- запроса учетных данных по загрузке и ограничениям;
- изменения заявленных расходов ресурсов для различных расчетов;
- определять имеющиеся варианты компиляции (векторизатор, мультиобработка и т.д.);
- применять постоянный тип интерфейса пользователя.
В.2.3. Переносимость администратора
Администраторам суперЭВМ необходимы стандартные средства для управления стандартными услугами.
Администраторы систем суперЭВМ должны иметь возможности для:
- управления ограничениями ресурсов;
- изменения приоритетов пользователя;
- управления пакетной системой;
- создания контрольных точек перед остановкой системы;
- размещения системных ресурсов по конкретным приложениям;
- поиска учетных данных;
- изменения распределения ресурсов;
- управления лентами и другими сменными носителями.
Необходимы стандарты для интерфейсов, указанных в настоящем разделе.
В.3.1. Интерфейсы для управления ресурсами
Необходимы функции для выбора и установления ограничений пользователя при обработке или в сеансе.
Ограничения должны быть указаны по конкретным ресурсам, таким как ЦП, память, дисковые, ленточные и графические устройства.
Такой объект системных ресурсов, как сеанс применим для управления ресурсами, используемыми группой связанных процессов. Реализация должна предотвращать выход процесса из сеанса потому, что это может привести к потере управления ресурсами. Это требование распространяется на механизм удержания процесса в сеансе или на определение нового вида сеанса.
Различные виды ограничения ресурсов включают в себя:
- максимальное время работы ЦП;
- максимальный объем памяти;
- максимальный размер базового файла;
- максимальное число периферийных устройств;
- максимальный объем единичного файла;
- максимальное число ЦП;
- минимальную точность значения.
Для каждого вида ограничения ресурсов могут быть установлены жесткие или мягкие границы или те и другие одновременно.
Ограничения могут быть наложены на одну или на все следующие категории:
- единичный процесс;
- все процессы в сеансе;
- все процессы в группе процессов;
- все процессы в группе сеансов.
Если ограничения ресурсов нарушены, виновный процесс или процессы должны быть отмечены соответствующим сигналом.
В.3.1.2. Резервирование, учет и запрос ресурсов
Необходимы функции для резервирования ресурсов, учета и контроля использования ресурсов и запроса доступности ресурсов.
Если приложение не может предварительно зарезервировать ресурс, оно должно находиться в ждущем состоянии до тех пор, пока ресурс не станет доступным. Для обеспечения этого должна быть реализована возможность обнаружения "мертвых точек" и управления ими между многими приложениями.
Для услуг, указанных в настоящем разделе, необходимы дополнительные стандарты.
В.4.1. Утилиты для учета
Необходимы интерфейсы утилит для определения:
- окончания сеанса некоторого пользователя при увеличении загрузки по какому-либо ресурсу;
- изменения расчета ресурса, по которому будет увеличена загрузка для данного пользователя на следующем сеансе;
- отчета об увеличении загрузки в текущем сеансе по сравнению с расчетной;
- отчета об увеличении загрузки по сравнению с расчетными значениями, установленными ранее.
В.4.2. Утилиты для рестарта с контрольной точки
Необходимы интерфейсы утилит для:
- определения контрольной точки процесса или группы процессов;
- рестарта процесса или группы процессов с ранее установленной контрольной точки.
При установлении контрольной точки создается файл, содержащий информацию, необходимую для рестарта. После успешного рестарта процесс или группа процессов попадают в среду, восстановленную по состоянию, определяемому функциями рестарта с контрольной точки.
В.4.3. Утилиты для резервирования ресурсов
Должны быть обеспечены стандартные сервисные программы на уровне команд для:
- распределения и перераспределения устройств;
- запроса доступа к устройству:
- дополнительного входа,
- удаленного входа,
- изменения приоритета;
- ожидания доступа к устройству и прохождения "мертвой точки".
В.4.4. Утилиты для контроля ограничения ресурсов
Должны быть обеспечены интерфейсы утилит для выбора и установления ограничений на ресурсы пользователя.
Различные виды ограничений ресурсов охватывают:
- максимальное время работы ЦП;
- максимальный объем памяти;
- максимальный размер базового файла;
- максимальное число периферийных устройств;
- максимальный объем единичного файла;
- максимальное число ЦП;
- минимальную точность значения.
Для каждого вида ограничения ресурсов могут быть установлены жесткие или мягкие границы или те и другие одновременно.
Ограничения могут быть наложены на одну или на все следующие категории:
- единичный процесс;
- все процессы в сеансе;
- все процессы в группе процессов;
- все процессы в группе сеансов.
Если ограничения ресурсов нарушены, виновный процесс или процессы должны быть отмечены соответствующим сигналом.
В.4.5. Утилиты для разработки программных средств
В.4.5.1. Символический отладчик
Для всех необходимых и необязательных компиляторов, за исключением языка ЛИСП, должна быть установлена утилита отладки в символических адресах, обладающая следующими минимальными функциональными возможностями:
- распечатки или отображения значения именованной переменной в формате, зависящем от реализации;
- отображения значений в различных форматах, включая целочисленные, с плавающей точкой, символьный, восьмеричный, шестнадцатеричный и т.д.;
- инициализации выполнения программы с возможностью передачи параметров для данной программы, имитирующей передачу из оболочки;
- прерывания выполнения программы перед выполнением заданной строки исходной программы;
- выбора условных прерываний (наиболее важно прерывание по счетчику итераций);
- выбора имени блока или устройства отображения, на которых можно отображать переменные;
- выполнения только следующей строки и останова;
- возобновления выполнения из состояния останова;
- изменения значений именованной переменной;
- определения адреса символа;
- отображения хода выполнения в обратном направлении (эта возможность определяется реализацией);
- выхода из отладчика.
Символический отладчик может не распечатывать переменные и не выбирать точки останова в своих внутренних или библиотечных функциях.
Традиционные суперЭВМ используют модель генерации вывода графических результатов, в которой файл выходных команд инициализирует некоторое устройство, выдающее твердую копию результатов. Вызванное устройство в дальнейшем интерактивно работает с программой вывода графики. Для обеспечения унифицированных интерфейсов таких программ с графическими устройствами необходима разработка соответствующих стандартов.
В первую очередь необходима разработка стандартов для интерфейсов POSIX с системой X-window и системы X-window с ИИГСП (иерархической интерактивной графической системой программиста).
В.6.1. Представление данных в формате с плавающей точкой
Системы суперЭВМ имеют различные форматы представления данных с плавающей точкой, в результате чего переносимые программы выдают результаты с различной точностью.
Для унификации результатов работ переносимых программ в формате с плавающей точкой в среде суперЭВМ необходима разработка единого стандарта.
В.6.2. Компиляторы ФОРТРАН 77 и ФОРТРАН 90
Интерфейс утилит существующих компиляторов должен быть расширен для распознавания дополнительных параметров компиляции, перечисленных ниже. Все эти параметры компиляции являются необязательными. Реализация по умолчанию должна:
- создавать карту загрузки для всех объектных файлов, обрабатываемых при данном вызове компилятора, если компилятор вызывается без опции (c). Карта загрузки должна содержать список точек входа для каждой подпрограммы. Если компилятор размещает переменные статически, он должен перечислять адреса памяти, в которые загружается каждая переменная. Данное перечисление не должно охватывать точки входа для внутренних функций, функций библиотек и стандартных подпрограмм;
- создавать листинг перекрестных ссылок, указывающий для каждой подпрограммы и переменной номер строки исходного кода, в которой они определяются, и каждой строки исходного кода, в которой на них даются ссылки.
Стандартные механизмы для определения параметров компиляции должны быть установлены соответствующими стандартами на языки.
Аутентификация пользователя на конкретные машины должна обеспечиваться соответствующей средой защиты. Для сетевых приложений в данной среде также требуется обеспечение аутентификации главной машины.
Реализация средств проверки защиты POSIX в среде суперЭВМ требует дальнейшего изучения.
В.8.1. Требования административного управления для периферийных устройств:
- освобождение накопителя для пользователя;
- управление очередями (исключение, состояния, запуск и останов);
- уведомление оператора о необходимости подключения накопителя;
- уведомление пользователя об удовлетворении запросов.
В.8.2. Требования административного управления для пакетного режима:
- к конфигурации очередей: к каждой очереди должны быть привязаны соответствующие атрибуты, общие ограничения, ограничения по доступу и взаимосвязи очередей друг с другом;
- к запуску пакетной системы;
- к отключению пакетной системы;
- по блокировке-разблокировке включения соответствующих запросов в конкретную очередь;
- по блокировке-разблокировке обработки запросов в очереди;
- к изменению приоритета запроса в очереди;
- к сопровождению списка доступных главных машин.
В.8.3. Требования административного управления для массовой памяти
Необходимы средства административного управления для:
- реализации стратегии передачи данных в иерархическую массовую память и из нее;
- санкционирования и контроля доступа пользователя к массовой памяти;
- систем автоматического архивирования, резервирования и восстановления данных административного управления.
В.8.4. Требования административного управления по учету использования ресурсов
Необходимы интерфейсы утилит, позволяющие системному администратору или оператору блокировать и разблокировать учет использования ресурсов, изменять набор используемых ресурсов при возрастании нагрузки со стороны пользователя, выбирать и изменять ресурсы, используемые по умолчанию, при вхождении в систему пользователя, требующего использования дополнительных ресурсов, а также выдавать следующую отчетную информацию:
- используемые ресурсы обработки (должна быть выдана следующая информация по каждому сеансу):
- время и длительность сеанса,
- контролируемый объект,
- время загрузки пользователем ЦП,
- время загрузки ЦП системой,
- приоритет сеанса,
- общий объем используемой оперативной памяти,
- максимальный объем используемых внешних запоминающих устройств,
- максимальный объем используемой области выгрузки программ,
- число переданных физических блоков ввода-вывода,
- число используемых устройств со сменными носителями;
- используемые ресурсы запоминающих устройств, работающих с ЦП;
- используемые стандартные подпрограммы.
В.8.5. Требования административного управления для рестарта с контрольной точки
Необходимы интерфейсы утилит, позволяющие системному администратору или оператору создать контрольную точку, а затем перезапускать с нее все процессы.
В.8.6. Требования административного управления для ограничения контролируемых ресурсов
Необходимы интерфейсы, позволяющие системному администратору или оператору устанавливать или менять ограничения на все используемые ресурсы.
Требования к ограничениям ресурсов - по В.3.1.1.
Необходимы, как минимум, следующие средства организации сети:
- протокол передачи файла, позволяющий пользователю вызывать файл для передачи через сеть;
- средства для пользователя с удаленного рабочего места, позволяющие ему обращаться к суперЭВМ через сеть и выполнять свои задачи на данной машине;
- средства для передачи строк графического протокола через суперЭВМ на удаленные устройства отображения;
- средства для обработки на суперЭВМ процедур запросов от удаленного пользователя, переданных через сеть, а также для пересылки запросов на соответствующий сервер сети.
В.10.1. Массовая память
Многочисленные данные, связанные с обрабатываемыми на суперЭВМ приложениями, требуют средств массовой памяти для архивирования, передачи, резервирования и восстановления данных. Эти средства должны обеспечить пользователей виртуальной памятью неограниченного объема. Организация средств массовой памяти может быть обеспечена путем построения иерархии соответствующих запоминающих устройств.
Средства массовой памяти необходимы для:
- передачи данных в массовую память и из нее;
- обеспечения пользователю прозрачного доступа к массовой памяти;
- обеспечения работы автоматических систем архивирования, резервирования и восстановления данных;
- обеспечения удаления файлов.
В.10.2. Системы запоминающих устройств
Системы запоминающих устройств образуются из запоминающих устройств различного уровня, подключаемых локально или через сеть. Файлы могут передаваться по различным уровням и иерархии запоминающих устройств. Важно, чтобы движение данных было прозрачно для пользователя. Место Физического хранения конкретного файла пользователя не интересует. Соответственно пользователи могут использовать все утилиты управления файлами без привязки к конкретному месту хранения файлов.
Необходима разработка единого стандарта для команд пользователя, обеспечивающих управление сменными носителями и доступ к ним.
В.11.1. Функции прикладного интерфейса
Должны быть обеспечены функции для:
- перемотки лент;
- вызова сменного носителя для загрузки и разгрузки на соответствующем устройстве;
- записи конца файла;
- определения переполнения носителя и выдачи соответствующего сообщения.
В.11.2. Утилиты для устройств со сменными носителями
Должны быть обеспечены стандартные сервисные программы на уровне команд для:
- перемотки носителя;
- загрузки носителя;
- разгрузки носителя;
- определения подключенного носителя;
- определения типа разметки;
- перемещения по пространству файла;
- размещения записей в пространстве файла.
(справочное)
СуперЭВМ рассматривают как очень мощные ЭВМ общего назначения и используют для тех же задач, что и малые ЭВМ. Однако мощность суперЭВМ позволяет выполнять приложения, которые не могут быть реализованы на ЭВМ других видов. Для таких приложений обычно требуется наличие большого объема ресурсов.
Конкретные характеристики суперЭВМ и приложений для них охватывают:
- большое число данных;
- большой объем физических ресурсов;
- длительное время выполнения;
- высокую производительность;
- длительный цикл обработки;
- дорогостоящие ресурсы.
Г.2.1. Большое число данных
Большое число данных, циркулирующих в типовых приложениях для суперЭВМ, вызывает необходимость стандартизации следующих требований к:
- максимальному объему файла;
- организации асинхронного ввода-вывода;
- организации массивного хранилища данных;
- организации высокоскоростного ввода-вывода;
- организации передачи данных к удаленным системам;
- преобразованию данных для различных технических средств.
Г.2.2. Большой объем физических ресурсов
Требования большого объема физических ресурсов со стороны многих приложений для суперЭВМ связаны также с привлечением ресурсов на длительное время. При этом может быть необходимым установление периода ожидания для доступа к ресурсу. Для обеспечения эффективного вовлечения ограниченных ресурсов необходимы сложные пакетные системы.
Г.2.3. Длительное время выполнения
Длительность времени выполнения, требуемая для многих приложений, увеличивает время доступа к суперЭВМ. В связи с этим необходима организация прерываний при сопровождении, административном управлении или при сбоях системы. Для полного завершения выполнения приложения необходимы средства для организации рестарта с контрольной точки.
Г.2.4. Высокая производительность
Высокая производительность необходима для обработки приложений в формате с плавающей точкой, при этом от суперЭВМ часто требуется выполнение векторных или параллельных обработок. Такие приложения, которые записывают обычно на ФОРТРАНе, требуют больших объемов памяти для хранения массивов и матриц. Также могут потребоваться файлы большого объема для ввода-вывода данных и промежуточного сохранения данных.
Г.2.5. Длительный цикл обработки
Ряд приложений требует выполнения в определенный период времени. Для таких критичных по времени приложений требуется приоритетное выделение расширенных ресурсов.
Г.2.6. Дорогостоящие ресурсы
Высокая стоимость использования ресурсов суперЭВМ требует широкомасштабного учета использования ресурсов и управления ими.
Описанные в настоящем разделе приложения являются типовыми и не исчерпывают всего их многообразия.
Г.3.1. Имитационное моделирование
Для приложений требуются:
- высокая производительность ЦП;
- большой объем используемой памяти.
Для некоторых имитационных моделей требуются также:
- диски большой емкости;
- высокоскоростные устройства ввода-вывода.
Г.3.2. Анализ конечных элементов
Приложения, основанные на методе анализа конечных элементов, обычно используют при структурном анализе сложных технических объектов (автомобилей, самолетов, систем вооружения, химических заводов, ядерных установок и т.д.).
Обычно такие приложения реализуют на языке ФОРТРАН.
Для данной группы приложений требуются:
- высокая производительность скалярных и векторных ЦП;
- большие объемы памяти;
- файлы большого объема;
- высокоскоростные устройства ввода-вывода;
- мощные графические средства.
Г.3.3. Системы автоматизированного моделирования и проектирования
Данные приложения требуют преимущественно скалярной обработки данных, использования очень больших наборов данных и больших объемов памяти.
Обычно такие приложения реализуют на языках ФОРТРАН, Си и Паскаль.
Для приложений данной группы требуются:
- высокопроизводительные скалярные ЦП;
- большие объемы памяти;
- файлы большого объема;
- диски большой емкости;
- высокоскоростные устройства ввода-вывода;
- сетевые средства протоколов TCP/IP.
Г.3.4. Системы автоматизации проектирования и производства
Приложения данного вида обычно используют для автоматизированного проектирования и подготовки производства сложных технических объектов (автомобилей, самолетов, систем вооружения, химических заводов, ядерных установок и т.д.).
Обычно такие приложения реализуют на языке ФОРТРАН.
Для приложений данной группы требуются:
- большие объемы памяти;
- файлы большого объема;
- высокоскоростные устройства ввода-вывода.
Г.3.5. Вычисления в области химии
Данная область охватывает квантовую химию и молекулярное моделирование.
Обычно такие приложения реализуют на языке ФОРТРАН.
Для приложений данной группы требуются:
- высокопроизводительные скалярные, векторные и параллельные ЦП;
- диски большой емкости;
- большие объемы памяти;
- файлы большого объема;
- высокоскоростные устройства ввода-вывода;
- мощные графические средства.
Г.3.6. Вычисления в области динамики потоков
Данный класс проблем связан с решением задач газодинамики, гидродинамики, плазмодинамики и т.д.
Обычно такие приложения реализуют на языке ФОРТРАН.
Для приложений данной группы требуются:
- высокопроизводительные векторные ЦП;
- диски большой емкости;
- большие объемы памяти.
Г.3.7. Сейсмография
Приложения этой группы предназначены для обработки сейсмических данных.
Обычно такие приложения реализуют на языке ФОРТРАН.
Для приложений данной группы требуются:
- высокопроизводительные векторные ЦП;
- большие объемы памяти;
- сверхбольшие объемы данных;
- высокоскоростные устройства ввода-вывода.
Г.3.8. Анимация
Данные приложения создают движущиеся изображения реальных или искусственных объектов.
Обычно такие приложения реализуют на языке Си.
Для приложений данной группы требуются:
- высокопроизводительные скалярные и параллельные ЦП;
- диски сверхбольшой емкости;
- высокоскоростные устройства ввода-вывода.
(справочное)
В настоящем приложении перечислены международные и национальные базовые стандарты, на которые даны ссылки в настоящем профиле, а также дополнительные стандарты, относящиеся к регламентации среды POSIX [14] - [17].
[1] ИСО/МЭК 9945-2-93 <1>. Информационная технология. Интерфейс мобильной
операционной системы (POSIX). Часть 2. Оболочка и утилиты
[2] ИСО/МЭК 8652-95 <1>. Информационная технология. Языки
программирования. Ада
[3] ИСО/МЭК 9899-99 <1>. Информационная технология. Языки
программирования. Си
[4] АНСИ X3.9-78 <1>. Языки программирования. Фортран 77
[5] ИСО/МЭК 1539-1-97 <1>. Информационная технология. Языки
программирования. Фортран. Часть 1. Основной язык
[6] ИСО/МЭК 1539-2-94 <1>. Информационная технология. Языки
программирования. Фортран. Часть 2. Строки символов переменной длины
[7] ИСО/МЭК 1539-3-99 <1>. Информационная технология. Языки
программирования. Фортран. Часть 3. Условная компиляция
[8] ИСО 1001-86 <1>. Обработка информации. Структура и разметка файла на
магнитных лентах для обмена информацией
[9] ИСО/МЭК 9945-1-96 <1>. Информационная технология. Интерфейс мобильной
операционной системы (POSIX). Часть 1. Системный прикладной
программный интерфейс (ППИ) [Язык Си]
[10] ИСО/МЭК 14519-99 <1>. Информационная технология. Интерфейсы языка
Ада с POSIX. Привязка к системному прикладному программному интерфейсу
(ППИ). Расширения в реальном масштабе времени
[11] ИИЭЭ Стд 1003.9-92 <1>. Стандарт ИИЭЭ по информационной технологии.
Интерфейсы языка ФОРТРАН 77 с POSIX. Часть 1. Привязка к системному
ППИ
[12] ИИЭЭ Стд 1003.2d-94 <1>. Стандарт ИИЭЭ по информационной технологии.
Интерфейс мобильной операционной системы (POSIX). Часть 2. Оболочка и
утилиты. Пакетные расширения
[13] ИСО/МЭК 14392-96 <1>. Информационная технология. Услуги справочника.
Прикладной программный интерфейс (ППИ) [независящий от языка]
[14] ИСО/МЭК 11404-96 <1>. Информационная технология. Языки
программирования, их среды и интерфейсы систем программирования.
Языково-независимые типы данных
[15] ИСО/МЭК 13210-99 <1>. Информационная технология. Требования и
рекомендации по методам тестирования технических требований и
реализаций для оценки соответствия стандартам POSIX
[16] ИСО/МЭК ТО 14252-96 <1>. Информационная технология. Руководство
по среде открытой системы на основе POSIX
административного управления интерфейсом мобильной операционной
системы (POSIX). Часть 2. Административное управление программными
средствами.
--------------------------------
- международных стандартов ИСО/МЭК (ИСО) и АНСИ - во ВНИИКИ Госстандарта России;
- стандартов Института инженеров электротехники и электроники (ИИЭЭ) - в Центре открытых систем ИРЭ РАН.
Вернуться в "Каталог нормативных документов"
Источник информации: https://internet-law.ru/documents/prod/gost-r_gosudarstvennyj-standart/46/gost_49097.html
На правах рекламы:
|