WO2018205105A1 - 虚拟机的传感器实现装置及其方法 - Google Patents

虚拟机的传感器实现装置及其方法 Download PDF

Info

Publication number
WO2018205105A1
WO2018205105A1 PCT/CN2017/083489 CN2017083489W WO2018205105A1 WO 2018205105 A1 WO2018205105 A1 WO 2018205105A1 CN 2017083489 W CN2017083489 W CN 2017083489W WO 2018205105 A1 WO2018205105 A1 WO 2018205105A1
Authority
WO
WIPO (PCT)
Prior art keywords
sensor data
sensor
virtual machine
operating system
hardware
Prior art date
Application number
PCT/CN2017/083489
Other languages
English (en)
French (fr)
Inventor
李岩刚
Original Assignee
深圳前海达闼云端智能科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳前海达闼云端智能科技有限公司 filed Critical 深圳前海达闼云端智能科技有限公司
Priority to PCT/CN2017/083489 priority Critical patent/WO2018205105A1/zh
Priority to CN201780000615.6A priority patent/CN107278293B/zh
Publication of WO2018205105A1 publication Critical patent/WO2018205105A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE

Definitions

  • the present application relates to the field of virtual machine technologies, and in particular to a sensor implementation device and method thereof for a virtual machine.
  • a virtual machine is a computer system that is simulated by software and has a complete hardware system function and runs in a completely isolated environment.
  • multiple different operating systems are based on analog hardware, sharing physical hardware devices such as CPUs, memory, and input and output devices.
  • HOST host operating system
  • GUIEST guest operating system
  • the virtual machine can run as one of the applications within the host operating system, providing an analog hardware device for use by the guest operating system.
  • the "goldfish" virtual hardware platform provided by Google in the prior art can support the virtual Android operating system supported by the QEMU virtual machine.
  • a backend program capable of supporting the operation of the sensor device is typically implemented in the virtual machine in the prior art.
  • the backend program acquires sensor data of the hardware sensors in the main operating system or generated analog sensor data and transmits the sensor data to the guest operating system.
  • the client operating system receives, parses, or communicates with the backend program to implement operations on the simulated sensor device (provided by the virtual machine) in the guest operating system.
  • the embodiment of the present application mainly solves the problem that when the sensor data is sent in the related art, the operating system needs to be frequently switched to cause the system to consume energy.
  • a technical solution adopted by the embodiment of the present application is to provide a sensor implementation device for a virtual machine, including a main operating system and a guest operating system, where the main operating system runs a virtual machine for providing simulated hardware.
  • the guest operating system runs based on the simulated hardware.
  • the main operating system includes: a virtual machine service unit, configured to acquire sensor data of the hardware sensor and send the sensor data;
  • the virtual machine includes: a backend support unit, configured to receive a sensor sent by the virtual machine service unit The data is provided to the guest operating system;
  • the guest operating system includes: a hardware abstraction layer unit for reading sensor data provided by the backend support unit.
  • Another technical solution adopted by the embodiment of the present application is to provide a sensor implementation method using the sensor implementation device as described above.
  • the method includes: acquiring sensor data of a hardware sensor; transmitting the sensor data to the backend support unit; providing the sensor data to the guest operating system by the backend support unit; Sensor data provided by the end support unit.
  • the sensor implementation method and apparatus provided by the embodiments of the present application introduce an additional function module-virtual machine service unit in the main operating system to process and send the sensor data, so that the backend program only serves as a connection channel. It is used to transfer data between the main operating system and the guest operating system, and instantly transmit the received sensor data to the guest operating system to avoid frequent switching of different operating systems.
  • FIG. 1 is a schematic diagram of an application environment of a sensor implementation apparatus according to an embodiment of the present application
  • FIG. 2 is a schematic structural diagram of a sensor implementation apparatus according to an embodiment of the present application.
  • FIG. 3 is a schematic diagram of data interaction of a virtual machine service unit according to an embodiment of the present application.
  • FIG. 4 is a schematic diagram of data interaction of a backend support unit provided by an embodiment of the present application.
  • FIG. 5 is a schematic diagram of data interaction of a hardware abstraction layer unit provided by an embodiment of the present application.
  • FIG. 6 is a flowchart of a method for implementing a sensor provided by an embodiment of the present application.
  • FIG. 7 is a flowchart of a method for periodically transmitting sensor data according to an embodiment of the present application.
  • FIG. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
  • FIG. 1 is an application environment of a sensor implementation apparatus according to an embodiment of the present invention. As shown in FIG. 1 , the application environment includes: a physical hardware device 10 , a main operating system 11 , and a plurality of guest operating systems 12 .
  • the physical hardware device 10 may comprise any suitable device component that constitutes a complete computer system, including the processor 101, the storage medium 102, the input/output device 103, the sensor device 104, and the communication module 105.
  • the processor 101 may be any suitable type of processor having a certain logic operation capability, such as a central processing unit, a graphics processor, or the like. Processor 101 may also include multiple cores for multi-threading or parallel processing.
  • the storage medium 102 may include a memory module such as a ROM, a RAM, a flash memory module, and a mass storage such as an optical disk and a hard disk.
  • Computer programs are stored in the storage medium 102, and when the processor 101 executes the computer programs, various method steps or processes can be implemented.
  • the input/output device 103 can be any suitable type of peripheral device that provides one or more user interaction modes, such as a mouse, keyboard or touch input screen that receives user action instructions, a somatosensory camera for acquiring image information, A microphone for collecting sound information or a display screen for displaying image information to a user or a speaker for outputting audio.
  • the input/output device 103 can choose to use a wired or wireless peripheral connection, such as a USB cable or a Bluetooth connection.
  • Sensor device 104 can be any suitable detection device that is capable of sensing detected information and converting the detected information into an electrical signal or other suitable form of output information.
  • the sensor device can be used for various types of detected information, having corresponding one or more sensing functions, such as information on temperature, light intensity, air pressure, acceleration, rotation angle, magnetic field state, humidity, sound, and the like. Detection.
  • the sensor device 104 can include one or more discrete sensors for detecting different information to meet the requirements of use.
  • the communication module 105 can include some network interface devices that establish connections through a wired or wireless communication network. For example, a network cable interface, a bus interface, a USB interface, a WiFi module, or a Bluetooth communication module.
  • the physical hardware device 10 may also add or reduce one or more devices to meet different practical application requirements, such as adding a database or a server device.
  • the physical hardware device is shared between the main operating system 11 and a number of guest operating systems 12. While the guest operating system 12 is running, the virtual machine emulates the hardware device for its use on the basis of the physical hardware device. The virtual machine runs as one of the applications in the main operating system.
  • the main operating system and the guest operating system may be any suitable type of operating system for receiving user instructions and outputting corresponding processing results to the user according to the output.
  • the main operating system 11 uses the hardware devices of the physical hardware device 10.
  • the guest operating system uses the simulated hardware devices provided by the virtual machine.
  • the virtual machine may provide an analog hardware device for use by a guest operating system based on the physical hardware device or the basis of an analog hardware device provided by other virtual machines.
  • the sensor devices used in any one of the guest operating systems 12 need to be provided by the virtual machine.
  • the process of implementing the analog sensor device on the virtual machine can be accomplished based on the sensor implementation device provided by the embodiments of the present invention to reduce power consumption and improve efficiency of the system.
  • FIG. 2 is a schematic structural diagram of a sensor implementation apparatus according to an embodiment of the present invention.
  • the sensor implementation apparatus includes a physical hardware layer 20, a user operating system 21, a virtual machine 22, and a guest operating system 23.
  • the physical hardware layer includes a hardware device shared by the host operating system 21 and the guest operating system 23, and may include one or more of the foregoing physical hardware devices, such as a central processing unit (CPU), a storage medium, and a display screen (LCD). Or other peripherals such as sensors.
  • CPU central processing unit
  • storage medium such as a hard disk drive (HDD)
  • LCD display screen
  • the main operating system 21 using the physical hardware layer includes a sensor driving unit 212.
  • the sensor driving unit 212 can acquire detection data obtained by hardware sensors in the physical hardware device, such as acceleration changes, azimuth changes, or temperature changes.
  • the sensor driving unit 212 can also be configured to control the sensor to perform an operation corresponding to the instruction according to the instruction, for example, controlling the opening/closing of the sensor or acquiring the attribute or configuration information of the sensor.
  • the main operating system 21 further includes a virtual machine service unit 211.
  • the virtual machine service unit 211 is configured to acquire sensor data of the hardware sensor through the sensor driving unit 212 and transmit the sensor data.
  • the virtual machine service unit 211 may further classify, parse, or other suitable processing the sensor data.
  • the sensor data includes detection data obtained by sensor detection, and may also include some attributes or configuration information related to the sensor itself, such as an output port configuration of the sensor, an error range of the sensor, and the like.
  • the virtual machine service unit 211 may select to acquire one or more of the sensor data, as determined in accordance with control instructions input to the virtual machine service unit 211.
  • the two functional modules of the virtual machine service unit 211 and the sensor driving unit 212 can also be integrated into the same functional module, perform the above two functions or add or subtract one or more according to actual needs.
  • Other functional units can also be integrated into the same functional module, perform the above two functions or add or subtract one or more according to actual needs.
  • the guest operating system 23 includes a hardware abstraction layer unit 231.
  • the hardware abstraction layer The element 231 is configured to read sensor data transmitted by the backend support unit to the guest operating system, thereby implementing control of the guest operating system for its corresponding analog sensor.
  • the corresponding analog sensor service unit 232 and the analog sensor driving unit 233 may be included in the guest operating system to implement the corresponding operation of the analog sensor.
  • the backend support unit 221 is included in the virtual machine 22.
  • the backend support unit 221 is configured to receive sensor data sent by the virtual machine service unit 211 and transmit the data to the hardware abstraction layer unit 231 of the guest operating system 23.
  • the function of the backend support unit 221 is as a connection channel for connecting the main operating system and the guest operating system, and the data stream is transferred in the virtual machine service unit 211 and the hardware abstraction layer unit 231.
  • the backend support unit 221 can receive control instructions from the guest operating system (issued by the hardware abstraction layer unit 231) to cause the analog sensor device provided by the virtual machine to perform corresponding operations.
  • the control instruction may include: querying the sensor list, querying the sensor attribute, enabling the sensor, or disabling the sensor.
  • the virtual machine 22 can perform feedback to the guest operating system after performing corresponding operations on the analog sensor according to the control instruction.
  • the backend support unit 221 can also receive sensor data provided from the virtual machine service unit 211 in the main operating system and forward it to the hardware abstraction layer unit 231 of the guest operating system in real time for use by the client operating system.
  • the virtual machine sensor service unit since the virtual machine sensor service unit is introduced in the main operating system, the sensor data of acquiring the hardware sensor is completed in the main operating system.
  • the backend support unit 221 only needs to serve as a channel for data transmission, and after receiving the sensor data, it is provided to the client operating system, and a series of functional modules (such as hardware abstraction layer units) in the guest operating system complete the reading of the detected data. Operations such as acquisition of sensor properties or configuration information or control of sensor devices (for analog sensors).
  • the sensor implementation device can also include a timer 24.
  • the timer is triggered for a predetermined period of time to provide continuous time period transmission for the entire device Out.
  • the virtual machine service unit 211 can be connected to the timer 24 to periodically transmit the acquired sensor data according to the time period provided by the timer 24.
  • the time or time period information may also be provided by other suitable software, hardware or a combination of software and hardware, and the timer is implemented to enable the virtual machine service unit 211 to periodically send the sensor data.
  • the predetermined time period may be set or adjusted according to actual conditions, for example, a period of 1 s or longer/shorter, depending on the requirements of the guest operating system, and the like.
  • FIG. 3 is a schematic diagram of data interaction of a virtual machine service unit 211 according to an embodiment of the present invention.
  • the virtual machine service unit 211 includes a virtual machine service control subunit 211a and a virtual machine service unit cache 211b.
  • the virtual machine service control sub-unit 211a is configured to: when the timer 24 is not triggered, save the acquired sensor data in the virtual machine service unit cache 211b and when the timer 24 is triggered, After the sensor data is read from the virtual machine service unit cache 211b, it is sent to the backend support unit 221.
  • the virtual machine service unit 211 maintains a cache for storing sensor data.
  • the sensor data is stored in the cache.
  • the data is read from the cache and the cache is cleared for another sensor data to be written and sent at the next transmission time.
  • FIG. 4 is a schematic diagram of data interaction of the backend support unit 221 according to an embodiment of the present invention.
  • the backend support unit 221 is a backend program in the virtual machine 22 to support the operation of the analog sensor device, and the analog sensor device is used by the guest operating system.
  • the backend support unit 221 serves as a data interaction channel between the virtual machine service unit 211 and the hardware abstraction layer unit 231, and implements data exchange between the main operating system and the guest operating system, and transmits data to the data.
  • Corresponding functional module units for example, receive control commands from the guest operating system or receive data from the virtual machine service unit 211 and pass the data directly to the guest operating system.
  • FIG. 5 is a schematic diagram of data interaction of the hardware abstraction layer unit 231 according to an embodiment of the present invention.
  • Hardware Abstract Level refers to the interface layer between the operating system kernel and hardware devices, which abstracts the hardware and hides the hardware interface system to provide a virtual hardware platform for users to use.
  • the hardware abstraction layer unit 231 in this embodiment establishes a connection with the backend support unit 221 of the virtual machine.
  • some control commands can be sent to the backend program to complete the control of the analog sensor device used by the guest operating system. For example, enable/disable sensors, query sensor properties, and more.
  • the hardware abstraction layer unit 231 can also read the sensor data transmitted via the backend support unit 221 and provide the sensor data for use by the sensor service program in the guest operating system kernel.
  • the sensor data acquired by the hardware abstraction layer unit 231 may not be temporarily uploaded to the upper layer analog sensor service unit.
  • the hardware abstraction layer unit 231 may include a hardware abstraction layer control sub-unit 231a and a hardware abstraction layer cache 231b.
  • the hardware abstraction layer control sub-unit 231a is configured to read the sensor data and transfer the sensor data to an analog sensor service unit.
  • the hardware abstraction layer cache 231b is then used to store sensor data that has not been delivered.
  • the hardware abstraction layer control subunit 231a preferentially reads the sensor data stored in the hardware abstraction layer buffer 231b.
  • a hardware abstraction layer cache is maintained in the hardware abstraction layer unit 231.
  • the hardware abstraction layer unit 231 saves some data that has not been transferred up in the future in the hardware abstraction layer cache. Then, when the analog sensor service unit next requests to call the sensor data, the sensor data that has not been processed is acquired in the hardware abstraction layer cache.
  • FIG. 6 is a flowchart of a method for implementing a sensor according to an embodiment of the present invention.
  • the method may include the following steps:
  • the hardware sensor can be in Figure 1 One or more of the physical hardware devices shown, including but not limited to gravity sensors, acceleration sensors, or illumination sensors, and the like.
  • the sensor data may be the detection data of the sensor for a certain period of time, or may be data related to the essential attributes of the sensor, such as configuration information, a list of sensor devices, and the like.
  • step 200 Send the sensor data to the backend support unit.
  • both step 100 and step 200 are completed in the main operating system. That is, the acquisition of sensor data such as analysis or classification of the sensor is performed in the main operating system.
  • the sensor data is provided to the guest operating system by the backend support unit. After the sensor data is acquired in the main operating system, it is transferred to the guest operating system via the backend support unit supporting the analog sensor.
  • the acquisition operation of the sensor data has been completed in the main operating system. Therefore, the backend support unit does not need to acquire data and parse or classify it in the main operating system. In this way, compared with the existing sensor implementation process, when the data is sent, it is not required to be switched from the main operating system to the guest operating system, and then read by the hardware abstraction layer, but can be directly executed by the main operating system. It is sent to the guest operating system through the backend support unit in the virtual machine, thereby reducing the number of times of switching between the guest operating system and the main operating system, and reducing the power consumption of the system.
  • the manner in which the sensor data is transmitted is sent periodically. Therefore, the acquired sensor data can be periodically sent to the backend support unit according to a time period provided by the timer by setting a timer or the like.
  • FIG. 7 is a flowchart of a method for periodically transmitting sensor data according to an embodiment of the present invention. As shown in FIG. 7, the method includes:
  • step 210 Determine whether the timer is triggered. If the step 220 is performed otherwise, if yes, step 230 is performed.
  • step 230 Read the cached sensor data and send to the backend support unit. when However, after reading the sensor data in the cache, the sensor cache needs to be further emptied (step 240) so that another sensor data that needs to be temporarily stored can be written.
  • step 400 after reading the sensor data that is immediately delivered to the guest operating system (step 400), further data is required to be provided or passed to the upper layer sensor service program.
  • the sensor implementation method and the sensor implementation device provided in the above embodiments are all based on the same inventive concept. Therefore, the steps of the specific implementations of the sensor implementation method may be performed by the corresponding function modules, and the specific functions in the function module may also have corresponding method steps in the sensor method, and details are not described herein again.
  • FIG. 8 is a schematic structural diagram of hardware of an electronic device according to an embodiment of the present disclosure. As shown in FIG. 8, the device 80 includes: one or more processors 810 and a memory 820, and one processor 810 is taken as an example in FIG.
  • the processor 810 and the memory 820 may be connected through a bus or other manners, and the bus connection is taken as an example in FIG. 8 .
  • the memory 820 is used as a non-volatile computer readable storage medium, and can be used for storing a non-volatile software program, a non-volatile computer-executable program, and a module, such as a program instruction corresponding to the sensor implementation method in the embodiment of the present application. / Module (for example, virtual machine service unit 211, backend support unit 221, and hardware abstraction layer unit 231 shown in FIG. 2).
  • the processor 810 implements various functional applications and data processing of the device by executing non-volatile software programs, instructions, and modules stored in the memory 820, that is, implementing the sensor implementation method of the above method embodiments.
  • the memory 820 may include a storage program area and an storage data area, wherein the storage program area may store an operating system, an application required for at least one function; the storage data area may store data created according to usage of the sensor-implemented device, and the like. Further, the memory 820 may include a high speed random access memory, and may further include a nonvolatile memory such as at least one magnetic Disk storage device, flash memory device, or other non-volatile solid state storage device. In some embodiments, memory 820 can optionally include memory remotely located relative to processor 810, which can be connected to the sensor-implemented device via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
  • the one or more modules are stored in the memory 820, and when executed by the one or more processors 810, perform sensor implementation methods in any of the method embodiments described above.
  • An embodiment of the present application provides a computer program product, including a computing program stored on a non-transitory computer readable storage medium, the computer program comprising program instructions, when the program instructions are executed by a computer,
  • the computer performs the sensor implementation method in any of the above method embodiments, for example, performing the method steps 100-400 of FIG. 6 described above to implement the functions of the corresponding functional modules in FIG.
  • the device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, ie may be located A place, or it can be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

