S390_RUNTIME_INSTR(2) | System Calls Manual | S390_RUNTIME_INSTR(2) |
ИМЯ¶
s390_runtime_instr - включает/выключает технические средства ЦП s390 времени выполнения
СИНТАКСИС¶
#include <asm/runtime_instr.h>
int s390_runtime_instr(int command, int signum);
ОПИСАНИЕ¶
Системный вызов s390_runtime_instr() запускает или останавливает технические средства ЦП времени выполнения для вызывающей нити.
В аргументе command указывается, что технические средства времени выполнения нужно запустить (S390_RUNTIME_INSTR_START, 1) или остановить (S390_RUNTIME_INSTR_STOP, 2) для вызывающей нити.
В аргументе signum задаётся номер сигнала реального времени. Сигнал реального времени посылается нити, если буфер технических средств времени выполнения заполнился или произошло прерывание run-time-instrumentation-halted.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ¶
При успешном выполнении s390_runtime_instr() возвращает 0 и включает в нити технические средства времени выполнения, назначая нити блок управления техническими средствами времени выполнения. После этого вызывающий может читать и изменять блок управления и запускать технические средства времени выполнения. При ошибке возвращается -1 и в errno записывается один из кодов ошибки, показанных далее.
ОШИБКИ¶
- EINVAL
- Значение command не является допустимой командой, или значение signum не является номером сигнала реального времени.
- ENOMEM
- Не удалось выделить память под блок управления техническими средствами времени выполнения.
- EOPNOTSUPP
- Технические средства времени выполнения недоступны.
ВЕРСИИ¶
Данный системный вызов появился в Linux 3.7.
СООТВЕТСТВИЕ СТАНДАРТАМ¶
Данный системный вызов есть только в Linux и только на архитектуре s390. Технические средства времени выполнения доступны начиная с System z EC12.
ЗАМЕЧАНИЯ¶
В glibc нет обёртки для данного системного вызова; запускайте его с помощью syscall(2).
СМ. ТАКЖЕ¶
ЗАМЕЧАНИЯ¶
Эта страница является частью проекта 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.
15 сентября 2017 г. | Руководство программиста Linux |