Устройства и специальные файлы
Каждому устройству соответствует часть системы, называемая драйвером. Связь между устройствами и драйверами отражена в каталоге /dev, вхождения которого принято называть специальными файлами, или спецфайлами. Это позволяет называть каждое устройство именем некоторого спецфайла.
Добавление устройства в систему требует и добавления спецфайла в каталоге /dev. Последнее реализуется командой mknod (make node - сделать узел). Пример:
ls -l /dev ___________ crw--w--w-1 root 0 0 .....console brw-rw-rw-1 root 5 0 .....fl0 ___________ crw-w--w-1 root 18 0 .....tty0 crw-w--w-1 mary 18 1 .....tty1 /etc/mknod /dev/tty2 c 18 2
Первый аргумент команды mknod задает имя спецфайла для подключаемого устройства. Второй аргумент указывает, является ли устройство знакоориентированным (c) или блочным (b), в зависимости от единицы передаваемых данных. Оставшиеся два аргумента называют мажорным и минорным номерами устройства. Их значения зависят от аппаратной реализации, но, как правило, первый аргумент указывает тип устройства, а второй - адрес экземпляра устройства данного типа.