posix_spawnattr_addpartid()

Указать идентификатор раздела ресурсов, с которым должен быть связан порожденный процесс

Прототип:

#include <posix_spawnattr.h>
int posix_spawnattr_addpartid( posix_spawnattr_t *_Restrict attrp,
part_id_t part_id,
part_dcmd_flags_t part_flags );

Аргументы:

attrp
Функция posix_spawnattr_addpartid() инициализирует объект атрибутов функции spawn() attrp со значением по умолчанию для каждого из атрибутов, используемых в конкретной реализации.
part_flags
Если параметр partition_path не относится к реальному разделу, то аргумент part_flags будет применяться ко всем подходящим «настоящим» разделам, на которые ссылается имя группы или псевдораздел. Это может привести к ошибке, если флаг не применяется к типу раздела (о чем сообщает макрос PART_TYPE(), определенный в <part.h>).
part_id
Идентификатор раздела для указанного раздела.

Библиотека:

libc

Описание:

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


Note: Две дополнительные формы для этого вызова, addmempartid() и addschedpartid(), реализованы как макросы в <spawn.h>. Ассоциация разделов вступает в силу, только если установлен соответствующий флаг POSIX_SPAWN_SETMPART или POSIX_SPAWN_SETSPART. Установка одного из этих флагов без предоставления раздела этого типа может привести к непредвиденным результатам.

Эта функция является расширением posix_spawnattr_t ЗОСРВ «Нейтрино».

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


Возвращаемое значение:

EINVAL
Было задано недопустимое значение параметра.
ENOMEM
Идентификатор партиции не удалось добавить к объекту атрибутов.

Note: Если эта функция дает сбой, и значение предоставленное в partition_name является именем группы, то не указано, сколько псевдоразделов в пределах имени группы добавляется к объекту атрибутов, на который указывает attrp. Для этого сценария рекомендуется уничтожить объект атрибутов и инициализировать новый объект атрибутов.

EOK
Успешное завершение.

Note: О некоторых ошибках сопоставления разделов может не сообщаться до тех пор, пока не будет сделан вызов posix_spawn().

Если добаляется раздел, идентифицированный с помощью part_id posix_spawnattr_t объекта attrp, могут быть получены следующие сообщения:
EINVAL
Было задано недопустимое значение параметра.

Классификация:

ЗОСРВ «Нейтрино»

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Да
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

posix_spawn(), posix_spawn_file_actions_addclose(), posix_spawn_file_actions_adddup2(), posix_spawn_file_actions_addopen(), posix_spawn_file_actions_destroy(), posix_spawn_file_actions_init(), posix_spawnattr_addpartid(), posix_spawnattr_addpartition(), posix_spawnattr_destroy(), posix_spawnattr_getcred(), posix_spawnattr_getflags(), posix_spawnattr_getnode(), posix_spawnattr_getpartid(), posix_spawnattr_getpgroup(), posix_spawnattr_getrunmask(), posix_spawnattr_getschedparam(), posix_spawnattr_getschedpolicy(), posix_spawnattr_getsigdefault(), posix_spawnattr_getsigignore(), posix_spawnattr_getsigmask(), posix_spawnattr_getstackmax(), posix_spawnattr_getxflags(), posix_spawnattr_init(), posix_spawnattr_setcred(), posix_spawnattr_setflags(), posix_spawnattr_setnode(), posix_spawnattr_setpgroup(), posix_spawnattr_setschedparam(), posix_spawnattr_setrunmask(), posix_spawnattr_setschedpolicy(), posix_spawnattr_setsigdefault(), posix_spawnattr_setsigignore(), posix_spawnattr_setsigmask(), posix_spawnattr_setstackmax(), posix_spawnattr_setxflags(), posix_spawnp()




Предыдущий раздел: Описание API системной библиотеки