本文以SNX串口卡在Centos7环境下加载驱动过程为例,分析串口的名称是如何确定的。
下面的终端显示为调用了modprobe snx后的输出,可以看到在第二步,内核发出消息到用户空间已经把串口名称确定了。
进入驱动代码,可以看到dev_name已经被硬编码了,并且在tty_set_operations中将设备名称注册到了内核空间。
最后udev在用户空间的/devices/virtual/tty/下创建串口设备文件,并最终在/dev下建立设备文件符号连接。
当执行modprobe -r snx后,/dev下的设备文件也会被释放。