一种虚拟机的传感器实现装置及其方法,该装置包括:主操作系统(21)以及客户操作系统(23),所述主操作系统(21)运行有用于提供模拟硬件的虚拟机(22),所述客户操作系统(23)基于所述模拟硬件运行。其中所述主操作(21)系统包括:虚拟机服务单元(211),用于获取硬件传感器的传感器数据并发送所述传感器数据;所述虚拟机(22)包括:后端支持单元(221),用于接收所述虚拟机服务单元(211)发送的传感器数据并提供给所述客户操作系统(23);所述客户操作系统(23)包括:硬件抽象层单元(231),用于读取所述后端支持单元(221)提供的传感器数据。

Description

虚拟机的传感器实现装置及其方法 技术领域
本申请涉及虚拟机技术领域,特别是涉及虚拟机的传感器实现装置及其方法。
背景技术
虚拟机是指通过软件模拟的具有完整硬件系统功能的,运行在一个完全隔离环境中的计算机系统。在虚拟机应用环境中,多个不同的操作系统基于模拟硬件,共享物理硬件设备,例如CPU,内存和输入输出设备等。
一般的,可以将物理存在的计算机称为“主机”(HOST),在主机上运行的操作系统可以称为主机操作系统(HOST OS),其它的操作系统则可以被称为客户操作系统(GUEST OS)。
虚拟机可以作为主机操作系统内的其中一个应用程序运行,提供模拟硬件设备供客户操作系统使用。例如现有技术中由Google公司提供的“goldfish”虚拟硬件平台,其可以支持在QEMU虚拟机支持下虚拟安卓操作系统。
为在虚拟机中实现传感器设备,现有技术中通常在虚拟机中实现一个能够支持传感器设备运行的后端程序。后端程序通过获取主操作系统中的硬件传感器的传感器数据或者生成的模拟传感器数据,并且将这些传感器数据发送到客户操作系统中。客户操作系统中则由硬件抽象层程序接收、解析这些传感器数据或者与后端程序通信实现对客户操作系统中的模拟的传感器设备(虚拟机提供)的操作。
申请人在研究现有技术的过程中发现:在现有传感器设备实现过程中,由于在虚拟机的后端程序获取传感器数据后,需要首先对数据进行解析和分类,才能将传感器数据逐条发送到客户操作系统中。因此,每次传感器数据的发送均需要进行一次操作系统的切换操作(即需要从主操作系统切换至客户操作系统)。而频繁的切换操作系统会导致系统能 耗的上升。
发明内容
本申请实施例主要解决相关技术中传感器数据发送时,需要频繁切换操作系统导致系统能耗上升的问题。
为解决上述技术问题,本申请实施例采用的一个技术方案是:提供一种虚拟机的传感器实现装置,包括主操作系统以及客户操作系统,所述主操作系统运行有用于提供模拟硬件的虚拟机,所述客户操作系统基于所述模拟硬件运行。所述主操作系统包括:虚拟机服务单元,用于获取硬件传感器的传感器数据并发送所述传感器数据;所述虚拟机包括:后端支持单元,用于接收所述虚拟机服务单元发送的传感器数据并提供给所述客户操作系统;所述客户操作系统包括:硬件抽象层单元,用于读取所述后端支持单元提供的传感器数据。
为解决上述技术问题,本申请实施例采用的另一个技术方案是:提供一种应用如上所述的传感器实现装置的传感器实现方法。该方法包括:获取硬件传感器的传感器数据;发送所述传感器数据至所述后端支持单元中;通过所述后端支持单元将所述传感器数据提供给所述客户操作系统;读取所述后端支持单元提供的传感器数据。
本申请实施例提供的传感器实现方法及其装置,通过在主操作系统中引入一个额外的功能模块-虚拟机服务单元,用以对传感器数据进行处理和发送,令后端程序仅作为连接通道,用于在主操作系统和客户操作系统之间传输数据,即时将接收的传递传感器数据至客户操作系统中,避免不同操作系统的频繁切换。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本申请实施例提供的传感器实现装置的应用环境示意图;
图2是本申请实施例提供的传感器实现装置的结构示意图;
图3是本申请实施例提供的虚拟机服务单元的数据交互示意图;
图4是本申请实施例提供的后端支持单元的数据交互示意图;
图5是本申请实施例提供的硬件抽象层单元的数据交互示意图;
图6是本申请实施例提供的传感器实现方法的方法流程图;
图7是本申请实施例提供的定时发送传感器数据的方法流程图;
图8是本申请实施例提供的电子设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。
图1为应用本发明实施例提供的传感器实现装置的应用环境。如图1所示,该应用环境中包括:物理硬件设备10、主操作系统11以及若干个客户操作系统12。
所述物理硬件设备10可以包括任何合适的,组成完整计算机系统的设备组件,包括处理器101、存储介质102、输入/输出设备103、传感器设备104以及通信模组105。
其中,处理器101可以是任何合适类型的,具有一定逻辑运算能力的处理器,例如中央处理器、图形处理器等。处理器101还可以包括用于多线程或并行处理的多个核心。
存储介质102可以包括内存模块,例如ROM、RAM、闪存模块,以及大容量存储器,例如光盘和硬盘。存储介质102中存储有计算机程序,当处理器101执行这些计算机程序时,可以实现各种方法步骤或流程。
输入/输出设备103可以是任何合适类型的,提供一种或者多种用户交互方式的外围设备,例如接收用户动作操作指令的鼠标、键盘或者触摸输入屏,用于采集图像信息的体感摄像机、用于采集声音信息的麦克风或者向用户展示图像信息的显示屏或者用于输出音频的扬声器。所述输入/输出设备103可以选择使用有线或者无线的外围设备连接方式,例如USB线缆或者蓝牙连接。
传感器设备104可以是任何合适的,能够感知被检测信息并将被检测信息转换为电信号或者其它合适形式的输出信息的检测装置。所述传感器设备可以用于各种不同类型的被检测信息,具有相应的一种或者多种感知功能,例如对温度,光照强度、气压、加速度、旋转角度、磁场状态、湿度、声音等信息的检测。该传感器设备104可以包括一个或者多个分立的传感器,分别用于检测不同的信息,以满足使用的要求。
通信模组105可以包括某些通过有线或者无线通信网络建立连接的网络接口设备。例如,网线接口、总线接口、USB接口、WiFi模组或者蓝牙通信模组等。
在实际应用过程中,所述物理硬件设备10还可以添加或者减省一个或者多个设备,用以满足不同的实际应用情况需求,例如增加数据库或者服务器设备。
所述主操作系统11以及若干个客户操作系统12之间共享所述物理硬件设备。在客户操作系统12运行时,虚拟机在物理硬件设备的基础上,模拟硬件设备供其使用。而所述虚拟机作为主操作系统中的其中一个应用程序运行。
不同的操作系统之间存在有内存隔离,主操作系统也不能够访问客户操作系统的内存空间。这样的,在存在2个以上的客户操作系统时,当其中一个客户操作系统因为异常重新启动时,主操作系统和其它客户操作系统还可以正常运行,相互隔离。
当然,由于虚拟机是作为主操作系统中的应用程序运行的。因此,在主操作系统因为异常重新启动时,所有的客户操作系统都需要随之重新启动。
所述主操作系统和客户操作系统均可以是任何合适类型的操作系统,用以接收用户指令并据此输出对应的处理结果向用户展示。主操作系统11使用所述物理硬件设备10的硬件设备。客户操作系统则使用由虚拟机提供的模拟硬件设备。所述虚拟机可以基于所述物理硬件设备或者其它虚拟机提供的模拟硬件设备的基础,提供模拟硬件设备供客户操作系统使用。
其中,在该虚拟机系统中,任意一个客户操作系统中12使用的传感器设备均需要通过虚拟机提供。在虚拟机上实现模拟传感器设备的过程可以基于本发明实施例提供的传感器实现装置来完成,以降低系统的能耗和提高效率。
图2为本发明实施例提供的传感器实现装置的结构示意图。如图2所示,所述传感器实现装置包括:物理硬件层20,用户操作系统21,虚拟机22以及客户操作系统23。
所述物理硬件层包括主机操作系统21和客户操作系统23共享的硬件设备,可以包括上述物理硬件设备中的一种或者多种,例如中央处理器(CPU)、存储介质、显示屏(LCD)或者传感器等其它外围设备。
相对应的,使用该物理硬件层的主操作系统21中包括传感器驱动单元212。所述传感器驱动单元212可以获取物理硬件设备中硬件传感器获得的检测数据,例如加速度变化、方位变化或者温度变化等。所述传感器驱动单元212还可以用于根据指令,控制传感器执行与指令对应的操作,例如控制传感器的开启/关闭或者获取传感器的属性或者配置信息。
所述主操作系统21中还包括一虚拟机服务单元211。所述虚拟机服务单元211用于通过传感器驱动单元212获取硬件传感器的传感器数据并发送所述传感器数据。可选地,所述虚拟机服务单元211还可以进一步的对所述传感器数据进行归类、解析或者其它合适的处理。
所述传感器数据包括传感器检测获得的检测数据,也可以包括一些与传感器自身相关的属性或者配置信息,例如传感器的输出端口配置,传感器的误差范围等。在一些实施例中,所述虚拟机服务单元211可以选择获取其中的一种或者多种传感器数据,具体根据输入至所述虚拟机服务单元211的控制指令所确定。
当然,所述虚拟机服务单元211和所述传感器驱动单元212这两个功能模块还可以整合到同一个功能模块中,执行上述的两种功能或者根据实际需要,添加或者减省一个或者多个其它的功能单元。
所述客户操作系统23包括硬件抽象层单元231。所述硬件抽象层单 元231用于读取所述后端支持单元传输至所述客户操作系统的传感器数据,从而实现客户操作系统对于其对应的模拟传感器的控制。
当然,为完整的在客户操作系统中实现模拟传感器,所述客户操作系统中还可以包括相应的模拟传感器服务单元232以及模拟传感器驱动单元233,以实现对模拟传感器相对应的操作。
虚拟机22中包括后端支持单元221。所述后端支持单元221用于接收所述虚拟机服务单元211发送的传感器数据并传输至所述客户操作系统23的硬件抽象层单元231中。
亦即所述后端支持单元221的功能是作为一个连接通道,用于连接主操作系统与客户操作系统,在所述虚拟机服务单元211和硬件抽象层单元231中传递数据流。
例如,所述后端支持单元221既可以接收来自于客户操作系统的控制指令(由硬件抽象层单元231发出),使虚拟机提供的模拟传感器设备执行对应的操作。可选地,所述控制指令可以包括:查询传感器列表、查询传感器属性、使能传感器或者不使能传感器中的一种或者多种。虚拟机22则可以根据该控制指令,对模拟传感器执行相应操作后,反馈至客户操作系统。
所述后端支持单元221还可以接收来自主操作系统中虚拟机服务单元211提供的传感器数据,并将其即时、直接转送至客户操作系统的硬件抽象层单元231,提供给客户操作系统使用。
在上述实施例中公开的传感器实现装置中,由于在主操作系统中引入了虚拟机传感器服务单元,将获取硬件传感器的传感器数据在主操作系统中完成。这样的,后端支持单元221只需要作为数据传输的通道,在接收到传感器数据后,提供给客户操作系统,由客户操作系统中一系列功能模块(如硬件抽象层单元)完成检测数据的读取、传感器属性或者配置信息的获取或者对传感器设备的控制等操作(针对于模拟传感器)。
在另一些实施例中,所述传感器实现装置还可以包括一定时器24。所述定时器以预定的时间周期触发,为整个装置提供持续的时间周期输 出。所述虚拟机服务单元211可以与所述定时器24连接,根据定时器24提供的时间周期,定时的发送已获取的传感器数据。可选地,还可以通过其它合适的软件、硬件或者软硬件结合的方式提供时间或者时间周期信息,实现所述定时器,以使所述虚拟机服务单元211定时发送传感器数据。
所述预定的时间周期可以根据实际情况设置或者调整,例如1s或者更长/更短的周期,取决于客户操作系统的需求等。
以下结合图3-图5提供的实施例,详细说明通过虚拟机服务单元211、后端支持单元221以及硬件抽象层单元231三者之间的数据交互,在虚拟机上实现模拟传感器的具体实现策略。
图3为本发明实施例提供的虚拟机服务单元211的数据交互示意图。如图3所示,所述虚拟机服务单元211包括虚拟机服务控制子单元211a以及虚拟机服务单元缓存211b。
其中,所述虚拟机服务控制子单元211a用于:在所述定时器24未触发时,将获取的传感器数据保存在所述虚拟机服务单元缓存211b中以及在所述定时器24触发时,从所述虚拟机服务单元缓存211b中读取所述传感器数据后,发送至所述后端支持单元221。
亦即虚拟机服务单元211中维护有缓存,用以存储传感器数据。在未达到发送时刻时,传感器数据存储在缓存中。而在发送时刻时,从缓存中读取数据并清空缓存,供另一个传感器数据写入,在下一个发送时刻发送。
图4为本发明实施例提供的后端支持单元221的数据交互的示意图。该后端支持单元221是虚拟机22中用以支持模拟传感器设备运行的后端程序,而该模拟传感器设备供客户操作系统使用。
如图4所示,所述后端支持单元221作为虚拟机服务单元211与硬件抽象层单元231之间的数据交互通道,实现主操作系统与客户操作系统之间的数据交流,将数据传输至对应的功能模块单元中,例如,接收来自客户操作系统的控制命令或者接收来自虚拟机服务单元211的数据,并将这些数据直接传递给客户操作系统。
图5为本发明实施例提供的硬件抽象层单元231的数据交互的示意图。硬件抽象层(Hardware Abstract Level HAL)是指位于操作系统内核和硬件设备之间的接口层,用于将硬件抽象化,隐藏硬件接口系统以提供虚拟硬件平台供用户使用。
在本实施例中的硬件抽象层单元231与虚拟机的后端支持单元221建立连接,一方面可以将一些控制指令发送至后端程序的方式完成客户操作系统对其使用的模拟传感器设备的控制,例如,使能/不使能传感器、查询传感器属性等。另外,硬件抽象层单元231还可以读取经由后端支持单元221传输的传感器数据,并将这些传感器数据提供给客户操作系统内核中的传感器服务程序使用。
在一些情况下,硬件抽象层单元231获取的传感器数据可能暂时并未上传至上层的模拟传感器服务单元中。由此,如图5所示,所述硬件抽象层单元231可以包括硬件抽象层控制子单元231a和硬件抽象层缓存231b。
其中,所述硬件抽象层控制子单元231a用于读取所述传感器数据并且将所述传感器数据传递至模拟传感器服务单元中。所述硬件抽象层缓存231b则用于存储尚未传递的传感器数据。
这样的,在上层的模拟传感器服务单元需要调用传感器数据时,所述硬件抽象层控制子单元231a优先读取存储在所述硬件抽象层缓存231b内的传感器数据。
亦即,硬件抽象层单元231中维护有一个硬件抽象层缓存。硬件抽象层单元231将一些暂时尚未向上传递的数据保存在该硬件抽象层缓存中。然后,当模拟传感器服务单元下一次请求调用传感器数据时,在该硬件抽象层缓存中获取尚未处理的传感器数据。
基于上述实施例提供的传感器实现装置,本发明实施例还进一步提供了一种在虚拟机上的传感器实现方法。图6为本发明实施例提供的传感器实现方法的方法流程图。
如图6所示,该方法可以包括如下步骤:
100、获取硬件传感器的传感器数据。该硬件传感器可以是图1中 所示的物理硬件设备中的一种或者多种传感器,包括但不限于重力传感器、加速度传感器或者光照传感器等。该传感器数据可以是某段时间内传感器的检测数据,也可能是与传感器的本质属性相关的数据,例如配置信息,传感器设备列表等。
200、发送所述传感器数据至所述后端支持单元中。在本实施例中,步骤100和步骤200均在主操作系统中完成。亦即,对于传感器的解析或者分类等传感器数据的获取操作均在主操作系统中完成。
300、通过所述后端支持单元将所述传感器数据提供给所述客户操作系统。在主操作系统中获取传感器数据完毕后,其经由支持模拟传感器的后端支持单元传输至客户操作系统中。
400、读取所述后端支持单元提供的传感器数据。该传感器数据由硬件抽象层单元读取并进一步的传递至上层的传感器服务程序等使用,完成完整的传感器实现过程。
在本发明实施例提供的传感器实现方法中,由于在主操作系统中已经完成传感器数据的获取操作。因此,后端支持单元不需要自行在主操作系统中获取数据并进行解析或者分类处理。这样的,与现有的传感器实现流程相比,在发送数据时,不需要从主操作系统切换至客户操作系统后,再由硬件抽象层读取的方式来完成,而可以由主操作系统直接通过虚拟机中的后端支持单元发送至客户操作系统,进而减少客户操作系统与主操作系统之间的切换次数,降低系统的功耗。
在另一些实施例中,所述传感器数据的发送方式是定时发送的。由此,可以通过设置定时器等方式,根据定时器提供的时间周期,定时的将已获取的传感器数据发送至所述后端支持单元。
图7为本发明实施例提供的定时发送传感器数据的方法流程图。如图7所示,该方法包括:
210:判断定时器是否触发。若否则执行步骤220,若是则执行步骤230。
220:缓存获取的传感器数据。
230:读取所述缓存的传感器数据并发送至所述后端支持单元。当 然,在读取缓存中的传感器数据后,还需要进一步清空传感器缓存(步骤240),以使另一个需要暂存的传感器数据可以写入。
在传感器设备实现方法中,在读取即时传递至所述客户操作系统的传感器数据后(步骤400),还需要进一步的将这些数据提供或传递至上层的传感器服务程序。
当然,与定时发送传感器数据相类似的,在提供或传递至上层的传感器服务程序过程中,也可以维护另一个缓存,将尚未传递至上层的传感器数据存储在缓存中,并在传感器服务程序下一次调用时,优先从缓存内获取传感器数据。
应当说明的是,上述实施例中提供的传感器实现方法和传感器实现装置均是基于相同的发明构思。因此,传感器实现方法中各个具体实施例的步骤均可以由对应的功能模块所执行,功能模块中具体的功能也可以在所述传感器方法中具有对应的方法步骤,在此不再赘述。
图8为本申请实施例提供的电子设备的硬件结构示意图。如图8所示,该设备80包括:一个或多个处理器810以及存储器820,图8中以一个处理器810为例。
其中,处理器810、存储器820可以通过总线或者其他方式连接,图8中以通过总线连接为例。
存储器820作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的传感器实现方法对应的程序指令/模块(例如,图2所示的虚拟机服务单元211、后端支持单元221以及硬件抽象层单元231)。处理器810通过运行存储在存储器820中的非易失性软件程序、指令以及模块,从而执行的传感器实现装置的各种功能应用以及数据处理,即实现上述方法实施例的传感器实现方法。
存储器820可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据传感器实现装置的使用所创建的数据等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁 盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器820可选包括相对于处理器810远程设置的存储器,这些远程存储器可以通过网络连接至传感器实现装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器820中,当被所述一个或者多个处理器810执行时,执行上述任意方法实施例中的传感器实现方法。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本申请实施例提供了一种计算机程序产品,包括存储在非易失性计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时时,使所述计算机执行上述任意方法实施例中的传感器实现方法,例如,执行以上描述的图6中的方法步骤100-400,实现图2中相应功能模块的功能。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非 对其限制;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (16)

  1. 一种虚拟机的传感器实现装置,包括主操作系统以及客户操作系统,所述主操作系统运行有用于提供模拟硬件的虚拟机,所述客户操作系统基于所述模拟硬件运行,其特征在于,
    所述主操作系统包括:虚拟机服务单元,用于获取硬件传感器的传感器数据并发送所述传感器数据;
    所述虚拟机包括:后端支持单元,用于接收所述虚拟机服务单元发送的传感器数据并提供给所述客户操作系统;
    所述客户操作系统包括:硬件抽象层单元,用于读取所述后端支持单元提供的传感器数据。
  2. 根据权利要求1所述的装置,其特征在于,所述虚拟机的传感器实现装置还包括:定时器,所述定时器以预定的时间周期触发;
    所述虚拟机服务单元还用于:根据所述预定的时间周期,定时发送已获取的传感器数据至所述后端支持单元。
  3. 根据权利要求2所述的装置,其特征在于,所述虚拟机服务单元具体包括:虚拟机服务控制子单元和虚拟机服务单元缓存;
    所述虚拟机服务控制子单元,用于在所述定时器未触发时,将获取的传感器数据保存在所述虚拟机服务单元缓存中;
    以及在所述定时器触发时,从所述虚拟机服务单元缓存中读取所述传感器数据后,发送至所述后端支持单元。
  4. 根据权利要求1-3任一所述的装置,其特征在于,所述传感器数据还包括传感器硬件的属性和配置信息。
  5. 根据权利要求1所述的装置,其特征在于,所述传感器设备硬件抽象层单元还用于:向所述虚拟机提供的模拟硬件发送与传感器相关的控制指令;所述后端支持单元还用于:接收所述控制指令。
  6. 根据权利要求5所述的装置,其特征在于,所述控制指令包括:查询传感器列表、查询传感器属性、使能传感器或者不使能传感器。
  7. 根据权利要求1所述的装置,其特征在于,所述硬件抽象层单元具体包括:硬件抽象层控制子单元和硬件抽象层缓存;
    所述硬件抽象层控制子单元,用于读取所述传感器数据并且将所述传感器数据传递至上层;
    所述硬件抽象层缓存,用于存储尚未传递至上层的传感器数据;所述硬件抽象层控制子单元优先读取存储在所述硬件抽象层缓存内的传感器数据。
  8. 一种应用如权利要求1所述的传感器实现装置的传感器实现方法,其特征在于,包括:
    获取硬件传感器的传感器数据;
    发送所述传感器数据至所述后端支持单元中;
    通过所述后端支持单元将所述传感器数据提供给所述客户操作系统;
    读取所述后端支持单元提供的传感器数据。
  9. 根据权利要求8所述的方法,其特征在于,所述方法还包括:
    为定时器设置预定的时间周期;
    根据预定的时间周期,定时发送已获取的传感器数据至所述后端支持单元。
  10. 根据权利要求9所述的方法,其特征在于,所述通过所述后端支持单元即时传递所述传感器数据至所述客户操作系统中,具体包括:
    在所述定时器未触发时,缓存获取的传感器数据;
    在所述定时器触发时,读取所述缓存的传感器数据,并发送至所述后端支持单元。
  11. 根据权利要求8-10任一所述的方法,其特征在于,所述传感器数据还包括传感器硬件的属性和配置信息。
  12. 根据权利要求8所述的方法,其特征在于,所述方法还包括:
    向所述虚拟机提供的模拟硬件发送与传感器相关的控制指令;
    由所述后端支持单元接收所述控制指令。
  13. 根据权利要求12所述的方法,其特征在于,所述控制指令包括:查询传感器列表、查询传感器属性、使能传感器或者不使能传感器。
  14. 根据权利要求8所述的方法,其特征在于,所述读取即时传递至所述客户操作系统的传感器数据,具体包括:
    读取所述传感器数据并且将所述传感器数据传递至上层;
    缓存尚未传递至上层的传感器数据;其中,在读取所述传感器数据时,优先读取缓存的传感器数据。
  15. 一种电子设备,其特征在于,包括:
    至少一个处理器;以及,
    与所述至少一个处理器通信连接的存储器;其中,
    所述存储器存储有可被所述至少一个处理器执行的指令程序,所述指令程序被所述至少一个处理器执行,以使所述至少一个处理器执行如权利要求8至14任一项所述的方法。
  16. 一种计算机程序产品,其特征在于,所述计算机程序产品包括:非易失性计算机可读存储介质以及内嵌于所述非易失性计算机可读存储介质的计算机程序指令;所述计算机程序指令包括用以使处理器执行如权利要求8至14任一项所述的方法的指令。
