ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

Информационная технология
ПРОФИЛЬ ПРИКЛАДНОЙ СРЕДЫ ОРГАНИЗАЦИИ ВЫЧИСЛЕНИЙ НА СУПЕР-ЭВМ (PSE10-HIP)
(версия 18.10.2000)

Издание официальное

ГОССТАНДАРТ РОССИИ
Москва

Предисловие
1 РАЗРАБОТАН Институтом радиотехники и электроники Российской академии наук (ИРЭ РАН)
2 ВНЕСЕН Президиумом Российской академии наук (Совет РАН "Высокопроизводительные вычислительные системы и их применение")
2 ПРИНЯТ И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Госстандарта России от
         2000 г. №
3 ВВЕДЕН ВПЕРВЫЕ
4 Настоящий стандарт разработан с учетом положений и требований стандарта       ИИЭЭ Стд 1003.10-95 (IEEE Std 1003.10-95) "Профиль прикладной среды для супер-ЭВМ, основанной на стандартах POSIX"

 ИПК Издательство стандартов, 2001
Настоящий стандарт не может быть полностью или частично воспроизведен, тиражирован и распространен в качестве официального издания без разрешения Госстандарта России

СОДЕРЖАНИЕ
1 ОБЩИЕ ПОЛОЖЕНИЯ	1
1.1 Область применения	1
1.2 Модель среды супер-ЭВМ	2
2 НОРМАТИВНЫЕ ССЫЛКИ	4
3 ОПРЕДЕЛЕНИЯ	5
4 ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ	6
4.1 Обозначения	6
4.2 Общие сокращения	6
4.3 Сокращения для базовых стандартов	8
5 СООТВЕТСТВИЕ	9
5.1 Требования к реализации	9
5.2 Заявка о соответствии реализации	9
5.3 Форма заявки о соответствии реализации	10
5.4 Приложения	12
6 ТРЕБОВАНИЯ	13
6.1 Введение	13
6.2 Конфигурационные переменные	13
6.3 Интерфейс операционной системы	14
6.4 Оболочка и утилиты	16
6.5 Графика	17
6.6 Языки	17
6.7 Защита	19
6.8 Административное управление системой	19
6.9 Организация сети	19
6.10 Хранилище данных	20
6.11 Сменные носители	20
Приложение А. ПЕРЕЧЕНЬ ФАКУЛЬТАТИВНЫХ ТРЕБОВАНИЙ (ОПЦИЙ)	21
А.1 Опции, определенные в данном профиле	21
А.2 Опции базовых стандартов	21

Приложение Б. СВЯЗИ МЕЖДУ БАЗОВЫМИ СТАНДАРТАМИ	23
Б.1 Базовые стандарты POSIX	23
Б.2 Матрица связи	23
Б.3 Аннотации к базовым стандартам	24

Приложение В. БИБЛИОГРАФИЯ	26
В.1 Обязательные базовые стандарты	26
В.2 Дополнительные стандарты POSIX	27

Приложение Г. СТАНДАРТИЗАЦИЯ В ОБЛАСТИ ПРИКЛАДНОЙ СРЕДЫ СУПЕР-ЭВМ	28
Г.1 Введение	28
Г.2 Вопросы переносимости	28
Г.3 Интерфейс операционной системы	30
Г.4 Оболочка и утилиты	31
Г.5 Графика	33
Г.6 Языки	33
Г.7 Защита	34
Г.8 Административное управление системой	34
Г.9 Организация сети	36
Г.10 Хранилище памяти	37
Г.11 Сменные носители	38

Приложение Д. ТИПОВЫЕ ПРИЛОЖЕНИЯ	39
Д.1 Требования к супер-ЭВМ и их характеристики	39
Д.2 Требования к стандартам	39
Д.3 Описания приложений	40

Введение
Настоящий стандарт связан с серией стандартов POSIX по интерфейсам, оболочке, утилитам и приложениям мобильных операционных систем POSIX, реализуемых в открытых системах. Настоящий стандарт определяет набор стандартов и технических требований, обеспечивающих необходимую мобильность (переносимость) приложений для супер-ЭВМ, а также сокращение затрат на обучение и переподготовку пользователей и администраторов системы.
Обязательными элементами настоящего стандарта являются разделы 1, 2, 3, 4, 5, 6 и приложения A и В.
Справочными являются приложения Б, Г и Д.
Настоящий стандарт разработан с учетом требований соответствующих государственных, межгосударственных и базовых международных и национальных стандартов.

ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Информационная технология
ПРОФИЛЬ ПРИКЛАДНОЙ СРЕДЫ ОРГАНИЗАЦИИ ВЫЧИСЛЕНИЙ НА СУПЕР-ЭВМ (PSE10-HIP)
Information technology. Supercomputing Application Environment Profile (PSE10-HIP)
Дата введения 2002–01–01
1 ОБЩИЕ ПОЛОЖЕНИЯ
1.1 Область применения
Настоящий стандарт определяет:
•	профиль прикладной среды организации вычислений на супер-ЭВМ (вычислительной среды для программных средств супер-ЭВМ) на основе набора стандартов, относящихся к системе POSIX, в целях обеспечения мобильности приложений (прикладных программных средств), а также унификации интерфейса пользователя в среде супер-ЭВМ;
•	дополнительные требования к среде супер-ЭВМ, не установленные в действующих стандартах.
В настоящем профиле определяются стандарты, факультативные (необязательные) требования (опции), варианты их применения и дополнительные требования, необходимые для приложений на супер-ЭВМ и пользователей в среде POSIX.
В настоящем профиле основное внимание уделено вопросам переносимости приложений в среде супер-ЭВМ. Приложения для супер-ЭВМ отличаются от других вычислительных приложений по масштабу вычислительной задачи. Значительный масштаб приложений для супер-ЭВМ вызывает потребность в некоторых дополнительных средствах сопровождения (поддержки) приложений, которые часто отсутствуют или не полностью реализуются в малых системах. Целью настоящего стандарта является уточнение среды, в которой обеспечивается реализация данных средств сопровождения (поддержки) приложений.
Настоящий профиль разработан на основе требований и положений стандартов серии ГОСТ Р ИСО/МЭК ТО 10000 с учетом требований ГОСТ Р 1.5.
Издание официальное
Классификация профиля, установленного в настоящем стандарте – по ГОСТ Р ИСО/МЭК ТО 10000-3.
В настоящем профиле использована модель традиционной вычислительной среды супер-ЭВМ: центральный компьютер с соответствующими данными является объектом для доступа от других компьютеров, обслуживающих объекты с разными функциональными возможностями. Так как вычислительная среда супер-ЭВМ рассматривается как единая вычислительная система, настоящий стандарт не ограничивает возможности реализации вычислительной системы в виде набора автоматизированных рабочих мест (рабочих станций) или ЭВМ с переменной (изменяемой) структурой, используемых для организации единой вычислительной системы.
Настоящий стандарт предназначен для заказчиков, поставщиков и разработчиков супер-ЭВМ, а также для разработчиков приложений для них. Определяя список требуемых стандартов и любых соответствующих вариантов их реализации, данный стандарт полезен для каждой группы пользователей.
Настоящий стандарт создает основу для формирования требований к вычислительной среде супер-ЭВМ, которая может быть использована для реализации вычислительной системы и разработки приложений. Стандарт также является руководством для пользователей при приобретении систем и приложений. Определение в настоящем документе конкретного набора стандартов и вариантов их реализации обеспечивает максимальный уровень переносимости приложений и согласованности при взаимодействии пользователей. Тем самым пользователь получает возможность приобретать и эффективно использовать новые системы и новые приложения, разработанные в соответствии с настоящим стандартом.
Настоящий стандарт не распространяется на вычислительные системы обработки данных в реальном масштабе времени, обработки транзакций, обработки ошибок и т.д.
Настоящий стандарт не устанавливает специальных требований к вычислительным средам супер-ЭВМ с параллельной или распределенной обработкой.
1.2 Модель среды супер-ЭВМ
Типовая система супер-ЭВМ является самодостаточной; она охватывает как среду разработки приложений, так и среду их функционирования. Такая система может быть реально скомпонована из набора систем обработки данных, но представляется пользователю как единая вычислительная система. Такая система может также охватывать сетевые соединения, которые доступны пользователю.
1.2.1 Типовые приложения для супер-ЭВМ
Конкретные требования и характеристики супер-ЭВМ и приложений для них должны формироваться с учетом:
•	большого количества обрабатываемых данных;
•	необходимости значительных физических ресурсов;
•	большого времени выполнения заданий (несколько дней или более);
•	приостановки и продолжения выполнения задания;
•	интенсивности числовых вычислений;
•	длительности бесперебойной работы ЭВМ;
•	стоимости ресурсов.
Примеры приведены в приложении Д.
1.2.2 Модель среды супер-ЭВМ
Традиционная концепция системы POSIX предполагает, что прикладные и обслуживающие (поддерживающие) процессы управляются пользователем в интерактивном режиме, в котором можно инициировать сценарий оболочки.
	
