S390_STHYI(2) | System Calls Manual | S390_STHYI(2) |
ИМЯ¶
s390_sthyi - эмулирует инструкцию STHYI
СИНТАКСИС¶
#include <asm/unistd.h>
int s390_sthyi(unsigned long function_code, void *resp_buffer, uint64_t *return_code, unsigned long flags);
ОПИСАНИЕ¶
Системный вызов s390_sthyi() эмулирует инструкцию STHYI (Store Hypervisor Information). Он предоставляет информацию о ресурсах машины и её уровни виртуализации. В частности, возвращается тип ЦП и ёмкость, а также модель машины и другие свойства.
В аргументе function_code указывается какую функцию нужно выполнить. Поддерживаются следующие коды:
- 0
- Вернуть информацию о CP (Central Processor) и ёмкости IFL (Integrated Facility for Linux).
The resp_buffer argument specifies the address of a response buffer. If the system call returns 0, the response buffer will be filled with CPU capacity information. Otherwise, the response buffer's content is unchanged.
В аргументе 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 4.15.
СООТВЕТСТВИЕ СТАНДАРТАМ¶
Данный системный вызов есть только в Linux и доступен только на архитектуре s390.
ЗАМЕЧАНИЯ¶
В glibc нет обёртки для данного системного вызова; запускайте его с помощью syscall(2).
For details of the STHYI instruction, see https://www.ibm.com/support/knowledgecenter/SSB27U_6.3.0/com.ibm.zvm.v630.hcpb4/hcpb4sth.htm.
СМ. ТАКЖЕ¶
ЗАМЕЧАНИЯ¶
Эта страница является частью проекта Linux man-pages версии 4.16. Описание проекта, информацию об ошибках и последнюю версию этой страницы можно найти по адресу https://www.kernel.org/doc/man-pages/.
ПЕРЕВОД¶
Русский перевод этой страницы руководства был сделан 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>
Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.
Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на man-pages-ru-talks@lists.sourceforge.net.
2 февраля 2018 г. | Руководство программиста Linux |