Архитектура Unix

       

. Опрос терминала



Рисунок 10.18. Опрос терминала



#include <fcntl.h> main() { register int i,n; int fd; char buf[256]; /* открытие терминала только для чтения с опцией "no delay" */ if((fd = open("/dev/tty",O_RDONLYO_NDELAY)) == -1) exit(); n = 1; for(;;) /* всегда */ { for(i = 0; i < n; i++) ; if(read(fd,buf,sizeof(buf)) > 0) { printf("чтение с номера %d\n",n); n--; } else /* ничего не прочитано; возврат вследствие "no delay" */ n++; } }










Содержание раздела