Прикладной
процесс	
...	Сервисный
процесс	
...	Процесс управления узлом	
...	Процесс управления пакетным режимом	
Прикладной программный интерфейс системы POSIX (с расширениями для супер-ЭВМ)	ППИ организации пакетной очереди	
			
Среда системы POSIX (с расширениями для супер-ЭВМ)
	
Локальные терминалы	
...	Накопители на дисках	
...	Внешние сети	
...	Хранилище данных	
Рисунок 1 - Модель среды супер-ЭВМ на основе стандартов POSIX
Модель среды супер-ЭВМ на основе стандартов POSIX показана на рисунке 1. Основным новым средством, внесенным в модель, является процесс управления пакетным режимом. В данном режиме обеспечивается управление вычислительными ресурсами системы, необходимыми для длительного выполнения суперкомпьютерных приложений.
Модель среды супер-ЭВМ иллюстрирует это расширение для ППИ POSIX и системной среды в соответствии с требованиями к прикладной среде супер-ЭВМ. В данной модели также отражена потребность в сетевых соединениях компьютеров и хранилищ данных.
В среде супер-ЭВМ используются два основных режима :
•	пакетный режим.
Так как многие приложения для супер-ЭВМ требуют значительной в процентном отношении загрузки системных ресурсов, пакетная обработка необходима для обеспечения максимальной производительности и управления использованием системных ресурсов;
•	интерактивный режим.
Применение данного режима обычно связано с разработкой приложения, предварительной и окончательной отладкой приложения и администрированием системы. Использование визуализации в реальном масштабе времени при интерактивном взаимодействии с пользователем является важным методом повышения производительности при обработке больших объемов данных.
2 НОРМАТИВНЫЕ ССЫЛКИ
В настоящем стандарте использованы ссылки на следующие стандарты:
ГОСТ 28141-89 Системы обработки информации. Язык программирования ФОРТРАН 77
ГОСТ Р 1.5-92 Государственная система стандартизации Российской Федерации. Общие требования к построению, изложению, оформлению и содержанию стандартов
ГОСТ Р ИСО/МЭК ТО 10000-1-99 Информационная технология. Основы и таксономия международных функциональных стандартов. Часть 1. Общие положения и основы документирования
ГОСТ Р ИСО/МЭК ТО 10000-2-99 Информационная технология. Основы и таксономия международных функциональных стандартов. Часть 2. Принципы и таксономия профилей ВОС
ГОСТ Р ИСО/МЭК ТО 10000-3-99 Информационная технология. Основы и таксономия международных функциональных стандартов. Часть 3. Принципы и таксономия профилей среды открытых систем
В настоящем стандарте также использованы ссылки на международные стандарты, перечень которых приведен в приложении В.
3 ОПРЕДЕЛЕНИЯ
В настоящем стандарте использованы следующие термины с соответствующими определениями:
3.1 базовый стандарт (base standard): Стандарт или техническое требование (спецификация), использованные в качестве соответствующий нормативной ссылки в профиле органом, принявшим профиль.
3.2 локальный POSIX (POSIX locale): Конкретный язык, который определяет переносимый набор символов как описано в 2.5.1 ИСО/МЭК 9945-2 [1] (POSIX.2).
3.3 метод тестирования (test method): Программные средства, процедуры или другие средства, указанные в стандарте для оценки соответствия данному стандарту.
3.4 приложение (application): Программное средство, предназначенное для решения прикладной проблемы (прикладное программное средство).
Примечание - При поддержке одного из вариантов утилит, обеспечивающих переносимость, должны учитываться требования к приложению с целью определения действий, интерактивно выполняемых пользователем при взаимодействии с системой через терминал посредством операторов командного языка оболочки.
3.5 прикладная проблема (application problem): Проблема, выдвинутая пользователем и требующая для своего решения обработки соответствующей информации.
3.6 реализация (implementation): Программное средство, предназначенное для функционирования в соответствующей среде (например, супер-ЭВМ), разработанное в соответствии со стандартами данной среды и заявленное (аттестованное) на соответствие данным стандартам.
Примечание – Под реализацией следует понимать объект (программное средство), обеспечивающий приложениям и пользователям услуги, описанные в настоящем стандарте. Термин "реализация" следует трактовать в смысле объекта, модифицированного изготовителем (разработчиком) для:
•	компоновки его в соответствии с настоящим стандартом;
•	выбора некоторых факультативных (необязательных) средств, описанных в настоящем стандарте, путем его настройки администраторами или операторами локальной системы.
Другие термины, используемые в настоящем стандарте, определены в стандартах, указанных в разделе 2 и приложении В.
4 ОБОЗНАЧЕНИЯ И СОКРАЩЕНИЯ
4.1 Обозначения
Обозначения, используемые в настоящем стандарте соответствуют обозначениям, установленным в ИСО/МЭК 9945-2 [1] (POSIX.2).
4.2 Общие сокращения
В настоящем стандарте используются следующие общие сокращения.
Примечание - Другие сокращения, используемые в настоящем стандарте, указаны в ссылочных базовых стандартах из приложения В.
4.2.1 ППС (AEP) 	профиль прикладной среды (application environment profile);
4.2.2 ППИ (API)	прикладной программный интерфейс (application program interface);
4.2.3 ВОРИД (FDDI)		волоконно-оптический распределенный интерфейс данных (fibre distributed data interface);
4.2.4 ПДУФ (FTAM)	передача, доступ и управления файлами (file transfer, acces and management). ПДУФ является часть набора протоколов ВОС;
4.2.5 ЯГС (GKS)		ядро графической системы (graphical kernel system);
4.2.6 ВППИ (HРРI)		высокопроизводительный параллельный интерфейс (high performance parallel interface);
4.2.7 ПИ (IP)		протокол Интернета (Internet protocol). .ПИ является пакетным протоколом для передачи данных от одной системы к другой;
4.2.8 ЗСР (ICS)	заявка о соответствии реализации (implementation conformance statement);.
4.2.9 СМП (MSS)		система массовой памяти (mass storage system);
4.2.10 ВОС (OSI)		взаимосвязь открытых систем (open systems interconnection). ВОС является набором протоколов и стандартов для взаимосвязи и передачи между системами;
4.2.11 КАТП (PСTS)	комплект аттестационных тестов для POSIX (POSIX conformance test suite);
4.2.12 PEX			расширение ИИГСП для Х11 (PHIGS extended X11);
4.2.13 ИИГСП (PHIGS)	иерархическая интерактивная графическая система программиста (programmer's hierarchical interactive graphics system);.
4.2.14 ТПУ (TCP)	транспортный протокол управления (transport control protocol). ТПУ является надежным, последовательным, сквозным, потоковым протоколом с установлением соединения, который выполняется на вершине протокола Интернета;
4.2.15 ПДФ (TFA)		прозрачный доступ к файлу (transparent file access);
4.2.16 ПДП (UDP)	протокол пользовательских датаграмм (user data protocol).
4.2.17 РПП (UPE)	расширение переносимости пользователя (user portability extension);
4.2.18 ПВТ (VTP)	протокол виртуального терминала (virtual terminal protocol). ПВТ является частью набора протоколов ВОС;
4.2.19 X11	версия 11, распространяемая MIT Х Консорциумом, по развитию и поддержанию Х Window System;
4.2.20 Х.400	протокол передачи электронных сообщений. Х.400 является частью набора протоколов ВОС;
4.2.21 Х.500	услуги справочника. Х.500 является частью набора протоколов ВОС.
4.3 Сокращения для базовых стандартов
В настоящем стандарте использованы следующие сокращения для ссылочных базовых стандартов из приложения В. Данные сокращения могут охватывать ряд базовых стандартов, образующих единый набор.
4.3.1 стандарт Ада	язык программирования Ада (ИСО/МЭК 8652 [2]);
4.3.2 стандарт Си	язык программирования Cи (ИСО/МЭК 9899 [3]);
4.3.3 стандарт ФОРТРАН 77	язык программирования ФОРТРАН 77 (ГОСТ 28141);
4.3.4 стандарт ФОРТРАН 90	язык программирования ФОРТРАН 90 (стандарты серии ИСО/МЭК 1539 [4–6]);.
4.3.5 стандарт размеченной ленты	структура и разметка файла на магнитных лентах для обмена информацией (ИСО 1001 [7]);
4.3.6 POSIX.1	интерфейс мобильной операционной системы (POSIX) (ИСО/МЭК 9945-1 [8]);
4.3.7 POSIX.la	интерфейс мобильной операционной системы (POSIX) (ИСО/МЭК 9945-1 [8] в части расширений системного ППИ);
4.3.8 POSIX.2	интерфейс мобильной операционной системы (POSIX) (ИСО/МЭК 9945-2 [1]);
4.3.9 POSIX.4	интерфейс мобильной операционной системы (POSIX) (ИСО/МЭК 9945-1 [8] в части расширений в реальном масштабе времени ППИ);
4.3.10 POSIX.5	интерфейсы языка Ада с POSIX. Привязка к ППИ. (ИСО/МЭК 14519 [9]);
4.3.11 POSIX.8	интерфейс мобильной операционной системы (POSIX) (ИСО/МЭК 9945-1 [8] в части доступа к прозрачному файлу);
4.3.12 POSIX.9	интерфейсы языка ФОРТРАН 77 с POSIX. Привязка к ППИ. (ИИЭЭ Стд 1003.9 [10]);
4.3.13 POSIX.10				настоящий стандарт;
4.3.14 POSIX.15	интерфейс мобильной операционной системы (POSIX). Пакетные расширения (ИИЭЭ Стд 1003.2d [11])
4.3.15 P1224.2	Услуги справочника. ВОС/ППИ. Х500LIS (ИСО/МЭК 14392 [12]).
5 СООТВЕТСТВИЕ
5.1 Требования к реализации
Реализация, претендующая на соответствие настоящему стандарту, должна удовлетворять всем следующим критериям:
•	система должна поддерживать все требуемые интерфейсы и ограничения, установленные в разделе 6 настоящего стандарта, включая требования, указанные в нормативных документах, на которые даны ссылки в разделе 6. Данные интерфейсы должны удовлетворять требованиям соответствия из ссылочных стандартов и связанным с ними методам испытаний , при их наличии;
•	система может поддерживать необязательные интерфейсы, указанные в разделе 6. Если данный вариант реализован, интерфейсы должны удовлетворять требованиям соответствия из ссылочных стандартов и связанным с ними методам испытаний, при их наличии;
•	система может обеспечивать дополнительные функции или средства помимо указанных в разделе 6.
В системной документации все нестандартные расширения должны быть указаны как нестандартные. Использование нестандартных расширений может изменять поведение функций или средств, указанных в разделе 6. Заявки о соответствии реализации ссылочным стандартам вместе с заявкой о соответствии реализации настоящему стандарту должны определять среду, в которой приложение может работать в соответствии с положениями настоящего стандарта. Ни в коем случае среда не должна требовать изменения приложения, строго соответствующего настоящему стандарту (POSIX.10). См. 5.4.1.
5.2 Заявка о соответствии реализации
Для реализации, заявляемой на соответствие настоящему стандарту, должна быть подготовлена заявка о соответствии реализации (ЗСР), содержащая информацию, установленную в данном подразделе. Заявка о соответствии реализации не должна содержать информацию, относящуюся к расширенным средствам или возможностям реализации, выходящим за область применения настоящего стандарта. Заявка о соответствии реализации должна соответствовать полной форме ЗСР, указанной в 5.3.
ЗСР должна содержать информацию о полном наименовании, обозначении и дате утверждения применяемого стандарта. В ЗСР должны быть приведены ссылки на другие ЗСР, относящиеся к ссылочным стандартам.
ЗСР должна описывать поведение реализации для всех определяющих реализацию характеристик, указанных в разделе 6. Это требование должно быть выполнено путем перечисления этих характеристик и приведения конкретных ссылок на системную документацию или описания этих характеристик. ЗСР может определить реализацию для тех характеристик, которые в разделе 6 устанавливаются зависящими от реализации или указаны как неопределенные.
Фраза вида "должен быть документально оформлен" в настоящем стандарте означает, что документирование характеристики должно быть выполнено в ЗСР, как описано выше, если нет явного указания на системную документацию.
Информация, вносимая в заявку о соответствии реализации, должна быть отражена в системной документации.
5.3 Форма заявки о соответствии реализации
ЗСР должна включать элементы, указанные в данном подразделе, с фактическими значениями и опциями, установленными для реализации.
5.3.1 Базовые стандарты
Требуются следующие языки программирования:
•	язык Си ([4] ИСО/МЭК 9899 [3]);
•	язык ФОРТРАН 77 (ГОСТ 28141).
Требуется соответствие следующим стандартам:
•	POSIX.1 (ИСО/МЭК 9945-1 [8]);
•	POSIX.2 (ИСО/МЭК 9945-2 [1]);
•	POSIX.4 (ИСО/МЭК 9945-1 [8] в части расширений в реальном масштабе времени ППИ для асинхронного варианта ввода-вывода);
•	POSIX.9 привязки ФОРТРАН 77 ППИ. (ИИЭЭ Стд 1003.9 [10]);
•	POSIX.15 интерфейс мобильной операционной системы (POSIX). Пакетные расширения (ИИЭЭ Стд 1003.2d [11]).
В настоящем стандарте требуется, чтобы была определена каждая из указанных ниже опций, а соответствующая ей функциональная возможность должна быть реализована.
Базовый стандарт	Обозначение варианта	
POSIX.1	_POSIX_JOB_CONTROL	
POSIX.1	_POSIX_SAVED_IDS	
POSIX.1	_POSIX_CHOWN_RESTRICTED	
POSIX.1	_POSIX_NO_TRUNC	
POSIX.1	_POSIX_VDISABLE	
POSIX.4	_POSIX_ASYNCHRONOUS_IO	
POSIX.2	POSIX2_SW_DEV	
POSIX.2	POSIX2_C_DEV	
POSIX.2	POSIX2_C_BIND	
POSIX.2	POSIX2_FORT_DEV	
POSIX.2	POSIX2_FORT_RUN	
POSIX.2	POSIX2_UPE	
POSIX.2	POSIX2_CHAR_TERM	
POSIX.15	POSIX2_PBS	
Следующие переменные реализации из POSIX.1 (ИСО/МЭК 9945-1 [8]) имеют минимальные требования, указанные ниже. Фактические значения должны быть установлены в ЗСР.
Переменная	Минимальное значение (бит)	
{_POSIX_CHILD_MAX}	25	
{_POSIX_OPEN_MAX}	64	
{_POSIX_NGROUPS_MAX}	8	
off_t	32	
В ЗСР должно быть приведено краткое описание реализации, включая возможность рестарта с контрольной точки и ограничений ресурсов. См. 6.3.1.2.
5.3.2 Опции
Настоящий стандарт (POSIX.10) предусматривает ряд опций. В ЗСР должен быть определен уровень поддержки для каждой из следующих опций.
•	язык Ада и привязки языка Ада (POSIX.5) (ИСО/МЭК 8652 [2], ИСО/МЭК 14519 [9]). Наличие этой опции обозначено конфигурационной переменной {POSIX_SUPER_ADA};
•	язык ФОРТРАН 90 (стандарты серии ИСО/МЭК 1539 [4-6]). Наличие этой опции обозначено конфигурационной переменной {POSIX_SUPER_F90};
•	услуги справочника POSIX (P1224.2) (ИСО/МЭК 14392 [12]). Наличие этой опции обозначено конфигурационной переменной {POSIX_SUPER_DIRNAME}.
•	ленты, размеченные по ИСО (ИСО 1001 [7]). Наличие этой опции обозначено конфигурационной переменной {POSIX_SUPER_IS01001}.
5.4 Приложения
5.4.1 Строгое соответствие
Приложением, строго соответствующим настоящему стандарту является приложение, использующее только средства, требуемые аттестуемой реализацией. Такое приложение должно допускать любое поведение, описанное в разделе 6 как неопределенное или зависящее от реализации, а для символических констант – допускать любое значение в диапазоне, разрешенном в разделе 6. Такие приложения разрешается адаптировать к средствам, которые обозначены константами в 6.2.
5.4.2 Соответствие используемым вариантам профиля
Приложение соответствует используемым вариантам профиля, если оно применяет только средства, требуемые аттестуемой реализацией, и один или несколько вариантов, предусмотренных настоящим стандартом. Такое приложение должно удовлетворять требованиям, установленным для строго соответствующего приложения, а также должно допускать любое поведение, установленное для используемых вариантов.
5.4.3 Соответствие с расширениями
Приложение соответствует настоящему стандарту с расширениями, если для него требуются средства помимо указанных в стандарте.
5.4.4 Заявка о соответствии приложения
Для приложения, претендующего на соответствие настоящему стандарту, должна быть подготовлена заявка о соответствии (ЗС) приложения. В ЗС должно быть определено, является ли приложение строго соответствующим, соответствующим используемым вариантам или соответствующим с расширениями.
Если приложению требуются некоторые варианты из настоящего стандарта, требуемые варианты должны быть перечислены в ЗС.
Если приложение является соответствующим с расширениями, в ЗС должны быть перечислены требуемые расширения и описано поведение каждого расширения.
В ЗС для аттестуемого приложения должны быть определены минимальные системные ресурсы, необходимые для функционирования приложения.
6 ТРЕБОВАНИЯ
6.1 Введение
В данном разделе определяются стандарты, являющиеся частью описываемого профиля, и где применимы состояния любых факультативных (необязательных) требований (опций), содержащихся в этих стандартах.
6.2 Конфигурационные переменные
Конфигурационные переменные должны быть использованы для установления наличия или отсутствия каждого варианта в описываемом профиле. Имена конфигурационных переменных, начинающиеся со строки "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_IS01001}
В некоторых ссылочных базовых стандартах наличие или отсутствие опции обозначено так же как в настоящем стандарте. В описываемом профиле использованы ниже перечисленные обозначения опций для ссылки на их описания в некоторых базовых стандартах.
Обозначения факультативных (необязательных) требований (опций) базового стандарта:
{_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 Интерфейс операционной системы
6.3.1 Обязательные стандарты
6.3.1.1 Системный интерфейс POSIX.1
Система должна соответствовать POSIX.1 (ИСО/МЭК 9945-1 [8]) с опциями и значениями, установленными в данном пункте.
Должны быть определены следующие конфигурационные переменные из POSIX.1 и обеспечена поддержка поведения, связанного с каждой конфигурационной переменной:
{_POSIX_JOB_CONTROL}
{_POSIX_SAVED_IDS}
{_POSIX_CHOWN_RESTRICTED}
(_POSIX_NO_TRUNC}
{_POSIX_VDISABLE}
Реализация должна обеспечивать значения равные или большие следующих минимальных значений для указанных переменных из POSIX.1. Фактическое значение для каждой переменной должно быть определено в ЗСР.
Переменная	Минимальное значение
(бит)	
{_POSIX_CHILD_MAX}	25	
{_POSIX_OPEN_MAX}	64	
{_POSIX_NGROUPS_MAX}	8	
Объект в языке, привязываемый соответственно к типу данных off_t из POSIX.1, должен содержать по крайней мере 32 бита. Фактическое число битов в off_t должно быть определено в ЗСР.
После входа в систему, среда должна содержать переменные
HOME и LOGNAME
6.3.1.2 Расширения системного интерфейса
Реализация должна включать определяемую реализацией возможность рестарта с контрольной точки.
Реализация должна включать определяемую реализацией возможность ограничения ресурсов. Любая аттестуемая реализация должна гарантировать, что функция setsid() не может использоваться пользователем с целью разрешения выхода ПП за пределы предоставленных операционной системой вычислительных ресурсов.
6.3.1.3 Привязки ФОРТРАН 77 (POSIX.9)
Реализация должна соответствовать POSIX.9 (ИИЭЭ Стд 1003.9 [10]). См. также 6.6.2.2, который требует соответствия стандарту языка ФОРТРАН 77 (ГОСТ 28141).
Флаг ввода - вывода должен быть автоматически установлен кодом запуска ФОРТРАНА 77 к значению, которое заставляет выполняться ввод - вывод так, как того требуют стандарты POSIX.
Среда ФОРТРАН 77 должна содержать переменные HOME и LOGNAME.
Все конфигурационные переменные и обозначения опций, установленные в настоящем профиле, должны иметь те же самые значения при доступе программ ФОРТРАНА 77 или Си.
6.3.1.4 Расширения в реальном масштабе времени (POSIX.4)
Реализация должна соответствовать следующей части POSIX.4 (ИСО/МЭК 9945-1 [8] в части расширений в реальном масштабе времени ППИ):
•	асинхронный ввод и вывод.
Должно быть обеспечено поведение, связанное с определением переменной среды {_POSIX_ASYNCHRONOUS_IO}.
6.3.2 Варианты интерфейса операционной системы
6.3.2.1 Привязки языка Ада (POSIX.5)
Данная опция должна соответствовать POSIX.5 (ИСО/МЭК 14519 [9]). См. также 6.6.3.2, который требует соответствия стандарту на язык Ада (ИСО/МЭК 8652 [2]).
Если предусмотрен языковый процессор, соответствующий ИСО/МЭК 8652 [2], тогда должен быть реализован POSIX.5.
Среда языка Ада должна содержать переменные HOME и LOGNAME.
Если язык Ада поддерживается, то все конфигурационные переменные и обозначения опций, установленные в настоящем профиле, должны иметь те же самые значения при доступе из программ, написанных на языках Ада, ФОРТРАН 77 или Си.
В ЗСР должно быть указано, реализована или нет данная опция.
Если язык Ада поддерживается, конфигурационная переменная {POSIX_SUPER_ADA} должна иметь значение равное 1.
6.4 Оболочка и утилиты
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 [11]).
Должно быть обеспечено поведение, связанное с конфигурационной переменной {POSIX2_PBS}.
6.5 Графика
6.5.1 Обязательные стандарты
В данной версии профиля графические расширения не требуются.
6.6 Языки
6.6.1 Обозначение
Наличие необязательного (факультативного) языка программирования должно быть определено конфигурационной переменной. Идентификаторами необязательных языков являются:
{POSIX_SUPER_ADA} и
{POSIX_SUPER_F90}.
6.6.2 Обязательные стандарты
6.6.2.1 Язык Си
Реализация должна соответствовать стандарту на язык Си (ИСО/МЭК 9899 [3]).
6.6.2.2 Язык ФОРТРАН 77
Реализация должна соответствовать стандарту на язык ФОРТРАН 77 (ГОСТ 28141). См. также 6.3.1.3, в котором требуется соответствие стандарту по привязкам языка ФОРТРАН 77 к POSIX (ИИЭЭ Стд 1003.9 [10]).
6.6.2.3 Взаимодействие языков
Прикладные программы, написанные на любом из языков, указанных в данном профиле, должны обеспечивать обмен данными с использованием текстовых файлов в соответствии с POSIX.2 (2.5.1 ИСО/МЭК 9945-2 [1]). Определение текстовых файлов – по POSIX.2 (2.2.2.181 ИСО/МЭК 9945-2 [1]).
Кроме того, языки Си и ФОРТРАН 77 должны обеспечивать двоичный обмен данными в конкретной центральной системе. Не требуется обмен двоичными данными между различными видами ЭВМ или между различными реализациями соответствующей среды. В ЗСР для реализации должно быть указано, какие версии компиляторов и вспомогательных библиотек требуются для обмена двоичными данными.
Формат двоичных данных в настоящем стандарте не определен; файл двоичных данных является потоком битов, выгружаемых из памяти. Для записи файла двоичных данных должна быть использована соответствующая привязка к функции write() из POSIX 1 (ИСО/МЭК 9945-1 [8]). Для чтения файла двоичных данных должна быть использована соответствующая привязка к функции read() из POSIX.1 (ИСО/МЭК 9945-1 [8]). Файл двоичных данных, записанный программой, написанной на одном языке, и затем считанный программой, написанной на другом языке, должен создавать исходную последовательность битов в пространстве памяти, используемой считывающей программой.
Все другие взаимодействия языков определяются реализацией.
6.6.3 Варианты языков
Реализация следующих языков является необязательной. В случае их реализации они должны соответствовать конкретным стандартам.
6.6.3.1 Язык ФОРТРАН 90
Этот вариант должен соответствовать стандарту на язык ФОРТРАН 90 (стандарты серии ИСО/МЭК 1539 [4-6]).
Если обеспечивается вариант реализации стандарта на язык ФОРТРАН 90, конфигурационная переменная {POSIX_SUPER_F90} должна принимать значение равное 1.
В ЗСР должно быть указано о реализации или отсутствии данного варианта.
6.6.3.2 Язык Ада
Этот вариант должен соответствовать стандарту на язык Ада (ИСО/МЭК 8652 [2]). См. также 6.3.2.1.
Если обеспечивается вариант реализации стандарта на язык Ада, то должны быть обеспечены привязки языка Ада, указанные в POSIX.5 (ИСО/МЭК 14519 [9]).
Если обеспечивается вариант реализации стандарта на язык Ада, конфигурационная переменная {POSIX_SUPER_ADA} должна принимать значение равное 1.
В ЗСР должно быть указано о реализации или отсутствии данного варианта.
6.7 Защита
6.7.1 Обязательные стандарты
В данной версии профиля не устанавливаются дополнительные требования по обеспечению безопасности функционирования вычислительной системы.
6.8 Административное управление системой
6.8.1 Обязательные стандарты
В данной версии профиля дополнительные требования на администрирование вычислительной системы не устанавливаются.
6.9 Организация сети
6.9.1 Обозначение
Наличие сетевого варианта должно быть указано соответствующей конфигурационной переменной {POSIX_SUPER_DIRNAME}.
6.9.2 Обязательные стандарты
В данной версии профиля сетевые стандарты не требуются. Все сетевые стандарты являются необязательными.
6.9.3 Факультативные требования (опции) по организации сети
В ЗСР должно быть указано о реализации или отсутствии каждой опции.
6.9.3.1 Услуги справочника Р1224.2
Эта опция должна соответствовать P1224.2 (ИСО/МЭК 14392 [12]).
Наличие этой опции определяется равенством 1 значения конфигурационной переменной {POSIX_SUPER_DIRNAME}.
6.10 Хранилище данных
В данной версии профиля услуги хранилища данных не требуются.
6.11 Сменные носители
6.11.1 Обозначение
Наличие варианта сменных носителей должно быть обозначено конфигурационной переменной {POSIX_SUPER_IS01001}.
6.11.2 Обязательные стандарты
В данной версии профиля дополнительные требования на сменные носители информации не устанавливается.
6.11.3 Варианты сменных носителей
6.11.3.1 Размеченные ленты
Если в вычислительной системе используются размеченные магнитные ленты, то структура и разметка файлов должна соответствовать стандарту ИСО 1001 [7].
Данный стандарт определяет структуры файла и разметку магнитных лент для обмена информацией.
Наличие этого варианта определяется значением равным 1 для конфигурационной переменной {POSIX_SUPER_IS01001}.
В ЗСР должно быть указано о реализации или отсутствии данного варианта.

Приложение А
(обязательное)
ПЕРЕЧЕНЬ ФАКУЛЬТАТИВНЫХ ТРЕБОВАНИЙ (ОПЦИЙ)
А.1 Опции, определенные в данном профиле
В настоящем разделе перечислены опции, определенные в данном профиле. Для каждой опции установлена конфигурационная переменная, которая должна принимать определенное значение, если конкретная реализация обеспечивает данный вариант.
Конфигурационная переменная {POSIX_SUPER_VERSION} указывает версию профиля, которая обеспечивается конкретной реализацией. Для версии профиля, описанной в настоящем стандарте, данная переменная должна принимать значение равное 1.
Конфигурационные переменные, перечисленные в таблице А.1, определены в настоящем стандарте. Если опция обеспечивается реализацией, соответствующая ему конфигурационная переменная должна принимать значение равное 1. Если опция не обеспечивается реализацией, соответствующая ей конфигурационная переменная должна иметь неопределенное значение.
Таблица А.1 – Конфигурационные переменные реализации
Конфигурационная переменная	Описание варианта	
{POSIX_SUPER_ADA}	Язык Ада и его привязки	
{POSIX_SUPER_F90}	Компилятор языка ФОРТРАН 90	
{POSIX_SUPER_DIRNAME}	Услуги справочника Х.500	
{POSIX_SUPER_IS01001}	Размеченные магнитные ленты по ИСО 1001	
А.2 Опции базовых стандартов
В настоящем профиле требуется обеспечение некоторых функциональных возможностей, которые в базовых стандартах являются необязательными. Обозначения опций, перечисленные в таблице А.2, должны быть определены в реализации, а соответствующие им функциональные возможности – обеспечены реализацией.

Таблица А.2 – Указатели опций базовых стандартов
Базовый стандарт	Обозначение опции	
POSIX.1	_POSIX_JOB_CONTROL	
POSIX.1	_POSIX_SAVED_IDS	
POSIX.1	_POSIX_CHOWN_RESTRICTED	
POSIX.1	_POSIX_NO_TRUNC	
POSIX.1	_POSIX_VDISABLE	
POSIX.4	_POSIX_ASYNCHRONOUS_IO	
POSIX.2	POSIX2_SW_DEV	
POSIX.2	POSIX2_C_DEV	
POSIX.2	POSIX2_C_BIND	
POSIX.2	POSIX2_FORT_DEV	
POSIX.2	POSIX2_FORT_RUN	
POSIX.2	POSIX2_UPE	
POSIX.2	POSIX2_CHAR_TERM	
POSIX.15	POSIX2_PBS	

Приложение Б
(справочное)
СВЯЗИ МЕЖДУ БАЗОВЫМИ СТАНДАРТАМИ
Б.1 Базовые стандарты POSIX
Базовые стандарты POSIX взаимоувязаны. В настоящем приложении рассматриваются связи для случаев, не охваченных базовыми стандартами.
Б.2 Матрица связи
Данная матрица помогает определить взаимодействия между действующими стандартами. В таблице Б.1 показаны виды взаимодействий между каждой парой стандартов, на которые даны ссылки в настоящем профиле.
Каждая строка и колонка матрицы отмечена буквами, обозначающими один из стандартов. Буквы имеют следующие смысловые значения:
A - POSIX.1 (интерфейс POSIX по ИСО/МЭК 9945-1 [8]);
B - POSIX.2 (оболочка и утилиты POSIX по ИСО/МЭК 9945-2 [1]);
C - POSIX.4 (расширения реального времени по ИСО/МЭК 9945-1 [8]);
D - POSIX.5 (интерфейсы языка Ада с POSIX по ИСО/МЭК 14519 [9]);
E - POSIX.9 (интерфейсы языка ФОРТРАН 77 с POSIX по ИИЭЭ Стд 1003.9 [10]);
F - POSIX.15 (пакетные расширения POSIX по ИИЭЭ Стд 1003.2d [11]);
G - P1224.2 (услуги справочника по ИСО/МЭК 14392 [12]);
H - стандарт ФОРТРАН 77 (ГОСТ 28141);
I - стандарт Си (ИСО/МЭК 9899 [3]);
J - стандарт Ады (ИСО/МЭК 8652 [2]);
K - стандарт ФОРТРАН 90 (стандарты серии ИСО/МЭК 1539 [4–6]).

Таблица Б.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 не определены.	
Б.3 Аннотации к базовым стандартам
A - POSIX.1 (интерфейс POSIX по ИСО/МЭК 9945-1 [8]).
Данный стандарт определяет прикладной интерфейс с примитивами операционных систем более низких уровней.
B - POSIX.2 (оболочка и утилиты POSIX по ИСО/МЭК 9945-2 [1]).
Данный стандарт определяет команды оболочки и строки команд утилит, которые используются пользователями и командными файлами.
C - POSIX.4 (расширения реального времени по ИСО/МЭК 9945-1 [8]).
Определяет только возможности асинхронного ввода-вывода, требуемые настоящим стандартом.
D - POSIX.5 (интерфейсы языка Ада с POSIX по ИСО/МЭК 14519 [9]).
Настоящий стандарт определяет интерфейсы языка Ада с примитивами операционной системы, определенными в POSIX.1.
E - POSIX.9 (интерфейсы языка ФОРТРАН 77 с POSIX по ИИЭЭ Стд 1003.9 [10]).
Настоящий стандарт определяет интерфейсы языка ФОРТРАН 77 с примитивами операционной системы, определенными в POSIX.1.
F - POSIX.15 (пакетные расширения POSIX по ИИЭЭ Стд 1003.2d [11]).
Настоящий стандарт определяет интерфейс командной строки с переносимой системой организации пакетных очередей.
G - P1224.2 (услуги справочника по ИСО/МЭК 14392 [12]).
Настоящий стандарт устанавливает интерфейс с определенной услугой, которая может быть использована для поиска информации, необходимой для доступа к некоторому объекту, локально или через сеть.
H - стандарт ФОРТРАН 77 (ГОСТ 28141).
Настоящий стандарт определяет синтаксис и семантику языка ФОРТРАН 77.
I - стандарт Си (ИСО/МЭК 9899 [3]).
Настоящий стандарт определяет синтаксис и семантику языка Си.
J - стандарт Ады (ИСО/МЭК 8652 [2]).
Настоящий стандарт определяет синтаксис и семантику языка Ада.
K - стандарт ФОРТРАН 90 (стандарты серии ИСО/МЭК 1539 [4–6]).
Настоящие стандарты определяют синтаксис и семантику языка ФОРТРАН 90.

Приложение В
(обязательное)
БИБЛИОГРАФИЯ
В данном приложении перечислены международные и национальные базовые стандарты, на которые даны ссылки в настоящем профиле, а также дополнительные стандарты, относящиеся к регламентации среды POSIX [13 - 16].
В.1 Обязательные базовые стандарты
[1] ИСО/МЭК 9945-2-93 1) Информационная технология. Интерфейс мобильной операционной системы (POSIX). Часть 2. Оболочка и утилиты
[2] ИСО/МЭК 8652-95 1) Информационная технология. Языки программирования. Ада
[3] ИСО/МЭК 9899-99 1) Информационная технология. Языки программирования. Си
[4] ИСО/МЭК 1539-1-97 1) Информационная технология. Языки программирования. Фортран. Часть 1. Основной язык
[5] ИСО/МЭК 1539-2-94 1) Информационная технология. Языки программирования. Фортран. Часть 2. Строки символов переменной длины
[6] ИСО/МЭК 1539-3-99 1) Информационная технология. Языки программирования. Фортран. Часть 3. Условная компиляция
[7] ИСО 1001-86 1) Обработка информации. Структура и разметка файла на магнитных лентах для обмена информацией
[8] ИСО/МЭК 9945-1-96 1) Информационная технология. Интерфейс мобильной операционной системы (POSIX). Часть 1. Системный прикладной программный интерфейс (ППИ) [Язык Cи]
[9] ИСО/МЭК 14519-99 1) Информационная технология. Интерфейсы языка Ада с POSIX. Привязка к системному прикладному программному интерфейсу (ППИ). Расширения в реальном масштабе времени;
[10] ИИЭЭ Стд 1003.9-92 2) Стандарт ИИЭЭ по информационной технологии. Интерфейсы языка ФОРТРАН 77 с POSIX. Часть 1. Привязка к системному ППИ

1) Оригиналы международных стандартов ИСО/МЭК (ИСО) – во ВНИИКИ Госстандарта России
2) Оригиналы стандартов ИИЭЭ –  в Центре открытых систем ИРЭ РАН
[11] ИИЭЭ Стд 1003. 2d-94 2) Стандарт ИИЭЭ по информационной технологии. Интерфейс мобильной операционной системы (POSIX). Часть 2. Оболочка и утилиты. Пакетные расширения
[12] ИСО/МЭК 14392-96 1) Информационная технология. Услуги справочника. Прикладной программный интерфейс (ППИ) [независящий от языка]
В.2 Дополнительные стандарты POSIX
[13] ИСО/МЭК 11404-96 1) Информационная технология. Языки программирования, их среды и интерфейсы систем программирования. Языково-независимые типы данных
[14] ИСО/МЭК 13210-99 1) Информационная технология. Требования и рекомендации по методам тестирования технических требований и реализаций для оценки соответствия стандартам POSIX
[15] ИСО/МЭК ТО 14252-96 1) Информационная технология. Руководство по среде открытой системы на основе POSIX
[16] ИСО/МЭК 15068-2-99 1) Информационная технология. Система административного управления интерфейсом мобильной операционной системы (POSIX). Часть 2. Административное управление программными средствами

