СИНТАКСИС
#include <rtapi_io.h>
unsigned char rtapi_inb(unsigned short int port);
unsigned short rtapi_inw(unsigned short int port);
unsigned int rtapi_inl(unsigned short int port);
unsigned void rtapi_outb(unsigned char value, unsigned short int port);
unsigned void rtapi_outw(unsigned short value, unsigned short int port);
unsigned void rtapi_inl(unsigned int value, unsigned short int port);
int rtapi_ioperm(unsigned long from, unsigned long num, int turn_on);
unsigned void rtapi_outl(unsigned int value, unsigned short int port);
ОПИС
У просторі ядра кожен ідентифікатор rtapi_xxx або RTAPI_XXX відображається на базову функціональність ядра, якщо така є.
У просторі користувача або в ядрах, де базова функціональність не забезпечується ядром, зазвичай надається інша реалізація, можливо зі скороченою функціональністю. (Наприклад, реалізація rtapi_device_register у просторі користувача та реалізація rtapi_ioperm у просторі ядра завжди виконуються успішно)
МІРКУВАННЯ В РЕАЛЬНОМУ ЧАСІ
Виклик з коду ініціалізації/очищення та із завдань реального часу. Ці функції спричинятимуть винятки недійсних інструкцій у компонентах, що не працюють у реальному часі, а також у просторі uspace rtapi_app, коли він не має root-ідентифікатора setuid.
ПОВЕРНЕНЕ ЗНАЧЕННЯ
Як і в Linux.
ДИВІТЬСЯ ТАКОЖ
inb(3), inw(3), inl(3), outb(3), outw(3), outl(3), ioperm(3)
АВТОР
Джефф Епплс