Специфические для консоли функции
Помимо стандартных терминальных функций QNX (см. Руководство пользователя) драйвер консоли работает со специфическими для консоли функциями, которые позволяют прикладным процессам взаимодействовать с драйвером консоли напрямую посредством сообщений. Связь устанавливается функцией Си console_open(). После установления связи процесс QNX имеет следующие возможности.
Процесс может | Посредством функции Си |
Считывать данные непосредственно с экрана консоли | console_read() |
Выводить данные непосредственно на экран консоли | console_write() |
Быть асинхронно оповещенным о наступлении определенных событий (изменение отображаемых данных, перемещение курсора, изменение отображаемых размеров, смена видимой консоли и т.д.) | console_arm() |
Управлять размером консоли | console_size() |
Переключить видимую консоль | console_active() |
Драйвер консоли QNX выполняется как обычный процесс. Вводимые с клавиатуры данные преобразуются обработчиком прерываний клавиатуры и помещаются непосредственно во входную очередь. Выходные данные принимает и отображает драйвер Dev.con, пока он существует в качестве процесса.