Документация по LinuxLinuxDoc.Ru 🔍

iopl - меняет уровень привилегий ввода-вывода

НАЗВАНИЕ
iopl - меняет уровень привилегий ввода-вывода

СИНТАКСИС
#include

int iopl(int level);

ОПИСАНИЕ
iopl изменяет уровень привилегий ввода/вывода текущего
процесса в соответствии с level. Этот вызов необходим для
того, чтобы 8514-совместимые X-серверы могли работать под
управлением Linux. Этим X-серверам необходим доступ ко
всем 65536-и портам ввода/вывода, соответственно, им
недостаточно вызова ioperm . В дополнение к тому, что на
высоком уровне привилегий процессу разрешен неограниченный
доступ к портам ввода/вывода, он может также запретить
системные прерывания. Скорее всего, это приведет к сбою
системы, поэтому использование этой возможности не
рекомендуется. Эти права наследуются через fork и exec.
Стандартный уровень привилегий ввода/вывода обычного
процесса равен 0.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При удачном завершении работы возвращаемое значение равно
0. При ошибке оно равно -1, а переменная errno приобретает
соответствующее значение.

КОДЫ ОШИБОК
EINVAL Значение level больше 3.

EPERM Пользователь процесса - не суперпользователь.

СООТВЕТСТВИЕ СТАНДАРТАМ

iopl - это функция, специфичная для Linux. Не
рекомендуется использовать ее в программах, переносимых на
другие системы.

ЗАМЕЧАНИЯ
Libc5 воспринимает эту функцию как системный вызов и имеет
прототип в . Glibc1 не имеет прототипа этой
функции. Glibc2 имеет прототип в и в
. Не используйте последнее, этот файл имеется
только на i386.
Читать новости Linux в Telegram
Linux - iopl - меняет уровень привилегий ввода-вывода
Мы в соцсетях ✉