PCT/CN2017/083489 2017-05-08 2017-05-08 虚拟机的传感器实现装置及其方法 WO2018205105A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2017/083489 WO2018205105A1 (zh) 2017-05-08 2017-05-08 虚拟机的传感器实现装置及其方法
CN201780000615.6A CN107278293B (zh) 2017-05-08 2017-05-08 虚拟机的传感器实现装置及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/083489 WO2018205105A1 (zh) 2017-05-08 2017-05-08 虚拟机的传感器实现装置及其方法

Publications (1)

Publication Number Publication Date
WO2018205105A1 true WO2018205105A1 (zh) 2018-11-15

Family

ID=60076621

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/083489 WO2018205105A1 (zh) 2017-05-08 2017-05-08 虚拟机的传感器实现装置及其方法

Country Status (2)

Country Link
CN (1) CN107278293B (zh)
WO (1) WO2018205105A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020119316A1 (zh) * 2018-12-11 2020-06-18 中兴通讯股份有限公司 终端系统构架、通信系统及通信方法、存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2847550T3 (es) * 2018-02-28 2021-08-03 Kistler Holding Ag Sistema de comunicación para la transmisión de datos entre fuentes de datos y evaluadores de datos
CN110322979B (zh) * 2019-07-25 2024-01-30 美核电气(济南)股份有限公司 基于fpga的核电站数字控制计算机系统核心处理单元
CN112446117B (zh) * 2019-08-13 2024-04-19 浙江深酷机器人有限公司 一种直流电机虚拟机及其实现方法
CN114510523A (zh) * 2022-01-19 2022-05-17 岚图汽车科技有限公司 系统间的数据传输方法、装置、终端设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100306771A1 (en) * 2009-05-31 2010-12-02 Yaniv Kamay Method and apparatus for display device configuration in a virtual machine environment
CN101998629A (zh) * 2009-08-28 2011-03-30 国际商业机器公司 搜索虚拟资源的位置的方法、装置和系统
CN103118115A (zh) * 2013-02-04 2013-05-22 中国科学院信息工程研究所 面向云计算用户的虚拟机管理方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9098698B2 (en) * 2008-09-12 2015-08-04 George Mason Research Foundation, Inc. Methods and apparatus for application isolation
CN101763238B (zh) * 2008-12-25 2012-07-25 北京联想软件有限公司 提高音频播放质量的方法、音频数据采集方法及系统
US9010641B2 (en) * 2010-12-07 2015-04-21 Hand Held Products, Inc. Multiple platform support system and method
JP5881852B2 (ja) * 2012-11-15 2016-03-09 三菱電機株式会社 仮想計算機システム
CN103853597B (zh) * 2014-02-21 2017-04-19 北京神舟航天软件技术有限公司 实现嵌入式虚拟机平台高频率数据采集方法
US9921864B2 (en) * 2015-02-26 2018-03-20 Vmware, Inc. Dynamic host performance tuning of a network stack

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100306771A1 (en) * 2009-05-31 2010-12-02 Yaniv Kamay Method and apparatus for display device configuration in a virtual machine environment
CN101998629A (zh) * 2009-08-28 2011-03-30 国际商业机器公司 搜索虚拟资源的位置的方法、装置和系统
CN103118115A (zh) * 2013-02-04 2013-05-22 中国科学院信息工程研究所 面向云计算用户的虚拟机管理方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020119316A1 (zh) * 2018-12-11 2020-06-18 中兴通讯股份有限公司 终端系统构架、通信系统及通信方法、存储介质

