Provided by: manpages-ru-dev_4.26.0-1_all 

НАИМЕНОВАНИЕ
s390_sthyi - эмулирует инструкцию STHYI
БИБЛИОТЕКА
Стандартная библиотека языка C (libc, -lc)
ОБЗОР
#include <asm/sthyi.h> /* определения констант STHYI_* */
#include <sys/syscall.h> /* определения констант SYS_* */
#include <unistd.h>
int syscall(SYS_s390_sthyi, unsigned long function_code,
void *resp_buffer, uint64_t *return_code,
unsigned long flags);
Примечание: glibc не предоставляет оболочку для s390_sthyi(), что требует использования syscall(2).
ОПИСАНИЕ
Системный вызов s390_sthyi() эмулирует инструкцию STHYI (Store Hypervisor Information). Он предоставляет
информацию о ресурсах машины и её уровни виртуализации. В частности, возвращается тип ЦП и ёмкость, а
также модель машины и другие свойства.
В аргументе function_code указывается какую функцию нужно выполнить. Поддерживаются следующие коды:
STHYI_FC_CP_IFL_CAP
Вернуть информацию о CP (Central Processor) и ёмкости IFL (Integrated Facility for Linux).
В аргументе resp_buffer указывается адрес буфера результата. При function_code равном
STHYI_FC_CP_IFL_CAP, размер буфера должен быть равен странице (4K). Если системный вызов вернул 0, то
буфер результата будет заполнен информацией о ёмкости ЦП. В противном случае содержимое буфера результата
не меняется.
В аргументе return_code хранится код возврата инструкции STHYI; возможно одно из следующих значений:
0 Успешно.
4 Неподдерживаемый код функции.
Дополнительную информацию о return_code, function_code и resp_buffer смотрите по ссылкам, приведённым в
ЗАМЕЧАНИЯХ.
Аргумент flags предназначен для будущих расширений, а пока его значение должно быть равно 0.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении (т. е. эмуляция прошла успешно), возвращаемое s390_sthyi() значение совпадает с
кодом условия инструкций STHYI — значением в диапазоне [0..3]. Возвращаемое значение 0 означает, что
информация о ёмкости ЦП сохранена в *resp_buffer. Возвращаемое значение 3 указывает на «неподдерживаемый
код функции» и содержимое *resp_buffer не изменяется. Значения 1 и 2 зарезервированы.
В случае ошибки возвращается -1, а errno устанавливается в значение ошибки.
ОШИБКИ
EFAULT Значение, указанное в resp_buffer или return_code, содержит некорректный адрес.
EINVAL Значение, указанное в flags, не равно нулю.
ENOMEM Не удалось выделить память для обработки информации о ёмкости ЦП.
EOPNOTSUPP
Некорректное значение в function_code.
СТАНДАРТЫ
Linux на s390.
ИСТОРИЯ
Linux 4.15.
ПРИМЕЧАНИЯ
Описание инструкции STHYI смотрите на странице документации.
При использовании интерфейса системного вызова буфер результата не имеет требований по выравниванию,
описанных в инструкции STHYI.
Ядро кэширует результат (в Linux 4.16 каждую секунду). Последующие запуски системного вызова могут
вернуть кэшированный ответ.
СМОТРИТЕ ТАКЖЕ
syscall(2)
ПЕРЕВОД
Русский перевод этой страницы руководства разработал(и) Alexander Golubev <fatzer2@gmail.com>, Azamat
Hackimov <azamat.hackimov@gmail.com>, Hotellook, Nikita <zxcvbnm3230@mail.ru>, Spiros Georgaras
<sng@hellug.gr>, Vladislav <ivladislavefimov@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов
<pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>
Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной
лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или
более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.
Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом
разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских
переводчиков.
Справочные страницы Linux 6.9.1 2 мая 2024 г. s390_sthyi(2)