CN104980603A - 一种usb_3g网卡用户态自动识别与拨号方法和装置 - Google Patents

一种usb_3g网卡用户态自动识别与拨号方法和装置 Download PDF

Info

Publication number
CN104980603A
CN104980603A CN201510241140.2A CN201510241140A CN104980603A CN 104980603 A CN104980603 A CN 104980603A CN 201510241140 A CN201510241140 A CN 201510241140A CN 104980603 A CN104980603 A CN 104980603A
Authority
CN
China
Prior art keywords
usb
network interface
interface card
device information
dialing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510241140.2A
Other languages
English (en)
Other versions
CN104980603B (zh
Inventor
高福亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Opzoon Technology Co Ltd
Original Assignee
Opzoon Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Opzoon Technology Co Ltd filed Critical Opzoon Technology Co Ltd
Priority to CN201510241140.2A priority Critical patent/CN104980603B/zh
Publication of CN104980603A publication Critical patent/CN104980603A/zh
Application granted granted Critical
Publication of CN104980603B publication Critical patent/CN104980603B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Facsimiles In General (AREA)

Abstract

一种USB_3G网卡用户态自动识别与拨号方法和装置,所述方法包括如下步骤:内核初始化时申请共享内存,在探测到有插入USB_3G网卡时进行累加操作;在预设目录下存储pppd可执行文件;修改内核文件,执行lsusb命令以获取USB设备信息;用户态创建全局USB设备信息表;用户态创建一个线程,用于自动识别插入的USB_3G网卡类型并自动拨号连接;从存储设备目录中提取USB_3G网卡设备信息,将USB_3G网卡设备信息与全局USB设备信息表进行比对以识别该新插入的USB_3G网卡类型;根据新插入的USB_3G网卡类型和pppd可执行文件,控制新插入的USB_3G网卡执行自动拨号连接。本发明对于用户态实现USB_3G网卡自动识别与自动拨号,对内核修改小、简单易行。

Description

一种USB_3G网卡用户态自动识别与拨号方法和装置
技术领域
本发明涉及USB设备技术领域,特别涉及一种USB_3G网卡用户态自动识别与拨号方法和装置。
背景技术
3G上网卡是目前无线广域通信网络应用广泛的上网介质。目前我国有中国移动的TD-SCDMA和中国电信的CDMA2000以及中国联通的WCDMA三种网络制式,所以常见的无线上网卡就包括CDMA2000无线上网卡和TD、WCDMA无线上网卡三类。这种3G上网卡与电脑连接的接口通常为USB接口。在将3G上网卡插入到电脑上时,内核探测并加载USB_3G网卡驱动,用户需要手动拨号连接上网。
但是,现有技术方法的缺点是内核探测加载驱动,用户需要手动拨号连接上网,用户态无法实现自动探测及自动拨号上网。
发明内容
本发明的目的是提供一种USB_3G网卡用户态自动识别与拨号方法,该方法对于用户态实现USB_3G网卡自动识别与自动拨号,对内核修改小、简单易行。
为实现上述目的,本发明提出一种USB_3G网卡用户态自动识别与拨号方法,包括如下步骤:
内核初始化时申请共享内存,并将所述共享内存的地址赋值给全局变量,所述全局变量在探测到有插入USB_3G网卡时进行累加操作;
在预设目录下存储pppd可执行文件,其中pppd命令为USB_3G网卡拨号使用命令;
修改内核文件,执行lsusb命令以获取USB设备信息,保存内核探测到的所有USB设备信息至存储设备目录;
用户态创建全局USB设备信息表,所述全局USB设备信息表用于存储多个厂商的运营商代码Vendor Id、每个厂商支持的USB_3G网卡的产品代码Product Id和USB_3G网卡的网络类型;
用户态创建一个线程,用于自动识别插入的USB_3G网卡类型并自动拨号连接,比较本次全局变量和上次全局变量的值是否相等,如果不等则认为探测到有新的USB_3G网卡插入;
从所述存储设备目录中提取USB_3G网卡设备信息,将所述USB_3G网卡设备信息与所述全局USB设备信息表进行比对以识别该新插入的USB_3G网卡类型;
根据所述新插入的USB_3G网卡类型和所述pppd可执行文件,控制所述新插入的USB_3G网卡执行自动拨号连接。
根据本发明的一个方面,所述全局变量在探测到有插入USB_3G网卡时进行累加操作,包括:每当探测到新插入一个USB_3G网卡时,所述全局变量的值加1。
根据本发明的另一个方面,在所述存储设备目录中,每个USB设备信息包括:设备的总线编号、设备编号、设备的厂商运营代码和产品ID。
根据本发明的又一方面,将所述USB_3G网卡设备信息与所述全局USB设备信息表进行比对以识别该新插入的USB_3G网卡类型,包括如下步骤:
通过扫描方式将USB_3G网卡设备信息中的厂商的运营商代码VendorId与全局USB设备信息表中的所有厂商的运营商代码Vendor Id进行比对,检测出新插入一个USB_3G网卡的厂商;
保存所述USB_3G网卡的设备信息,在所述全局USB设备信息表中根据产品代码Product Id获取并记录所述USB_3G网卡对应的设备类型。
根据本发明的再一方面,所述全局USB设备信息表为全局的二维数组。
本发明实施方式提供的USB_3G网卡用户态自动识别与拨号方法,通过设置标志USB_3G网卡的全局变量,每当探测到新插入的USB_3G网卡则执行加一操作,以及通过比较本次全局变量和上次全局变量的值是否相等,以及将USB_3G网卡设备信息与全局USB设备信息表进行比对以识别,在用户态USB_3G上网卡自动探测3G网卡类型、3G网卡厂商运营代码、3G网卡产品ID以及3G网卡所在USB总线的总线编号、设备编号等信息,并根据探测到内容实现自动拨号连接上网。本发明对于用户态实现USB_3G网卡自动识别与自动拨号,对内核修改小、简单易行。
本发明的目的是提供一种USB_3G网卡用户态自动识别与拨号装置,该装置对于用户态实现USB_3G网卡自动识别与自动拨号,对内核修改小、简单易行。
为实现上述目的,本发明提出一种USB_3G网卡用户态自动识别与拨号装置,包括:共享内存操作模块,用于在内核初始化时申请共享内存,并将所述共享内存的地址赋值给全局变量,所述全局变量在探测到有插入USB_3G网卡时进行累加操作;pppd可执行文件存储模块,用于在预设目录下存储pppd可执行文件,其中pppd命令为USB_3G网卡拨号使用命令;已探测USB设备信息存储模块,用于修改内核文件,执行lsusb命令以获取USB设备信息,保存内核探测到的所有USB设备信息至存储设备目录;全局USB设备信息存储模块,所述全局USB设备信息存储模块位于用户态,用于创建全局USB设备信息表,所述全局USB设备信息表用于存储多个厂商的运营商代码Vendor Id、每个厂商支持的USB_3G网卡的产品代码Product Id和USB_3G网卡的网络类型;USB_3G网卡识别模块,所述USB_3G网卡识别模块与所述共享内存操作模块、已探测USB设备信息存储模块和全局USB设备信息存储模块相连,用于创建一个线程,用于自动识别插入的USB_3G网卡类型并自动拨号连接,比较本次全局变量和上次全局变量的值是否相等,如果不等则认为探测到有新的USB_3G网卡插入,从所述存储设备目录中提取USB_3G网卡设备信息,将所述USB_3G网卡设备信息与所述全局USB设备信息表进行比对以识别该新插入的USB_3G网卡类型;自动拨号连接模块,所述自动拨号连接模块与USB_3G网卡识别模块和pppd可执行文件存储模块相连,用于根据所述新插入的USB_3G网卡类型和所述pppd可执行文件,控制所述新插入的USB_3G网卡执行自动拨号连接。
根据本发明的一个方面,所述共享内存操作模块用于在每当探测到新插入一个USB_3G网卡时,将所述全局变量的值加1。
根据本发明的又一个方面,在所述存储设备目录中,每个USB设备信息包括:设备的总线编号、设备编号、设备的厂商运营代码和产品ID。
根据本发明的再一个方面,所述USB_3G网卡识别模块通过扫描方式将USB_3G网卡设备信息中的厂商的运营商代码Vendor Id与全局USB设备信息表中的所有厂商的运营商代码Vendor Id进行比对,检测出新插入一个USB_3G网卡的厂商,保存所述USB_3G网卡的设备信息,在所述全局USB设备信息表中根据产品代码Product Id获取并记录所述USB_3G网卡对应的设备类型。
根据本发明的另一个方面,所述全局USB设备信息表为全局的二维数组。
本发明实施方式提供的USB_3G网卡用户态自动识别与拨号装置,通过设置标志USB_3G网卡的全局变量,每当探测到新插入的USB_3G网卡则执行加一操作,以及通过比较本次全局变量和上次全局变量的值是否相等,以及将USB_3G网卡设备信息与全局USB设备信息表进行比对以识别,在用户态USB_3G上网卡自动探测3G网卡类型、3G网卡厂商运营代码、3G网卡产品ID以及3G网卡所在USB总线的总线编号、设备编号等信息,并根据探测到内容实现自动拨号连接上网。本发明对于用户态实现USB_3G网卡自动识别与自动拨号,对内核修改小、简单易行。
附图说明
图1是根据本发明实施方式的USB_3G网卡用户态自动识别与拨号方法的流程图;
图2是根据本发明实施方式的探测USB_3G网卡插入的流程图;
图3是根据本发明实施方式的USB_3G网卡用户态自动识别与拨号装置的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。
图1为根据本发明实施方式的USB_3G网卡用户态自动识别与拨号方法的流程图。
如图1所示,本发明实施方式提供的USB_3G网卡用户态自动识别与拨号方法,包括如下步骤:
步骤S1,内核初始化时申请共享内存,并将共享内存的地址赋值给全局变量,其中全局变量在探测到有插入USB_3G网卡时进行累加操作。
具体地,以Linux系统为例,Linux内核初始化时申请一块共享内存,将该共享内存的地址赋值给全局变量。其中,全局变量在USB的初始化函数usb_serial_device_probe函数中进行累加操作。即,每当探测到新插入一个USB_3G网卡时,共享内存的全局变量的值加1,用作用户态扫描探测USB_3G网卡的标志位。
步骤S2,在预设目录下存储pppd可执行文件,其中pppd命令为USB_3G网卡拨号使用命令。pppd命令自编译pppd开源程序,生成pppd可执行文件并放在预设目录下,以备用户态自动拨号使用。
在本发明的实施方式中,预设目录可以为/usr/sbin或/usr/bin。
步骤S3,修改内核文件,执行lsusb命令以获取USB设备信息,保存内核探测到的所有USB设备信息至存储设备目录。其中,修改内核文件包括如下步骤:修改Linux内核/etc/init.d/rcS文件,在该文件中添加两条语句:/bin/mount/dev/sda1/cfcard和lsusb>/cfcard/usbdev,其中/bin/mount/dev/sda1/cfcard语句的功能是挂载硬件设备中的存储设备,例如CF卡。
然后,执行lsusb命令以获取USB设备信息,包括如下步骤:
执行命令lsusb>/cfcard/usbdev,从而将lsusb显示的设备信息以usbdev文件形式保存在挂载的存储设备目录下,进而保存内核探测到的所有USB设备信息。其中,在存储设备目录中,每个USB设备信息包括:设备的总线编号、设备编号、设备的厂商运营代码和产品ID。
下面对lsusb命令进行说明。在本发明的实施方式中,用户态USB_3G网卡的自动探测使用lsusb的命令,lsusb是一个用来显示系统中所有USB总线设备或连接到该总线上所有设备的工具。一般显示格式如下:
Bus 001 Device 001:ID 1d6b:0002
Bus 002 Device 002:ID 192d:0015中兴MF628 WCDMA(联通)
Bus 002 Device 003:ID 12d1:1506华为EC122 CDMA(电信)
其中,Bus 002表示USB_3G网卡设备的总线编号,Device 003表示USB_3G网卡设备的设备编号,ID后依次为USB_3G网卡的厂商运营代码和产品ID。
需要说明的是,USB_3G网卡的厂商运营代码、产品ID都是唯一的,并且根据产品ID即可知道USB_3G网卡的类型,是电信、联通或是移动。其中,厂商运营代码可作为显示信息,产品ID则是用于判断卡类型而拨号需要使用的信息。
以Bus 002 Device 002:ID 192d:0015为例,192d为中兴的厂商Vendor Id,0015为该USB_3G网卡的产品Product Id。
以Bus 002 Device 003:ID 12d1:1506为例,12d1为华为的Vendor Id,1506为该USB_3G网卡的产品Product Id。
步骤S4,用户态创建全局USB设备信息表,全局USB设备信息表用于存储多个厂商的运营商代码Vendor Id、每个厂商支持的USB_3G网卡的产品代码Product Id和USB_3G网卡的网络类型。在本发明的实施方式中,全局USB设备信息表为全局的二维数组。
具体地,在用户态创建全局usb_dev_table表格,用于保存多个厂商的厂商Vendor Id、每个厂商已支持的所有USB_3G网卡的产品Product Id及其对应的设备类型(CDMA或WCDMA),以备后续步骤中和用户态探测到的USB_3G网卡信息对比使用。
步骤S5,用户态创建一个线程,用于自动识别插入的USB_3G网卡类型并自动拨号连接,比较本次全局变量和上次全局变量的值是否相等,如果不等则认为探测到有新的USB_3G网卡插入。
根据步骤S1中共享内存全局变量在USB初始化函数中累加,即有USB_3G插入时此数值增加,该共享内存值用户态也可见。比较本次全局变量和上次全局变量的值是否相等。
图2是根据本发明实施方式的探测USB_3G网卡插入的流程图。
步骤S51,获取本次全局变量和上次全局变量的值。
步骤S52,判断本次全局变量和上次全局变量的值是否相等,如果相等则执行步骤S54,否则执行步骤S53。
步骤S53,探测到有新的USB_3G网卡插入。
当有USB_3G网卡插入时,共享内存的全局变量加一。因此如果本次全局变量和上次全局变量的值不相等,即发生变化,则必然是增加的变化,从而可以判断有新的USB_3G网卡插入。
步骤S54,不作操作。
当本次全局变量和上次全局变量的值相等时,则不做任何操作以免损耗系统性能。
步骤S6,从存储设备目录中提取USB_3G网卡设备信息,将USB_3G网卡设备信息与全局USB设备信息表进行比对以识别该新插入的USB_3G网卡类型。
当判断有新的3G网卡插入,则开始自动探测并拨号。具体地,首先在用户态程序中以文件形式open之前保存的/cfcard/pcidev文件,然后从所有USB设备的信息中将USB_3G网卡的设备信息提取出来。通过扫描方式将USB_3G网卡设备信息中的厂商的运营商代码Vendor Id与全局USB设备信息表中的所有厂商的运营商代码Vendor Id进行比对,检测出新插入一个USB_3G网卡的厂商。同时保存USB_3G网卡的设备信息,例如总线编号Bus Id、设备编号Device Id、产品代码Product Id等。
同时,在全局USB设备信息表中根据产品代码Product Id获取并记录USB_3G网卡对应的设备类型,例如CDMA或WCDMA。
步骤S7,根据新插入的USB_3G网卡类型和所述pppd可执行文件,控制新插入的USB_3G网卡执行自动拨号连接。
具体地,根据步骤S6探测到USB_3G网卡类型,通过system下发“pppdcall wcdma-connect\cdma-connect”命令实现USB_3G网卡的自动拨号连接。
根据本发明实施方式的USB_3G网卡用户态自动识别与拨号方法,通过设置标志USB_3G网卡的全局变量,每当探测到新插入的USB_3G网卡则执行加一操作,以及通过比较本次全局变量和上次全局变量的值是否相等,以及将USB_3G网卡设备信息与全局USB设备信息表进行比对以识别,在用户态USB_3G上网卡自动探测3G网卡类型、3G网卡厂商运营代码、3G网卡产品ID以及3G网卡所在USB总线的总线编号、设备编号等信息,并根据探测到内容实现自动拨号连接上网。本发明对于用户态实现USB_3G网卡自动识别与自动拨号,对内核修改小、简单易行。
图3为根据本发明实施方式的USB_3G网卡用户态自动识别与拨号装置的结构图。
如图3所示,本发明实施方式的USB_3G网卡用户态自动识别与拨号装置,包括:共享内存操作模块1、pppd可执行文件存储模块2、已探测USB设备信息存储模块3、全局USB设备信息存储模块4、USB_3G网卡识别模块5和自动拨号连接模块6。
具体地,共享内存操作模块1用于在内核初始化时申请共享内存,并将共享内存的地址赋值给全局变量,全局变量在探测到有插入USB_3G网卡时进行累加操作。
具体地,以Linux系统为例,共享内存操作模块1在Linux内核初始化时申请一块共享内存,将该共享内存的地址赋值给全局变量。其中,全局变量在USB的初始化函数usb_serial_device_probe函数中进行累加操作。即,共享内存操作模块1每当探测到新插入一个USB_3G网卡时,共享内存的全局变量的值加1,用作用户态扫描探测USB_3G网卡的标志位。
pppd可执行文件存储模块2用于在预设目录下存储pppd可执行文件,其中pppd命令为USB_3G网卡拨号使用命令。pppd命令自编译pppd开源程序,生成pppd可执行文件并放在预设目录下,以备用户态自动拨号使用。
在本发明的实施方式中,预设目录可以为/usr/sbin或/usr/bin。
已探测USB设备信息存储模块3用于修改内核文件,执行lsusb命令以获取USB设备信息,保存内核探测到的所有USB设备信息至存储设备目录。
其中,已探测USB设备信息存储模块3修改Linux内核/etc/init.d/rcS文件,在该文件中添加两条语句:/bin/mount/dev/sda1/cfcard和lsusb>/cfcard/usbdev,其中/bin/mount/dev/sda1/cfcard语句的功能是挂载硬件设备中的存储设备,例如CF卡。
然后,已探测USB设备信息存储模块3执行lsusb命令以获取USB设备信息,包括如下步骤:执行命令lsusb>/cfcard/usbdev,从而将lsusb显示的设备信息以usbdev文件形式保存在挂载的存储设备目录下,进而保存内核探测到的所有USB设备信息。其中,在存储设备目录中,每个USB设备信息包括:设备的总线编号、设备编号、设备的厂商运营代码和产品ID。
下面对lsusb命令进行说明。在本发明的实施方式中,用户态USB_3G网卡的自动探测使用lsusb的命令,lsusb是一个用来显示系统中所有USB总线设备或连接到该总线上所有设备的工具。一般显示格式如下:
Bus 001 Device 001:ID 1d6b:0002
Bus 002 Device 002:ID 192d:0015中兴MF628 WCDMA(联通)
Bus 002 Device 003:ID 12d1:1506华为EC122 CDMA(电信)
其中,Bus 002表示USB_3G网卡设备的总线编号,Device 003表示USB_3G网卡设备的设备编号,ID后依次为USB_3G网卡的厂商运营代码和产品ID。
需要说明的是,USB_3G网卡的厂商运营代码、产品ID都是唯一的,并且根据产品ID即可知道USB_3G网卡的类型,是电信、联通或是移动。其中,厂商运营代码可作为显示信息,产品ID则是用于判断卡类型而拨号需要使用的信息。
以Bus 002 Device 002:ID 192d:0015为例,192d为中兴的厂商Vendor Id,0015为该USB_3G网卡的产品Product Id。
以Bus 002 Device 003:ID 12d1:1506为例,12d1为华为的Vendor Id,1506为该USB_3G网卡的产品Product Id。
全局USB设备信息存储模块4位于用户态,用于创建全局USB设备信息表,所述全局USB设备信息表用于存储多个厂商的运营商代码Vendor Id、每个厂商支持的USB_3G网卡的产品代码Product Id和USB_3G网卡的网络类型。在本发明的实施方式中,全局USB设备信息表为全局的二维数组。
具体地,全局USB设备信息存储模块4在用户态创建全局usb_dev_table表格,用于保存多个厂商的厂商Vendor Id、每个厂商已支持的所有USB_3G网卡的产品Product Id及其对应的设备类型(CDMA或WCDMA),以备后续和用户态探测到的USB_3G网卡信息对比使用。
USB_3G网卡识别模块5与所述共享内存操作模块1、已探测USB设备信息存储模块3和全局USB设备信息存储模块4相连,用于创建一个线程,用于自动识别插入的USB_3G网卡类型并自动拨号连接,比较本次全局变量和上次全局变量的值是否相等,如果不等则认为探测到有新的USB_3G网卡插入,从所述存储设备目录中提取USB_3G网卡设备信息,将所述USB_3G网卡设备信息与全局USB设备信息表进行比对以识别该新插入的USB_3G网卡类型。
具体地,USB_3G网卡识别模块5首先在用户态程序中以文件形式open之前保存的/cfcard/pcidev文件,然后从所有USB设备的信息中将USB_3G网卡的设备信息提取出来。通过扫描方式将USB_3G网卡设备信息中的厂商的运营商代码Vendor Id与全局USB设备信息表中的所有厂商的运营商代码Vendor Id进行比对,检测出新插入一个USB_3G网卡的厂商。同时保存USB_3G网卡的设备信息,例如总线编号Bus Id、设备编号Device Id、产品代码Product Id等。
同时,USB_3G网卡识别模块5在全局USB设备信息表中根据产品代码Product Id获取并记录USB_3G网卡对应的设备类型,例如CDMA或WCDMA。
自动拨号连接模块6与USB_3G网卡识别模块5和pppd可执行文件存储模块2相连,用于根据所述新插入的USB_3G网卡类型和所述pppd可执行文件,控制所述新插入的USB_3G网卡执行自动拨号连接。
具体地,自动拨号连接模块6探测到USB_3G网卡类型,通过system下发“pppd call wcdma-connect\cdma-connect”命令实现USB_3G网卡的自动拨号连接。
根据本发明实施方式的USB_3G网卡用户态自动识别与拨号装置,通过设置标志USB_3G网卡的全局变量,每当探测到新插入的USB_3G网卡则执行加一操作,以及通过比较本次全局变量和上次全局变量的值是否相等,以及将USB_3G网卡设备信息与全局USB设备信息表进行比对以识别,在用户态USB_3G上网卡自动探测3G网卡类型、3G网卡厂商运营代码、3G网卡产品ID以及3G网卡所在USB总线的总线编号、设备编号等信息,并根据探测到内容实现自动拨号连接上网。本发明对于用户态实现USB_3G网卡自动识别与自动拨号,对内核修改小、简单易行。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

Claims (10)

1.一种USB_3G网卡用户态自动识别与拨号方法,包括如下步骤:
内核初始化时申请共享内存,并将所述共享内存的地址赋值给全局变量,所述全局变量在探测到有插入USB_3G网卡时进行累加操作;
在预设目录下存储pppd可执行文件,其中pppd命令为USB_3G网卡拨号使用命令;
修改内核文件,执行lsusb命令以获取USB设备信息,保存内核探测到的所有USB设备信息至存储设备目录;
用户态创建全局USB设备信息表,所述全局USB设备信息表用于存储多个厂商的运营商代码Vendor Id、每个厂商支持的USB_3G网卡的产品代码Product Id和USB_3G网卡的网络类型;
用户态创建一个线程,用于自动识别插入的USB_3G网卡类型并自动拨号连接,比较本次全局变量和上次全局变量的值是否相等,如果不等则认为探测到有新的USB_3G网卡插入;
从所述存储设备目录中提取USB_3G网卡设备信息,将所述USB_3G网卡设备信息与所述全局USB设备信息表进行比对以识别该新插入的USB_3G网卡类型;
根据所述新插入的USB_3G网卡类型和所述pppd可执行文件,控制所述新插入的USB_3G网卡执行自动拨号连接。
2.根据权利要求1所述的USB_3G网卡用户态自动识别与拨号方法,其中,所述全局变量在探测到有插入USB_3G网卡时进行累加操作,包括:每当探测到新插入一个USB_3G网卡时,所述全局变量的值加1。
3.根据权利要求1所述的USB_3G网卡用户态自动识别与拨号方法,其中,在所述存储设备目录中,每个USB设备信息包括:设备的总线编号、设备编号、设备的厂商运营代码和产品ID。
4.根据权利要求1所述的USB_3G网卡用户态自动识别与拨号方法,其中,将所述USB_3G网卡设备信息与所述全局USB设备信息表进行比对以识别该新插入的USB_3G网卡类型,包括如下步骤:
通过扫描方式将USB_3G网卡设备信息中的厂商的运营商代码Vendor Id与全局USB设备信息表中的所有厂商的运营商代码Vendor Id进行比对,检测出新插入一个USB_3G网卡的厂商;
保存所述USB_3G网卡的设备信息,在所述全局USB设备信息表中根据产品代码Product Id获取并记录所述USB_3G网卡对应的设备类型。
5.根据权利要求1所述的USB_3G网卡用户态自动识别与拨号方法,其中,所述全局USB设备信息表为全局的二维数组。
6.一种USB_3G网卡用户态自动识别与拨号装置,包括:
共享内存操作模块,用于在内核初始化时申请共享内存,并将所述共享内存的地址赋值给全局变量,所述全局变量在探测到有插入USB_3G网卡时进行累加操作;
pppd可执行文件存储模块,用于在预设目录下存储pppd可执行文件,其中pppd命令为USB_3G网卡拨号使用命令;
已探测USB设备信息存储模块,用于修改内核文件,执行lsusb命令以获取USB设备信息,保存内核探测到的所有USB设备信息至存储设备目录;
全局USB设备信息存储模块,所述全局USB设备信息存储模块位于用户态,用于创建全局USB设备信息表,所述全局USB设备信息表用于存储多个厂商的运营商代码Vendor Id、每个厂商支持的USB_3G网卡的产品代码Product Id和USB_3G网卡的网络类型;
USB_3G网卡识别模块,所述USB_3G网卡识别模块与所述共享内存操作模块、已探测USB设备信息存储模块和全局USB设备信息存储模块相连,用于创建一个线程,用于自动识别插入的USB_3G网卡类型并自动拨号连接,比较本次全局变量和上次全局变量的值是否相等,如果不等则认为探测到有新的USB_3G网卡插入,从所述存储设备目录中提取USB_3G网卡设备信息,将所述USB_3G网卡设备信息与所述全局USB设备信息表进行比对以识别该新插入的USB_3G网卡类型;
自动拨号连接模块,所述自动拨号连接模块与USB_3G网卡识别模块和pppd可执行文件存储模块相连,用于根据所述新插入的USB_3G网卡类型和所述pppd可执行文件,控制所述新插入的USB_3G网卡执行自动拨号连接。
7.根据权利要求6所述的USB_3G网卡用户态自动识别与拨号装置,其中,所述共享内存操作模块用于在每当探测到新插入一个USB_3G网卡时,将所述全局变量的值加1。
8.根据权利要求6所述的USB_3G网卡用户态自动识别与拨号装置,其中,在所述存储设备目录中,每个USB设备信息包括:设备的总线编号、设备编号、设备的厂商运营代码和产品ID。
9.根据权利要求6所述的USB_3G网卡用户态自动识别与拨号装置,其中,所述USB_3G网卡识别模块通过扫描方式将USB_3G网卡设备信息中的厂商的运营商代码Vendor Id与全局USB设备信息表中的所有厂商的运营商代码Vendor Id进行比对,检测出新插入一个USB_3G网卡的厂商,保存所述USB_3G网卡的设备信息,在所述全局USB设备信息表中根据产品代码Product Id获取并记录所述USB_3G网卡对应的设备类型。
10.根据权利要求6所述的USB_3G网卡用户态自动识别与拨号装置,其中,所述全局USB设备信息表为全局的二维数组。
CN201510241140.2A 2015-05-13 2015-05-13 一种usb_3g网卡用户态自动识别与拨号方法和装置 Active CN104980603B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510241140.2A CN104980603B (zh) 2015-05-13 2015-05-13 一种usb_3g网卡用户态自动识别与拨号方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510241140.2A CN104980603B (zh) 2015-05-13 2015-05-13 一种usb_3g网卡用户态自动识别与拨号方法和装置

Publications (2)

Publication Number Publication Date
CN104980603A true CN104980603A (zh) 2015-10-14
CN104980603B CN104980603B (zh) 2018-01-12

Family

ID=54276681

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510241140.2A Active CN104980603B (zh) 2015-05-13 2015-05-13 一种usb_3g网卡用户态自动识别与拨号方法和装置

Country Status (1)

Country Link
CN (1) CN104980603B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109117326A (zh) * 2018-07-12 2019-01-01 北京中科网威信息技术有限公司 基于申威架构的用户态网卡自动探测的处理方法及装置
CN117112047A (zh) * 2023-06-30 2023-11-24 浙江齐安信息科技有限公司 一种usb设备的管控方法、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050079831A1 (en) * 2003-10-09 2005-04-14 International Business Machines Corporation Signal strength indicator for a wireless card

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050079831A1 (en) * 2003-10-09 2005-04-14 International Business Machines Corporation Signal strength indicator for a wireless card

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109117326A (zh) * 2018-07-12 2019-01-01 北京中科网威信息技术有限公司 基于申威架构的用户态网卡自动探测的处理方法及装置
CN117112047A (zh) * 2023-06-30 2023-11-24 浙江齐安信息科技有限公司 一种usb设备的管控方法、设备及存储介质
CN117112047B (zh) * 2023-06-30 2024-04-26 浙江齐安信息科技有限公司 一种usb设备的管控方法、设备及存储介质

Also Published As

Publication number Publication date
CN104980603B (zh) 2018-01-12

Similar Documents

Publication Publication Date Title
CN104156658B (zh) 一种移动终端及其在双系统下访问数据的方法和装置
CN104850301A (zh) 一种在系统桌面上将应用程序图标分类的方法和系统
US8825916B2 (en) Method and device for identifying device ports of data card in Linux system
CN106648685B (zh) 智能终端系统应用的处理方法、装置及智能终端
CN103593281B (zh) 测试系统及测试方法
CN111143150A (zh) 一种测试pcba板的方法、系统、测试设备及微控制单元
CN110597523A (zh) 板卡固件烧录方法、装置、系统及板卡、终端设备
EP3543858B1 (en) Method for checking and compiling system start-up files
CN105824678A (zh) 一种操作系统安装方法及装置
CN108460271B (zh) 终端识别方法及装置
CN104484206A (zh) 安装应用程序的方法、终端及系统
CN102929653A (zh) 应用程序的加载方法及通信终端
CN104980603A (zh) 一种usb_3g网卡用户态自动识别与拨号方法和装置
CN111651397B (zh) 一种访问PXIe外设模块的方法和设备
CN107423075B (zh) 驱动的注册方法以及用户终端
CN105959451A (zh) 一种加载mbn的方法及移动终端
CN110661893A (zh) 数据中心管理方法及数据中心管理系统
CN102521195B (zh) 一种地址资源分配方法及存储器
CN107766228B (zh) 一种基于多语种的自动化测试方法和装置
CN102305906A (zh) 芯片测试方法及装置
CN112147987B (zh) 一种车辆诊断方法、车辆诊断装置及终端设备
CN110457187B (zh) 基于备份测试数据可便捷运行的tpc-e测试方法及测试服务器
CN110896333B (zh) WiFi模组测试方法、系统及存储介质
CN113691998A (zh) 用户识别卡兼容性测试方法、装置及通信模块
CN114296782A (zh) 固件烧录方法、装置及介质、终端设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PP01 Preservation of patent right

Effective date of registration: 20180528

Granted publication date: 20180112

PP01 Preservation of patent right