020-8888888
网站首页 关于evo视讯官网 产品中心 新闻动态 成功案例 荣誉资质 联系我们
咨询热线
020-8888888
地址:上海市徐汇区淮海中路1469号
邮箱:

新闻动态

当前位置: 首页 > 新闻动态

计算机硬件检测方法及系统:提升系统稳定性与运行效率的关键技术

发布时间:2025-01-05 01:12:10 点击量:

[0001] 本发明涉及计算机检测领域,尤其涉及一种硬件检测方法及系统。

背景技术:

在系统中,硬件设备是最基本、最重要的组成部分。底层操作系统和上层管理软件都需要足够的硬件支持才能正常运行。硬件本身的状态和性能对系统的稳定性、可靠性和运行效率有很大影响。可见,在计算机领域,硬件检测和监控非常重要。

由于各厂家使用的部件不同,部件组合结构不一致,硬件本身往往与不同厂家生产的同类型硬件存在很大差异。即使相同的硬件设备也安装了不同的操作系统。根据所使用的驱动程序的不同,硬件本身的信息查询和分析也会有很大的差异。这些因素往往导致我们很难以更加统一、简洁的方式对一系列硬件设备进行检测和监控。

目前,硬件检测和监控仅关注当前使用的操作系统。一旦所使用的系统发生变化,或者需要支持其他操作系统,整个检测方案就需要重新实现,并且很可能需要同时维护针对不同系统的系统。多套代码实现使得整个维护过程变得异常繁琐和复杂,稍有改动就可能导致大量的代码重构。

然而,在实际应用中,软件开发团队往往会面对多种类型的硬件设备、使用多种操作系统。因此,如何使用最简单、最方便、可以在多个系统之间切换或在不同操作系统下轻松移植的硬件检测和监控解决方案对于软件开发人员来说具有重要意义。

此外,现有检测监控解决方案的可扩展性还不够完善。检测对象的微小变化,例如增加检测字段,可能会引起基本数据结构的变化,导致相关代码需要更改。导致一定量的代码重构。当某个检测对象的相关字段需要反复更改时,很可能会导致某段代码被多次重构,也可能引入新的实现问题。因此,一种可扩展性高、只需少量修改就能满足新需求的硬件检测和监控方法也非常重要。

技术实现要素:

针对现有技术的上述缺陷,本发明的目的在于提供一种硬件检测方法及系统,以解决现有技术中硬件检测在不同操作系统下不兼容、可扩展性差的问题。

为达上述及其他相关目的,本发明提供一种硬件检测方法,用以检测至少一安装有操作系统的电子装置中的至少一硬件。该方法包括:对待测硬件进行检测,包括:获取待测硬件所在的操作系统类型以及待测硬件的检测信息;根据待测硬件所在操作系统的类型,加载并执行与该操作系统类型相关的信息的链接库文件,其中,该库文件中预先存储有至少一个硬件配置文件,并且每个配置文件包含至少一项硬件预设信息;根据待测硬件的检测信息查询库文件中是否预存有与待测硬件对应的配置文件。如果是,则将检测到的检测信息与配置文件中预设的信息进行比较,并根据比较结果发出相应的警报。暗示。

在本发明实施例中,当库文件中未预存有待测硬件对应的配置文件时,显示待测硬件的检测信息。

在本发明的一个实施例中,待测硬件的检测信息以键值的形式获取。键值包括:字段名和字段的值;每个配置文件至少包含一个字段。硬件的预设信息包括:字段名称、该字段的至少一预设值以及与该至少一预设值对应的至少一报警级别。

硬件检测基本常识_硬件检测工具有哪些_常识硬件检测基本步骤

在本发明的一个实施例中,将检测到的检测信息与配置文件中预设的信息进行比较,并根据比较结果提供相应的报警提示,包括:确定检测信息的位置。字段名称与预设信息中的字段名称是否匹配;如果不匹配,则提示缺少相应的配置信息;如果匹配,则判断检测信息中的字段的值是否均低于预设信息中的字段的至少一个预设值;如果是,则不会发出警报;如果否,则判断检测信息中的字段的值是否小于预设信息中的字段的至少一预设值。通过该字段的值与预设信息中该字段的至少一个预设值之间的关系来确定报警级别并发出报警。

