CN113254281A - 一种usb控制器的检测方法及检测装置 - Google Patents
一种usb控制器的检测方法及检测装置 Download PDFInfo
- Publication number
- CN113254281A CN113254281A CN202110472311.8A CN202110472311A CN113254281A CN 113254281 A CN113254281 A CN 113254281A CN 202110472311 A CN202110472311 A CN 202110472311A CN 113254281 A CN113254281 A CN 113254281A
- Authority
- CN
- China
- Prior art keywords
- usb
- controllers
- identification codes
- restarting
- restart
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请适用于计算机自检的技术领域,提供一种USB控制器的检测方法及检测装置,所述检测方法包括:依次读取各个USB控制器的标识码;若读取到的标识码的第一数量小于USB控制器的第二数量,则执行重启操作;返回执行依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至标识码的第一数量等于USB控制器的第二数量,则确定各个USB控制器均正常启动。为了防止偶发性的虚假故障,导致USB控制器无法启动,故本申请通过不断重启,并检测正常启动的USB控制器的第一数量与USB控制器的第二数量,确定各个USB控制器均正常启动。可保证计算机***中的各个USB控制器在开机阶段时均正常启动。
Description
技术领域
本申请属于计算机自检的技术领域,尤其涉及一种USB控制器的检测方法及检测装置。
背景技术
通用串行总线(universal serial bus,USB)是连接计算机***与外部设备的一种串口总线标准,也是一种输入输出接口的技术规范,被广泛地应用于个人电脑和移动设备等信息通讯产品。例如:日常使用的U盘、移动硬盘以及鼠标等,都需要通过USB接口接入计算机***中。而USB接口需要通过USB控制器(host controller)处理计算机***与外部设备之间的数据传输。
其中,在计算机***开机阶段,USB控制器存在如下难以察觉的问题:USB控制器在计算机***开机阶段,会偶然性出现USB控制器无法正常启动的情况,导致无法正常使用USB控制器对应的USB接口。然而,在大多数情况下,无法正常启动USB控制器的缘由,并非是由于USB控制器出现真实故障,仅仅是偶发性的虚假故障。故,如何保证计算机***中的各个USB控制器在开机阶段时均正常启动,成了一个亟需解决的技术问题。
发明内容
有鉴于此,本申请实施例提供了一种USB控制器的检测方法、检测装置、终端设备以及计算机可读存储介质,可以解决计算机***中的各个USB控制器无法在开机阶段时均正常启动的技术问题。
本申请实施例的第一方面提供了一种USB控制器的检测方法,所述检测方法包括:
依次读取各个通用串行总线USB控制器的标识码;
若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作;
返回执行所述依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
本申请实施例的第二方面提供了一种USB控制器的检测装置,所述检测装置包括:
读取单元,用于依次读取各个通用串行总线USB控制器的标识码;
判断单元,用于若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作;
执行单元,用于返回执行所述依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
本申请实施例的第三方面提供了一种终端设备,包括USB控制器、USB接口、复杂可编程逻辑器件CPLD、存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述方法的步骤。
本申请实施例与现有技术相比存在的有益效果是:由于当USB控制器正常启动时可以读取其对应的标识码,当USB控制器无法启动时无法读取其对应的标识码。故本申请通过读取各个USB控制器的标识码,以确定各个USB控制器是否正常启动。当正常启动的USB控制器的第一数量小于USB控制器的第二数量时,表示各个USB控制器中存在无法正常启动的USB控制器。为了防止偶发性的虚假故障,导致USB控制器无法启动,故本申请通过不断重启,并检测正常启动的USB控制器的第一数量与USB控制器的第二数量,当正常启动的USB控制器的第一数量等于USB控制器的第二数量时,确定各个USB控制器均正常启动。故,可保证计算机***中的各个USB控制器在开机阶段时均正常启动。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出了本申请提供的一种USB控制器的检测方法的示意性流程图;
图2示出了本申请提供的另一种USB控制器的检测方法的示意性流程图;
图3示出了本申请提供的另一种USB控制器的检测方法的示意性流程图;
图4示出了本申请提供的另一种USB控制器的检测方法的示意性流程图;
图5示出了本申请提供的一种USB控制器的检测装置的示意图;
图6是本发明一实施例提供的一种终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
本申请实施例提供了一种USB控制器的检测方法、检测装置、终端设备以及计算机可读存储介质,可以解决计算机***中的各个USB控制器无法在开机阶段时均正常启动的技术问题。
首先,本申请提供了一种USB控制器的检测方法,所述检测方法具体包括如下内容:
请参见图1,图1示出了本申请提供的一种USB控制器的检测方法的示意性流程图。如图1所示,该检测方法可以包括如下步骤:
步骤101,依次读取各个通用串行总线USB控制器的标识码。
标识码包括但不限于USB控制器的序列号、USB控制器的物理地址以及PCIe(peripheral component interconnect express)码等。优选地,由于PCIe码为通用串行总线标准(universal serial bus,USB)特有的编码,故可优先采用PCIe码作为标识码。
其中,当USB控制器正常启动时,处理器才可以读取到USB控制器对应的标识码。当USB控制器未正常启动时,处理器无法读取到USB控制器对应的标识码。故,标识码可用于标识USB控制器是否正常启动。
步骤102,若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作。
第一数量表示处理器读取的标识码的数量,第二数量为USB控制器的总数量。当第一数量小于第二数量,表示所有的USB控制器中存在未正常启动的USB控制器。例如:所有的USB控制器的第二数量为5个,而读取到标识码的第一数量为4个,则表示5个USB控制器中有1个USB控制器未正常启动。然而,USB控制器未正常启动的缘由多样,但往往大部分时候,USB控制器未正常启动为偶发性的虚假故障(即并不是由于USB控制器本身存在故障,而是由于偶发性的因素,例如:电流不稳或初始化失败等)。偶发性的虚假故障,往往在重新启动后,则立刻恢复正常(即USB控制器正常启动)。
基于上述规律,为了避免偶发性的虚假故障,导致所有的USB控制器无法均正常启动,进而使得连接的USB接口无法使用,故处理器在确定第一数量小于第二数量后,执行重启操作。
步骤103,返回执行所述依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
为了确保重启后各个USB控制器均正常启动。故在重启操作后重新确定各个USB控制器是否均正常启动(即执行步骤101至步骤103),以在确定各个USB控制器未均正常启动时,循环执行步骤101至步骤103,在确定各个USB控制器均正常启动时,则执行开机操作。
值得注意的是,步骤101至步骤103由运行在处理器上的计算机程序实现。其中,计算机程序可以为底层固件或上层应用软件。
在本实施例中,由于当USB控制器正常启动时可以读取其对应的标识码,当USB控制器无法启动时无法读取其对应的标识码。故本申请通过读取各个USB控制器的标识码,以确定各个USB控制器是否正常启动。当正常启动的USB控制器的第一数量小于USB控制器的第二数量时,表示各个USB控制器中存在无法正常启动的USB控制器。为了防止偶发性的虚假故障,导致USB控制器无法启动,故本申请通过不断重启,并检测正常启动的USB控制器的第一数量与USB控制器的第二数量,当正常启动的USB控制器的第一数量等于USB控制器的第二数量时,确定各个USB控制器均正常启动。故,可保证计算机***中的各个USB控制器在开机阶段时均正常启动。
可选地,在上述图1所示实施例的基础上,所述检测方法,还包括如下步骤,请参见图2,图2示出了本申请提供的另一种USB控制器的检测方法的示意性流程图。其中,本实施例中步骤202和步骤205,与图1所示实施例中步骤101和步骤103相同,具体请参阅图1所示实施例中步骤101和步骤103的相关描述,此处不赘述。
步骤201,统计连续重启操作的重启次数;所述连续重启操作是指每两次重启操作的时间间隔小于第一阈值的多次重启操作。
由于在重启操作时,终端设备无法使用。且频繁的重启操作,往往容易引起终端设备长时间无法使用。故处理器通过统计连续重启操作的重启次数,以将重启次数控制在合理范围内。
值得注意的是,重启操作常常为用户的日常操作,故处理器需要将由用户日常触发的重启操作与由USB控制器无法正常启动触发的重启操作区分开。其中,由用户触发的重启操作的频率较低(往往一天中重启操作的次数不大于两次),而由USB控制器无法正常启动触发的重启操作的频率较高、时间间隔较短且连续,故本申请将“连续重启操作”作为筛选逻辑,以排除日常使用过程中由用户触发的重启操作。
其中,“统计连续重启操作的重启次数”的执行主体可以为在处理器中运行的计数器,也可以通过与处理器连接的复杂可编程逻辑器件CPLD进行统计。
步骤202,依次向各个通用串行总线USB控制器读取各自对应的标识码。
步骤203,若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,且所述重启次数不大于第二阈值,则执行所述重启操作。
步骤102与步骤203的区别在于:步骤102以单个维度确定是否执行重启操作,而步骤203以两个维度确定是否执行重启操作。以将重启次数控制在合理范围内。
步骤204,若所述重启次数大于所述第二阈值,则执行关机操作。
当重启次数大于第二阈值,即使各个USB控制器未均正常启动,也不执行重启操作,以将重启次数控制在合理范围内。其中,为了防止未正常启动的USB控制器引发使用异常(例如:在工业生产中,对终端设备的运行状况的要求较为严格,USB控制器易对工业生产造成较大影响),故需执行关机操作。
可以理解的是,若对终端设备的运行状态的要求较为宽松,则在步骤204中,也可以执行开机操作(即将关机操作替换为开机操作)。
步骤205,返回执行所述依次向各个通用串行总线USB控制器读取各自对应的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
步骤206,若读取到的所述标识码的第一数量等于所述USB控制器的第二数量,则执行开机操作。
当读取到的标识码的第一数量等于USB控制器的第二数量,则表示各个USB控制器均正常启动,可执行开机操作。
在本实施例中,在处理器不断进行重启操作时,通过重启次数控制处理器的重启次数,以避免过多的重启操作,导致终端设备长时间无法使用。
可选地,在上述图1所示实施例的基础上,所述检测方法,还包括如下步骤,请参见图3,图3示出了本申请提供的另一种USB控制器的检测方法的示意性流程图。本实施例中步骤304和步骤307,与图1所示实施例中步骤101和步骤103相同,具体请参阅图1所示实施例中步骤101至步骤103的相关描述,此处不赘述。
步骤301,获取连续重启操作的历史总时长;所述连续重启操作是指每相邻两次重启操作的时间间隔小于第一阈值的多次重启操作。
由于在重启操作时,终端设备无法使用。且频繁的重启操作,往往容易引起终端设备长时间无法使用。故处理器通过计算连续重启操作的预计总时长,将总重启时长控制在一个合理范围内。
值得注意的是,重启操作常常为用户的日常操作,故处理器需要将由用户日常触发的重启操作与由USB控制器无法正常启动触发的重启操作区分开。其中,由用户触发的重启操作的频率较低(往往一天中重启操作的次数不大于两次),而由USB控制器无法正常启动触发的重启操作的频率较高、时间间隔较短且连续,故本申请将“连续重启操作”作为筛选逻辑,以排除日常使用过程中由用户触发的重启操作。
步骤302,获取平均重启时长;所述平均重启时长是指根据多次历史重启操作的重启时长计算而得的平均值。
平均重启时长用于对未来将要进行重启操作的重启时长的预估。示例性地,若多次历史重启操作的重启时长分别为11秒、12秒、10秒、9秒以及8秒,则平均重启时长为10秒。其中,平均重启时长可以为预先计算的时长(步骤302仅需获取预存的平均重启时长即可),也可以在步骤302中计算。
步骤303,将所述历史总时长与所述平均重启时长相加,得到预计总时长。
可以理解的是,历史总时长是已经经历的时长,而平均重启时长为对将要发生的重启操作的预估时长。以根据预计总时长确定当前是否执行重启操作(即判断:若再次执行重启操作后,总重启时长是否会超过第三阈值,以将总重启时长控制在一个合理范围内)。
步骤304,依次读取各个通用串行总线USB控制器的标识码。
步骤305,若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,且所述预计总时长小于第三阈值,则执行所述重启操作。
示例性地,若需将总重启时长控制在60秒(第三阈值)之内,此时历史总时长为53秒(即已进行的重启操作的时长为53秒)。若此时还需要进行重启操作,则将平均重启时长作为将要发生的重启操作的预估时长,如:10秒。将历史总时长53秒与平均重启时长10秒相加,得到预计总时长63秒。预计总时长63秒大于60秒,则不进行重启操作。
步骤102与步骤305的区别在于:步骤102以单个维度确定是否执行重启操作,而步骤305以两个维度确定是否执行重启操作。以将连续重启操作的时长控制在合理范围内。
步骤306,若所述预计总时长不小于所述第三阈值,则执行关机操作。
当预计总时长大于第三阈值,即使各个USB控制器未均正常启动,也不执行重启操作,以将重启时长控制在合理范围内。其中,为了防止未正常启动的USB控制器引发使用异常(例如:在工业生产中,对终端设备的运行状况的要求较为严格,USB控制器易对工业生产造成较大影响),故需执行关机操作。
步骤307,返回执行所述依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
步骤308,若读取到的所述标识码的第一数量等于所述USB控制器的第二数量,则执行开机操作。
当读取到的标识码的第一数量等于USB控制器的第二数量,则表示各个USB控制器均正常启动,可执行开机操作。
在本实施例中,在处理器不断进行重启操作时,通过重启次数控制处理器的重启时长,以避免过多的重启操作,导致终端设备长时间无法使用。
可选地,在上述图1所示实施例的基础上,所述检测方法,还包括如下步骤,请参见图4,图4示出了本申请提供的另一种USB控制器的检测方法的示意性流程图。本实施例中步骤202和步骤206,与图1所示实施例中步骤101和步骤103相同,具体请参阅图1所示实施例中步骤101至步骤103的相关描述,此处不赘述。
步骤401,依次读取各个通用串行总线USB控制器的标识码。
步骤402,若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作。
步骤403,返回执行所述依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
步骤404,统计在多次重启操作中各个所述USB控制器无法启动的异常次数。
步骤405,将各个所述USB控制器的异常次数,分别除以所述多次重启操作的次数,得到各个所述USB控制器对应的异常率。
步骤406,当所述异常率大于第四阈值,则发出报警信息;所述报警信息用于提示异常率大于第四阈值的USB控制器存在故障。
如果USB控制器的异常率较高,则表示USB控制器或USB控制器相关的元器件存在故障。故本申请根据USB控制器的异常次数以及重启操作次数,得到USB控制的异常率。以根据异常率发出报警信息。防止终端设备因USB控制器或USB控制器相关的元器件的故障,进行过多的重启操作。
在本实施例中,根据USB控制器的异常次数以及重启操作次数,确定USB控制器是否存在故障,以减少USB控制器影响终端设备的正常运行。
如图5本申请提供了一种USB控制器的检测装置5,请参见图5,图5示出了本申请提供的一种USB控制器的检测装置的示意图,如图5所示一种USB控制器的检测装置包括:
读取单元51,用于依次读取各个通用串行总线USB控制器的标识码;
判断单元52,用于若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作;
执行单元53,用于返回执行所述依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
本申请提供的一种USB控制器的检测装置,通过读取各个USB控制器的标识码,以确定各个USB控制器是否正常启动。当正常启动的USB控制器的第一数量小于USB控制器的第二数量时,表示各个USB控制器中存在无法正常启动的USB控制器。为了防止偶发性的虚假故障,导致USB控制器无法启动,故本申请通过不断重启,并检测正常启动的USB控制器的第一数量与USB控制器的第二数量,当正常启动的USB控制器的第一数量等于USB控制器的第二数量时,确定各个USB控制器均正常启动。故,可保证计算机***中的各个USB控制器在开机阶段时均正常启动。
图6是本发明一实施例提供的一种终端设备的示意图。如图6所示,该实施例的一种终端设备6包括:USB控制器61、USB接口62、复杂可编程逻辑器件CPLD63、处理器64、存储器65以及存储在所述存储器65中并可在所述处理器64上运行的计算机程序66,例如一种USB控制器的检测程序。所述处理器64执行所述计算机程序66时实现上述各个一种USB控制器的检测方法实施例中的步骤,例如图1所示的步骤101至步骤103。或者,所述处理器64执行所述计算机程序66时实现上述各装置实施例中各单元的功能,例如图5所示单元51至53的功能。
示例性的,所述计算机程序66可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器65中,并由所述处理器64执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序66在所述一种终端设备6中的执行过程。例如,所述计算机程序66可以被分割成获取单元和计算单元各单元具体功能如下:
读取单元,用于依次读取各个通用串行总线USB控制器的标识码;
判断单元,用于若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作;
执行单元,用于返回执行所述依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
所述一种终端设备可包括,但不仅限于,处理器64、存储器65。本领域技术人员可以理解,图6仅仅是一种终端设备6的示例,并不构成对一种终端设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种终端设备还可以包括输入输出设备、网络接入设备、总线等。
所述处理器64可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器65可以是所述一种终端设备6的内部存储单元,例如一种终端设备6的硬盘或内存。所述存储器65也可以是所述一种终端设备6的外部存储设备,例如所述一种终端设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器65还可以既包括所述一种终端设备6的内部存储单元也包括外部存储设备。所述存储器65用于存储所述计算机程序以及所述一种终端设备所需的其他程序和数据。所述存储器65还可以用于暂时地存储已经输出或者将要输出的数据。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于监测到”。类似地,短语“如果确定”或“如果监测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦监测到[所描述条件或事件]”或“响应于监测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种USB控制器的检测方法,其特征在于,所述检测方法包括:
依次读取各个通用串行总线USB控制器的标识码;
若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作;
返回执行所述依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
2.如权利要求1所述检测方法,其特征在于,所述检测方法,还包括:
统计连续重启操作的重启次数;所述连续重启操作是指每相邻两次重启操作的时间间隔小于第一阈值的多次重启操作;
所述若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作,包括:
若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,且所述重启次数不大于第二阈值,则执行所述重启操作。
3.如权利要求2所述检测方法,其特征在于,在所述统计连续重启操作的重启次数之后,还包括:
若所述重启次数大于所述第二阈值,则执行关机操作。
4.如权利要求1所述检测方法,其特征在于,所述检测方法,还包括:
获取连续重启操作的历史总时长;所述连续重启操作是指每相邻两次重启操作的时间间隔小于第一阈值的多次重启操作;
获取平均重启时长;所述平均重启时长是指根据多次历史重启操作的重启时长计算而得的平均值;
将所述历史总时长与所述平均重启时长相加,得到预计总时长;
相应的,所述若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作,包括:
若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,且所述预计总时长小于第三阈值,则执行所述重启操作。
5.如权利要求4所述检测方法,其特征在于,在所述将所述历史总时长与所述平均重启时长相加,得到预计总时长之后,还包括:
若所述预计总时长不小于所述第三阈值,则执行关机操作。
6.如权利要求1所述检测方法,其特征在于,所述检测方法,还包括:
统计在多次重启操作中各个所述USB控制器无法启动的异常次数;
将各个所述USB控制器的异常次数,分别除以所述多次重启操作的次数,得到各个所述USB控制器对应的异常率;
当所述异常率大于第四阈值,则发出报警信息;所述报警信息用于提示异常率大于第四阈值的USB控制器存在故障。
7.如权利要求1至6任意一项所述检测方法,其特征在于,所述检测方法,还包括:
若读取到的所述标识码的第一数量等于所述USB控制器的第二数量,则执行开机操作。
8.一种USB控制器的检测装置,其特征在于,所述检测装置包括:
读取单元,用于依次读取各个通用串行总线USB控制器的标识码;
判断单元,用于若读取到的所述标识码的第一数量小于所述USB控制器的第二数量,则执行重启操作;
执行单元,用于返回执行所述依次读取各个通用串行总线USB控制器的标识码的步骤以及后续步骤,直至所述标识码的第一数量等于所述USB控制器的第二数量,则确定各个所述USB控制器均正常启动。
9.一种终端设备,其特征在于,所述终端设备包括USB控制器、USB接口、复杂可编程逻辑器件CPLD、存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110472311.8A CN113254281A (zh) | 2021-04-29 | 2021-04-29 | 一种usb控制器的检测方法及检测装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110472311.8A CN113254281A (zh) | 2021-04-29 | 2021-04-29 | 一种usb控制器的检测方法及检测装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113254281A true CN113254281A (zh) | 2021-08-13 |
Family
ID=77223413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110472311.8A Pending CN113254281A (zh) | 2021-04-29 | 2021-04-29 | 一种usb控制器的检测方法及检测装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113254281A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117440088A (zh) * | 2023-12-20 | 2024-01-23 | 荣耀终端有限公司 | 通话方法及相关设备 |
-
2021
- 2021-04-29 CN CN202110472311.8A patent/CN113254281A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117440088A (zh) * | 2023-12-20 | 2024-01-23 | 荣耀终端有限公司 | 通话方法及相关设备 |
CN117440088B (zh) * | 2023-12-20 | 2024-05-14 | 荣耀终端有限公司 | 通话方法及相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9778988B2 (en) | Power failure detection system and method | |
CN109542744A (zh) | 检测终端开机异常问题的方法、装置、存储介质及终端 | |
CN114328102A (zh) | 设备状态监控方法、装置、设备及计算机可读存储介质 | |
CN109375956B (zh) | 一种重启操作***的方法、逻辑设备以及控制设备 | |
CN111694677A (zh) | 消息队列的管理方法、装置、终端和计算机可读存储介质 | |
CN111949457A (zh) | 服务器故障芯片检测方法及装置 | |
CN113254281A (zh) | 一种usb控制器的检测方法及检测装置 | |
CN110445932B (zh) | 异常掉卡处理方法、装置、存储介质以及终端 | |
CN113672306B (zh) | 服务器组件自检异常恢复方法、装置、***及介质 | |
CN114756406A (zh) | 应用程序崩溃的处理方法、装置及电子设备 | |
CN112783721B (zh) | 一种i2c总线监控的方法、装置、***及存储介质 | |
CN113641537A (zh) | 一种服务器的启动***,方法及介质 | |
CN112395121A (zh) | 一种驱动加载的处理方法及装置、存储介质、计算机设备 | |
CN107179911B (zh) | 一种重启管理引擎的方法和设备 | |
CN115934446A (zh) | 一种自检方法、服务器、设备和存储介质 | |
CN115098342A (zh) | ***日志收集方法、***、终端及存储介质 | |
CN115269252A (zh) | 应用程序故障处理方法、装置、设备及存储介质 | |
US20220398105A1 (en) | Out-of-band custom baseboard management controller (bmc) firmware stack monitoring system and method | |
CN114816852A (zh) | 一种恢复用户配置数据的方法、装置及介质 | |
CN114116276A (zh) | Bmc挂死自恢复方法、***、终端及存储介质 | |
CN113741985A (zh) | 一种bios升级后***冷启动的方法、装置、设备及可读介质 | |
CN112631863A (zh) | 一种bmc健康状态检测方法、电子设备及存储介质 | |
CN114579388A (zh) | 车载***状态监测方法、***、存储介质及电子设备 | |
CN111813037A (zh) | 一种开机控制方法、开机控制装置及电子设备 | |
CN109408266B (zh) | 一种重启类型的确定方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |