低级别驱动程序和tty驱动程序之间的链接

时间:2012-02-23 20:32:30

标签: linux linux-kernel device-driver linux-device-driver

我正在为linux编写控制台驱动程序,我遇到了我需要为此驱动程序设置的tty接口。我对tty驱动程序如何与低级驱动程序绑定感到困惑。

根文件系统很多时候已经包含了很多tty设备。我想知道低级设备如何绑定到根文件系统上的一个现有tty节点。

例如,/dev/tty7:根文件系统上的节点 低级设备驱动程序如何与此节点连接?或者该低级设备是否应该定义一个全新的tty设备?

1 个答案:

答案 0 :(得分:5)

  

低级设备如何绑定到根文件系统上现有的tty节点之一?

控制台和tty驱动程序的主要和次要编号都是硬编码的。您可以使用以下命令在系统上查找指定的主要编号:

$ cat /proc/devices

设备文件通过mknod实用程序绑定到设备驱动程序,例如加载设备驱动程序后创建设备文件 - 而不是相反。要创建设备文件/ dev / tty7,请键入

$ mknod /dev/tty7 c 4 7

对于内核源代码中的引用:drivers / tty / tty_io.c:tty_init为/ dev / tty和/ dev / console分配主要和次要编号。 tty_register_driver似乎为一组其他tty驱动程序分配主要和次要编号。如果你看看来电者,也许你会找到答案。

如果您想要了解tty子系统结构的高级概述,那么tty demystifiedLDD3 Chapter 18 TTY drivers就是很好的资源。