1) Оригиналы международных стандартов ИСО/МЭК (ИСО) – во ВНИИКИ Госстандарта России
2) Оригиналы стандартов ИИЭЭ –  в Центре открытых систем ИРЭ РАН

Приложение Г
(справочное)
СТАНДАРТИЗАЦИЯ В ОБЛАСТИ ПРИКЛАДНОЙ СРЕДЫ СУПЕР-ЭВМ
Г.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 Утилиты для устройств со сменными носителями
Должны быть обеспечены стандартные сервисные программы на уровне команд для:
•	перемотки носителя;
•	загрузки носителя;
•	разгрузки носителя;
•	определения подключенного носителя;
•	определения типа разметки;
•	перемещения по пространству файла;
•	размещения записей в пространстве файла.

Приложение Д
(справочное)
ТИПОВЫЕ ПРИЛОЖЕНИЯ
Д.1 Требования к супер-ЭВМ и их характеристики
Супер-ЭВМ рассматриваются как мощные ЭВМ общего назначения. Мощность супер-ЭВМ позволяет выполнять приложения, которые не могут быть реализованы на других видах ЭВМ. 
Конкретные характеристики супер-ЭВМ и приложений для них охватывают:
•	большое количество данных;
•	большой объем физических ресурсов;
•	длительное время выполнения;
•	высокую производительность;
•	длительный цикл обработки;
•	дорогостоящие ресурсы.
Д.2 Требования к стандартам
Д.2.1 Большое количество данных
Большое количество данных, циркулирующих в типовых приложениях для супер-ЭВМ, вызывает необходимость стандартизации следующих требований к:
•	максимальному объему файла;
•	организации асинхронного ввода-вывода;
•	организации массивного хранилища данных;
•	организации высокоскоростного ввода-вывода;
•	организации передачи данных к удаленным системам;
•	преобразованию данных для различных технических средств.
Д.2.2 Большой объем физических ресурсов
Требования большого объема физических ресурсов со стороны многих приложений для супер-ЭВМ связаны также с привлечением ресурсов на длительное время. При этом, может быть необходимым установления периода ожидания для доступа к ресурсу. Для обеспечения эффективного вовлечения ограниченных ресурсов, необходимы сложные системы, работающие в пакетном режиме.
Д.2.3 Длительное время выполнения
Длительность времени выполнения, необходимая для многих приложений, увеличивает необходимое время доступа к супер-ЭВМ. В связи с этим необходима организация прерываний при сопровождении, административном управлении или при сбоях системы. Для полного завершения выполнения приложения необходимы средства для организации рестарта с контрольной точки.
Д.2.4 Высокая производительность
Высокая производительность необходима для обработки приложений в формате с плавающей точкой, при этом от супер-ЭВМ часто требуется выполнение векторных или параллельных обработок. Такие приложения пишутся обычно на языке ФОРТРАН и требуют больших объемов памяти для хранения массивов и матриц. Так же могут потребоваться файлы большого объема для ввода-вывода данных и промежуточного сохранения данных.
Д.2.5 Длительный цикл обработки
Ряд приложений требует выполнения в определенный период времени. Для таких критичных по времени приложений требуется приоритетное выделение расширенных ресурсов.
Д.2.6 Дорогостоящие ресурсы
Высокая стоимость использования ресурсов супер-ЭВМ требует широкомасштабного учета использования ресурсов и управления ими.
Д.3 Описания приложений
Описанные в настоящем разделе сферы применения супер-ЭВМ не исчерпывают всего их многообразия.
Д.3.1 Имитационное моделирование
Данная группа охватывает широкий диапазон приложений, для которых требуется:
•	высокая производительность ЦП;
•	большой объем используемой памяти.
Для некоторых имитационных моделей требуются также:
•	диски большой емкости;
•	высокоскоростные устройства ввода-вывода.
Д.3.2 Метод конечных элементов
Приложения, основанные на методе конечных элементов, обычно используются при структурном анализе сложных технических объектов (автомобилей, самолетов, систем вооружения, химических заводов, ядерных установок и т.д.).
Обычно такие приложения реализуются на языке ФОРТРАН.
Данная группа охватывает широкий диапазон приложений, для которых требуется:
•	высокая производительность скалярных и векторных ЦП;
•	большие объемы памяти;
•	файлы большого объема;
•	высокоскоростные устройства ввода-вывода;
•	мощные графические средства.
Д.3.3 Системы автоматизированного моделирования и проектирования
Данные приложения требуют преимущественно скалярной обработки данных, использования очень больших наборов данных и больших объемов памяти.
Обычно такие приложения реализуются на языках ФОРТРАН, Си и Паскаль.
Для данной группы приложений требуются:
•	высокопроизводительные скалярные ЦП;
•	большие объемы памяти;
•	файлы большого объема;
•	диски большой емкости;
•	высокоскоростные устройства ввода-вывода;
•	сетевые средства протоколов TCP/IP.
Д.3.4 Системы автоматизации проектирования и производства
Приложения данного вида обычно используются для автоматизированного проектирования и подготовки производства сложных технических объектов (автомобилей, самолетов, систем вооружения, химических заводов, ядерных установок и т.д.).
Обычно такие приложения реализуются на языке ФОРТРАН.
Данная группа требует:
•	большие объемы памяти;
•	файлы большого объема;
•	высокоскоростные устройства ввода-вывода.
Д.3.5 Вычисления в области химии
Данная область охватывает квантовую химию и молекулярное моделирование.
Обычно такие приложения реализуются на языке ФОРТРАН.
Данная группа требует:
•	высокопроизводительных скалярных, векторных и параллельных ЦП;
•	диски большой емкости;
•	большие объемы памяти;
•	файлы большого объема;
•	высокоскоростные устройства ввода-вывода;
•	мощные графические средства.
Д.3.6 Вычисления в области динамики потоков
Данный класс проблем связан с решением задач газодинамики, гидродинамики, плазмодинамики и т.д.
Обычно такие приложения реализуются на языке ФОРТРАН.
Данная группа требует:
•	высокопроизводительных векторных ЦП;
•	диски большой емкости;
•	большие объемы памяти.
Д.3.7 Сейсмография
Приложения этой группы предназначены для обработки сейсмических данных.
Обычно такие приложения реализуются на языке ФОРТРАН.
Данная группа требует:
•	высокопроизводительных векторных ЦП;
•	большие объемы памяти;
•	сверхбольших объемов данных;
•	высокоскоростные устройства ввода-вывода.

Д.3.8 Анимация
Данные приложения создают движущиеся изображения реальных или искусственных объектов.
Обычно такие приложения реализуются на языке Си.
Для данной группы приложений требуются:
•	высокопроизводительные скалярные и параллельные ЦП;
•	диски сверхбольшой емкости;
•	высокоскоростные устройства ввода-вывода.

УДК				ОКС 35.100.05			П85			ОКСТУ 4002
Ключевые слова: обработка данных, обмен информацией, среда открытой системы, профили СОС, приложения, переносимость, переносимые приложения, супер-ЭВМ

Директор ИРЭ РАН,
академик РАН						Ю.В. Гуляев
Руководитель разработки
доктор технических наук,
профессор						А.Я. Олейников
Ответственный исполнитель
кандидат физ-мат. наук				В.Н. Корниенко