当前位置: 首页 > news >正文

【C】系统编程的常用术语(LINUX)

【C】系统编程的常用术语(LINUX)

【C】系统编程的常用术语(LINUX)

 

 

 

 

一、基本说明

 

 

 

二、系统编程的常见术语

 

 

  1、主设备号和次设备号

我的理解:--  主设备号代表着设备的驱动驱动程序的编号,驱动程序可以是一类设备的通用程序。--  次设备号,使用同个驱动程序的物理设备/虚拟设备的编号。--  主设备号,对应某个驱动程序,主设备号用于区分所有驱动程序。次设备号,代表某个驱动管理的设备;次设备号,用来区分使用相同驱动程序的不同设备(物理设备/虚拟设备)。我的归纳总结:--  主设备号,设备文件对应的某个驱动程序。--  次设备号,代表驱动程序管理的不同设备。--  主设备号,区分不同的驱动程序;次设备号,某个驱动程序管理的不同设备。参考资料:用户复述的内容基本正确,但我们可以更精确地表述:主设备号(major number)确实对应到设备驱动。一个主设备号对应一个驱动程序(或同一类设备的驱动)。
次设备号(minor number)用于区分由同一个驱动程序管理的不同设备或子设备。这些设备可能是物理设备,也可能是虚拟设备(如终端、虚拟控制台等)。
我们可以补充一些细节:设备号(由主设备号和次设备号组成)是一个32位的无符号整数,其中高12位是主设备号,低20位是次设备号。
同一个驱动程序可以处理多个设备(通过不同的次设备号来区分)。
次设备号不仅用于区分物理设备,还可以用于区分同一设备的不同功能(例如,磁带驱动器的不同操作模式)或分区(如硬盘的不同分区)。
因此,我们可以这样组织回答:主设备号和次设备号的本质如下:主设备号‌:标识设备对应的驱动程序。操作系统通过主设备号将设备文件与相应的驱动程序关联起来。例如,系统中所有SCSI磁盘驱动器通常共享同一个主设备号(8),因为它们使用相同的驱动程序。
次设备号‌:用于驱动程序区分其管理的各个具体设备或子设备。例如:
同一块硬盘的不同分区(如/dev/sda1、/dev/sda2)拥有相同的主设备号,但次设备号不同。
串口设备/dev/ttyS0、/dev/ttyS1也拥有相同的主设备号(4),但次设备号分别为64、65。
注意:设备文件本身并不包含驱动代码,它只是用户空间访问设备驱动的一个接口。真正的驱动在内核中。

 

 

 

三、参考资料

 

  1、无

 

.