LinuxCNC Documentation

СИНТАКСИС

#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)

АВТОР

Джефф Епплс