为达上述及其他相关目的,本发明提供一种硬件检测系统,用以检测至少一安装有操作系统的电子装置中的至少一硬件。该系统包括:检测模块,用于对待测硬件进行检测。 ,包括:获取被测硬件所在操作系统的类型以及被测硬件的检测信息;处理模块,用于加载并执行所述操作与系统类型相关的库文件,其中,所述库文件中预先存储有至少一个硬件配置文件,每个配置文件包含至少一个用于执行所述操作的预设信息。硬件;根据待测硬件的检测信息,查询库文件中是否存在预存的待测硬件对应的配置文件。如果是,则将检测到的检测信息与配置文件中预设的信息进行比较,并根据比较结果提供相应的报警提示。

在本发明的一个实施例中,该系统还包括:显示模块。当判断模块的判断结果为库文件中不存在预存的被测硬件对应的配置文件时,显示模块显示被测硬件的检测信息。

在本发明的一个实施例中,待测硬件的检测信息以键值的形式获取。键值包括:字段名和字段的值;每个配置文件至少包含一个字段。硬件的预设信息包括:字段名称、该字段的至少一预设值以及与该至少一预设值对应的至少一报警级别。

在本发明的一个实施例中,将检测到的检测信息与配置文件中预设的信息进行比较,并根据比较结果提供相应的报警提示,包括:确定检测信息的位置。字段名称与预设信息中的字段名称是否匹配;如果不匹配,则提示缺少相应的配置信息;如果匹配,则判断检测信息中的字段的值是否均低于预设信息中的字段的至少一个预设值;如果是,则不会发出警报;如果否,则判断检测信息中的字段的值是否小于预设信息中的字段的至少一预设值。通过该字段的值与预设信息中该字段的至少一个预设值之间的关系来确定报警级别并发出报警。

为了实现上述及其他相关目的,本发明提供了一种电子设备,包括:如上所述任一项所述的硬件检测系统。

为了实现上述目的及其他相关目的,本发明提供一种库文件,该库文件中预先存储有至少一个配置文件,每个配置文件包含至少一个预设信息。库文件还包括: 根据接收到的信息,查询是否存在与接收到的信息对应的预存的配置文件。如果是,则将接收到的信息与配置文件中预设的信息进行比较,并根据比较结果返回相应的结果函数。 。

如上所述,本发明的硬件检测方法及系统具有以下有益效果:

1)软件实现模块之间的依赖关系比较小,修改也比较简单;

2)支持在多种操作系统上运行。当需要添加新的操作系统时,只需修改操作系统判断部分,并提供相关的功能实现库即可。原有操作系统支持部分的代码实现无需修改;

3)当修改检测对象的相关属性时,只需修改信息获取和信息显示的代码,中间数据通信代码不需要修改。

附图说明

硬件检测基本常识_常识硬件检测基本步骤_硬件检测工具有哪些

图1示出了根据本发明实施例的硬件检测方法的流程图。

图2示出了根据本发明实施例的硬件检测系统的模块图。

元件标签说明

200硬件检测系统

201检测模块

202处理模块

203显示模块

步骤S101~S105

具体实施

下面通过具体例子对本发明实施例进行描述。本领域技术人员可以从本说明书所公开的内容中容易地理解本发明的其他优点和效果。本发明还可以通过其他不同的具体实施例来实现或应用。在不脱离本发明的精神的情况下,还可以基于不同的观点和应用以各种方式修改或改变本说明书中的各种细节。需要说明的是,在不冲突的情况下,下述实施例及实施例中的特征可以相互组合。

需要说明的是,以下实施例所提供的附图只是示意性地说明了本发明的基本构思,附图中仅示出了与本发明相关的部件,并不遵循部件编号的实际实现,形状和组件。在尺寸图的实际实现中,各个部件的类型、数量和比例可以随意改变,而且部件布局也可能比较复杂。

本发明提出一种支持多操作系统的硬件检测方法。硬件设备的检测和监控采用模块化的处理方案,尽可能减少代码实现之间的耦合,以最简单的方式实现多操作系统的检测。支持确保移植的简单性。同时在实现中采用了多种数据结构组合,提高了程序的可扩展性,保证了后期代码维护的简单高效。

整个实现框架分为多个模块,与内核关系比较密切的部分,比如依赖相关驱动或者调用系统命令的部分,被封装成独立的库文件。众所周知,库文件将函数封装在一起,编译出来供自己或他人调用。由于看不到源代码,编译后的库文件只提供二进制文件,因此保密性很高。同时,功能也不会被意外修改。而且问题出现了,那么维护起来也容易。对于一些通用的处理功能,则封装成统一的通用模块,如主函数等,特别是检测系统硬件的相关字段,并将指定字段与用户提供的阈值字段进行比较的功能生成视觉报警信息分为独立的模块。该模块作为可选模块。不提供时 如果相关配置文件中没有进行阈值比较,则不会使用该模块。您可以改为让其他模块显示检测信息。

请参阅图1,本发明提供一种硬件检测方法,具体包括以下步骤:

步骤S101、检测待测硬件,如CPU、内存、磁盘等。检测对象包括:待测硬件所在的操作系统类型,如Win7、Windows XP、Mac OS等。 ,以及待测硬件的检测信息,例如温度、电压等。优选地,为了保持良好的可扩展性,检测信息以键值“name-value”的形式获取。当检测信息包含多个对象时,就会有多个键值对“name-value”。这样,当需要添加或删除硬件检测对象时,只需删除不需要检测的对象的字段以及最终输出显示的对象的字段即可。中间函数调用和相关判断过程的代码不需要修改,从而实现了高扩展性,保证了维护的简单性。

步骤S102、为了正确调用与待测硬件当前所在系统相关的命令和进程,在软件编译时,首先判断操作系统的类型,并根据判断结果加载相关的库文件,即每种类型的操作系统文件都有一个对应的唯一库,其中该库文件中预存有至少一个硬件的配置文件,每个配置文件包含至少一个预设硬件信息。该预设信息包括:字段名称、以及该字段的至少一预设值。 、以及对应于至少一预设值的至少一警报级别。需要注意的是,当检测到之前不存在的操作系统时,只需要编写相应的库文件即可加载执行,避免了整个程序的重建。

步骤S103:确定操作系统类型后,首先需要根据检测信息查询库文件中是否有与待测硬件对应的配置文件。若是,则执行步骤S104。若否,则执行步骤S105。

步骤S104、根据不同的硬件调用不同的配置文件,将检测到的检测信息与配置文件中预设的信息进行比较,并根据比较结果提供相应的报警提示。具体可以是:

步骤S10410,判断检测信息的字段名称与预设信息中的字段名称是否匹配;若不匹配,则执行步骤S10411;如果匹配,则执行步骤S10412。

步骤S10411:提示缺少相应的配置信息;

步骤S10412,判断检测信息中的字段的值是否均低于预设信息中的字段的至少一个预设值;若是,则执行步骤S104121;若否,则执行步骤S104122。

步骤S104121:无报警;

步骤S104122,确定检测信息中的字段的值与预设信息中的至少一个预设值之间的关系,并据此确定报警级别,并发出报警。

步骤S105,显示被测硬件的检测信息,起到类似查询输出的作用。

常识硬件检测基本步骤_硬件检测基本常识_硬件检测工具有哪些

需要说明的是,为了保证维护的简单性,操作系统相关的函数实现和主函数是通过回调函数关联起来的。相关回调函数的调用路径定义在主函数中,相关回调函数完全实现在封装的与操作系统相关的库函数中。回调函数的使用是通过统一的接口实现不同的内容所必需的。编写的函数必须能够在不同时间执行不同类型的工作或执行只能由函数调用者定义的工作。 。

下面以Linux和Solaris操作系统环境为例详细说明上述方法的实现过程。代码实现的基本方式是利用系统提供的命令行指令编写shell脚本,然后通过C代码调用该脚本,输出脚本的结果。分析、判断、显示:

被测硬件包括安装在不同操作系统下的CPU、内存和磁盘。每个被测硬件的检测包括多个对象,如温度、电压等。

由于不同操作系统支持的命令和查询信息存在一定差异,因此根据不同操作系统将脚本调用解析的过程以及调用系统函数进行数据显示的过程封装成相应的库文件。本例中我们封装了两个库文件,solaris_dev_lib.so和linux_dev_lib.so。在库文件中,我们首先提供一个init函数来专门定义相关的回调函数,然后在库文件中实现。当main函数获取到相关信息后,通过回调函数调用具体的实现函数。编译打包时对系统内核进行判断,判断操作系统类型时加载相应的库文件,从而进一步生成支持各个操作系统的检测工具。

获取检测信息,通过shell脚本调用系统命令,进行过滤、整合,然后以“名称:值;名称:值...”的格式输出。 C函数调用脚本文件,解析脚本输出结果,并将其保存到预设中。 modeinfo中定义的数据结构。

配置文件定义格式为“name:type:value”,其中name指定要判断的对象,type定义判断值的类型,如阈值、最差值等,value定义具体判断的大小价值。当判断值有多个时,可以同时定义,并用“;”分隔。

