CN116560586A - 属性值的确定方法及装置、存储介质及电子设备 - Google Patents
属性值的确定方法及装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN116560586A CN116560586A CN202310823998.4A CN202310823998A CN116560586A CN 116560586 A CN116560586 A CN 116560586A CN 202310823998 A CN202310823998 A CN 202310823998A CN 116560586 A CN116560586 A CN 116560586A
- Authority
- CN
- China
- Prior art keywords
- attribute
- sub
- value
- attributes
- read
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 129
- 238000012544 monitoring process Methods 0.000 claims abstract description 51
- 230000002159 abnormal effect Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 23
- 238000004891 communication Methods 0.000 claims description 10
- 239000000523 sample Substances 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 9
- 230000000694 effects Effects 0.000 abstract description 6
- 238000012545 processing Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 239000002699 waste material Substances 0.000 description 6
- 238000001914 filtration Methods 0.000 description 4
- 238000007689 inspection Methods 0.000 description 4
- 238000009434 installation Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000012806 monitoring device Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Manufacturing & Machinery (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种属性值的确定方法及装置、存储介质及电子设备,其中,该方法包括:在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与传感器类型对应的目标属性;在需要读取目标属性的属性值的情况下,依次读取N个子属性中的每个子属性的属性值,直到读取到N个子属性中的一个子属性的属性值或遍历完N个子属性;在读取到N个子属性中的一个子属性的属性值的情况下,将读取到的一个子属性的属性值确定为目标属性的属性值。通过本申请,解决相关技术中无法对不同厂商生产的相同设备类型进行兼容监控的问题,进而达到了对不同厂商的相同设备类型的设备进行兼容监控的效果。
Description
技术领域
本申请实施例涉及计算机领域,具体而言,涉及一种属性值的确定方法及装置、存储介质及电子设备。
背景技术
BMC(Baseboard Management Controller,基板管理控制器)的一个重要功能是通过I2C(Inter-Integrated Circuit,内部集成电路)总线访问连接在其上的设备,获取设备的状态,来动态监控设备的运行状态。设备中有多个传感器,这些传感器会将所感知到的数据存储到该设备的寄存器中,BMC通过I2C总线对该设备中的寄存器进行读写便可以知道设备的状态。BMC有时候会监控设备中的不止一个传感器的值,比如,说同时监控设备的MCU(Microcontroller Unit ,微控制单元)温度和内存温度。对于一种设备可能多家公司都有生产,而不同公司生产的设备其监控方法甚至差距比较大,比如:说英伟达公司生产的GPU和国产的GPU都属于GPU(graphic Processing unit,图形处理器),但其监控方法差距极大,英伟达公司生产的GPU的MCU温度和内存温度彼此之间是独立的,那么为了降低传感器之间的耦合性会将MCU温度的监控和内存的监控独立开来,而国产的GPU的MCU温度和内存温度之间并不独立,需要进行大量的相同的操作才能读到温度,为了降低代码的冗余,同时也为了保证其内在的联系,只能将MCU温度和内存温度的监控放到一起。因此,会有大量的传感器信息需要保存,就会占用大量的内存与硬盘的空间,这样也会导致大量内存与硬盘空间无畏地浪费。
此外,首先在主板的同一个位置要么插子类型1的设备,要么插子类型2的设备,不可能同时插两种子类型的设备,所以在同一时间一定有一种子类型的设备的传感器值读不到,就会对用户的使用造成麻烦,用户会以为读不到值就是设备有故障,会增加售后人员的工作量,而且不利用用户的使用体验;
由此可见,相关技术中的属性值的确定方法,存在由于不同厂商生产的设备存在差异,无法对不同厂商生产的相同设备类型进行兼容监控的问题。
发明内容
本申请实施例提供了一种属性值的确定方法及装置、存储介质及电子设备,以至少解决相关技术中的属性值的确定方法,存在由于不同厂商生产的设备存在差异,无法对不同厂商生产的相同设备类型进行兼容监控的问题。
根据本申请的一个实施例,提供了一种属性值的确定方法,包括:在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与所述传感器类型对应的目标属性,其中,所述传感器类型相同的传感器用于采集相同类型的属性值,所述目标属性的属性值用于表示所述传感器采集到的所述相同类型的属性值,所述目标属性是N个子属性的父属性,所述N个子属性中的每个子属性的属性值用于表示所述N个设备中对应的一个设备中的所述传感器采集到的所述相同类型的属性值,N为大于或等于2的正整数;在需要读取所述目标属性的属性值的情况下,依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性;在读取到所述N个子属性中的一个子属性的属性值的情况下,将读取到的所述一个子属性的属性值确定为所述目标属性的属性值。
根据本申请的又一个实施例,提供了一种属性值的确定装置,包括:第一设置模块,用于在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与所述传感器类型对应的目标属性,其中,所述传感器类型相同的传感器用于采集相同类型的属性值,所述目标属性的属性值用于表示所述传感器采集到的所述相同类型的属性值,所述目标属性是N个子属性的父属性,所述N个子属性中的每个子属性的属性值用于表示所述N个设备中对应的一个设备中的所述传感器采集到的所述相同类型的属性值,N为大于或等于2的正整数;读取模块,用于在需要读取所述目标属性的属性值的情况下,依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性;确定模块,用于在读取到所述N个子属性中的一个子属性的属性值的情况下,将读取到的所述一个子属性的属性值确定为所述目标属性的属性值。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本申请实施例,采用在数据处理的属性层增加一个目标属性,用于在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与传感器类型对应的目标属性,其中,传感器类型相同的传感器用于采集相同类型的属性值,目标属性的属性值用于表示传感器采集到的相同类型的属性值,目标属性是N个子属性的父属性,N个子属性中的每个子属性的属性值用于表示N个设备中对应的一个设备中的传感器采集到的相同类型的属性值,N为大于或等于2的正整数;在需要读取目标属性的属性值的情况下,依次读取N个子属性中的每个子属性的属性值,直到读取到N个子属性中的一个子属性的属性值或遍历完N个子属性;在读取到N个子属性中的一个子属性的属性值的情况下,将读取到的一个子属性的属性值确定为目标属性的属性值,通过这种方式,解决相关技术中的属性值的确定方法,存在由于不同厂商生产的设备存在差异,无法对不同厂商生产的相同设备类型进行兼容监控的问题,通过设置目标属性使得多个设备类型相同的设备都可以只对应一个子属性。由此,在实现传感器属性信息的兼容读取的同时,减少多余传感器信息在读取中所占用的不必要的内存与硬盘空间,避免了存储资源的浪费,达到了对不同厂商生产的相同设备类型进行有效兼容监控的技术效果,进而解决相关技术中的属性值的确定方法,存在由于不同厂商生产的设备存在差异,无法对不同厂商生产的相同设备类型进行兼容监控的问题。
附图说明
图1是本申请实施例提供的一种可选的属性值的确定方法系统的架构示意图;
图2是本申请实施例提供的一种可选的电子设备的结构示意图;
图3是根据本申请实施例的一种可选的属性值的确定方法的流程示意图;
图4是根据本申请实施例的一种可选的BMC监控设备的流程示意图;
图5是根据本申请实施例的一种可选的基于子类型的传感器属性访问硬件监控器获取传感器的值存储到属性表的流程图;
图6是根据本申请实施例的一种可选的父类型的属性从子类型的属性中读取的流程图;
图7是根据本申请实施例的一种可选的属性值的确定装置的结构框图;
图8是根据本申请实施例的一种可选的电子设备的计算机系统的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例提供一种属性值的确定方法及装置、存储介质及电子设备,能够快速准确定位异常自治域,下面说明本申请实施例提供的电子设备的示例性应用,本申请实施例提供的电子设备可以实施为主板、笔记本电脑,平板电脑,台式计算机,机顶盒,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备)等各种类型的终端设备,也可以实施为服务器或者其他类型的处理设备。下面将说明设备实施为主板时示例性应用。
根据本申请实施例的一个方面,提供了一种属性值的确定方法。可选地,在本实施例中,上述属性值的确定方法可以应用于如图1所示的属性值的确定方法系统中。如图1所示,该属性值的确定方法系统100可以包括:硬件监控器单元101,属性层单元102和传感器层单元103。其中,为实现支撑一个属性值的确定方法应用,硬件监控器单元101包括多个硬件监控器(示例性示出了子类型1中的传感器1对应的硬件监控器、子类型1中的传感器2对应的硬件监控器、子类型2中的传感器1.2共同对应的硬件监控器),上述硬件监控器可以基于包括同步时钟线和数据线的I2C总线访问连接在其上的子类型1设备以及子类型2设备,其中,子类型1代指英伟达公司生产的GPU,子类型2代指国产的GPU,传感器1代指MCU温度,传感器2代指内存温度。进而利用获取不同子类型设备的状态,来动态监控子类型设备的运行状态。属性值的确定方法系统100可以通过网络连接数据显示设备,网络可以包括但不限于以下至少之一:有线网络,无线网络。上述有线网络可以包括但不限于以下至少之一:广域网,城域网,局域网,上述无线网络可以包括但不限于以下至少之一:WIFI(WirelessFidelity,无线保真),蓝牙。
传感器层单元103可以用于从属性表中获取属性值对应的过滤值向目标对象进行展示以及存储多种传感器的相关信息,例如,传感器的类型等,属性层单元102用于将硬件监控器单元101从不同子类型设备中的传感器读取到的传感器值进行处理,得到用于存储在属性值表中的过滤值。例如,在属性层单元中连续读十次获取同一子类型传感器的传感器值,则可以将传感器值按照从小到大或从大到小进行排序,再去掉三个最大值,三个最小值,将中间四个值取平均值,处理后得到该子类型传感器最终对应的传感器值,需要说明的是,处理后的数据称为过滤值。在属性层单元将通过多个硬件监控器收集到的传感器信息进行处理,得到响应的属性表,此外,还可以在该属性表的基础上,利用预先划分的子类型与父类型的对应关系,在该属性表的基础上确定出父类型传感器的属性信息,进而通过监控该父类型传感器的属性信息,便可以对归属于同一父类型的多个子类型传感器进行监控,由此,通过增加传感器属性对应的父类型属性,在父类型下的子类型设备为不同厂商生产的设备时,也可以实现传感器属性信息的兼容读取,达到了减少多余传感器信息所占用的不必要的内存与硬盘空间,避免了存储资源的浪费,以及对不同子类设备兼容监控的技术效果,进而解决相关技术中的属性值的确定方法,存在由于不同厂商生产的子类型设备存在差异,无法对不同厂商具有相同功能的子类型设备进行兼容监控的问题。
可选地,在本实施例中,上述属性值的确定方法可以是由如图2所示的电子设备执行的。如图2所示,电子设备200可以包括上述的硬件监控器单元101中的硬件监控器,该电子设备200包括:至少一个处理201、至少一个网络接口202、总线系统203和存储器204。电子设备200中的各个组件通过总线系统203耦合在一起。可理解,总线系统203用于实现这些组件之间的连接通信。总线系统203除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统203(相当于上述实施例中的I2C总线)。
处理器201可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器204可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器204可选地包括在物理位置上远离处理器201的一个或多个存储设备。
存储器204包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器204旨在包括任意适合类型的存储器。
在一些实施例中,存储器204能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统2041,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块2402,用于经由一个或多个(有线或无线)网络接口202到达其他计算设备,示例性的网络接口202包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
属性表2043,包括属性名称、属性值、属性状态,其中属性名称用于指示该属性属于从哪个子类型设备获取的传感器属性,所述属性值用于指示获取到的数据的实时大小,例如,需要获取MCU温度,则对应的属性值为温度值;属性状态,用于指示该属性名称以及属性值是否在表中是否有效,例如,当属性状态指示无效时,说明未成功从对应的子类型设备中读取到数据,表明此时该子类型设备没有插或硬件有故障等,则将属性值的实时值用0表示,状态用异常状态表示,并存储到属性表中。
当需要通过BMC对不同厂商生产的子类型设备进行监控时,假设,当前具有两个子类型,其中,子类型1代指英伟达公司生产的GPU,子类型2代指国产的GPU,传感器1代指MCU温度,传感器2代指内存温度。由于子类型1跟子类型2监控方法差距比较大,所以并不能放到一个硬件监控器中实现硬件访问,相关技术中,往往是为每种子类型的设备设立独立的硬件监控器,其属性和传感器值也是各自独立的。在实际的使用过程中,主板的同一个位置上只能插一种子类型的设备,子类型1和子类型2只能插一种,比如:插了英伟达公司生产的GPU就不能插国产的GPU,所以在传感器层中无论是插了哪种设备,总会有另外一种设备是无法显示其值的,因为没有插,然而对于用户来说,并不会考虑那么多,用户总会以为没有显示值的传感器就是没有插或者就是传感器有故障,这样既不利于用户的使用与体验,也会给售后人员带来大量的麻烦;而且BMC所能同时监控的传感器数量有限,每增加一个传感器就需要保存对应的传感器信息,因为每一种传感器都会有大量信息需要保存,就会占用大量的内存与硬盘的空间,这样也会导致大量内存与硬盘空间地浪费。
对此,可以通过子类型设备兼容的方法,在子类型1中传感器的属性和子类型2中传感器的属性之间再增加一个父类型属性,该父类型属性先从子类型1中传感器的属性中读取传感器的属性值,如果读取成功,则以子类型1中传感器的属性作为该父类型设备中的传感器的属性,如果读取失败,再读子类型2中传感器的属性,如果读取成功,则以子类型2中传感器属性作为该父类型设备中的传感器属性,如果仍读取失败,则说明硬件上没有插该父类型的设备,该父类型设备的传感器属性值为空;父类型的属性值经过处理后将过滤值传给父类型传感器展示给用户。
通过本申请实施例,采用在数据处理的属性层增加一个父类型的属性(相当于上述实施例中的目标属性),用于在确定子类型设备(相当于上述实施例中设备类型相同的N个设备中的任意一个设备)的子类型属性(相当于上述实施例中传感器采集到的属性值)之后,根据父类型与子类型之间的对应关系,父类型先从第一子类型设备的属性中读取数据,读取失败再从第二子类型设备中的属性读取数据;进而实现使用子类型设备的属性对父类型的属性的填充,通过这种方式,无论有多少个子类型都可以只对应一个父类型的传感器属性。由此,通过增加传感器属性对应的父类型属性,在父类型下的子类型设备为不同厂商生产的设备时,也可以实现传感器属性信息的兼容读取,达到了减少多余传感器信息所占用的不必要的内存与硬盘空间,避免了存储资源的浪费,以及对不同子类设备兼容监控的技术效果,进而解决相关技术中的属性值的确定方法,存在由于不同厂商生产的子类型设备存在差异,无法对不同厂商具有相同功能的子类型设备进行兼容监控的问题。
可选地,上述属性值的确定方法可以是由传感器层单元103单独执行的,也可以是由传感器层单元103和硬件监控器单元101中的硬件监控器共同执行的,还可以是由除了传感器层单元103和硬件监控器单元101以外的其他处理设备执行的。作为一种可选的实施方式,以由传感器层单元103执行本实施例中的属性值的确定方法为例,如图3所示,上述属性值的确定方法的流程可以包括以下步骤:
在步骤S302中,在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与所述传感器类型对应的目标属性,其中,所述传感器类型相同的传感器用于采集相同类型的属性值,所述目标属性的属性值用于表示所述传感器采集到的所述相同类型的属性值,所述目标属性是N个子属性的父属性,所述N个子属性中的每个子属性的属性值用于表示所述N个设备中对应的一个设备中的所述传感器采集到的所述相同类型的属性值,N为大于或等于2的正整数;
在步骤S304中,在需要读取所述目标属性的属性值的情况下,依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性;
在步骤S306中,在读取到所述N个子属性中的一个子属性的属性值的情况下,将读取到的所述一个子属性的属性值确定为所述目标属性的属性值。
通过上述步骤,采用在数据处理的属性层增加一个目标属性,用于在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与传感器类型对应的目标属性,其中,传感器类型相同的传感器用于采集相同类型的属性值,目标属性的属性值用于表示传感器采集到的相同类型的属性值,目标属性是N个子属性的父属性,N个子属性中的每个子属性的属性值用于表示N个设备中对应的一个设备中的传感器采集到的相同类型的属性值,N为大于或等于2的正整数;在需要读取目标属性的属性值的情况下,依次读取N个子属性中的每个子属性的属性值,直到读取到N个子属性中的一个子属性的属性值或遍历完N个子属性;在读取到N个子属性中的一个子属性的属性值的情况下,将读取到的一个子属性的属性值确定为目标属性的属性值,通过这种方式,解决相关技术中的属性值的确定方法,存在由于不同厂商生产的设备存在差异,无法对不同厂商生产的相同设备类型进行兼容监控的问题,通过设置目标属性使得多个设备类型相同的设备都可以只对应一个子属性。由此,在实现传感器属性信息的兼容读取的同时,减少多余传感器信息在读取中所占用的不必要的内存与硬盘空间,避免了存储资源的浪费,达到了对不同厂商生产的相同设备类型进行有效兼容监控的技术效果,进而解决相关技术中的属性值的确定方法,存在由于不同厂商生产的设备存在差异,无法对不同厂商生产的相同设备类型进行兼容监控的问题。
在一个示例性实施例中,在设置与传感器类型对应的目标属性之后,上述方法还包括:通过N个硬件监控器对N个设备中的传感器对应的寄存器执行读取操作,其中,N个硬件监控器与N个子属性具有一一对应的关系,寄存器用于存储传感器采集的相同类型的属性值;在N个硬件监控器中的M个硬件监控器从N个设备中的M个设备中的传感器对应的寄存器读取到相同类型的属性值的情况下,将M个硬件监控器读取到的属性值作为M个子属性的属性值写入到预设的属性表中,其中,M为大于或等于1、且小于或等于N的正整数,属性表用于记录N个子属性中的每个子属性的属性值,M个硬件监控器与M个子属性具有一一对应的关系。
在一些实施例中,硬件监控器层负责处理业务逻辑操作并通过I2C总线访问设备中的不同传感器,以从设备类型相同的不同厂商生产的设备的寄存器中读出相应的传感器采集的属性值,属性层负责将硬件监控器中读到的传感器的属性值读取出来放到属性表中,并且还会存储许多传感器的相关信息,比如,传感器的类型等。
通过本申请实施例,能够通过硬件监控器读取传感器类型相同的归属于不同厂商生产的设备类型相同的设备中传感器采集的属性值,并将属性值以及与属性值对应的其他信息存储到预设的属性表,继而实现对属性值的便捷处理。
在一个示例性实施例中,在通过N个硬件监控器对N个设备中的传感器对应的寄存器执行读取操作之后,上述方法还包括:在M小于N的情况下,将属性表中记录的N个子属性中除M个子属性之外的N-M个子属性的属性值设置为预设的目标字符,其中,目标字符用于表示未读取到子属性的属性值。
在一个示例性实施例中,将M个硬件监控器读取到的属性值作为M个子属性的属性值写入到预设的属性表中,包括:通过以下步骤将M个硬件监控器中的第i个硬件监控器读取到的属性值作为M个子属性中的第i个子属性的属性值写入到属性表中,其中,i为大于或等于1、且小于或等于M的正整数:在第i个硬件监控器从M个设备中的第i个设备中的传感器对应的寄存器中读取到第i组属性值的情况下,根据第i组属性值,确定待写入的第i个属性值,其中,第i组属性值包括第i个设备中的传感器采集到的相同类型的一个或多个属性值;将属性表中记录的第i个子属性的属性值确定为等于第i个属性值。
在一个示例性实施例中,所述根据所述第i组属性值,确定待写入的第i个属性值,包括:在所述第i组属性值包括一个属性值的情况下,将所述一个属性值确定为所述第i个属性值;和/或在所述第i组属性值包括多个属性值的情况下,将所述第i组属性值的平均值确定为所述第i个属性值,或者,将所述第i组属性值中的部分属性值的平均值确定为所述第i个属性值,其中,所述部分属性值是所述第i组属性值中去掉从大到小排列的前P个属性值和/或后Q个属性值所得到的属性值,P和Q均为大于或等于1的正整数。
在一个示例性实施例中,将属性表中记录的N个子属性中除M个子属性之外的N-M个子属性的属性值设置为预设的目标字符,包括:将属性表中的N-M个子属性的属性值设置为0、且将属性表中的N-M个子属性的属性状态设置为异常状态,其中,异常状态用于表示N-M个子属性对应的N-M个设备未安装或存在硬件故障,N-M个设备包括N个设备中除M个设备之外的设备;在将M个硬件监控器读取到的属性值作为M个子属性的属性值写入到预设的属性表中的情况下,方法还包括:将属性表中的M个子属性的属性状态设置为正常状态,其中,正常状态用于表示M个子属性对应的M个设备处于工作状态。
通过本实施实施例,在读取失败的情况,将对应传感器属性的属性值设置为0,在不影响正常读取流程以及属性表填充的情况下,对异常读取的传感器进行标记。
在一个示例性实施例中,所述依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性,包括:在所述属性表中按照预设的顺序依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性。
通过本实施实施例,在利用不同设备采集的传感器的属性值对属性表完成填充之后,目标属性中的多个子属性通过在属性表中读取对应传感器采集的属性值,确定每一个子属性对应的属性值,继而快速完成目标属性中子属性的数值填充,能够在读取每一类型传感器对应的实时属性值的基础上,生成目标属性的属性内容,以使得需要展示的传感器信息大大减少,节省了显示界面对应的内存资源。
在一个示例性实施例中,在属性表中按照预设的顺序依次读取N个子属性中的每个子属性的属性值,直到读取到N个子属性中的一个子属性的属性值或遍历完N个子属性,包括:在N为2的情况下,在属性表中读取N个子属性中的第一子属性的属性值;在读取到N个子属性中的一个子属性的属性值的情况下,将读取到的一个子属性的属性值确定为目标属性的属性值,包括:在读取到第一子属性的属性值的情况下,将读取到的第一子属性的属性值确定为目标属性的属性值。
在一个示例性实施例中,在属性表中按照预设的顺序依次读取N个子属性中的每个子属性的属性值,直到读取到N个子属性中的一个子属性的属性值或遍历完N个子属性,包括:在未读取到第一子属性的属性值的情况下,在属性表中读取N个子属性中的第二子属性的属性值;在读取到N个子属性中的一个子属性的属性值的情况下,将读取到的一个子属性的属性值确定为目标属性的属性值,包括:在读取到第二子属性的属性值的情况下,将读取到的第二子属性的属性值确定为目标属性的属性值。
在一个示例性实施例中,在属性表中读取N个子属性中的第一子属性的属性值的情况下,方法还包括:在对第一子属性的属性值进行读取所得到的读取结果包括在预设的取值范围内的数值的情况下,将读取结果中包括的数值确定为读取到的第一子属性的属性值;或者在对第一子属性的属性值进行读取所得到的读取结果包括在预设的取值范围内的数值、且读取结果中还包括的第一子属性的属性状态为正常状态的情况下,将读取结果中包括的数值确定为读取到的第一子属性的属性值,其中,正常状态用于表示第一子属性对应的设备处于工作状态。
例如,在存在2个设备类型为GPU的两个不同厂商生产的设备,且每一个GPU设备中均存在传感器类型为内存温度传感器和MCU温度传感器,进而当这两个GPU设备在主板上进行安装时,由于主板上仅可安装同一厂商的设备,因此,为了兼容不同厂商设备,对安装在主板上的GPU设备的内存温度传感器采集的温度值(相当于上述实施例中的属性值)以及MCU温度传感器采集的温度值,进行兼容显示,通过设备目标属性来显示两种温度传感器采集的温度值。在属性层增加目标属性的情况下,该目标属性先从第一个设备中所有传感器采集的属性值读取属性值,如果读取成功,则以第一个设备中传感器采集的属性值作为该目标属性中与传感器的传感器类型对应子属性的属性值,如果读取失败,再读第二个设备中所有传感器采集的属性值读取属性值,如果读取成功,则以第二个设备中传感器采集的属性值作为该目标属性中与传感器的传感器类型对应子属性的属性值,如果仍读取失败,则说明硬件上没有插该目标属性的设备,即主板上未安装GPU设备,该目标属性的子属性的属性值为空;需要说明的是,目标属性的属性值经过处理后将过滤值传给目标属性对应的传感器展示给用户。
通过本申请实施例,利用逐步读取设备类型相同的N个设备中第一个设备的传感器数据对目标属性的子属性的属性值进行填充,并在读取失败的情况下,读取与第一个设备的设备类型相同的第二个设备的传感器数据,从而保证目标属性无论是在主板或设备终端中安装第一个设备还是安装第二个设备,均能保证目标属性具有相应的属性值,从而在向目标对象进行显示时不会出现无法显示的情况,提升了目标对象的使用体验。
在一个示例性实施例中,在所述属性表中读取所述N个子属性中的第一子属性的属性值的情况下,上述方法还包括:在对所述第一子属性的属性值进行读取所得到的读取结果包括不在预设的取值范围内的数值的情况下,确定出未读取到所述第一子属性的属性值;或者在对所述第一子属性的属性值进行读取所得到的读取结果包括不在预设的取值范围内的数值、且所述读取结果中还包括的所述第一子属性的属性状态为异常状态的情况下,将所述读取结果中包括的所述数值确定为读取到的所述第一子属性的属性值,其中,所述异常状态用于表示所述第一子属性对应的设备未安装或存在硬件故障。
通过本申请实施例,通过确定读取结果对应的数值范围,确定对当前子属性的读取是否正常,并在根据数值确定不同子属性的属性状态,从而可以快速对当前子属性进行读取,且还可以根据读取到的属性状态确定相同设备类型的设备在主板或终端设备上的安装情况,提升了目标对象的使用体验。
在一个示例性实施例中,在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与传感器类型对应的目标属性之后,上述方法还包括:确定N个设备中的第j个设备中至少两个传感器的读取逻辑,其中,j为大于或等于1、且小于或等于N的正整数;在读取逻辑表示至少两个传感器不允许独立访问的情况下,为第j个设备中的至少两个传感器设置同一个硬件监控器,其中,同一个硬件监控器用于对第j个设备中的至少两个传感器对应的寄存器执行读取操作,寄存器用于存储传感器采集的相同类型的属性值;在读取逻辑表示至少两个传感器允许独立访问的情况下,为第j个设备中的至少两个传感器中的每一个传感器设置不同的硬件监控器,其中,不同的硬件监控器用于对第j个设备中的至少两个传感器中的不同传感器对应的寄存器执行读取操作。
通过本申请实施例,通过为不同类型的子类型设备设置独立的硬件监控器,从而保证通过该硬件监控器对传感器属性的快速获取。
在一个示例性实施例中,在为第j个设备中的至少两个传感器设置同一个硬件监控器之后,上述方法还包括:
为同一个硬件监控器配置第一监控逻辑,其中,第一监控逻辑用于指示根据第j个设备中的至少两个传感器对应的子属性同时读取至少两个传感器采集的属性值。
在一个示例性实施例中,在为第j个设备中的至少两个传感器中的每一个传感器设置不同的硬件监控器之后,上述方法还包括:为不同的硬件监控器配置第二监控逻辑,其中,第二监控逻辑用于指示依据预设的顺序依次第j个设备中的至少两个传感器采集的属性值。
可以理解的是,在为每一个传感器设置不同的硬件监控器之后,为了保证硬件监控器从传感器中读取数据的效率,还需要确定不同的硬件监控器对应的监控逻辑,继而在使用设置好的硬件监控器对不同传感器采集的属性值进行读取时,读取效率大大提升,提高了对属性值数据的处理效率。
在一个示例性实施例中,为不同的硬件监控器配置第二监控逻辑之后,上述方法还包括:在不同的硬件监控器中存在硬件监控器无法与至少两个传感器中对应的传感器建立通信连接的情况下,将对应的传感器标识为异常传感器;在至少两个传感器中的异常传感器的数量大于预设数量的情况下,确定第j个设备未安装。
可以理解的是,当同一个设备的多个传感器均出现无法利用控制器获取时,说明该设备出现硬件异常或者目标设备上未安装该设备,这时还可以根据预设报告逻辑选择是否向目标对象进行告警,提示目标对象对该设备进行安装检查或维修检查。
在一个示例性实施例中,在将读取到的一个子属性的属性值确定为目标属性的属性值之后,上述方法还包括:将相同类型的标识和目标属性的属性值显示在目标显示界面中。
在一个示例性实施例中,将相同类型的标识和目标属性的属性值显示在目标显示界面中,包括:在相同类型用于表示目标器件的温度、且目标属性的属性值用于表示目标器件的温度值的情况下,在目标显示界面中显示目标器件的温度为温度值。
需要说明的是,目标显示界面上中包括具有对应关系的相同类型的标识、目标属性的属性值,但不包括设备的标识,从而避免显示设备标识导致的部分未读取到的目标属性的属性值无法正常显示的问题。
在一个示例性实施例中,设置与所述传感器类型对应的目标属性之前,所述方法还包括:获取输入的对于所述N个设备的读取条件,并在所述N个设备中的各个传感器的不同传感器类型中确定满足所述读取条要求的传感器类型;在所述满足所述读取条要求的传感器类型的数量大于预设数量的情况下,允许为所述传感器类型设置对应的所述目标属性值。
在一个示例性实施例中,上述方法还包括:在所述满足所述读取条要求的传感器类型的数量小于或等于所述预设数量的情况下,向目标对象发送提示信息;接收所述目标对象针对所述提示信息反馈的设置指令;使用所述设置指令调整需显示属性值的所述传感器类型的数量。
为了更好的理解本申请实施例以及可选实施例的技术方案,以下结合示例对上述属性值的确定方法的流程进行解释说明,但不用于限定本申请实施例的技术方案。
需要说明的是,为了更好的理解本申请实施例中的技术方案,先对相关技术名词进行说明:
BMC(Baseboard Management Controller, 基板管理控制器)是服务器特有的管理控制器,其可以自动监控服务器运行状态,并及时根据当前状态进行调控。
I2C(Inter-Integrated Circuit ,内部集成电路)是一种双向同步串行总线,该总线上可以连接多个设备,其分为主设备与从设备。该总线由两根线组成,一根为SDA,即同步数据线,用于在主设备与从设备间传输数据;一根为SCL,即同步时钟线,用于在主设备与从设备间同步时间。
作为一种可选的实施方式,BMC的一个重要功能是通过I2C总线访问连接在其上的设备,获取设备的状态,来动态监控设备的运行状态。设备中有多个传感器,这些传感器会将所感知到的数据存储到该设备的寄存器中,BMC通过I2C总线对该设备中的寄存器进行读写便可以知道设备的状态。BMC有时候会监控设备中的不止一个传感器的值,比如说同时监控设备的MCU温度和内存温度。对于一种设备可能多家公司都有生产,而不同公司生产的设备其监控方法甚至差距比较大,比如说英伟达公司生产的GPU和国产的GPU都属于GPU,但其监控方法差距极大,英伟达公司生产的GPU的MCU温度和内存温度彼此之间是独立的,那么为了降低传感器之间的耦合性会将MCU温度的监控和内存的监控独立开来,而国产的GPU的MCU温度和内存温度之间并不独立,需要进行大量的相同的操作才能读到温度,为了降低代码的冗余,同时也为了保证其内在的联系,只能将MCU温度和内存温度的监控放到一起。
可选的,图4是根据本申请实施例的一种可选的BMC监控设备的流程示意图,如图4所示,为了便于理解图4中的子类型1代指英伟达公司生产的GPU,子类型2代指国产的GPU,传感器1代指MCU温度,传感器2代指内存温度。硬件监控器层负责处理业务逻辑操作并通过I2C总线访问硬件设备从其寄存器中读出相应的传感器值,属性层负责将硬件监控器中读到的传感器值读取出来经过一定的处理(比如说连续读十次,去掉三个最大值,三个最小值,中间四个值取平均值,处理后的数据称为过滤值)后放到属性表中,传感器层负责从属性表中读出数据的过滤值呈现给用户看,并且还会存储许多传感器的相关信息,比如传感器的类型等。由于子类型1跟子类型2监控方法差距比较大,所以并不能放到一个硬件监控器中实现硬件访问,所以往往是按照图4所示为每种子类型的设备设立独立的硬件监控器,其属性和传感器值也是各自独立的。在实际的使用过程中,主板的同一个位置上只能插一种子类型的设备,子类型1和子类型2只能插一种,比如插了英伟达公司生产的GPU就不能插国产的GPU,所以在传感器层中无论是插了哪种设备,总会有另外一种设备是无法显示其值的,因为没有插,然而对于用户来说,并不会考虑那么多,用户总会以为没有显示值的传感器就是没有插或者就是传感器有故障,这样既不利于用户的使用与体验,也会给售后人员带来大量的麻烦;而且BMC所能同时监控的传感器数量有限,每增加一个传感器就需要保存传感器信息,因为每一种传感器都会有大量信息需要保存,就会占用大量的内存与硬盘的空间,这样也会导致大量内存与硬盘空间无畏地浪费。
为了避免上述无法对不同厂商生产的GPU进行有效监控以及节省内存资源的问题。
在一示例性的实施方式,本申请可选实施例提供了一种对BMC所监控设备的兼容方法,该兼容方法通过增加一个属性,利用属性先读取子类型1设备的属性值,如果读取成功,则使用子类型1的值作为传感器值,不再读取子类型2设备的属性值,如果读取子类型1的设备失败再读取子类型2设备的属性值。可选的,以父类型有两种子类型,每种子类型皆监控两个传感器,且这两种子类型传感器的获取方式相差比较大为例说明本申请实施例,需要说明的是,实际应用过程中可能不止两种子类型,或者每种子类型不止监控两个传感器,这是根据实际应用场景灵活确定的,本申请对此不做过多限定。
进一步的,在上述示例的基础上使用兼容方法,具体流程将如下:
步骤1、在子类型1中传感器的属性和子类型2中传感器的属性之间再增加一个父类型属性。
步骤2、通过该父类型属性先从子类型1中传感器的属性中读取传感器的属性值,如果读取成功,则以子类型1中传感器的属性作为该父类型设备中的传感器的属性,如果读取失败,再读子类型2中传感器的属性;如果读取成功,则以子类型2中传感器属性作为该父类型设备中的传感器属性,如果仍读取失败,则说明硬件上没有插该父类型的设备,该父类型设备的传感器属性值为空;
步骤3、父类型的属性值经过处理后将过滤值传给父类型传感器展示给用户。
可选的,图5是根据本申请实施例的一种可选的基于子类型的传感器属性访问硬件监控器获取传感器的值存储到属性表的流程图;包括以下步骤:
步骤S402、“子类型1中传感器1属性”调用“子类型1中传感器1对应的硬件监控器”处理业务逻辑操作(如:判断硬件设备是否在位)并通过I2C总线访问硬件设备获取设备中传感器的值;
步骤S404、判断访问是否成功;
步骤S406、如果访问成功,则将读到的传感器实时值存储到属性表,属性状态存储为正常状态,并进行一些数据处理,可以选的,数据处理可以执行以下内容:将前十次读到的值去掉三个最大值,去掉三个最小值,中间四个值做平均处理,得到一个过滤值,将该过滤值作为子类型对应父类型的属性值。
步骤S408、“子类型1中传感器2属性”调用“子类型1中的传感器2硬件监控器”处理业务逻辑操作(如:判断硬件设备是否在位)并通过I2C总线访问硬件设备获取设备中传感器的值;
步骤S410、判断访问是否成功;
步骤S412、如果访问成功,则将读到的传感器的实时值存储到属性表,属性状态存储为正常状态,并进行一些数据处理。
步骤S414、“子类型2中的传感器1,2对应的硬件监控器”访问硬件读取传感器的值;
步骤S416、判断访问是否成功;
步骤S418、如果访问成功,则将读到的传感器的实时值存储到属性表,属性状态存储为正常状态。
步骤S420、“子类型2中的传感器1属性”和“子类型2中的传感器2属性”分别根据属性名称从前述硬件监控器中暂存的属性表中读出属性值跟属性状态,并进行数据处理;
需要说明的是,因为子类型2中的传感器1和传感器2是非独立的,有相关性,所以必须将其做成一个硬件监控器,在硬件监控器中处理完业务逻辑操作后一次性地将传感器1的实时值和传感器2的实时值从设备寄存器中读出来;
步骤S422、如果访问失败,则将传感器的实时值用0表示,状态用异常状态表示,并存储到属性表中;
需要说明的是,上述获取“子类型1中传感器1属性”的步骤S402至S406;获取“子类型1中传感器2属性”的步骤S408至S412,获取“子类型2中的传感器1属性”和“子类型2中的传感器2属性”的步骤S414至S420,其中,三中获取方式是并发执行的,流程内的步骤按顺序执行,且上述三种流程在失败之后均执行步骤S422。
可选的,图6是根据本申请实施例的一种可选的父类型的属性从子类型的属性中读取的流程图;包括以下步骤:
步骤S502、“父类型传感器1属性”首先从属性表中读取子类型1中的传感器1属性;
步骤S504、判断读到的属性状态是否为正常状态;
步骤S506、如果为正常状态,则将其属性值作为父类型的属性值,“父类型传感器1属性”将子类型1中的传感器属性的值作为其属性的值,属性状态为正常状态。
需要说明的是,因为主板上同一个位置只能插一种子类型的设备,插了子类型1则不能插子类型2,所以如果读到了子类型1的属性值,表明插了子类型1,即没插子类型2,流程结束。
步骤S508、如果不是正常状态,表明在没有插入子类型1的设备,则继续读子类型2中的传感器1属性;即“父类型传感器1属性”继续从属性表中读取子类型2中的传感器1属性;
步骤S510、判断读到的属性状态是否为正常状态;
步骤S512、如果为正常状态,则将其属性值作为父类型的属性值;即将“父类型传感器1属性”将子类型2中的传感器属性的值作为其属性的值,属性状态为正常状态。
步骤S514、如果不是正常状态,表明在没有插入子类型2的设备,则“父类型传感器1属性”属性值置为0,状态为异常状态,可以表示为ERROR。
此外,对于其他父类型属性,可以通过的循环执行上述步骤S502至S514的流程,如,确定“父类型传感器2属性”等。
经过以上几步,无论是插了子类型1的设备还是插了子类型2的设备都只有一个父类型的属性,之后“传感器1”和“传感器2”分别从父类型的传感器1属性和父类型的传感器2属性中读出传感器的过滤值展示给用户看。
需要说明的是,上述流程均以两种子类型,且每种子类型监控两个传感器举例说明,但实际并不仅仅局限于两种子类型,每种子类型也不仅仅局限于只监控两个传感器,只要满足本申请的条件的皆可以按照本申请实施。
综上,通过上述实施例,在属性层增加一个父类型的属性,父类型先从子类型1的属性中读取,读取失败再从子类型2中的属性读取,读取之后传输到父类型对应的传感器中供用户查看。通过这种方法无论有多少个子类型都只对应一个传感器,减少了多余传感器所占用的不必要的内存与硬盘空间,避免了浪费;因为同一个位置同一时间只能插入一个设备,如果每个子类型的设备都对应一个传感器,则未插的子类型的设备总是读不到,就会对用户的使用造成困扰,该方法所有的子类型对应一个父类型的传感器,就避免了因未插其它子类型的设备导致的显示子类型传感器值读取不到的问题,避免了给用户的使用造成困扰,避免了售后人员工作量的增加,也更符合逻辑;而且该方法操作简单易实现。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者硬件监控器等)执行本申请各个实施例的方法。
根据本申请实施例的又一方面,还提供了一种属性值的确定装置,该装置用于实现上述实施例中所提供的属性值的确定方法,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图7是根据本申请实施例的一种属性值的确定装置的结构框图,如图7所示,该装置包括:
第一设置模块602,用于在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与所述传感器类型对应的目标属性,其中,所述传感器类型相同的传感器用于采集相同类型的属性值,所述目标属性的属性值用于表示所述传感器采集到的所述相同类型的属性值,所述目标属性是N个子属性的父属性,所述N个子属性中的每个子属性的属性值用于表示所述N个设备中对应的一个设备中的所述传感器采集到的所述相同类型的属性值,N为大于或等于2的正整数;
读取模块604,用于在需要读取所述目标属性的属性值的情况下,依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性;
确定模块606,用于在读取到所述N个子属性中的一个子属性的属性值的情况下,将读取到的所述一个子属性的属性值确定为所述目标属性的属性值。
需要说明的是,该实施例中的第一设置模块602可以用于执行上述步骤S302,该实施例中的读取模块604可以用于执行上述步骤S304,该实施例中的确定模块606可以用于执行上述步骤S306。
通过本申请提供的实施例,采用在数据处理的属性层增加一个目标属性,用于在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与传感器类型对应的目标属性,其中,传感器类型相同的传感器用于采集相同类型的属性值,目标属性的属性值用于表示传感器采集到的相同类型的属性值,目标属性是N个子属性的父属性,N个子属性中的每个子属性的属性值用于表示N个设备中对应的一个设备中的传感器采集到的相同类型的属性值,N为大于或等于2的正整数;在需要读取目标属性的属性值的情况下,依次读取N个子属性中的每个子属性的属性值,直到读取到N个子属性中的一个子属性的属性值或遍历完N个子属性;在读取到N个子属性中的一个子属性的属性值的情况下,将读取到的一个子属性的属性值确定为目标属性的属性值,通过这种方式,解决相关技术中的属性值的确定方法,存在由于不同厂商生产的设备存在差异,无法对不同厂商生产的相同设备类型进行兼容监控的问题,通过设置目标属性使得多个设备类型相同的设备都可以只对应一个子属性。由此,在实现传感器属性信息的兼容读取的同时,减少多余传感器信息在读取中所占用的不必要的内存与硬盘空间,避免了存储资源的浪费,达到了对不同厂商生产的相同设备类型进行有效兼容监控的技术效果,进而解决相关技术中的属性值的确定方法,存在由于不同厂商生产的设备存在差异,无法对不同厂商生产的相同设备类型进行兼容监控的问题。
在一个示例性实施例中,上述装置还包括:写入模块,用于在设置与传感器类型对应的目标属性之后,通过N个硬件监控器对N个设备中的传感器对应的寄存器执行读取操作,其中,N个硬件监控器与N个子属性具有一一对应的关系,寄存器用于存储传感器采集的相同类型的属性值;在N个硬件监控器中的M个硬件监控器从N个设备中的M个设备中的传感器对应的寄存器读取到相同类型的属性值的情况下,将M个硬件监控器读取到的属性值作为M个子属性的属性值写入到预设的属性表中,其中,M为大于或等于1、且小于或等于N的正整数,属性表用于记录N个子属性中的每个子属性的属性值,M个硬件监控器与M个子属性具有一一对应的关系。
在一些实施例中,硬件监控器层负责处理业务逻辑操作并通过I2C总线访问设备中的不同传感器,以从设备类型相同的不同厂商生产的设备的寄存器中读出相应的传感器采集的属性值,属性层负责将硬件监控器中读到的传感器的属性值读取出来放到属性表中,并且还会存储许多传感器的相关信息,比如,传感器的类型等。
通过本申请实施例,能够通过硬件监控器读取传感器类型相同的归属于不同厂商生产的设备类型相同的设备中传感器采集的属性值,并将属性值以及与属性值对应的其他信息存储到预设的属性表,继而实现对属性值的便捷处理。
在一个示例性实施例中,上述写入模块,还用于在通过N个硬件监控器对N个设备中的传感器对应的寄存器执行读取操作之后,在M小于N的情况下,将属性表中记录的N个子属性中除M个子属性之外的N-M个子属性的属性值设置为预设的目标字符,其中,目标字符用于表示未读取到子属性的属性值。
在一个示例性实施例中,上述写入模块,还用于通过以下步骤将M个硬件监控器中的第i个硬件监控器读取到的属性值作为M个子属性中的第i个子属性的属性值写入到属性表中,其中,i为大于或等于1、且小于或等于M的正整数:在第i个硬件监控器从M个设备中的第i个设备中的传感器对应的寄存器中读取到第i组属性值的情况下,根据第i组属性值,确定待写入的第i个属性值,其中,第i组属性值包括第i个设备中的传感器采集到的相同类型的一个或多个属性值;将属性表中记录的第i个子属性的属性值确定为等于第i个属性值。
在一个示例性实施例中,上述写入模块,还用于在所述第i组属性值包括一个属性值的情况下,将所述一个属性值确定为所述第i个属性值;和/或在所述第i组属性值包括多个属性值的情况下,将所述第i组属性值的平均值确定为所述第i个属性值,或者,将所述第i组属性值中的部分属性值的平均值确定为所述第i个属性值,其中,所述部分属性值是所述第i组属性值中去掉从大到小排列的前P个属性值和/或后Q个属性值所得到的属性值,P和Q均为大于或等于1的正整数。
在一个示例性实施例中,上述写入模块,还用于将属性表中的N-M个子属性的属性值设置为0、且将属性表中的N-M个子属性的属性状态设置为异常状态,其中,异常状态用于表示N-M个子属性对应的N-M个设备未安装或存在硬件故障,N-M个设备包括N个设备中除M个设备之外的设备;在将M个硬件监控器读取到的属性值作为M个子属性的属性值写入到预设的属性表中的情况下,方法还包括:将属性表中的M个子属性的属性状态设置为正常状态,其中,正常状态用于表示M个子属性对应的M个设备处于工作状态。
通过本实施实施例,在读取失败的情况,将对应传感器属性的属性值设置为0,在不影响正常读取流程以及属性表填充的情况下,对异常读取的传感器进行标记。
在一个示例性实施例中,上述读取模块,还用于在所述属性表中按照预设的顺序依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性。
通过本实施实施例,在利用不同设备采集的传感器的属性值对属性表完成填充之后,目标属性中的多个子属性通过在属性表中读取对应传感器采集的属性值,确定每一个子属性对应的属性值,继而快速完成目标属性中子属性的数值填充,能够在读取每一类型传感器对应的实时属性值的基础上,生成目标属性的属性内容,以使得需要展示的传感器信息大大减少,节省了显示界面对应的内存资源。
在一个示例性实施例中,上述确定模块,还用于在N为2的情况下,在属性表中读取N个子属性中的第一子属性的属性值;在读取到N个子属性中的一个子属性的属性值的情况下,将读取到的一个子属性的属性值确定为目标属性的属性值,包括:在读取到第一子属性的属性值的情况下,将读取到的第一子属性的属性值确定为目标属性的属性值。
在一个示例性实施例中,上述读取模块,还用于在未读取到第一子属性的属性值的情况下,在属性表中读取N个子属性中的第二子属性的属性值;在读取到N个子属性中的一个子属性的属性值的情况下,将读取到的一个子属性的属性值确定为目标属性的属性值,包括:在读取到第二子属性的属性值的情况下,将读取到的第二子属性的属性值确定为目标属性的属性值。
在一个示例性实施例中,上述读取模块,还用于在对第一子属性的属性值进行读取所得到的读取结果包括在预设的取值范围内的数值的情况下,将读取结果中包括的数值确定为读取到的第一子属性的属性值;或者在对第一子属性的属性值进行读取所得到的读取结果包括在预设的取值范围内的数值、且读取结果中还包括的第一子属性的属性状态为正常状态的情况下,将读取结果中包括的数值确定为读取到的第一子属性的属性值,其中,正常状态用于表示第一子属性对应的设备处于工作状态。
例如,在存在2个设备类型为GPU的两个不同厂商生产的设备,且每一个GPU设备中均存在传感器类型为内存温度传感器和MCU温度传感器,进而当这两个GPU设备在主板上进行安装时,由于主板上仅可安装同一厂商的设备,因此,为了兼容不同厂商设备,对安装在主板上的GPU设备的内存温度传感器采集的温度值(相当于上述实施例中的属性值)以及MCU温度传感器采集的温度值,进行兼容显示,通过设备目标属性来显示两种温度传感器采集的温度值。在属性层增加目标属性的情况下,该目标属性先从第一个设备中所有传感器采集的属性值读取属性值,如果读取成功,则以第一个设备中传感器采集的属性值作为该目标属性中与传感器的传感器类型对应子属性的属性值,如果读取失败,再读第二个设备中所有传感器采集的属性值读取属性值,如果读取成功,则以第二个设备中传感器采集的属性值作为该目标属性中与传感器的传感器类型对应子属性的属性值,如果仍读取失败,则说明硬件上没有插该目标属性的设备,即主板上未安装GPU设备,该目标属性的子属性的属性值为空;需要说明的是,目标属性的属性值经过处理后将过滤值传给目标属性对应的传感器展示给用户。
通过本申请实施例,利用逐步读取设备类型相同的N个设备中第一个设备的传感器数据对目标属性的子属性的属性值进行填充,并在读取失败的情况下,读取与第一个设备的设备类型相同的第二个设备的传感器数据,从而保证目标属性无论是在主板或设备终端中安装第一个设备还是安装第二个设备,均能保证目标属性具有相应的属性值,从而在向目标对象进行显示时不会出现无法显示的情况,提升了目标对象的使用体验。
在一个示例性实施例中,上述读取模块还包括:状态单元,用于在所述属性表中读取所述N个子属性中的第一子属性的属性值的情况下,以及在对所述第一子属性的属性值进行读取所得到的读取结果包括不在预设的取值范围内的数值的情况下,确定出未读取到所述第一子属性的属性值;或者在对所述第一子属性的属性值进行读取所得到的读取结果包括不在预设的取值范围内的数值、且所述读取结果中还包括的所述第一子属性的属性状态为异常状态的情况下,将所述读取结果中包括的所述数值确定为读取到的所述第一子属性的属性值,其中,所述异常状态用于表示所述第一子属性对应的设备未安装或存在硬件故障。
通过本申请实施例,通过确定读取结果对应的数值范围,确定对当前子属性的读取是否正常,并在根据数值确定不同子属性的属性状态,从而可以快速对当前子属性进行读取,且还可以根据读取到的属性状态确定相同设备类型的设备在主板或终端设备上的安装情况,提升了目标对象的使用体验。
在一个示例性实施例中,上述装置还包括:第二设置模块,用于在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与传感器类型对应的目标属性之后,上述方法还包括:确定N个设备中的第j个设备中至少两个传感器的读取逻辑,其中,j为大于或等于1、且小于或等于N的正整数;在读取逻辑表示至少两个传感器不允许独立访问的情况下,为第j个设备中的至少两个传感器设置同一个硬件监控器,其中,同一个硬件监控器用于对第j个设备中的至少两个传感器对应的寄存器执行读取操作,寄存器用于存储传感器采集的相同类型的属性值;在读取逻辑表示至少两个传感器允许独立访问的情况下,为第j个设备中的至少两个传感器中的每一个传感器设置不同的硬件监控器,其中,不同的硬件监控器用于对第j个设备中的至少两个传感器中的不同传感器对应的寄存器执行读取操作。
通过本申请实施例,通过为不同类型的子类型设备设置独立的硬件监控器,从而保证通过该硬件监控器对传感器属性的快速获取。
在一个示例性实施例中,上述第二设置模块,还包括:第一配置单元,用于在为第j个设备中的至少两个传感器设置同一个硬件监控器之后,为同一个硬件监控器配置第一监控逻辑,其中,第一监控逻辑用于指示根据第j个设备中的至少两个传感器对应的子属性同时读取至少两个传感器采集的属性值。
在一个示例性实施例中,上述第二设置模块,还包括:第二配置单元,用于在为第j个设备中的至少两个传感器中的每一个传感器设置不同的硬件监控器之后,为不同的硬件监控器配置第二监控逻辑,其中,第二监控逻辑用于指示依据预设的顺序依次第j个设备中的至少两个传感器采集的属性值。
可以理解的是,在为每一个传感器设置不同的硬件监控器之后,为了保证硬件监控器从传感器中读取数据的效率,还需要确定不同的硬件监控器对应的监控逻辑,继而在使用设置好的硬件监控器对不同传感器采集的属性值进行读取时,读取效率大大提升,提高了对属性值数据的处理效率。
在一个示例性实施例中,上述第二设置模块,还包括:标识单元,用于为不同的硬件监控器配置第二监控逻辑之后,在不同的硬件监控器中存在硬件监控器无法与至少两个传感器中对应的传感器建立通信连接的情况下,将对应的传感器标识为异常传感器;上述第二设置模块,还包括:确定单元,用于在至少两个传感器中的异常传感器的数量大于预设数量的情况下,确定第j个设备未安装。
可以理解的是,当同一个设备的多个传感器均出现无法利用控制器获取时,说明该设备出现硬件异常或者目标设备上未安装该设备,这时还可以根据预设报告逻辑选择是否向目标对象进行告警,提示目标对象对该设备进行安装检查或维修检查。
在一个示例性实施例中,上述装置还包括:显示模块,用于在将读取到的一个子属性的属性值确定为目标属性的属性值之后,将相同类型的标识和目标属性的属性值显示在目标显示界面中。
在一个示例性实施例中,上述显示模块,还用于在相同类型用于表示目标器件的温度、且目标属性的属性值用于表示目标器件的温度值的情况下,在目标显示界面中显示目标器件的温度为温度值。
需要说明的是,目标显示界面上中包括具有对应关系的相同类型的标识、目标属性的属性值,但不包括设备的标识,从而避免显示设备标识导致的部分未读取到的目标属性的属性值无法正常显示的问题。
在一个示例性实施例中,上述装置还包括:要求模块,用于设置与所述传感器类型对应的目标属性之前,获取输入的对于所述N个设备的读取条件,并在所述N个设备中的各个传感器的不同传感器类型中确定满足所述读取条要求的传感器类型;在所述满足所述读取条要求的传感器类型的数量大于预设数量的情况下,允许为所述传感器类型设置对应的所述目标属性值。
在一个示例性实施例中,上述要求模块还包括:调整单元,用于在所述满足所述读取条要求的传感器类型的数量小于或等于所述预设数量的情况下,向目标对象发送提示信息;接收所述目标对象针对所述提示信息反馈的设置指令;使用所述设置指令调整需显示属性值的所述传感器类型的数量。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
根据本申请实施例的又一方面,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
根据本申请的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序/指令,该计算机程序/指令包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理器801执行时,执行本申请实施例提供的各种功能。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
图8示意性地示出了用于实现本申请实施例的电子设备的计算机系统结构框图。如图8所示,计算机系统800包括中央处理器801(Central Processing Unit,CPU),其可以根据存储在只读存储器802(Read-Only Memory,ROM)中的程序或者从存储部分808加载到随机访问存储器803(Random Access Memory,RAM)中的程序而执行各种适当的动作和处理。在随机访问存储器803中,还存储有系统操作所需的各种程序和数据。中央处理器801、在只读存储器802以及随机访问存储器803通过总线804彼此相连。输入/输出接口805(Input /Output接口,即I/O接口)也连接至总线804。
以下部件连接至输入/输出接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如局域网卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至输入/输出接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
特别地,根据本申请的实施例,各个方法流程图中所描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理器801执行时,执行本申请的系统中限定的各种功能。
需要说明的是,图8示出的电子设备的计算机系统800仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
根据本申请实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述输入输出资源池连接,该输入输出设备和上述输入输出资源池连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请实施例不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请实施例,对于本领域的技术人员来说,本申请实施例可以有各种更改和变化。凡在本申请实施例的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请实施例的保护范围之内。
Claims (20)
1.一种属性值的确定方法,其特征在于,包括:
在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与所述传感器类型对应的目标属性,其中,所述传感器类型相同的传感器用于采集相同类型的属性值,所述目标属性的属性值用于表示所述传感器采集到的所述相同类型的属性值,所述目标属性是N个子属性的父属性,所述N个子属性中的每个子属性的属性值用于表示所述N个设备中对应的一个设备中的所述传感器采集到的所述相同类型的属性值,N为大于或等于2的正整数;
在需要读取所述目标属性的属性值的情况下,依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性;
在读取到所述N个子属性中的一个子属性的属性值的情况下,将读取到的所述一个子属性的属性值确定为所述目标属性的属性值。
2.根据权利要求1所述的方法,其特征在于,在所述设置与所述传感器类型对应的目标属性之后,所述方法还包括:
通过N个硬件监控器对所述N个设备中的所述传感器对应的寄存器执行读取操作,其中,所述N个硬件监控器与所述N个子属性具有一一对应的关系,所述寄存器用于存储所述传感器采集的所述相同类型的属性值;
在所述N个硬件监控器中的M个硬件监控器从所述N个设备中的M个设备中的所述传感器对应的寄存器读取到所述相同类型的属性值的情况下,将所述M个硬件监控器读取到的所述属性值作为M个子属性的属性值写入到预设的属性表中,其中,M为大于或等于1、且小于或等于N的正整数,所述属性表用于记录所述N个子属性中的每个子属性的属性值,所述M个硬件监控器与所述M个子属性具有一一对应的关系。
3.根据权利要求2所述的方法,其特征在于,在所述通过N个硬件监控器对所述N个设备中的所述传感器对应的寄存器执行读取操作之后,所述方法还包括:
在M小于N的情况下,将所述属性表中记录的所述N个子属性中除所述M个子属性之外的N-M个子属性的属性值设置为预设的目标字符,其中,所述目标字符用于表示未读取到所述子属性的属性值。
4.根据权利要求2所述的方法,其特征在于,所述将所述M个硬件监控器读取到的所述属性值作为M个子属性的属性值写入到预设的属性表中,包括:
通过以下步骤将所述M个硬件监控器中的第i个硬件监控器读取到的所述属性值作为所述M个子属性中的第i个子属性的属性值写入到所述属性表中,其中,i为大于或等于1、且小于或等于M的正整数:
在所述第i个硬件监控器从所述M个设备中的第i个设备中的所述传感器对应的寄存器中读取到第i组属性值的情况下,根据所述第i组属性值,确定待写入的第i个属性值,其中,所述第i组属性值包括所述第i个设备中的所述传感器采集到的所述相同类型的一个或多个属性值;
将所述属性表中记录的所述第i个子属性的属性值确定为等于所述第i个属性值。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第i组属性值,确定待写入的第i个属性值,包括:
在所述第i组属性值包括一个属性值的情况下,将所述一个属性值确定为所述第i个属性值;和/或
在所述第i组属性值包括多个属性值的情况下,将所述第i组属性值的平均值确定为所述第i个属性值,或者,将所述第i组属性值中的部分属性值的平均值确定为所述第i个属性值,其中,所述部分属性值是所述第i组属性值中去掉从大到小排列的前P个属性值和/或后Q个属性值所得到的属性值,P和Q均为大于或等于1的正整数。
6.根据权利要求3所述的方法,其特征在于,
所述将所述属性表中记录的所述N个子属性中除所述M个子属性之外的N-M个子属性的属性值设置为预设的目标字符,包括:将所述属性表中的所述N-M个子属性的属性值设置为0、且将所述属性表中的所述N-M个子属性的属性状态设置为异常状态,其中,所述异常状态用于表示所述N-M个子属性对应的N-M个设备未安装或存在硬件故障,所述N-M个设备包括所述N个设备中除所述M个设备之外的设备;
在将所述M个硬件监控器读取到的所述属性值作为M个子属性的属性值写入到预设的属性表中的情况下,所述方法还包括:将所述属性表中的所述M个子属性的属性状态设置为正常状态,其中,所述正常状态用于表示所述M个子属性对应的所述M个设备处于工作状态。
7.根据权利要求2所述的方法,其特征在于,所述依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性,包括:
在所述属性表中按照预设的顺序依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性。
8.根据权利要求7所述的方法,其特征在于,
在所述属性表中按照预设的顺序依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性,包括:在N为2的情况下,在所述属性表中读取所述N个子属性中的第一子属性的属性值;
在读取到所述N个子属性中的一个子属性的属性值的情况下,将读取到的所述一个子属性的属性值确定为所述目标属性的属性值,包括:在读取到所述第一子属性的属性值的情况下,将读取到的所述第一子属性的属性值确定为所述目标属性的属性值。
9.根据权利要求8所述的方法,其特征在于,
在所述属性表中按照预设的顺序依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性,包括:在未读取到所述第一子属性的属性值的情况下,在所述属性表中读取所述N个子属性中的第二子属性的属性值;
在读取到所述N个子属性中的一个子属性的属性值的情况下,将读取到的所述一个子属性的属性值确定为所述目标属性的属性值,包括:在读取到所述第二子属性的属性值的情况下,将读取到的所述第二子属性的属性值确定为所述目标属性的属性值。
10.根据权利要求8所述的方法,其特征在于,在所述属性表中读取所述N个子属性中的第一子属性的属性值的情况下,所述方法还包括:
在对所述第一子属性的属性值进行读取所得到的读取结果包括在预设的取值范围内的数值的情况下,将所述读取结果中包括的所述数值确定为读取到的所述第一子属性的属性值;或者
在对所述第一子属性的属性值进行读取所得到的读取结果包括在预设的取值范围内的数值、且所述读取结果中还包括的所述第一子属性的属性状态为正常状态的情况下,将所述读取结果中包括的所述数值确定为读取到的所述第一子属性的属性值,其中,所述正常状态用于表示所述第一子属性对应的设备处于工作状态。
11.根据权利要求9所述的方法,其特征在于,在所述属性表中读取所述N个子属性中的第一子属性的属性值的情况下,所述方法还包括:
在对所述第一子属性的属性值进行读取所得到的读取结果包括不在预设的取值范围内的数值的情况下,确定出未读取到所述第一子属性的属性值;或者
在对所述第一子属性的属性值进行读取所得到的读取结果包括不在预设的取值范围内的数值、且所述读取结果中还包括的所述第一子属性的属性状态为异常状态的情况下,将所述读取结果中包括的所述数值确定为读取到的所述第一子属性的属性值,其中,所述异常状态用于表示所述第一子属性对应的设备未安装或存在硬件故障。
12.根据权利要求1所述的方法,其特征在于,在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与所述传感器类型对应的目标属性之后,所述方法还包括:
确定所述N个设备中的第j个设备中至少两个传感器的读取逻辑,其中,j为大于或等于1、且小于或等于N的正整数;
在所述读取逻辑表示所述至少两个传感器不允许独立访问的情况下,为所述第j个设备中的所述至少两个传感器设置同一个硬件监控器,其中,所述同一个硬件监控器用于对所述第j个设备中的所述至少两个传感器对应的寄存器执行读取操作,所述寄存器用于存储所述传感器采集的所述相同类型的属性值;
在所述读取逻辑表示所述至少两个传感器允许独立访问的情况下,为所述第j个设备中的所述至少两个传感器中的每一个传感器设置不同的硬件监控器,其中,所述不同的硬件监控器用于对所述第j个设备中的所述至少两个传感器中的不同传感器对应的寄存器执行读取操作。
13.根据权利要求12所述的方法,其特征在于,在为所述第j个设备中的所述至少两个传感器设置同一个硬件监控器之后,所述方法还包括:
为所述同一个硬件监控器配置第一监控逻辑,其中,所述第一监控逻辑用于指示根据所述第j个设备中的所述至少两个传感器对应的子属性同时读取所述至少两个传感器采集的属性值。
14.根据权利要求12所述的方法,其特征在于,在为所述第j个设备中的所述至少两个传感器中的每一个传感器设置不同的硬件监控器之后,所述方法还包括:
为所述不同的硬件监控器配置第二监控逻辑,其中,所述第二监控逻辑用于指示依据预设的顺序依次所述第j个设备中的所述至少两个传感器采集的属性值。
15.根据权利要求14所述的方法,其特征在于,为所述不同的硬件监控器配置第二监控逻辑之后,所述方法还包括:
在所述不同的硬件监控器中存在硬件监控器无法与所述至少两个传感器中对应的所述传感器建立通信连接的情况下,将所述对应的所述传感器标识为异常传感器;
在所述至少两个传感器中的所述异常传感器的数量大于预设数量的情况下,确定所述第j个设备未安装。
16.根据权利要求1至15中任一项所述的方法,其特征在于,在将读取到的所述一个子属性的属性值确定为所述目标属性的属性值之后,所述方法还包括:
将所述相同类型的标识和所述目标属性的属性值显示在目标显示界面中。
17.根据权利要求16所述的方法,其特征在于,所述将所述相同类型的标识和所述目标属性的属性值显示在目标显示界面中,包括:
在所述相同类型用于表示目标器件的温度、且所述目标属性的属性值用于表示所述目标器件的温度值的情况下,在所述目标显示界面中显示所述目标器件的温度为所述温度值。
18.一种属性值的确定装置,其特征在于,包括:
第一设置模块,用于在设备类型相同的N个设备中均存在传感器类型相同的传感器的情况下,设置与所述传感器类型对应的目标属性,其中,所述传感器类型相同的传感器用于采集相同类型的属性值,所述目标属性的属性值用于表示所述传感器采集到的所述相同类型的属性值,所述目标属性是N个子属性的父属性,所述N个子属性中的每个子属性的属性值用于表示所述N个设备中对应的一个设备中的所述传感器采集到的所述相同类型的属性值,N为大于或等于2的正整数;
读取模块,用于在需要读取所述目标属性的属性值的情况下,依次读取所述N个子属性中的每个子属性的属性值,直到读取到所述N个子属性中的一个子属性的属性值或遍历完所述N个子属性;
确定模块,用于在读取到所述N个子属性中的一个子属性的属性值的情况下,将读取到的所述一个子属性的属性值确定为所述目标属性的属性值。
19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至17任一项中所述的方法的步骤。
20.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至17任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310823998.4A CN116560586B (zh) | 2023-07-06 | 2023-07-06 | 属性值的确定方法及装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310823998.4A CN116560586B (zh) | 2023-07-06 | 2023-07-06 | 属性值的确定方法及装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116560586A true CN116560586A (zh) | 2023-08-08 |
CN116560586B CN116560586B (zh) | 2023-09-05 |
Family
ID=87495061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310823998.4A Active CN116560586B (zh) | 2023-07-06 | 2023-07-06 | 属性值的确定方法及装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116560586B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117331377A (zh) * | 2023-12-01 | 2024-01-02 | 珠海格力电器股份有限公司 | 一种配置方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101490651A (zh) * | 2006-07-01 | 2009-07-22 | 国际商业机器公司 | 管理持久性的方法、装置和计算机程序 |
JP2014182743A (ja) * | 2013-03-21 | 2014-09-29 | Nec Corp | ディスクアレイ装置および故障検出方法 |
US20190159717A1 (en) * | 2017-11-29 | 2019-05-30 | Samsung Electronics Co., Ltd. | Electronic device for measuring hydrature using display and method for operating the same |
CN110622519A (zh) * | 2017-05-12 | 2019-12-27 | 株式会社野村综合研究所 | 数据管理系统 |
CN115827318A (zh) * | 2022-10-21 | 2023-03-21 | 苏州浪潮智能科技有限公司 | 数据中心的异常处理方法、装置、电子设备及介质 |
CN116230033A (zh) * | 2021-12-03 | 2023-06-06 | 三星电子株式会社 | 存储设备 |
-
2023
- 2023-07-06 CN CN202310823998.4A patent/CN116560586B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101490651A (zh) * | 2006-07-01 | 2009-07-22 | 国际商业机器公司 | 管理持久性的方法、装置和计算机程序 |
JP2014182743A (ja) * | 2013-03-21 | 2014-09-29 | Nec Corp | ディスクアレイ装置および故障検出方法 |
CN110622519A (zh) * | 2017-05-12 | 2019-12-27 | 株式会社野村综合研究所 | 数据管理系统 |
US20190159717A1 (en) * | 2017-11-29 | 2019-05-30 | Samsung Electronics Co., Ltd. | Electronic device for measuring hydrature using display and method for operating the same |
CN116230033A (zh) * | 2021-12-03 | 2023-06-06 | 三星电子株式会社 | 存储设备 |
CN115827318A (zh) * | 2022-10-21 | 2023-03-21 | 苏州浪潮智能科技有限公司 | 数据中心的异常处理方法、装置、电子设备及介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117331377A (zh) * | 2023-12-01 | 2024-01-02 | 珠海格力电器股份有限公司 | 一种配置方法、装置、电子设备及存储介质 |
CN117331377B (zh) * | 2023-12-01 | 2024-03-08 | 珠海格力电器股份有限公司 | 一种配置方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116560586B (zh) | 2023-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109634728B (zh) | 作业调度方法、装置、终端设备及可读存储介质 | |
CN102597962B (zh) | 用于虚拟计算环境中的故障管理的方法和系统 | |
US7752500B2 (en) | Method and apparatus for providing updated processor polling information | |
CN116560586B (zh) | 属性值的确定方法及装置、存储介质及电子设备 | |
CN106649021B (zh) | PCIe从设备测试装置 | |
US10120702B2 (en) | Platform simulation for management controller development projects | |
CN103257922B (zh) | 一种快速测试bios与os接口代码可靠性的方法 | |
CN111831345A (zh) | 服务器硬盘背板的管理方法、装置、存储介质和设备 | |
CN109117299B (zh) | 服务器的侦错装置及其侦错方法 | |
CN115599617B (zh) | 总线检测方法、装置、服务器及电子设备 | |
CN116701285A (zh) | 远程访问控制装置、方法、设备及计算机可读介质 | |
CN109697166B (zh) | 一种测试数据准备方法及相关装置 | |
CN115543746A (zh) | 图形处理器监测方法、系统、装置及电子设备 | |
CN113900718B (zh) | 一种bmc与bios资产信息的解耦方法、系统及装置 | |
CN106919407A (zh) | 电脑内嵌产品资料同步更新的方法 | |
EP3979026A1 (en) | Control system, programmable logic controller, and information processing method | |
CN115509978A (zh) | 一种外插设备物理位置确定方法、装置、设备及存储介质 | |
US11403115B2 (en) | Program execution support device, program execution support method, and computer readable medium | |
CN109144788B (zh) | 一种重建osd的方法、装置及系统 | |
CN117055718B (zh) | 一种服务器功耗检测系统、方法、装置、设备和存储介质 | |
CN114706715B (zh) | 一种基于bmc的分布式raid的控制方法、装置、设备及介质 | |
CN111930418B (zh) | 诊断设备功能配置方法、诊断设备及存储介质 | |
JP6948186B2 (ja) | 機器管理装置、機器管理システム、および機器管理方法 | |
CN115878533A (zh) | Ai服务器的自适应配置方法、装置、设备和存储介质 | |
CN114185589A (zh) | 基于Spring boot的文件传输方法、装置、设备及介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |