CN115576679B - 传感器的控制方法、装置、电子设备及存储介质 - Google Patents
传感器的控制方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115576679B CN115576679B CN202211577941.2A CN202211577941A CN115576679B CN 115576679 B CN115576679 B CN 115576679B CN 202211577941 A CN202211577941 A CN 202211577941A CN 115576679 B CN115576679 B CN 115576679B
- Authority
- CN
- China
- Prior art keywords
- sensor
- operating system
- target
- hardware
- state
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
- G06F9/441—Multiboot arrangements, i.e. selecting an operating system to be loaded
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Programmable Controllers (AREA)
Abstract
本公开提出一种传感器的控制方法、装置、电子设备及存储介质,涉及电子设备技术领域。包括:第一操作系统接收第二操作系统发送的包含目标传感器的第一标识及第一开关状态的传感器控制指令,在第一开关状态为开启状态,且目标传感器的硬件当前为关闭状态的情况下,确定调用第一操作系统中与目标传感器对应的目标硬件抽象层接口的目标方式;基于目标方式,调用目标硬件抽象层接口,以控制目标传感器的硬件启动。由此,在异构操作系统架构下,不仅可以实现每个操作系统对电子设备中的传感器进行控制,而且能够有效提升不同操作系统对传感器的协同控制效果,进而可以有效地复用电子设备中传感器提供的硬件能力。
Description
技术领域
本公开涉及电子设备技术领域,尤其涉及一种传感器的控制方法、装置、电子设备及存储介质。
背景技术
随着时代的发展,各种新兴的操作系统不断涌现,为了给用户带来更加便捷的电子设备使用体验,可以在同一个电子设备中兼容多个异构操作系统。异构,比如出厂支持的协议不相同,所使用的处理器架构不相同等。在支持多个异构操作系统的电子设备上,存在多个异构操作系统上的应用程序使用电子设备中的传感器硬件的场景。
因此,如何实现多个异构操作系统中的应用程序使用同一电子设备中的传感器提供的硬件能力成为重点的研究方向。
发明内容
本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
本公开第一方面实施例提出了一种传感器的控制方法,包括:
第一操作系统接收第二操作系统发送的传感器控制指令,其中,所述传感器控制指令中包含目标传感器的第一标识及第一开关状态;
在所述第一开关状态为开启状态,且所述第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式;
基于所述目标方式,调用所述目标硬件抽象层接口,以控制所述目标传感器的硬件启动。
可选的,所述确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式,包括:
在所述传感器控制指令为所述第二操作系统中的第一传感器服务发送的情况下,根据第一映射表,确定所述第一操作系统中与所述第一传感器服务对应的所述目标硬件抽象层接口,其中,所述第一映射表中包含所述第二操作系统中的每个传感器服务与所述第一操作系统中每个传感器对应的硬件抽象层接口间的关联关系;
确定所述目标方式为直接调用所述目标硬件抽象层接口。
可选的,所述确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式,包括:
在所述传感器控制指令为所述第二操作系统中的第一传感器服务发送的情况下,根据第二映射表,确定所述第一操作系统中与所述第一传感器服务对应的第二传感器服务,其中,所述第二映射表中包含所述第二操作系统中的每个传感器服务与所述第一操作系统中的每个传感器服务间的关联关系;
确定所述目标方式为通过所述第二传感器服务调用所述目标硬件抽象层接口。
可选的,所述确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式,包括:
在所述传感器控制指令为所述第二操作系统中的应用程序通过应用程序接口发送的情况下,根据第三映射表,确定所述第一操作系统中与所述应用程序接口对应的第二传感器服务,其中,所述第三映射表中包含所述第二操作系统中的每个应用程序接口与所述第一操作系统中的每个传感器服务间的关联关系;
确定所述目标方式为通过所述第二传感器服务调用所述目标硬件抽象层接口。
可选的,还包括:
在所述第一开关状态为关闭状态,且所述目标传感器的硬件当前为开启状态的情况下,获取电子设备中除所述第二操作系统外的其余操作系统中所述目标传感器分别对应的第一数据获取状态;
根据所述第一开关状态及所述第一数据获取状态,确定是否关闭所述目标传感器的硬件。
可选的,所述根据所述第一开关状态及所述第一数据获取状态,确定是否关闭所述目标传感器的硬件,包括:
在任一第一数据获取状态为开启状态的情况下,确定不关闭所述目标传感器的硬件,关闭所述第二操作系统中所述目标传感器对应的第二数据获取状态;或者,
在每个所述第一数据获取状态均为关闭状态的情况下,调用所述目标传感器对应的所述目标硬件抽象层接口,以关闭所述目标传感器的硬件。
可选的,还包括:
在所述第一开关状态为开启状态,且所述目标传感器的硬件当前为开启状态的情况下,确定所述第二操作系统中所述目标传感器对应的第二数据获取状态为开启状态;
获取所述目标传感器的硬件采集的数据;
获取电子设备中除所述第二操作系统外的其余操作系统中所述目标传感器分别对应的第三数据获取状态;
将所述数据反馈给所述第二操作系统及所述其余操作系统中所述第三数据获取状态为开启状态的目标操作系统。
可选的,还包括:
在检测到电子设备的用户切换的情况下,确定用户切换的前一时刻所述电子设备中每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态;
将所述每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态与用户切换前的第一用户的第一标识关联存储;
在用户切换完成后,确定使用所述电子设备的第二用户;
获取与所述第二用户对应的第二标识关联的每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态;
基于所述每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态,分别对所述每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态进行更新。
本公开第二方面实施例提出了一种传感器的控制装置,包括:
接收装置,用于第一操作系统接收第二操作系统发送的传感器控制指令,其中,所述传感器控制指令中包含目标传感器的第一标识及第一开关状态;
第一确定模块,用于在所述第一开关状态为开启状态,且所述第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式;
控制模块,用于基于所述目标方式,调用所述目标硬件抽象层接口,以控制所述目标传感器的硬件启动。
可选的,所述第一确定模块,具体用于:
在所述传感器控制指令为所述第二操作系统中的第一传感器服务发送的情况下,根据第一映射表,确定所述第一操作系统中与所述第一传感器服务对应的所述目标硬件抽象层接口,其中,所述第一映射表中包含所述第二操作系统中的每个传感器服务与所述第一操作系统中每个传感器对应的硬件抽象层接口间的关联关系;
确定所述目标方式为直接调用所述目标硬件抽象层接口。
可选的,所述第一确定模块,具体用于:
在所述传感器控制指令为所述第二操作系统中的第一传感器服务发送的情况下,根据第二映射表,确定所述第一操作系统中与所述第一传感器服务对应的第二传感器服务,其中,所述第二映射表中包含所述第二操作系统中的每个传感器服务与所述第一操作系统中的每个传感器服务间的关联关系;
确定所述目标方式为通过所述第二传感器服务调用所述目标硬件抽象层接口。
可选的,所述第一确定模块,具体用于:
在所述传感器控制指令为所述第二操作系统中的应用程序通过应用程序接口发送的情况下,根据第三映射表,确定所述第一操作系统中与所述应用程序接口对应的第二传感器服务,其中,所述第三映射表中包含所述第二操作系统中的每个应用程序接口与所述第一操作系统中的每个传感器服务间的关联关系;
确定所述目标方式为通过所述第二传感器服务调用所述目标硬件抽象层接口。
可选的,还包括:
获取模块,用于在所述第一开关状态为关闭状态,且所述目标传感器的硬件当前为开启状态的情况下,获取电子设备中除所述第二操作系统外的其余操作系统中所述目标传感器分别对应的第一数据获取状态;
第二确定模块,用于根据所述第一开关状态及所述第一数据获取状态,确定是否关闭所述目标传感器的硬件。
可选的,所述第二确定模块,具体用于:
在任一第一数据获取状态为开启状态的情况下,确定不关闭所述目标传感器的硬件,关闭所述第二操作系统中所述目标传感器对应的第二数据获取状态;或者,
在每个所述第一数据获取状态均为关闭状态的情况下,调用所述目标传感器对应的所述目标硬件抽象层接口,以关闭所述目标传感器的硬件。
可选的,还包括:
第三确定模块,用于在所述第一开关状态为开启状态,且所述目标传感器的硬件当前为开启状态的情况下,确定所述第二操作系统中所述目标传感器对应的第二数据获取状态为开启状态;
第二获取模块,用于获取所述目标传感器的硬件采集的数据;
第三获取模块,用于获取电子设备中除所述第二操作系统外的其余操作系统中所述目标传感器分别对应的第三数据获取状态;
发送模块,用于将所述数据反馈给所述第二操作系统及所述其余操作系统中所述第三数据获取状态为开启状态的目标操作系统。
可选的,还包括:
第四确定模块,用于在检测到电子设备的用户切换的情况下,确定用户切换的前一时刻所述电子设备中每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态;
存储模块,用于将所述每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态与用户切换前的第一用户的第一标识关联存储;
第五确定模块,用于在用户切换完成后,确定使用所述电子设备的第二用户;
第四获取模块,用于获取与所述第二用户对应的第二标识关联的每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态;
更新模块,用于基于所述每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态,分别对所述每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态进行更新。
本公开第三方面实施例提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如本公开第一方面实施例提出的传感器的控制方法。
本公开第四方面实施例提出了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,实现如本公开第一方面实施例提出的传感器的控制方法。
本公开第五方面实施例提出了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时,实现如本公开第一方面实施例提出的传感器的控制方法的步骤。
本公开提供的传感器的控制方法、装置、电子设备及存储介质,存在如下有益效果:
本公开实施例中,第一操作系统接收第二操作系统发送的传感器控制指令,其中,所述传感器控制指令中包含目标传感器的第一标识及第一开关状态,在所述第一开关状态为开启状态,且所述第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式;基于所述目标方式,调用所述目标硬件抽象层接口,以控制所述目标传感器的硬件启动。由此,在异构操作系统架构下,不仅可以实现每个操作系统对电子设备中的传感器进行控制,而且由第一操作系统对每个操作系统发送的传感器控制指令进行协调处理,从而能够有效提升对不同操作系统对传感器的协同控制效果,进而可以有效地复用电子设备中传感器提供的硬件能力。
本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本公开一实施例所提供的一种传感器的控制方法的流程示意图;
图2为本公开另一实施例所提供的一种传感器的控制方法的流程示意图;
图3为本公开另一实施例所提供的一种传感器的控制方法的流程示意图;
图4为本公开另一实施例所提供的一种传感器的控制方法的流程示意图;
图5为本公开另一实施例所提供的传感器的控制装置的结构示意图;
图6示出了适于用来实现本公开实施方式的示例性电子设备的框图。
具体实施方式
下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。
在本公开实施例的描述中,术语“第一操作系统”,是指在异构操作系统中作为主控的操作系统。
在本公开实施例的描述中,术语“第二操作系统”,是指在异构操作系统中作为从控的操作系统。
在本公开实施例的描述中,术语“第一传感器服务”,是指第二操作系统中,向其上所部署应用程序提供传感器控制,或传感器数据获取相关功能的服务。
在本公开实施例的描述中,术语“第二传感器服务”,是指第一操作系统中,向其上所部署应用程序提供传感器控制,或传感器数据获取相关功能的服务。
在本公开实施例的描述中,术语“应用程序接口(Application ProgrammingInterface,API)”,一般指应用程序编程接口。API之主要目的是提供应用程序与开发人员以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。提供API所定义的功能的软件称作此API的实现。API是一种接口,故而是一种抽象。
在本公开实施例的描述中,术语“硬件抽象层”,是位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。
在本公开实施例的描述中,术语“目标硬件抽象层接口”,是指第一操作系统的硬件抽象层中,提供对目标传感器的硬件进行控制的接口。
下面参考附图描述本公开实施例的传感器的控制方法、装置、电子设备和存储介质。
图1为本公开实施例所提供的一种传感器的控制方法的流程示意图。
本公开实施例以该传感器的控制方法被配置于传感器的控制装置中来举例说明,该传感器的控制装置可以应用于任一电子设备中,以使该电子设备可以执行传感器的控制功能。
电子设备,是一种经由通信设施向其他设备发送数据或接收其他设备数据的设备,也即是说,该电子设备可以例如为能够进行网络通信连接的电子设备、计算机设备等,对此不做限制。
本公开实施例中的电子设备中包含异构操作系统,例如,可以包含被作为主操作系统的第一操作系统,以及在第一操作系统中运行至少一个被作为从操作系统的第二操作系统,比如可以在第一操作系统中配置虚拟机,在虚拟机内运行第二操作系统,第一操作系统和第二操作系统之间互为异构操作系统,该第二操作系统的数量可以是一个或者多个,每个第二操作系统中运行一些应用程序,第二操作系统可以与第一操作系统协作,以复用电子设备的传感器的硬件能力。
需要说明的是,一个电子设备中可以包含多个传感器,比如,可以包括加速度传感器、计时器、计步器等。或者,也可以为智能传感集线器。智能传感集线器,是一种基于低功耗为控制单元和轻量级实时操作系统之上的软硬件结合的解决方案,其主要功能是连接并处理来自各种传感器设备的数据。
如图1所示,该传感器的控制方法可以包括以下步骤:
步骤101,第一操作系统接收第二操作系统发送的传感器控制指令,其中,传感器控制指令中包含目标传感器的第一标识及第一开关状态。
其中,传感器控制指令,是指第二操作系统动态的监测传感器控制事件(例如,如果监测到某一个应用程序触发对目标传感器的控制,则可以确定监测到目标传感器控制事件),而后,可以判定该事件需对电子设备中目标传感器进行控制,则第二操作系统会向第一操作系统发送用于对电子设备中目标传感器进行控制的指令,该指令即可以被称为传感器控制指令。
需要说明的是,通常电子设备上的传感器基于第一操作系统初始化好之后,只为第一操作系统提供传感器的硬件能力。因此,若第二操作系统的应用程序想要调用电子设备中传感器提供的硬件能力,需要先向第一操作系统发送传感器控制指令,以使第一操作系统对第二操作系统发送的传感器控制指令进行处理,以为第二操作系统提供传感器的硬件能力。
其中,目标传感器的第一标识,用于唯一标识目标传感器。比如,若目标传感器为加速度传感器,则对应的第一标识为1;若目标传感器为计时器,则对应的第一标识为2。需要说明的是,电子设备中的每个传感器均有对应的标识,且标识各不相同。
其中,第一开关状态,可以用于指示是否需要获取目标传感器的数据。比如,第一开关状态为“开”,则需要控制目标传感器开启,以获取目标传感器的数据,或者,第一开关状态为“关”,则需要控制目标传感器关闭,即停止获取目标传感器的数据。
本公开实施例中,第一操作系统可以同时接收一个或多个第二操作系统发送的传感器控制指令。本公开对此不做限定。
如果第一操作系统接收到一个第二操作系统发送的传感器控制指令,则可以直接对该一个第二操作系统的传感器控制指令进行响应控制,以触发基于传感器控制指令调用传感器的硬件能力。
如果第一操作系统同时接收到多个第二操作系统发送的传感器控制指令,则可以借助一些策略来协作响应控制不同第二操作系统所发送的传感器控制指令。比如,可以结合第二操作系统当前是否显示应用程序界面(即,触发传感器控制的应用程序的界面)的情况,来确定一个合适的响应控制策略,以对多个异构操作系统的传感器控制指令进行协同控制。
举例而言,还可以对多个传感器控制指令进行分时响应控制,使得不同第二操作系统中的应用程序可以分时使用传感器的硬件能力,或者,还可以确定响应传感器控制指令或者是不响应传感器控制指令,或者,还可以确定是否延迟响应传感器控制指令,对此不做限制。
由此,本公开实施例中,支持灵活地确定合适的针对传感器控制指令的响应控制策略,使得在异构操作系统架构下,如果多个第二操作系统同时发送传感器控制指令,实现对不同第二操作系统的传感器控制指令进行有效地协同控制,以在异构操作系统架构下,有效提升对不同第二操作系统所发送的传感器控制指令的协同控制效果。
步骤102,在第一开关状态为开启状态,且第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用第一操作系统中与目标传感器对应的目标硬件抽象层接口的目标方式。
需要说明的是,在第一开关状态为开启状态的情况下,说明发送传感器控制指令的第二操作系统在发送传感器控制指令之前,不需要获取目标传感器的数据,但电子设备中的其他操作系统可能会使用目标传感器的数据,比如电子设备中的第一操作系统需要使用目标传感器的数据,则目标传感器的硬件当前为开启状态,以为第一操作系统提供数据。
因此,第一操作系统在接收到传感器控制指令之后,需要进一步确定目标传感器的硬件当前的状态。在第一开关状态为开启状态,且第一标识对应的目标传感器的硬件当前为关闭状态的情况下,由于发送传感器控制指令的第二操作系统需要获取目标传感器的数据,因此,需要控制目标传感器启动。但是,目标传感器的硬件能力已经经过封装,由第一操作系统下的硬件抽象层以接口的形式提供,因此,需要确定调用第一操作系统中与目标传感器对应的目标硬件抽象层接口的目标方式。
可选的,在传感器控制指令为第二操作系统中的第一传感器服务发送的情况下,根据第一映射表,确定第一操作系统中与第一传感器服务对应的目标硬件抽象层接口,其中,第一映射表中包含第二操作系统中的每个传感器服务与第一操作系统中每个传感器对应的硬件抽象层接口间的关联关系,确定目标方式为直接调用目标硬件抽象层接口。
需要说明的是,传感器控制指令可以为第二操作系统中的应用程序通过应用程序接口调用第一传感器服务,进而由第一传感器服务发送的。
其中,第一映射表可以为第二操作系统首次部署在第一操作系统时,根据第二操作系统中的每个传感器服务与第一操作系统中每个传感器对应的硬件抽象层接口间的关联关系,生成的映射表。从而可以将第二操作系统中的传感器服务与第一操作系统中的硬件抽象层接口进行对接,实现第二操作系统对电子设备中的传感器的控制及数据获取。
比如,将第二操作系统下的加速度传感器服务与第一操作系统下加速度传感器对应的硬件抽象层接口进行对接,从而,第一操作系统在接收到第二操作系统中的加速度传感器服务发送的传感器控制指令之后,直接调用加速度传感器对应的硬件抽象层接口,以实现对加速度传感器的控制。
可选的,在传感器控制指令为第二操作系统中的第一传感器服务发送的情况下,根据第二映射表,确定第一操作系统中与第一传感器服务对应的第二传感器服务,其中,第二映射表中包含第二操作系统中的每个传感器服务与第一操作系统中的每个传感器服务间的关联关系,确定目标方式为通过第二传感器服务调用目标硬件抽象层接口。
其中,第二映射表可以为第二操作系统首次部署在第一操作系统时,根据第二操作系统中的每个传感器服务与第一操作系统中每个传感器服务间的关联关系,生成的映射表。从而可以将第二操作系统中的传感器服务与第一操作系统中的传感器服务进行对接,通过服务间通信,实现第二操作系统对电子设备中的传感器的控制及数据获取。
比如,将第二操作系统下的加速度传感器服务与第一操作系统下的加速度传感器服务进行对接,从而,第一操作系统可以通过第一操作系统下的加速度传感器服务,接收第二操作系统中的加速度传感器服务发送的传感器控制指令,进而通过第一操作系统下的加速度传感器服务调用加速度传感器对应的硬件抽象层接口,以实现对加速度传感器的控制。
可选的,在传感器控制指令为第二操作系统中的应用程序通过应用程序接口发送的情况下,根据第三映射表,确定第一操作系统中与应用程序接口对应的第二传感器服务,其中,第三映射表中包含第二操作系统中的每个应用程序接口与第一操作系统中的每个传感器服务间的关联关系,确定目标方式为通过第二传感器服务调用目标硬件抽象层接口。
其中,第一映射表可以为第二操作系统首次部署在第一操作系统时,根据第二操作系统中的每个用用程序接口与第一操作系统中每个传感器服务间的关联关系,生成的映射表。从而可以将第二操作系统中的应用程序接口与第一操作系统中的传感器服务进行对接,实现第二操作系统对电子设备中的传感器的控制及数据获取。
比如,将第二操作系统下的加速度传感器对应对的应用程序接口与第一操作系统下加速度传感器服务进行对接,从而,第一操作系统可以通过第一操作系统下的加速度传感器服务接收第二操作系统中的应用程序接口发送的传感器控制指令,并通过第一操作系统下的加速度传感器服务调用加速度传感器对应的硬件抽象层接口。
步骤103,基于目标方式,调用目标硬件抽象层接口,以控制目标传感器的硬件启动。
本公开实施例中,在确定了调用目标抽象层接口的目标方式之后,即可基于目标方式,调用目标硬件抽象层接口,以控制目标传感器的硬件启动,从而目标传感器即可开始数据,进而第二操作系统即可获取目标传感器对应的数据。
本公开实施例中,第一操作系统接收第二操作系统发送的传感器控制指令,其中,传感器控制指令中包含目标传感器的第一标识及第一开关状态,在第一开关状态为开启状态,且第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用第一操作系统中与目标传感器对应的目标硬件抽象层接口的目标方式;基于目标方式,调用目标硬件抽象层接口,以控制目标传感器的硬件启动。由此,在异构操作系统架构下,不仅可以实现每个操作系统对电子设备中的传感器进行控制,而且由第一操作系统对每个操作系统发送的传感器控制指令进行协调处理,从而能够有效提升不同操作系统对传感器的协同控制效果,进而可以有效地复用电子设备中传感器提供的硬件能力。
图2为本公开一实施例所提供的一种传感器的控制方法的流程示意图,如图2所示,该传感器的控制方法可以包括以下步骤:
步骤201,第一操作系统接收第二操作系统发送的传感器控制指令,其中,传感器控制指令中包含目标传感器的第一标识及第一开关状态。
其中,步骤201的具体实现形式,可参照本公开中,其他各实施例中的详细描述,此处不再具体赘述。
步骤202,在第一开关状态为关闭状态,且目标传感器的硬件当前为开启状态的情况下,获取电子设备中除第二操作系统外的其余操作系统中目标传感器分别对应的第一数据获取状态。
需要说明的是,在第一开关状态为关闭状态的情况下,说明发送传感器控制指令的第二操作系统在发送传感器控制指令之前需要获取目标传感器的数据,即目标传感器的硬件为开启状态。但当发送传感器控制指令的第二操作系统不需要目标传感器的数据之后,若直接关闭目标传感器的硬件,可能导致电子设备中的其他操作系统不能正常使用目标传感器的数据。
因此,第一操作系统在接收到的传感器控制指令中包含的第一开关状态为关闭状态的情况下,需要进一步确定是否还有其他的操作系统需要使用目标传感器测量的数据。本公开实施例中,可以在第一开关状态为关闭状态,且目标传感器的硬件当前为开启状态的情况下,获取电子设备中除第二操作系统外的其余操作系统中目标传感器分别对应的第一数据获取状态。
其中,第一数据获取状态,可以用于标识其余操作系统是否需要获取目标传感器的数据。第一数据获取状态可以包括开启状态及关闭状态。开启状态,表示需要获取目标传感器对应的数据;关闭状态,表示不需要获取目标传感器对应的数据。
步骤203,根据第一开关状态及第一数据获取状态,确定是否关闭目标传感器的硬件。
本公开实施例中,在获取了第一开关状态及第一数据获取状态之后,即可确定是否需要关闭目标传感器的硬件。
可选的,在任一第一数据获取状态为开启状态的情况下,确定不关闭目标传感器的硬件,关闭第二操作系统中目标传感器对应的第二数据获取状态。
可以理解的是,在任一第一数据获取状态为开启状态的情况下,说明存在其他操作系统需要使用目标传感器的数据,因此,不能关闭目标传感器的硬件,但是可以通过关闭第二操作系统中目标传感器对应的第二数据获取状态,从而第一操作系统在获取到目标传感器的数据之后,就不会把数据发送给第二操作系统,但是会将数据发送给需要的其他操作系统,从而不会影响其他操作系统使用目标传感器的数据。
或者,在每个第一数据获取状态均为关闭状态的情况下,调用目标传感器对应的目标硬件抽象层接口,以关闭目标传感器的硬件。
可以理解的是,在每个第一数据获取状态均为关闭状态的情况下,说明电子设备中的每个操作系统均不需要获取目标传感器的数据,因此,第一操作系统可以基于目标方式,调用目标硬件抽象层接口,以控制目标传感器的硬件关闭。
本公开实施例中,第一操作系统接收第二操作系统发送的传感器控制指令,其中,传感器控制指令中包含目标传感器的第一标识及第一开关状态,之后在第一开关状态为关闭状态,且目标传感器的硬件当前为开启状态的情况下,获取电子设备中除第二操作系统外的其余操作系统中目标传感器分别对应的第一数据获取状态,最后根据第一开关状态及第一数据获取状态,确定是否关闭目标传感器的硬件。由此,在第二操作系统需要目标传感器关闭的情况下,可以进一步根据其余操作系统对目标传感器的控制,确定是否需要关闭目标传感器的硬件,从而可以实现每个异构操作系统对传感器硬件的协同控制,进而可以有效地复用电子设备中传感器提供的硬件能力。
图3为本公开一实施例所提供的一种传感器的控制方法的流程示意图,如图3所示,该传感器的控制方法可以包括以下步骤:
步骤301,第一操作系统接收第二操作系统发送的传感器控制指令,其中,传感器控制指令中包含目标传感器的第一标识及第一开关状态。
其中,步骤301的具体实现形式,可参照本公开中,其他各实施例中的详细描述,此处不再具体赘述。
步骤302,在第一开关状态为开启状态,且目标传感器的硬件当前为开启状态的情况下,确定第二操作系统中目标传感器对应的第二数据获取状态为开启状态。
需要说明的是,在第一开关状态为开启状态的情况下,说明发送传感器控制指令的第二操作系统在发送传感器控制指令之前,不需要获取目标传感器的数据,但电子设备中的其他操作系统可能会使用目标传感器的数据,比如电子设备中的第一操作系统需要使用目标传感器的数据,则目标传感器的硬件当前为开启状态,以为第一操作系统提供数据。
因此,第一操作系统在接收到传感器控制指令之后,需要进一步确定目标传感器的硬件当前的状态。在第一开关状态为开启状态,且第一标识对应的目标传感器的硬件当前为开启状态的情况下,不用再次控制启动目标传感器的硬件,只需将第二操作系统中目标传感器对应的第二数据获取状态切换为开启状态,从而第一操作系统可以在获取到目标传感器的硬件采集的数据之后,将数据发送给第二操作系统,从而第二操作系统可以使用目标传感器的硬件采集的数据。
步骤303,获取目标传感器的硬件采集的数据。
步骤304,获取电子设备中除第二操作系统外的其余操作系统中目标传感器分别对应的第三数据获取状态。
可以理解的是,第一操作系统在获取目标传感器的硬件采集的数据,需要将数据发送给电子设备中每个需要的操作系统。因此,可以需要进一步获取电子设备中除第二操作系统外的其余操作系统中目标传感器分别对应的第三数据获取状态,进而根据第三数据获取状态,确定需要将目标传感器的数据发送给哪些操作系统。
其中,第三数据获取状态可以用于表示电子设备中除第二操作系统外的其余操作系统是否需要获取目标传感器的数据。任一其余操作系统的第三数据获取状态为开启状态,表示需要获取目标传感器的数据。任一其余操作系统的第三数据获取状态为开启状态,表示不需要获取目标传感器的数据。
步骤305,将数据反馈给第二操作系统及其余操作系统中第三数据获取状态为开启状态的目标操作系统。
本公开实施例中,在获取目标传感器的硬件采集的数据之后,可以将数据反馈给第二操作系统及其余操作系统中第三数据获取状态为开启状态的目标操作系统,从而可以使每个需要目标传感器的数据的操作系统可以获取到数据。
本公开实施例中,第一操作系统接收第二操作系统发送的传感器控制指令,其中,传感器控制指令中包含目标传感器的第一标识及第一开关状态,之后在第一开关状态为开启状态,且目标传感器的硬件当前为开启状态的情况下,确定第二操作系统中目标传感器对应的第二数据获取状态为开启状态,获取目标传感器的硬件采集的数据,进而获取电子设备中除第二操作系统外的其余操作系统中目标传感器分别对应的第三数据获取状态,最后将数据反馈给第二操作系统及其余操作系统中第三数据获取状态为开启状态的目标操作系统。由此,在第一开关状态为开启状态,且目标传感器的硬件当前为开启状态的情况下,只需将第二操作系统中目标传感器对应的第二数据获取状态为开启状态,从而第二操作系统即可获取目标传感器的数据,从而可以实现每个异构操作系统对传感器硬件的协同控制,进而可以有效地复用电子设备中传感器提供的硬件能力。
图4为本公开一实施例所提供的一种传感器的控制方法的流程示意图,如图4所示,该传感器的控制方法可以包括以下步骤:
步骤401,在检测到电子设备的用户切换的情况下,确定用户切换的前一时刻电子设备中每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态。
本公开实施例中,由于一个电子设备可以供多个用户使用,但每个用户的使用习惯不一样。因此,可以在用户切换的时候,确定切换的前一时刻电子设备中每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态。
其中,第二开关状态可以用于表示用户切换的前一时刻电子设备中每个传感器的硬件处于开启状态还是关闭状态。
其中,第四数据获取状态可以用于表示用户切换的前一时刻电子设备中每个操作系统对每个传感器的数据的获取状态。
步骤402,将每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态与用户切换前的第一用户的第一标识关联存储。
在获取到每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态之后,可以进一步将每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态与用户切换前的第一用户的第一标识关联存储,从而可以在第一标识对应的第以用户再次使用电子设备时,基于存储的信息,对每个传感器的硬件及每个操作系统下每个传感器的数据获取状态进行更新,以与第一用户的使用习惯保持一致。
步骤403,在用户切换完成后,确定使用电子设备的第二用户。
步骤404,获取与第二用户对应的第二标识关联的每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态。
可选的,可以基于第二用户的标识,去数据库中获取与第二用户关联的、上一次对电子设备的使用结束后,每个传感器的硬件对应的第三开关状态,及每个操作系统中每个传感器对应的第五数据获取状态。
其中,第三开关状态可以用于表示第二用户对应的电子设备中每个传感器的硬件处于开启状态还是关闭状态。
其中,第五数据获取状态可以用于第二用户对应的电子设备中每个操作系统对每个传感器的数据的获取状态。
步骤405,基于每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态,分别对每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态进行更新。
本公开实施例中,在使用电子设备的用户有第一用户切换为第二用户之后,可以利用与第二用户关联的每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态,对每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态进行更新。从而使电子设备中每个传感器的开关设置,及每个操作系统下对每个传感器的数据获取需求,与第二用户的使用习惯相匹配。
本公开实施例中,在检测到电子设备的用户切换的情况下,确定用户切换的前一时刻电子设备中每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态,之后将每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态与用户切换前的第一用户的第一标识关联存储,并在用户切换完成后,确定使用电子设备的第二用户,进而获取与第二用户对应的第二标识关联的每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态;最后基于每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态,分别对每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态进行更新。由此,可以在电子设备的用户发生切换之后,根据切换后的第二用户上一次的使用记录,对切换前的第一用户设置的每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态进行更新,从而使其符合第二用户的使用习惯,提高了用户的体验。
为了实现上述实施例,本公开还提出一种传感器的控制装置。
图5为本公开实施例所提供的传感器的控制装置的结构示意图。
如图5所示,该传感器的控制装置500可以包括:第一确定模块510、第二确定模块520、第一发送模块530。
接收装置510,用于第一操作系统接收第二操作系统发送的传感器控制指令,其中,传感器控制指令中包含目标传感器的第一标识及第一开关状态;
第一确定模块520,用于在第一开关状态为开启状态,且第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用第一操作系统中与目标传感器对应的目标硬件抽象层接口的目标方式;
控制模块530,用于基于目标方式,调用目标硬件抽象层接口,以控制目标传感器的硬件启动。
可选的,第一确定模块520,具体用于:
在传感器控制指令为第二操作系统中的第一传感器服务发送的情况下,根据第一映射表,确定第一操作系统中与第一传感器服务对应的目标硬件抽象层接口,其中,第一映射表中包含第二操作系统中的每个传感器服务与第一操作系统中每个传感器对应的硬件抽象层接口间的关联关系;
确定目标方式为直接调用目标硬件抽象层接口。
可选的,第一确定模块520,具体用于:
在传感器控制指令为第二操作系统中的第一传感器服务发送的情况下,根据第二映射表,确定第一操作系统中与第一传感器服务对应的第二传感器服务,其中,第二映射表中包含第二操作系统中的每个传感器服务与第一操作系统中的每个传感器服务间的关联关系;
确定目标方式为通过第二传感器服务调用目标硬件抽象层接口。
可选的,第一确定模块520,具体用于:
在传感器控制指令为第二操作系统中的应用程序通过应用程序接口发送的情况下,根据第三映射表,确定第一操作系统中与应用程序接口对应的第二传感器服务,其中,第三映射表中包含第二操作系统中的每个应用程序接口与第一操作系统中的每个传感器服务间的关联关系;
确定目标方式为通过第二传感器服务调用目标硬件抽象层接口。
可选的,还包括:
获取模块,用于在第一开关状态为关闭状态,且目标传感器的硬件当前为开启状态的情况下,获取电子设备中除第二操作系统外的其余操作系统中目标传感器分别对应的第一数据获取状态;
第二确定模块,用于根据第一开关状态及第一数据获取状态,确定是否关闭目标传感器的硬件。
可选的,第二确定模块,具体用于:
在任一第一数据获取状态为开启状态的情况下,确定不关闭目标传感器的硬件,关闭第二操作系统中目标传感器对应的第二数据获取状态;或者,
在每个第一数据获取状态均为关闭状态的情况下,调用目标传感器对应的目标硬件抽象层接口,以关闭目标传感器的硬件。
可选的,还包括:
第三确定模块,用于在第一开关状态为开启状态,且目标传感器的硬件当前为开启状态的情况下,确定第二操作系统中目标传感器对应的第二数据获取状态为开启状态;
第二获取模块,用于获取目标传感器的硬件采集的数据;
第三获取模块,用于获取电子设备中除第二操作系统外的其余操作系统中目标传感器分别对应的第三数据获取状态;
发送模块,用于将数据反馈给第二操作系统及其余操作系统中第三数据获取状态为开启状态的目标操作系统。
可选的,还包括:
第四确定模块,用于在检测到电子设备的用户切换的情况下,确定用户切换的前一时刻电子设备中每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态;
存储模块,用于将每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态与用户切换前的第一用户的第一标识关联存储;
第五确定模块,用于在用户切换完成后,确定使用电子设备的第二用户;
第四获取模块,用于获取与第二用户对应的第二标识关联的每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态;
更新模块,用于基于每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态,分别对每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态进行更新。
本公开实施例中的上述各模块的功能及具体实现原理,可参照上述各方法实施例,此处不再赘述。
本公开实施例的传感器的控制装置,首先第一操作系统接收第二操作系统发送的传感器控制指令,其中,传感器控制指令中包含目标传感器的第一标识及第一开关状态,在第一开关状态为开启状态,且第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用第一操作系统中与目标传感器对应的目标硬件抽象层接口的目标方式;基于目标方式,调用目标硬件抽象层接口,以控制目标传感器的硬件启动。由此,在异构操作系统架构下,不仅可以实现每个操作系统对电子设备中的传感器进行控制,而且由第一操作系统对每个操作系统发送的传感器控制指令进行协调处理,从而能够有效提升不同操作系统对传感器的协同控制效果,进而可以有效地复用电子设备中传感器提供的硬件能力。
为了实现上述实施例,本公开还提出一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时,实现如本公开前述实施例提出的传感器的控制方法。
为了实现上述实施例,本公开还提出一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,实现如本公开前述实施例提出的传感器的控制方法。
为了实现上述实施例,本公开还提出一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时,实现如本公开前述实施例提出的传感器的控制方法的步骤。
图6示出了适于用来实现本公开实施方式的示例性电子设备的框图。图6显示的电子设备12仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read OnlyMemory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本公开各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本公开所描述的实施例中的功能和/或方法。
电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
本公开的技术方案,第一操作系统接收第二操作系统发送的传感器控制指令,其中,传感器控制指令中包含目标传感器的第一标识及第一开关状态,在第一开关状态为开启状态,且第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用第一操作系统中与目标传感器对应的目标硬件抽象层接口的目标方式;基于目标方式,调用目标硬件抽象层接口,以控制目标传感器的硬件启动。由此,在异构操作系统架构下,不仅可以实现每个操作系统对电子设备中的传感器进行控制,而且由第一操作系统对每个操作系统发送的传感器控制指令进行协调处理,从而能够有效提升对不同操作系统对传感器的协同控制效果,进而可以有效地复用电子设备中传感器提供的硬件能力。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、 “示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本公开的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (16)
1.一种传感器的控制方法,其特征在于,包括:
第一操作系统接收第二操作系统发送的传感器控制指令,其中,所述传感器控制指令中包含目标传感器的第一标识及第一开关状态;
在所述第一开关状态为开启状态,且所述第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式;
基于所述目标方式,调用所述目标硬件抽象层接口,以控制所述目标传感器的硬件启动;
其中,所述方法,还包括:
在所述第一开关状态为开启状态,且所述目标传感器的硬件当前为开启状态的情况下,确定所述第二操作系统中所述目标传感器对应的第二数据获取状态为开启状态;
获取所述目标传感器的硬件采集的数据;
获取电子设备中除所述第二操作系统外的其余操作系统中所述目标传感器分别对应的第三数据获取状态;
将所述数据反馈给所述第二操作系统及所述其余操作系统中所述第三数据获取状态为开启状态的目标操作系统。
2.根据权利要求1所述的方法,其特征在于,所述确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式,包括:
在所述传感器控制指令为所述第二操作系统中的第一传感器服务发送的情况下,根据第一映射表,确定所述第一操作系统中与所述第一传感器服务对应的所述目标硬件抽象层接口,其中,所述第一映射表中包含所述第二操作系统中的每个传感器服务与所述第一操作系统中每个传感器对应的硬件抽象层接口间的关联关系;
确定所述目标方式为直接调用所述目标硬件抽象层接口。
3.根据权利要求1所述的方法,其特征在于,所述确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式,包括:
在所述传感器控制指令为所述第二操作系统中的第一传感器服务发送的情况下,根据第二映射表,确定所述第一操作系统中与所述第一传感器服务对应的第二传感器服务,其中,所述第二映射表中包含所述第二操作系统中的每个传感器服务与所述第一操作系统中的每个传感器服务间的关联关系;
确定所述目标方式为通过所述第二传感器服务调用所述目标硬件抽象层接口。
4.根据权利要求1所述的方法,其特征在于,所述确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式,包括:
在所述传感器控制指令为所述第二操作系统中的应用程序通过应用程序接口发送的情况下,根据第三映射表,确定所述第一操作系统中与所述应用程序接口对应的第二传感器服务,其中,所述第三映射表中包含所述第二操作系统中的每个应用程序接口与所述第一操作系统中的每个传感器服务间的关联关系;
确定所述目标方式为通过所述第二传感器服务调用所述目标硬件抽象层接口。
5.根据权利要求1所述的方法,其特征在于,还包括:
在所述第一开关状态为关闭状态,且所述目标传感器的硬件当前为开启状态的情况下,获取电子设备中除所述第二操作系统外的其余操作系统中所述目标传感器分别对应的第一数据获取状态;
根据所述第一开关状态及所述第一数据获取状态,确定是否关闭所述目标传感器的硬件。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一开关状态及所述第一数据获取状态,确定是否关闭所述目标传感器的硬件,包括:
在任一第一数据获取状态为开启状态的情况下,确定不关闭所述目标传感器的硬件,关闭所述第二操作系统中所述目标传感器对应的第二数据获取状态;或者,
在每个所述第一数据获取状态均为关闭状态的情况下,调用所述目标传感器对应的所述目标硬件抽象层接口,以关闭所述目标传感器的硬件。
7.根据权利要求1-6任一所述的方法,其特征在于,还包括:
在检测到电子设备的用户切换的情况下,确定用户切换的前一时刻所述电子设备中每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态;
将所述每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态与用户切换前的第一用户的第一标识关联存储;
在用户切换完成后,确定使用所述电子设备的第二用户;
获取与所述第二用户对应的第二标识关联的每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态;
基于所述每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态,分别对所述每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态进行更新。
8.一种传感器的控制装置,其特征在于,包括:
接收装置,用于第一操作系统接收第二操作系统发送的传感器控制指令,其中,所述传感器控制指令中包含目标传感器的第一标识及第一开关状态;
第一确定模块,用于在所述第一开关状态为开启状态,且所述第一标识对应的目标传感器的硬件当前为关闭状态的情况下,确定调用所述第一操作系统中与所述目标传感器对应的目标硬件抽象层接口的目标方式;
控制模块,用于基于所述目标方式,调用所述目标硬件抽象层接口,以控制所述目标传感器的硬件启动;
其中,所述装置,还包括:
第三确定模块,用于在所述第一开关状态为开启状态,且所述目标传感器的硬件当前为开启状态的情况下,确定所述第二操作系统中所述目标传感器对应的第二数据获取状态为开启状态;
第二获取模块,用于获取所述目标传感器的硬件采集的数据;
第三获取模块,用于获取电子设备中除所述第二操作系统外的其余操作系统中所述目标传感器分别对应的第三数据获取状态;
发送模块,用于将所述数据反馈给所述第二操作系统及所述其余操作系统中所述第三数据获取状态为开启状态的目标操作系统。
9.根据权利要求8所述的装置,其特征在于,所述第一确定模块,具体用于:
在所述传感器控制指令为所述第二操作系统中的第一传感器服务发送的情况下,根据第一映射表,确定所述第一操作系统中与所述第一传感器服务对应的所述目标硬件抽象层接口,其中,所述第一映射表中包含所述第二操作系统中的每个传感器服务与所述第一操作系统中每个传感器对应的硬件抽象层接口间的关联关系;
确定所述目标方式为直接调用所述目标硬件抽象层接口。
10.根据权利要求8所述的装置,其特征在于,所述第一确定模块,具体用于:
在所述传感器控制指令为所述第二操作系统中的第一传感器服务发送的情况下,根据第二映射表,确定所述第一操作系统中与所述第一传感器服务对应的第二传感器服务,其中,所述第二映射表中包含所述第二操作系统中的每个传感器服务与所述第一操作系统中的每个传感器服务间的关联关系;
确定所述目标方式为通过所述第二传感器服务调用所述目标硬件抽象层接口。
11.根据权利要求8所述的装置,其特征在于,所述第一确定模块,具体用于:
在所述传感器控制指令为所述第二操作系统中的应用程序通过应用程序接口发送的情况下,根据第三映射表,确定所述第一操作系统中与所述应用程序接口对应的第二传感器服务,其中,所述第三映射表中包含所述第二操作系统中的每个应用程序接口与所述第一操作系统中的每个传感器服务间的关联关系;
确定所述目标方式为通过所述第二传感器服务调用所述目标硬件抽象层接口。
12.根据权利要求8所述的装置,其特征在于,还包括:
获取模块,用于在所述第一开关状态为关闭状态,且所述目标传感器的硬件当前为开启状态的情况下,获取电子设备中除所述第二操作系统外的其余操作系统中所述目标传感器分别对应的第一数据获取状态;
第二确定模块,用于根据所述第一开关状态及所述第一数据获取状态,确定是否关闭所述目标传感器的硬件。
13.根据权利要求12所述的装置,其特征在于,所述第二确定模块,具体用于:
在任一第一数据获取状态为开启状态的情况下,确定不关闭所述目标传感器的硬件,关闭所述第二操作系统中所述目标传感器对应的第二数据获取状态;或者,
在每个所述第一数据获取状态均为关闭状态的情况下,调用所述目标传感器对应的所述目标硬件抽象层接口,以关闭所述目标传感器的硬件。
14.根据权利要求8-13任一所述的装置,其特征在于,还包括:
第四确定模块,用于在检测到电子设备的用户切换的情况下,确定用户切换的前一时刻所述电子设备中每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态;
存储模块,用于将所述每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态与用户切换前的第一用户的第一标识关联存储;
第五确定模块,用于在用户切换完成后,确定使用所述电子设备的第二用户;
第四获取模块,用于获取与所述第二用户对应的第二标识关联的每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态;
更新模块,用于基于所述每个传感器的硬件对应的第三开关状态、及每个操作系统中每个传感器对应的第五数据获取状态,分别对所述每个传感器的硬件对应的第二开关状态、及每个操作系统中每个传感器对应的第四数据获取状态进行更新。
15.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-7中任一所述的传感器的控制方法。
16.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-7中任一所述的传感器的控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211577941.2A CN115576679B (zh) | 2022-12-09 | 2022-12-09 | 传感器的控制方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211577941.2A CN115576679B (zh) | 2022-12-09 | 2022-12-09 | 传感器的控制方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115576679A CN115576679A (zh) | 2023-01-06 |
CN115576679B true CN115576679B (zh) | 2023-04-07 |
Family
ID=84590505
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211577941.2A Active CN115576679B (zh) | 2022-12-09 | 2022-12-09 | 传感器的控制方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115576679B (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140366024A1 (en) * | 2013-06-07 | 2014-12-11 | American Megatrends, Inc. | Methods, Devices and Computer Readable Storage Devices for Emulating a Light Sensor in a Guest Operating System from a Host Operating System |
CN104267956B (zh) * | 2014-09-28 | 2016-05-11 | 深圳光启智能光子技术有限公司 | 一种操作系统中控制硬件设备的方法和装置 |
CN111367184B (zh) * | 2018-12-26 | 2023-07-14 | 博西华电器(江苏)有限公司 | 一种家电控制系统、家电及控制方法 |
CN115328586A (zh) * | 2021-05-11 | 2022-11-11 | Oppo广东移动通信有限公司 | 应用程序运行的控制方法、装置、电子设备和存储介质 |
CN115269048A (zh) * | 2022-08-01 | 2022-11-01 | 歌尔科技有限公司 | 应用程序的并发控制方法、电子设备和可读存储介质 |
-
2022
- 2022-12-09 CN CN202211577941.2A patent/CN115576679B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115576679A (zh) | 2023-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107018022B (zh) | 软件升级的处理方法、装置及终端 | |
CN101714091B (zh) | 用于在操作系统初始化期间显示平台图形的方法和系统 | |
JP2001265609A (ja) | 演算処理装置 | |
CN112764872A (zh) | 计算机设备、虚拟化加速设备、远程控制方法及存储介质 | |
CN107278294A (zh) | 输入设备实现方法及其实现装置 | |
CN115576679B (zh) | 传感器的控制方法、装置、电子设备及存储介质 | |
US20120272103A1 (en) | Software operability service | |
CN116360886A (zh) | 电子设备的开机显示方法、装置、设备及存储介质 | |
JP2006350956A (ja) | 情報処理装置及びプログラム | |
CN113687942B (zh) | 检测方法、装置及电子设备 | |
JP2001236237A (ja) | マルチos構成方法 | |
CN114968010A (zh) | 协处理芯片的启动方法、装置、存储介质及电子装置 | |
CN107247642B (zh) | 用于系统开机时确定可执行映像文件的方法及装置 | |
CN111953803A (zh) | Bmc启动方法、设备、系统及存储介质 | |
CN108021396B (zh) | 适用于Windows操作系统的传感器驱动方法和驱动系统 | |
CN115562765B (zh) | 定位组件的控制方法、装置、电子设备及存储介质 | |
CN117978210A (zh) | 近场通信nfc业务的处理方法、装置、电子设备及存储介质 | |
US20080077712A1 (en) | Peripheral device, peripheral-device recognizing method, and computer product | |
CN115657879B (zh) | 基于异构操作系统的输入控制方法、装置、设备及介质 | |
CN115576701B (zh) | 异构系统中硬件资源的控制方法、装置、设备及存储介质 | |
CN111221009B (zh) | 一种定位芯片的切换方法、移动终端及计算机存储介质 | |
CN113127088A (zh) | 页面的加载方法及装置 | |
JPH09114557A (ja) | 情報処理装置と該情報処理装置のパワーマネジメント機能呼び出し方法 | |
CN112015443A (zh) | 电子设备的升级方法、装置、电子设备和存储介质 | |
AU2021290394A1 (en) | Methods, apparatuses, devices and systems for managing game devices |
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 |