MacOS内核、.kext和/dev中的设备

MacOS内核、.kext和/dev中的设备,macos,kernel,driver,hardware,kernel-extension,Macos,Kernel,Driver,Hardware,Kernel Extension,我的USB 3G调制解调器出现问题,我进行了调试,但无法确定在/dev中创建设备的.kext文件 如何确定/dev中的设备文件(如/dev/usbdriver.001)和.kext之间的关系?要创建/dev条目,kext通常使用IOxxxBSDClient(例如串行、媒体等)。您可以使用ioreg-l并查找它,如下所示: ... (this would be the parent class) ... | +-o IOSerialBSDClient <class IOSerialBS

我的USB 3G调制解调器出现问题,我进行了调试,但无法确定在/dev中创建设备的.kext文件


如何确定/dev中的设备文件(如/dev/usbdriver.001)和.kext之间的关系?

要创建/dev条目,kext通常使用IOxxxBSDClient(例如串行、媒体等)。您可以使用ioreg-l并查找它,如下所示:

... (this would be the parent class) ...
|   +-o IOSerialBSDClient  <class IOSerialBSDClient, id 0x100000385, registered, matched, active, busy 0 (0 ms), retain 5>
      | |       {
      | |         "IOClass" = "IOSerialBSDClient"
      | |         "CFBundleIdentifier" = "com.apple.iokit.IOSerialFamily"
      | |         "IOProviderClass" = "IOSerialStreamSync"
      | |         "IOTTYBaseName" = "Bluetooth-Serial-1"
      | |         "IOSerialBSDClientType" = "IORS232SerialStream"
      | |         "IOProbeScore" = 1000
      | |         "IOCalloutDevice" = "/dev/cu.Bluetooth-Serial-1"
      | |         "IODialinDevice" = "/dev/tty.Bluetooth-Serial-1"
      | |         "IOMatchCategory" = "IODefaultMatchCategory"
      | |         "IOTTYDevice" = "Bluetooth-Serial-1"
      | |         "IOResourceMatch" = "IOBSD"
      | |         "IOTTYSuffix" = ""
      | |       }
。。。(这将是父类)。。。
|+-o IOSerialBSD客户端
| |       {
||“IOClass”=“IOSerialBSDClient”
||“CbundleIdentifier”=“com.apple.iokit.IOSerialFamily”
||“IOProviderClass”=“IOSerialStreamSync”
||“IOTTYBaseName”=“Bluetooth-Serial-1”
||“IOSerialBSDClientType”=“IORS232SerialStream”
||“IOProbeScore”=1000
||“IOCallout设备”=“/dev/cu.Bluetooth-Serial-1”
||“碘设备”=“/dev/tty.Bluetooth-Serial-1”
||“IOMatchCategory”=“IODefaultMatchCategory”
||“IOTTYDevice”=“Bluetooth-Serial-1”
||“IOResourceMatch”=“IOBSD”
||“IOTTYSuffix”=“”
| |       }
通常情况下,这就是关键