.\" -*- coding: UTF-8 -*- .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH ioperm 2 "17 мая 2025 г." "Linux man\-pages 6.18" .SH НАИМЕНОВАНИЕ ioperm \- устанавливает права на работу с портами ввода/вывода .SH БИБЛИОТЕКА Стандартная библиотека языка C (\fIlibc\fP,\ \fI\-lc\fP) .SH СИНТАКСИС .nf \fB#include \fP .P \fBint ioperm(unsigned long \fP\fIfrom\fP\fB, unsigned long \fP\fInum\fP\fB, int \fP\fIturn_on\fP\fB);\fP .fi .SH ОПИСАНИЕ Вызов \fBioperm\fP() устанавливает \fInum\fP бит прав доступа вызывающей нити, начиная с адреса порта \fIfrom\fP. Если \fIturn_on\fP не равно 0, то права для указанных битов устанавливаются, иначе сбрасываются. Если \fIturn_on\fP не равно 0, вызывающая нить должна быть привилегированной (\fBCAP_SYS_RAWIO\fP). .P До Linux 2.6.8, можно было указывать только первые 0x3ff портов ввода\-вывода. Для остальных портов нужно было использовать системный вызов \fBiopl\fP(2) (с аргументом \fIlevel\fP равным 3). Начиная с Linux 2.6.8, можно указывать 65536 портов ввода\-вывода. .P Permissions are inherited by the child created by \fBfork\fP(2) (but see HISTORY). Permissions are preserved across \fBexecve\fP(2); this is useful for giving port access permissions to unprivileged programs. .P Данный вызов, в основном, предназначен для архитектуры i386. На большинстве других архитектур он не существует или будет возвращать ошибку. .SH "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" При успешном выполнении возвращается 0. При ошибке возвращается \-1, а в \fIerrno\fP содержится код ошибки. .SH ОШИБКИ .TP \fBEINVAL\fP Неверные значения \fIfrom\fP или \fInum\fP. .TP \fBEIO\fP (на PowerPC) Этот системный вызов не поддерживается. .TP \fBENOMEM\fP .\" Could not allocate I/O bitmap. Не хватает памяти. .TP \fBEPERM\fP Вызывающая нить не имеет достаточно прав. .SH ВЕРСИИ glibc имеет прототип \fBioperm\fP() как в \fI\fP, так и в \fI\fP. Избегайте последнего, он доступен только на i386. .SH СТАНДАРТЫ Linux. .SH ИСТОРИЯ До Linux 2.4 права не наследовались потомком, созданным \fBfork\fP(2). .SH ПРИМЕЧАНИЯ В \fI/proc/ioports\fP показываются все порты ввода\-вывода, которые выделены в системе в настоящий момент. .SH "СМОТРИТЕ ТАКЖЕ" \fBiopl\fP(2), \fBoutb\fP(2), \fBcapabilities\fP(7) .PP .SH ПЕРЕВОД Русский перевод этой страницы руководства разработал(и) Azamat Hackimov , Dmitriy S. Seregin , Yuri Kozlov и Иван Павлов . .PP Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, .UR https://www.gnu.org/licenses/gpl-3.0.html .UE версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ. .PP Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу .MT debian-l10n-russian@lists.debian.org списка рассылки русских переводчиков .ME .