Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux kernel linux cdc_ecm驱动程序与rndis驱动程序_Linux Kernel_Cdc_Rndis - Fatal编程技术网

Linux kernel linux cdc_ecm驱动程序与rndis驱动程序

Linux kernel linux cdc_ecm驱动程序与rndis驱动程序,linux-kernel,cdc,rndis,Linux Kernel,Cdc,Rndis,linux cdc_ecm驱动程序如何与rndis协议相关?cdc_ecm是否以任何方式基于微软的rndis规范 从这个wiki页面 USB实施者论坛(USB-IF)定义了至少三个具有类似“虚拟以太网”功能的非专有USB通信设备类(USB CDC)协议;其中之一(CDC-ECM)早于RNDIS,广泛用于与非Microsoft操作系统的互操作性,但不适用于Windows cdc\U ecm似乎基于microsoft rndis。cdc-ecm是由USB-IF创建的标准。它与RNDIS毫无关系。正如

linux cdc_ecm驱动程序如何与rndis协议相关?cdc_ecm是否以任何方式基于微软的rndis规范

从这个wiki页面

USB实施者论坛(USB-IF)定义了至少三个具有类似“虚拟以太网”功能的非专有USB通信设备类(USB CDC)协议;其中之一(CDC-ECM)早于RNDIS,广泛用于与非Microsoft操作系统的互操作性,但不适用于Windows


cdc\U ecm似乎基于microsoft rndis。

cdc-ecm是由USB-IF创建的标准。它与RNDIS毫无关系。正如你的话所说,它早于RNDIS。这意味着它是在RNDIS存在之前创建的,因此它不能基于RNDIS,除非时间机器进入图片。如果你看一下协议,它显然是不同的

CDC-ECM在Linux主机、MacOS、ChromeOS和某些(主要是三星)Android手机上开箱即用

微软决定创建一个新的基于USB的以太网协议,而不是使用已经存在的标准(CDC-ECM)。微软就是这样。所以他们创建了RNDIS,它不是标准,也没有发布。这是一个基于NDIS的黑客攻击,NDIS是一个旧的DOS和Windows3.11时代的网络协议,来自微软。微软也是这样。他们喜欢把东西建立在旧的MS软件之上,而旧的MS软件甚至是基于旧的MS软件,一直回到DOS。这使得它变得非常复杂,其他人很难与之兼容

Microsoft在Windows中不包括CDC-ECM驱动程序,但有RNDIS驱动程序

如果没有INF文件,仅使用供应商和产品ID、设备类等,无法让Windows加载附带的RNDIS驱动程序。Microsoft创建了一个非标准USB设备标识描述符(请参见此处的模式),必须使用该描述符向Windows标识RNDIS设备,以便它加载通用驱动程序


Linux有一个CDC-ECM/RNDIS组合小工具,它有助于提高兼容性。这是一个双功能USB设备。其中一个功能是RNDIS,Windows将使用它。另一个功能是CDC-ECM,其他人都会使用它。这不是“支持RNDIS的ECM”。这是两个不同的功能,一次只能使用其中一个,它们都是由同一个小工具创建的。

CDC-ECM是由USB-IF创建的标准。它与RNDIS毫无关系。正如你的话所说,它早于RNDIS。这意味着它是在RNDIS存在之前创建的,因此它不能基于RNDIS,除非时间机器进入图片。如果你看一下协议,它显然是不同的

CDC-ECM在Linux主机、MacOS、ChromeOS和某些(主要是三星)Android手机上开箱即用

微软决定创建一个新的基于USB的以太网协议,而不是使用已经存在的标准(CDC-ECM)。微软就是这样。所以他们创建了RNDIS,它不是标准,也没有发布。这是一个基于NDIS的黑客攻击,NDIS是一个旧的DOS和Windows3.11时代的网络协议,来自微软。微软也是这样。他们喜欢把东西建立在旧的MS软件之上,而旧的MS软件甚至是基于旧的MS软件,一直回到DOS。这使得它变得非常复杂,其他人很难与之兼容

Microsoft在Windows中不包括CDC-ECM驱动程序,但有RNDIS驱动程序

如果没有INF文件,仅使用供应商和产品ID、设备类等,无法让Windows加载附带的RNDIS驱动程序。Microsoft创建了一个非标准USB设备标识描述符(请参见此处的模式),必须使用该描述符向Windows标识RNDIS设备,以便它加载通用驱动程序

Linux有一个CDC-ECM/RNDIS组合小工具,它有助于提高兼容性。这是一个双功能USB设备。其中一个功能是RNDIS,Windows将使用它。另一个功能是CDC-ECM,其他人都会使用它。这不是“支持RNDIS的ECM”。这是两个不同的函数,一次只能使用其中一个,它们都是由同一个小工具创建的