DCMD_PROC_IRQS

Определение обработчиков прерываний, которыми владеет процесс

Прототип:

#include <sys/debug.h>
#include <sys/procfs.h>
#define DCMD_PROC_IRQS __DIOF( _DCMD_PROC, __PROC_SUBCMD_PROCFS + 24, procfs_irq )

Аргументы:

filedes
Файловый дескриптор процесса (открытый файл /proc/PID/as).
dcmd
DCMD_PROC_IRQS.
dev_data_ptr
NULL или указатель на массив структур procfs_irq.
n_bytes
0 или размер массива структур procfs_irq, полученный с помсощью sizeof().
dev_info_ptr
Указатель на int, где может быть сохранено число обработчиков прерываний.

Описание:

Команда используется в сочетании с вызовом devctl(), а все перечисленные аргументы являются его типовыми параметрами. Команда позволяет определить обработчики прерываний, которыми владеет процесс, ассоциированный с filedes.

Исходящие данные:

Отсутствуют.

Входящие данные:

Заполненный массив структур procfs_irq и общее число заполненных в нем элементов dev_info_ptr.

Примеры:

Получение числа обработчиков прерываний, которыми владеет процесс, с указанием аргумента NULL:

devctl( fd, DCMD_PROC_IRQS, NULL, 0, &n );

Выделение достаточного буфера для массива структур procfs_irq под каждый обработчик прерываний и запрос информации о них:

my_buffer = (procfs_irq *)malloc( sizeof( procfs_irq ) * n );
if ( my_buffer == NULL )
{
/* Not enough memory. */
}
devctl( fd, DCMD_PROC_IRQS, my_buffer, sizeof( procfs_irq ) * n, &dummy );

Тематические ссылки:

pthread_join(), MsgReply(), InterruptWait(), MsgDeliverEvent(), MsgReceive(), MsgSend(), MsgSendPulse(), nanosleep(), procfs_irq, pthread_cancel(), pthread_cond_wait(), pthread_create(), pthread_exit(), pthread_mutex_lock(), sigaction(), struct sigaction, SignalAction(), SignalKill(), sigsuspend(), sigwaitinfo(), SyncSemWait(), ThreadCreate()




Предыдущий раздел: перейти