Also Published As

Publication number Publication date
CN107278293B (zh) 2020-11-06
CN107278293A (zh) 2017-10-20

Similar Documents

Publication Publication Date Title
WO2018205105A1 (zh) 虚拟机的传感器实现装置及其方法
US20240126705A1 (en) Emulated endpoint configuration
WO2018205267A1 (zh) 输入设备实现方法及其实现装置
CN102467473B (zh) 一种在用户空间和内核之间传输数据的方法和装置
JP2019532427A5 (zh)
US10922090B1 (en) Methods and systems for executing a software application using a container
US20190139549A1 (en) Systems and methods for identification of response cue at peripheral device
US20160062780A1 (en) Pausing virtual machine based on idle state
WO2019119315A1 (zh) 基于多操作系统的输入处理方法、装置及电子设备
JPWO2013125160A1 (ja) 仮想計算機制御装置、及び仮想計算機制御方法
WO2017166604A1 (zh) 一种音乐控制方法和终端、电子设备及存储介质
CN111108487B (zh) 管理程序直接存储器访问
US20150356219A1 (en) Efficient mechanism in hardware and software co-simulation system
US9553761B2 (en) Dynamic server to server configuration and initialization
CN103279441B (zh) 一种基于国产嵌入式操作系统的usb转cf/sd驱动方法
KR20220151116A (ko) 융합된 커맨드들의 원자적 프로세싱 방법 및 메모리 장치
WO2012140668A3 (en) Usb virtualization
WO2022032990A1 (zh) 一种命令信息传输方法、系统、装置及可读存储介质
KR20170031131A (ko) 가상 스트림 및 처리 에이전트를 이용한 스트림 기반 이벤트 처리 기법
TW201638777A (zh) 用以存取虛擬機器之電腦系統及方法
US8875138B2 (en) Computer system and control method thereof
KR101954668B1 (ko) 이종 멀티코어 프로세서를 이용하는 전자장치에서 전력효율을 개선하기 위한 방법 및 장치
WO2012143949A2 (en) Secure digital host controller virtualization
CN108549573B (zh) 一种内存模型的计算方法、装置及计算机可读存储介质
KR20200083154A (ko) 사운드 기반의 메커니즘을 기반으로 스마트 표시 장치의 디스플레이를 비활성화 방법 및 시스템

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17908877

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 28/04/2020)

122 Ep: pct application non-entry in european phase

Ref document number: 17908877

Country of ref document: EP

Kind code of ref document: A1