优选地,为了提高配置文件的匹配效率,在确定待测试的硬件是什么类型的设备后,首先使用C函数解析库文件中是否存在该设备的配置文件。我们为设备的配置文件定义一个模式名称,并定义全局变量modeConfig来标识提供配置文件的模块。当多个模块提供配置信息时,可以定义为:modeType=mode1:mode2...,当没有提供配置信息时,modeType等于默认值None。例如,当确定全局变量modeType指定了相关模块信息,如modeType=cpu,表示预存有CPU配置文件时,将CPU检测信息与配置文件中预设的信息进行比较,根据比较结果发出警报,可选地,如果有报警,在屏幕上高亮显示报警字段等信息,还可以调用打印函数,在日志文件中标明相关报警级别、高亮显示等;如果modeType=None,则表示被测硬件没有配置文件。此时,可以直接显示输出获取到的检测信息,也可以直接调用打印函数,将获取到的检测信息显示在屏幕、日志文件等上。

将获取到的检测信息与配置文件中预设信息的相关指标进行比较。如果判断结果完全符合配置指标,则当前对象的判断结果正常。否则,根据配置文件中定义的值,判断超过阈值。还是超过了最差值,或者配置信息本身不匹配。需要添加相关的报警级别等。例如,如果超过阈值但没有达到最差值,则定义为严重报警,如果达到最差值,则定义为紧急报警,如果不符合配置、被定义为无效等。

上述过程中使用的数据格式可以参考如下:

结构对象信息{

字符串名称;

地图列表;

结构模式信息{

字符串模式;

矢量对象;

请参阅图2,与上述方法实施例的原理类似,本发明提供了一种硬件检测系统200。由于本系统实施例可以使用上一实施例中的技术特征,因此不再赘述。系统200包括:检测模块201、处理模块202,还可以包括显示模块203。

检测模块201用于对待测硬件进行检测,包括:获取待测硬件所在的操作系统类型以及待测硬件的检测信息。处理模块202根据待测试硬件所在操作系统的类型,加载并执行与操作系统类型相关的库文件,其中,库文件中预先存储有至少一硬件的配置文件。 。配置文件至少包含一项硬件默认信息;根据待测硬件的检测信息,查询库文件中是否存在预存的与待测硬件对应的配置文件,如果存在,则将检测到的检测信息与预存的配置文件进行比较在配置文件中。对设定信息进行比对,并根据比对结果发出相应的报警提示。当判断模块的判断结果为库文件中不存在预存的与待测硬件对应的配置文件时,显示模块203用于显示待测硬件的检测信息。

在一个实施例中,待测硬件的检测信息以键值的形式获取。键值包括:字段名和字段的值;每个配置文件至少包含一条有关硬件的信息。该预设信息包括:字段名称、该字段的至少一预设值以及与该至少一预设值对应的至少一报警级别。

在一实施例中,将检测到的检测信息与配置文件中预设的信息进行比较,并根据比较结果提供相应的报警提示,包括:确定检测信息的字段名称。是否与预设信息中的字段名称匹配;如果不匹配,则提示缺少相应的配置信息;如果匹配,则判断检测信息中的字段的值是否均低于预设信息中的字段的至少一个预设值;如果是,则不发出警报;如果不是,则判断检测信息中该字段的值。通过该值与预设信息中的字段的至少一个预设值之间的关系来确定报警级别并发出报警。

本发明还提供一种电子设备,包括如上所述的硬件检测系统200。其中,电子设备可以是待检测硬件所属电子设备之外的电子设备,例如:移动终端、服务器、台式机等具有信息处理功能的设备。当然,也可以是待检测硬件所属的电子设备本身。即电子设备完成自身硬件的自检等。

本发明还提供了一种库文件。库文件中预先存储有至少一配置文件,每一配置文件包含至少一预设信息。库文件还包括根据接收到的信息查询是否有预存的配置文件的功能。如果存在与接收到的信息对应的配置文件,则将接收到的信息与配置文件中预设的信息进行比较,并根据比较结果返回对应结果的函数。这种库文件可以根据不同的操作系统单独编写,需要时加载执行,这样操作系统改变时其他部分的代码结构就不会被破坏。

综上所述,本发明的硬件检测方法及系统有效克服了现有技术中的各种缺陷,具有较高的工业利用价值。

以上实施例仅用于说明本发明的原理及效果,并不用于限制本发明。任何熟悉本技术的人都可以在不脱离本发明的精神和范围的情况下修改或改变上述实施例。因此,本技术领域的普通技术人员在不脱离本发明公开的精神和技术思想的情况下所做的等同修改或变化,仍应包含在本发明的权利要求范围内。

Copyright © 2002-2025 EVO视讯官网 版权所有 Powered by EyouCms  网站备案号:冀ICP备165016778号    网站地图