Virtualizing sensors
First Claim
1. One or more computer-readable storage media storing computer-executable instructions, which when executed by a computer, cause the computer to perform a sensor virtualization method, the method comprising:
- generating a plurality of topologies in a data structure stored on the one or more computer-readable storage media, the plurality of topologies including different ways to configure and connect hardware sensors, software modules, or both hardware sensors and software modules that are installed on the computer, a respective topology representing a particular configuration and connection of the hardware sensors, the software modules, or both the hardware sensors and the software modules, wherein at least one of the hardware sensors or software modules is shareable among different processes executing on the computer;
receiving a first request from a first process executing on the computer, the first request requesting to configure and connect the hardware sensors, the software modules, or both the hardware sensors and the software modules according to a first topology of the generated plurality of topologies;
granting the first request;
in response to granting the first request, configuring and connecting the hardware sensors, the software modules, or both the hardware sensors and the software modules according to the first topology;
updating the data structure in response to granting the first request to represent which topologies of the plurality of topologies are to remain available to be used by subsequent requests after the first request is granted; and
mapping a first set of virtual memory addresses in an a virtual memory address space of the first process to a first set of physical memory addresses of the computer in response to receiving the first request to use the first topology.
2 Assignments
0 Petitions
Accused Products
Abstract
Technology related to virtualizing sensors is disclosed. In one example of the disclosed technology, a method can be used to allocate resources of a computing system. The method can include enumerating hardware sensors and software modules that are capable of interacting with one another. A topology can be negotiated that is compatible with capabilities of the enumerated hardware sensors and software modules. A first request can be received from a first requestor to configure at least one of the enumerated hardware sensors and software modules. The at least one of the enumerated hardware sensors and software modules can be configured in response to the received first request.
-
Citations
20 Claims
-
1. One or more computer-readable storage media storing computer-executable instructions, which when executed by a computer, cause the computer to perform a sensor virtualization method, the method comprising:
-
generating a plurality of topologies in a data structure stored on the one or more computer-readable storage media, the plurality of topologies including different ways to configure and connect hardware sensors, software modules, or both hardware sensors and software modules that are installed on the computer, a respective topology representing a particular configuration and connection of the hardware sensors, the software modules, or both the hardware sensors and the software modules, wherein at least one of the hardware sensors or software modules is shareable among different processes executing on the computer; receiving a first request from a first process executing on the computer, the first request requesting to configure and connect the hardware sensors, the software modules, or both the hardware sensors and the software modules according to a first topology of the generated plurality of topologies; granting the first request; in response to granting the first request, configuring and connecting the hardware sensors, the software modules, or both the hardware sensors and the software modules according to the first topology; updating the data structure in response to granting the first request to represent which topologies of the plurality of topologies are to remain available to be used by subsequent requests after the first request is granted; and mapping a first set of virtual memory addresses in an a virtual memory address space of the first process to a first set of physical memory addresses of the computer in response to receiving the first request to use the first topology. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
generating a data structure comprising a plurality of topologies, the plurality of topologies including different ways to configure and connect hardware sensors and software modules that are installed on a computer, a respective topology representing a particular configuration and connection of the hardware sensors and the software modules, wherein at least one of the hardware sensors or software modules is shareable among different processes executing on the computer; receiving a first request from a first process executing on the computer, the first request requesting to configure and connect the hardware sensors and the software modules according to a first topology of the generated plurality of topologies; granting the first request; in response to granting the first request, configuring and connecting the hardware sensors and the software modules according to the first topology; and updating the data structure in response to granting the first request to represent which topologies of the plurality of topologies are to remain available to be used by subsequent requests after the first request is granted. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. An apparatus comprising:
-
a plurality of hardware sensors; a processor in communication with the plurality of hardware sensors; and a computer-readable storage media in communication with the processor and the plurality of hardware sensors, the computer-readable storage media storing; a data buffer; a sensor group data structure; and computer-executable instructions, which when executed by the processor, cause the processor to perform a method comprising; storing a plurality of topologies in the sensor group data structure, the plurality of topologies including different ways to configure and connect the plurality of hardware sensors to software modules that are executable by the processor, a respective topology representing a particular configuration and connection of the hardware sensors and the software modules, wherein at least one of the hardware sensors is shareable among different processes executing on the processor; receiving a request, from a process executing on the processor, to configure and connect a particular hardware sensor of the plurality of hardware sensors to a particular software module of the software modules according to a particular topology of the stored plurality of topologies; granting the request and configuring and connecting the particular hardware sensor to the particular software module according to the particular topology; updating the sensor group data structure in response to granting the request to represent which topologies of the plurality of topologies are to remain available to be used by subsequent requests after the request is granted; and mapping a set of virtual memory addresses in a virtual memory address space of the process executing on the processor to a first set of physical memory addresses mapped to the data buffer in response to receiving the request to use the particular topology. - View Dependent Claims (19, 20)
-
Specification