WO2023284693A1 - 定位信息的获取方法、装置、电子设备及存储介质 - Google Patents
定位信息的获取方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- WO2023284693A1 WO2023284693A1 PCT/CN2022/105002 CN2022105002W WO2023284693A1 WO 2023284693 A1 WO2023284693 A1 WO 2023284693A1 CN 2022105002 W CN2022105002 W CN 2022105002W WO 2023284693 A1 WO2023284693 A1 WO 2023284693A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- satellite navigation
- positioning information
- cross
- component state
- sharing process
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/54—Interprogram communication
- G06F9/543—User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Definitions
- the present disclosure relates to the field of communication technologies, and in particular, to a method, device, electronic device, storage medium, computer program product, and computer program for acquiring location information.
- Linux the full name of GNU/Linux, is a POSIX (Portable Operating System Interface, Portable Operating System Interface) multi-user, multi-tasking, multi-threading and multi-CPU (Central Processing Unit, central processing unit) operating system.
- POSIX Portable Operating System Interface
- Portable Operating System Interface multi-user, multi-tasking, multi-threading
- multi-CPU Central Processing Unit, central processing unit
- Geoclue service is a modular geographic information service built on the D-Bus (Desktop Bus, used for inter-process communication or process-kernel communication) communication system.
- Geoclue defines a set of geographic information API (Application Programming Interface, Application Programming Interface), and the Linux system can connect to the GPS system based on the API provided by Geoclue to obtain corresponding positioning information.
- the Linux system cannot access the Android system, and cannot obtain GPS information in the Android system.
- Embodiments of the present disclosure provide a positioning information acquisition method, device, electronic equipment, storage medium, computer program product, and computer program to solve problems in related technologies.
- the technical solutions are as follows:
- an embodiment of the present disclosure provides a method for acquiring location information, which is applied to a first operating system, including:
- the driver is used to obtain the satellite navigation positioning information from the satellite navigation module when the geographical information service requests to obtain the satellite navigation positioning information Satellite navigation positioning information;
- the cross-component state sharing process is used to broadcast the obtained satellite navigation positioning information to the bus.
- an embodiment of the present disclosure provides an apparatus for acquiring positioning information, which is applied to a first operating system, including:
- a configuration file obtaining module configured to obtain a configuration file of a cross-component state sharing process, the configuration file including registration information of the cross-component state sharing process;
- a process loading module configured to load the cross-component state sharing process according to the configuration file
- a process registration module configured to register the cross-component state sharing process in the bus of the first operating system according to the registration information, wherein geographic information services are deployed on the bus of the first operating system;
- the driver loading module is used to load the driver of the satellite navigation module of the second operating system in the cross-component state sharing process; the driver is used to obtain satellite navigation positioning information from the geographic information service request.
- the satellite navigation positioning information is obtained in the satellite navigation module; the cross-component state sharing process is used to broadcast the obtained satellite navigation positioning information to the bus.
- an embodiment of the present disclosure provides an electronic device, the electronic device includes: at least one processor, and a memory connected to the at least one processor in communication; An instruction executed by a processor, the instruction is executed by the at least one processor, so that the at least one processor can execute the method for acquiring positioning information in any implementation manner of the present disclosure.
- an embodiment of the present disclosure is a computer-readable storage medium, where computer instructions are stored in the computer-readable storage medium, and when the computer instructions are executed by a processor, the positioning information in any implementation manner of the present disclosure is realized. method of obtaining .
- an embodiment of the present disclosure is a computer program product, including computer program instructions, and the computer program instructions enable a computer to implement the method for obtaining positioning information in any implementation manner of the present disclosure.
- the embodiments of the present disclosure further provide a computer program, which, when the computer program is run on a computer, enables the computer to implement the method for obtaining positioning information in any implementation manner of the present disclosure.
- the first operating system loads the process based on the configuration file of the cross-component state sharing process, and registers the process in the bus of the first operating system based on the registration information in the configuration file to complete the loading of the process .
- the driver of the satellite navigation module of the second operating system is loaded in the process, and the driver can return the positioning information of the satellite navigation module to the process
- the process broadcasts the positioning information to the bus of the first operating system, so that the geographical information service of the first operating system can obtain the positioning information from the bus. Therefore, the technical solution of the present disclosure can achieve the exchange of positioning information between two different operating systems by constructing the geographical information service in one operating system and the driver of the satellite navigation module of another operating system to share the state in the same process. Effect.
- FIG. 1 is a flowchart of a method for obtaining positioning information according to an embodiment of the present disclosure
- FIG. 2 is an application example of the acquisition process of positioning information of the present disclosure
- FIG. 3 is a structural block diagram of a device for obtaining positioning information according to an embodiment of the present disclosure
- FIG. 4 is a structural block diagram of an electronic device according to an embodiment of the present disclosure.
- Fig. 1 shows a flow chart of a method for obtaining positioning information according to an embodiment of the present disclosure. As shown in Figure 1, the method is applied to the first operating system, including the following steps:
- S400 loading the driver of the satellite navigation module of the second operating system in the cross-component state sharing process; the driver is used to obtain the satellite navigation and positioning information from the satellite navigation module when the geographical information service requests to obtain the satellite navigation and positioning information;
- the component state sharing process is used to broadcast the obtained satellite navigation positioning information to the bus.
- the first operating system supports and runs the second operating system through container technology, and the two share the same Linux kernel.
- the specific implementation of the container technology can use LXC, LXD, Docker, etc.
- the first operating system is a Linux system
- the second operating system is an Android system
- the first operating system is an Android system
- the second operating system is a Linux system
- the first and second operating systems are the same, for example, both are Linux systems.
- the Linux system includes GNU/Linux systems, such as Ubuntu, Debian, RedHat, etc. It should be noted that the Linux system is not limited to running on a physical machine, but can also be an operating system hosted on other operating systems, such as WSL2 in the Windows system.
- the Android (Android) system covers the Android OS issued by Google, AOSP and various derivative systems based on AOSP, such as MIUI, EMUI, One UI, etc.
- the operating system based on the Linux kernel can also be an operating system such as Tizen, Hongmeng, Meego, etc.
- the bus BUS is an inter-process communication mechanism IPC in the operating system.
- IPC inter-process communication mechanism
- the specific implementation of the bus includes but is not limited to D-Bus, kdbus, ZeroMQ, etc.
- information transmission between the first and second operating systems may be implemented in various ways, including but not limited to Socket, MQ, shared memory, and so on.
- the communication mechanism of the first operating system adopts the bus communication mechanism, and the application processes of the first operating system can communicate through the bus.
- a process can be constructed, such as a cross-component state sharing process, to load the driver of the satellite navigation module, and the geographic location in the first operating system.
- the information service and the driver of the satellite navigation module in the second operating system are in the same process, and the geographical information service can access the satellite navigation module of another operating system in the same process.
- target events can be defined and subscribed to.
- subscribers can know the changed state of the target event because they have subscribed to the target event, so as to realize the same process status sharing.
- the driver corresponding to the satellite navigation module is loaded into the process, and the process can obtain the satellite navigation positioning information from the satellite navigation module through the interface of the driver, and then broadcast it to the bus at the other end of the process.
- the first operating system can introduce a process manager, and the process manager can scan the specified file path to find the configuration file of the process, and then load the process according to the configuration file.
- the configuration file may include process registration information, for example, process name, registration service name, interface name and other information.
- the process manager can register the process on the bus of the first operating system according to the registration information in the configuration file, so that the bus can provide services for the process, that is, the process establishes a communication connection with the bus of the first operating system.
- a process can publish or broadcast messages, data, etc. to the bus, and can also forward data to an interface on the bus, while other processes or services on the bus can obtain the information sent by the above-mentioned registered process from the bus.
- the operating system can set various services or application processes, etc.
- geographic information services can provide geographic data and computing services for the operating system or other services or application processes in the system, such as map services, spatial data format conversion, etc.
- the geographic information service can access the location provider to obtain geographic data and provide it to the target application.
- a geographic information service may access location information from a GPS system.
- the satellite navigation module can be a chip used to obtain satellite navigation and positioning information in the hardware device, and it needs to be driven by it to communicate with the upper layer.
- the satellite navigation module can obtain positioning information of various types of satellite navigation systems. Satellite navigation systems can include global, regional, and augmented systems, such as GPS in the United States, Glonass in Russia, Galileo in Europe, Beidou in China, and related augmentation systems.
- the driver of the satellite navigation module is an abstract layer structure between the kernel and the upper layer of the operating system.
- the GPS driver in the Android system is Android GPS HAL (Hardware Abstraction Layer, hardware abstraction layer), which is a layer structure abstracted between the Android kernel and the upper layer, providing a unified interface for the upper layer, and the upper layer application does not need to know the lower layer How to implement it shields the underlying implementation details.
- Android GPS HAL Hardware Abstraction Layer, hardware abstraction layer
- the main function of the cross-component state sharing process is to open the driver of the satellite navigation module of the second operating system and obtain the data interface of the driver.
- the process loads the driver of the satellite navigation module, and reads the information of the driver to obtain the function symbol table of the driver.
- the process uses the function symbol table to access the driver with the same process.
- the above method may further include: reading the function symbol table by sharing the process across component states, and registering a callback function according to the interface function driven in the function symbol table and the address of the interface function;
- the service requests to obtain satellite navigation and positioning information
- the satellite navigation and positioning information obtained by the callback function based on the interface function of the driver is received through the cross-component state sharing process.
- the initialization process can use the driver's function conformance table to register a callback function.
- the geographical information service requests to obtain the positioning information of the satellite navigation module
- the information returned by the satellite navigation module can be received through the callback function.
- this process is to register the callback of the interface in the driver that can receive the serial port data returned by the satellite navigation module. After registration, when the interface has data incoming, the data of this interface will be called back to the process.
- the initialization process may also include: setting the transmission format of the data returned by the callback function by sharing the process across component states.
- the data returned by the callback function is transmitted in the form of a serial port, and the serial port parameters such as the baud rate and data bits of the serial port data can be set.
- the geographical information service of the first operating system sends a positioning start request to the cross-component state sharing process through the bus. Then, the process sends the request to the driver, and the driver sends the request to the satellite navigation module of the second operating system.
- the satellite navigation module starts searching for satellites when receiving a request to obtain satellite navigation positioning information.
- the process of forwarding a request can be referred to as follows:
- a geographic information service request is received to obtain satellite navigation positioning information, through the cross-component state sharing process, query the address of the driver interface function of the satellite navigation module from the function symbol table, and start positioning according to the queried address
- the request is sent to the driver of the satellite navigation module, wherein the positioning start request is used to request the satellite navigation module to start acquiring satellite navigation positioning information.
- the satellite navigation module may be triggered to search for satellite navigation positioning information through a request.
- the satellite navigation module may automatically search for satellite navigation positioning information according to its own needs. It is also possible to set the conditions for starting the satellite navigation module to enter the satellite search stage during the process initialization process, for example, setting a specific time point or time period, or such conditions at regular intervals to trigger the satellite navigation module to start acquiring Satellite navigation positioning information.
- the satellite navigation module can generate satellite navigation positioning information during the star search phase, which can be data encapsulated in the NMEA (National Marine Electronics Association, National Marine Electronics Association) standard protocol.
- NMEA National Marine Electronics Association, National Marine Electronics Association
- the data obtained in the star search stage is driven into the callback function of the cross-component state sharing process.
- the process can perform the following operations on the data obtained by the callback:
- the satellite navigation positioning information is extracted from the data encapsulated in the NMEA standard protocol.
- the NMEA standard protocol is to establish a unified standard communication protocol in different GPS navigation devices.
- the satellite navigation module transmits information such as position and speed to the target receiver through the serial port.
- the data encapsulated in the NMEA standard protocol includes many fields, for example, GGA (Global Positioning System Fix Data, GPS positioning information), GSA (GPS DOP and Active Satellites, current satellite information), GSV (GPS Satellites in View, visible satellite information) , RMC (Recommended Minimum Specific GPS/TRANSIT Data, recommended positioning information), VTG (Track Made Good and Ground Speed, ground speed information), GLL (Geographic Position, positioning geographic information) and other fields. Wherein, these fields include status flag bits.
- GGA Global Positioning System Fix Data, GPS positioning information
- GSA GPS DOP and Active Satellites, current satellite information
- GSV GPS Satellites in View, visible satellite information
- RMC Recommended Minimum Specific GPS/TRANSIT Data, recommended positioning information
- VTG Track Made Good and Ground Speed, ground speed information
- GLL Geographic Position, positioning geographic information
- the process performs a preliminary analysis on the data encapsulated in the NMEA standard protocol returned by the callback function, and checks whether the status flag is in a valid state to determine whether
- the NMEA data be further analyzed to obtain valid positioning information. Then, the process returns the obtained valid data to the geographic information service, so as to avoid providing a large amount of invalid positioning information to the geographic information service and improve the transmission efficiency of the process.
- the process can also directly broadcast the data returned by the callback function to the bus without parsing, but the data returned in this way has invalid positioning information, and the geographic information service needs to further analyze the data after receiving the data returned by the bus , to extract valid positioning information.
- the cross-component state sharing process obtains effective satellite navigation and positioning information
- the linked list is broadcast to the bus, wherein the satellite data linked list at least includes satellite number, signal strength, latitude and longitude and timing.
- the geographic information service can obtain the satellite data link list from the bus, and return it to other application processes in the operating system through the bus.
- Fig. 2 shows an application example of the positioning information acquisition process of the present disclosure. As shown in Figure 2, the process of accessing the Android GPS HAL by the Geoclue geographic information service in the Linux system is described below:
- this application example introduces the Provider Manager (process manager).
- the role of Provider Manager is to scan the path specified by the Linux system to find the configuration file of the Provider (cross-component state sharing) process corresponding to this path, and load the Provider process based on the configuration file.
- the configuration file of the Provider process includes information such as the name of the provider process to be connected, the registered service name, and the interface name.
- Provider Manager registers the Provider process in the D-bus message bus of the Linux system according to the service name and interface name in the configuration information after loading the configuration information.
- the dbus-Daemon the background process of D-bus, can establish a connection with the Provider process and provide the service of message forwarding for the Provider process.
- the main function of the Provider process is to connect and access the GPS HAL in the Android system to obtain the data interface driven by GPS. Since the Provider process is a glibc process running under the LINUX system, and the Android GPS driver is a bionic dynamic library under the Android system, the Provider process can load the GPS driver through the linker mechanism, read the information of the elf. file of the GPS driver, and analyze it to obtain The function symbol table of the GPS driver, so that the function symbol table can be used to realize the same process access of the Provider process to the GPS driver.
- the GPS module After the Provider process is opened by the GPS driver and the GPS module is loaded, the GPS module is powered on and initialized. Set back through the GPS driver registration interface in the Android system to receive the serial port data returned by the GPS module, and configure the serial port parameters such as the baud rate and data bits of the serial port data.
- the Geoclue service sends a GPS start command to the Provider process through the D-bus bus.
- the Provider process sends the start GPS command to the Android GPS HAL, the GPS driver submits the GPS command to the GPS module, and the GPS module starts to search for satellites.
- the GPS module will generate NMEA standard data during the satellite search phase, and enter the callback function of the Provider process through the serial port driver.
- the Provider process makes a preliminary analysis of the NMEA data through the callback, and checks whether the status flag is in a valid state to determine whether valid GPS satellite data has been found.
- the Provider process extracts valid GPS satellite data from the NMEA data.
- the Provider process can further construct a satellite data link list based on valid GPS satellite data. This linked list can include data information such as satellite number, signal strength, latitude and longitude, and timing.
- the Provider process broadcasts the constructed satellite data link list to the process corresponding to the Geoclue service through the D-bus bus.
- the Geoclue process After the Geoclue process receives the D-bus broadcast of the Provider process, it returns the satellite data link list to the application process. For example, the timing information is set to the system time through the timed process in the Linux system. In this way, the access and processing of GPS information is finally completed.
- the Linux system establishes a Provider Manager at the back end of the Geoclue service, automatically loads the Provider process through the Provider Manager, and registers the Provider process on the D-bus of the Linux system.
- Load the Android GPS HAL through the Provider process send a request to the Android GPS HAL and receive the GPS information returned by the Android GPS HAL, and then broadcast the GPS information on the D-bus bus, and the Geoclue service can obtain the GPS information from the D-bus bus.
- Fig. 3 shows a structural block diagram of an apparatus for obtaining positioning information according to an embodiment of the present disclosure. As shown in FIG. 3, the device 300 is applied to the first operating system, including:
- the configuration file acquisition module 310 is used to obtain the configuration file of the cross-component state sharing process, and the configuration file includes the registration information of the cross-component state sharing process;
- the process loading module 320 is used to load the cross-component state sharing process according to the configuration file
- the process registration module 330 is configured to register the cross-component state sharing process in the bus of the first operating system according to the registration information, wherein geographic information services are deployed on the bus of the first operating system;
- the driver loading module 340 is used to load the driver of the satellite navigation module of the second operating system in the cross-component state sharing process; the driver is used to obtain satellites from the satellite navigation module when the geographic information service requests to obtain satellite navigation positioning information Navigation and positioning information; the cross-component state sharing process is used to broadcast the obtained satellite navigation and positioning information to the bus.
- the above-mentioned device 300 may also include:
- the callback function registration module 350 is used to read the function symbol table by sharing the process across component states, and register the callback function according to the interface function driven in the function symbol table and the address of the interface function;
- the positioning information acquisition module 360 is configured to receive the satellite navigation positioning information obtained by the callback function based on the interface function of the driver through the cross-component state sharing process when it is detected that the geographical information service requests to obtain the satellite navigation positioning information.
- the above-mentioned device 300 may also include:
- the data format setting module 370 is configured to set the transmission format of the data returned by the callback function through cross-component state sharing process.
- the above-mentioned device 300 may also include:
- the positioning request sending module 380 is used to query the address of the interface function of the driver of the satellite navigation module from the function symbol table through the cross-component state sharing process when receiving the geographical information service request to obtain the satellite navigation positioning information, and according to The queried address sends a positioning start request to the driver of the satellite navigation module, and the positioning start request is used to request the satellite navigation module to start obtaining satellite navigation positioning information.
- the satellite navigation positioning information is data encapsulated in the NMEA standard protocol, and the positioning information acquisition module 360 is specifically used for:
- the satellite navigation positioning information is extracted from the data encapsulated in the NMEA standard protocol.
- the above-mentioned device 300 may also include:
- the linked list construction module 390 is used to construct a satellite data linked list based on the obtained satellite navigation and positioning information through cross-component state sharing process, and broadcast the satellite data linked list to the bus, wherein the satellite data linked list includes at least satellite number, signal strength , latitude and longitude and timing.
- Fig. 4 shows a structural block diagram of an electronic device according to an embodiment of the present disclosure.
- the electronic device includes: a memory 410 and a processor 420 , and instructions that can be executed on the processor 420 are stored in the memory 410 .
- the processor 420 executes the instruction, the method for acquiring positioning information in the foregoing embodiments is implemented.
- the number of memory 410 and processor 420 may be one or more.
- the electronic device is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other suitable computers.
- Electronic devices may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smart phones, wearable devices, and other similar computing devices.
- the components shown herein, their connections and relationships, and their functions, are by way of example only, and are not intended to limit implementations of the disclosure described and/or claimed herein.
- the electronic device may also include a communication interface 430 for communicating with external devices for interactive data transmission.
- the various devices are interconnected using different buses and may be mounted on a common motherboard or otherwise as desired.
- the processor 420 may process instructions executed within the electronic device, including instructions stored in or on the memory to display graphical information of a GUI on an external input/output device such as a display device coupled to an interface.
- multiple processors and/or multiple buses may be used with multiple memories and multiple memories, if desired.
- multiple electronic devices may be connected, with each device providing some of the necessary operations (eg, as a server array, a set of blade servers, or a multi-processor system).
- the bus can be divided into address bus, data bus, control bus and so on. For ease of representation, only one thick line is used in FIG. 4 , but it does not mean that there is only one bus or one type of bus.
- the memory 410, the processor 420, and the communication interface 430 may communicate with each other through an internal interface.
- processor can be a central processing unit (Central Processing Unit, CPU), and can also be other general-purpose processors, digital signal processors (Digital Signal Processing, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), Field Programmable Gate Array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
- a general purpose processor may be a microprocessor or any conventional processor or the like. It should be noted that the processor may be a processor supporting Advanced RISC Machines (ARM) architecture.
- the embodiment of the present disclosure provides a computer-readable storage medium (such as the above-mentioned memory 410 ), which stores computer instructions, and when the program is executed by a processor, the method provided in the embodiment of the present disclosure is implemented.
- a computer-readable storage medium such as the above-mentioned memory 410
- the memory 410 may include a program storage area and a data storage area, wherein the program storage area may store an operating system and an application program required by at least one function; Use the created data etc.
- the memory 410 may include a high-speed random access memory, and may also include a non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices.
- the storage 410 may optionally include storages that are remotely located relative to the processor 420, and these remote storages may be connected to electronic devices for obtaining positioning information through a network. Examples of the aforementioned networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
- An embodiment of the present disclosure also provides a computer program product, the computer program product includes a computer program stored on a non-transitory computer-readable storage medium, the computer program includes program instructions, and when the program instructions are executed by a computer, the The computer executes the method for acquiring positioning information in the foregoing method embodiments.
- An embodiment of the present disclosure also provides a computer program, which, when executed by a computer, causes the computer to execute the method for acquiring positioning information in the foregoing method embodiments.
- first and second are used for descriptive purposes only, and cannot be interpreted as indicating or implying relative importance or implicitly specifying the quantity of indicated technical features.
- the features defined as “first” and “second” may explicitly or implicitly include at least one of these features.
- “plurality” means two or more, unless otherwise specifically defined.
- various parts of the present disclosure may be implemented in hardware, software, firmware or a combination thereof.
- various steps or methods may be implemented by software or firmware stored in memory and executed by a suitable instruction execution system. All or part of the steps of the method in the above embodiments can be completed by instructing related hardware through a program.
- the program can be stored in a computer-readable storage medium. When the program is executed, it includes one of the steps of the method embodiment or its combination.
- each functional unit in each embodiment of the present disclosure may be integrated into one processing module, each unit may exist separately physically, or two or more units may be integrated into one module.
- the above-mentioned integrated modules can be implemented in the form of hardware or in the form of software function modules. If the above-mentioned integrated modules are implemented in the form of software function modules and sold or used as independent products, they can also be stored in a computer-readable storage medium.
- the storage medium may be a read-only memory, a magnetic disk or an optical disk, and the like.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
- Computer And Data Communications (AREA)
- Communication Control (AREA)
- Circuit For Audible Band Transducer (AREA)
- Collating Specific Patterns (AREA)
- Stereophonic System (AREA)
- Mobile Radio Communication Systems (AREA)
- Navigation (AREA)
Abstract
本公开提出一种定位信息的获取方法、装置、电子设备、存储介质、计算机程序产品及计算机程序。本公开的技术方案应用于第一操作系统,包括:获取跨组件状态共享进程的配置文件,配置文件包括进程的注册信息;根据配置文件,加载进程;根据注册信息,将进程注册到第一操作系统的总线中,其中,第一操作系统的总线上部署有地理信息服务;在进程中加载第二操作系统的卫星导航模块的驱动;驱动用于在地理信息服务请求获取卫星导航定位信息的情况下,从卫星导航模块中获取卫星导航定位信息;进程用于将获取到的卫星导航定位信息广播到总线中。采用本公开的技术方案,可以实现两个不同操作系统之间的卫星导航定位信息的交互。
Description
本公开要求于2021年7月12日提交中国专利局、申请号为202110785532.0发明名称为“基于Linux系统的协议栈数据传输方法、计算机设备和存储介质”的中国专利申请以及于2021年10月20日提交的申请号为202111220792.X、名称为“定位信息的获取方法、装置、电子设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本公开中。
本公开涉及通信技术领域,尤其涉及一种定位消息的获取方法、装置、电子设备、存储介质、计算机程序产品及计算机程序。
Linux,全称GNU/Linux,是一个基于POSIX(Portable Operating System Interface,可移植操作系统接口)的多用户、多任务、支持多线程和多CPU(Central Processing Unit,中央处理器)的操作系统。
在Linux系统中,一般是通过Geoclue服务来获取GPS(Global Positioning System,全球定位系统)定位信息。Geoclue服务是建立在D-Bus(Desktop Bus,用于进程间的通信或进程与内核的通信)通信系统上的模块化的地理信息服务。Geoclue定义了一套地理信息的API(Application Programming Interface,应用程序编程接口),Linux系统基于Geoclue提供的API可以连接到GPS系统,以获取相应的定位信息。
但是,仅基于Geoclue服务,Linux系统不能访问Android系统,获取不到Android系统中的GPS信息。
发明内容
本公开实施例提供一种定位信息的获取方法、装置、电子设备、存储介质、计算机程序产品及计算机程序,以解决相关技术存在的问题,技术方案如下:
第一方面,本公开实施例提供一种定位信息的获取方法,应用于第一操作系统,包括:
获取跨组件状态共享进程的配置文件,所述配置文件包括所述跨组件状态共享进程的注册信息;
根据所述配置文件,加载所述跨组件状态共享进程;
根据所述注册信息,将所述跨组件状态共享进程注册到第一操作系统的总线中,其中,所述第一操作系统的总线上部署有地理信息服务;以及
在所述跨组件状态共享进程中加载第二操作系统的卫星导航模块的驱动;所述驱动用于在所述地理信息服务请求获取卫星导航定位信息的情况下,从所述卫星导航模块中获取卫星导航定位信息;所述跨组件状态共享进程用于将获取到的卫星导航定位信息广播到所述总线中。
第二方面,本公开实施例提供一种定位信息的获取装置,应用于第一操作系统,包括:
配置文件获取模块,用于获取跨组件状态共享进程的配置文件,所述配置文件包括所述跨组件状态共享进程的注册信息;
进程加载模块,用于根据所述配置文件,加载所述跨组件状态共享进程;
进程注册模块,用于根据所述注册信息,将所述跨组件状态共享进程注册到第一操作系统的总线中,其中,所述第一操作系统的总线上部署有地理信息服务;以及
驱动加载模块,用于在所述跨组件状态共享进程中加载第二操作系统的卫星导航模块的驱动;所述驱动用于在所述地理信息服务请求获取卫星导航定位信息的情况下,从所述卫星导航模块中获取卫星导航定位信息;所述跨组件状态共享进程用于将获取到的卫星导航定位信息广播到所述总线中。
第三方面,本公开实施例提供了一种电子设备,该电子设备包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开任一种实施方式中的定位信息的获取方法。
第四方面,本公开实施例一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机指令,所述计算机指令被处理器执行时实现本公开任一种实施方式中的定位信息的获取方法。
第五方面,本公开实施例一种计算机程序产品,包括计算机程序指令,该计算机程序指令使得计算机实现本公开任一种实施方式中的定位信息的获取方法。
第六方面,本公开实施例还提供了一种计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机实现本公开任一种实施方式中的定位信息的获取方法。
上述技术方案中的优点或有益效果至少包括:
在本公开提供的技术方案中,第一操作系统基于跨组件状态共享进程的配置文件加载此进程,并基于配置文件中的注册信息将进程注册到第一操作系统的总线中,完成进程的加载。在第一操作系统的地理信息服务需要对第二操作系统的卫星导航模块进行访问时,在进程中加载第二操作系统的卫星导航模块的驱动,驱动可以将卫星导航模块的定位信息返回给进程,进程再将定位信息广播到第一操作系统的总线中,这样第一操作系统的地理信息服务可以从总线中获取定位信息。因此,本公开的技术方案通过构建某一个操作系统中的地理信息服务与另一操作系统的卫星导航模块的驱动在同一进程中共享状态,可以达到在两个不同操作系统之间交互定位信息的效果。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本公开进一步的方面、实施方式和特征将会是容易明白的。
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本公开公开的一些实施方式,而不应将其视为是对本公开范围的限制。
图1为根据本公开一实施例的定位信息的获取方法的流程图;
图2为本公开的定位信息的获取过程的一个应用示例;
图3为根据本公开一实施例的定位信息的获取装置的结构框图;
图4为根据本公开一实施例的电子设备的结构框图。
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本公开的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
图1示出了根据本公开一实施例的定位信息的获取方法的流程图。如图1所示,该方法应用于第一操作系统,包括如下步骤:
S100,获取跨组件状态共享进程的配置文件,配置文件包括跨组件状态共享进程的注册信息;
S200,根据配置文件,加载跨组件状态共享进程;
S300,根据配置文件中的注册信息,将跨组件状态共享进程注册到第一操作系统的总线中,其中,第一操作系统的总线上部署有地理信息服务;
S400,在跨组件状态共享进程中加载第二操作系统的卫星导航模块的驱动;驱动用于在地理信息服务请求获取卫星导航定位信息的情况下,从卫星导航模块中获取卫星导航定位信息;跨组件状态共享进程用于将获取到的卫星导航定位信息广播到总线中。
其中,第一操作系统通过容器技术支持和运行第二操作系统,两者共享同样的Linux kernel,容器在技术上的具体实现可以采用LXC、LXD、Docker等。
在一些实施例中,第一操作系统为Linux系统,第二操作系统为Android系统。
在一些实施例中,第一操作系统为Android系统,第二操作系统为Linux系统。
在一些实施例中,第一和第二操作系统是相同的,例如均为Linux系统。
在一些实施例中,Linux系统包括GNU/Linux系统,如Ubuntu、Debian、RedHat等。需要说明的是,Linux系统并不限定是运行在物理机上的,也可以是托管在其它操作系统上的操作系统,例如Windows系统中的WSL2。
在一些实施例中,Android(安卓)系统涵盖Google发行的Android OS以及AOSP和基于AOSP的各种衍生系统,如MIUI、EMUI、One UI等。
在一些实施例中,基于Linux kernel的操作系统还可以是如Tizen、鸿蒙、Meego等操作系统。
在下述实施例中,总线BUS是操作系统中的一种进程间通讯机制IPC,以Linux操作系统为例,总线的具体实现包括但不限于D-Bus、kdbus、ZeroMQ等。
在下述实施例中,可以有多种方式实现第一和第二操作系统之间的信息传输,包括但不限于网络套接字Socket、消息队列MQ、共享内存等。
第一操作系统的通信机制采用总线通信机制,则第一操作系统的各应用进程之间可以通过总线进行通信。基于此,在第一操作系统需要访问第二操作系统的卫星导航模块的情况下,可以构建一个进程,例如跨组件状态共享进程,来加载卫星导航模块的驱动,则第一操作系统中的地理信息服务和第二操作系统中的卫星导航模块的驱动处于同一进程当中,地理信息服务可以在同一进程中访问另一个操作系统的卫星导航模块。
在跨组件状态共享进程中,可以定义目标事件,以及订阅目标事件,则在目标事件的状态发生改变时,订阅者由于已订阅该目标事件可以获知此目标事件改变后的状态,从而实现同进程的状态共享。在本公开实施例中,将卫星导航模块对应的驱动加载在进程中,进程通过驱动的接口可以从卫星导航模块中获取卫星导航定位信息,然后再广播到进程另一端的总线中。
第一操作系统可以引入进程管理器,进程管理器可以扫描指定的文件路径,找到进程的配置文件,然后依据配置文件加载进程。
配置文件中可以包括有进程的注册信息,例如、进程的名称,注册服务名称、接口名称等信息。
进程管理器可以依据配置文件中的注册信息将进程注册在第一操作系统的总线上,这样,总线可以为进程提供服务,即进程与第一操作系统的总线建立通信连接。进程可以将消息、数据等发布或广播到总线上,也可以针对总线上的某个接口进行数据转发,而总线上的其他进程或服务可以从总线上获取上述所注册的进程发送的信息。
操作系统可以设置多种服务或应用进程等。其中,地理信息服务可以为操作系统或系统中的其他服务或应用进程等提供地理数据及计算服务,如地图服务、空间数据格式转换等。地理信息服务可以访问位置提供者以获取地理数据,并提供给目标应用。例如,地理信息服务可以访问GPS系统的位置信息。
卫星导航模块可以是硬件设备中用于获取卫星导航定位信息的芯片,其与上层之间通信,需要通过其驱动。卫星导航模块可以获取多种类型的卫星导航系统的定位信息。卫星导航系统可以包括全球的、区域的和增强的,如美国的GPS、俄罗斯的Glonass、欧洲的Galileo、中国的北斗卫星导航系统,以及相关的增强系统等。
卫星导航模块的驱动是介于操作系统的内核与上层之间抽象出来的一层结构。例如,Android系统中的GPS驱动为Android GPS HAL(Hardware Abstraction Layer,硬件抽象层),其是介于Android内核与上层之间抽象出来的一层结构,对上层提供统一接口,上层应用不必知道下层如何实现,其屏蔽了底层的实现细节。
跨组件状态共享进程的主要作用是打开第二操作系统的卫星导航模块的驱动,获取驱动的数据接口。进程加载卫星导航模块的驱动,读取驱动的信息以获取驱动的函数符号表。进程利用函数符号表对驱动进行同进程的访问。
在一些实施例中,上述方法还可以包括:通过跨组件状态共享进程,读取函数符号表,并根据函数符号表中驱动的接口函数以及接口函数的地址,注册回调函数;在检测到地理信息服务请求获取卫星导航定位信息的情况下,通过跨组件状态享进程,接收回调函数基于驱动的接口函数获取的卫星导航定位信息。
在进程加载驱动之后,对进程进行初始化。初始化的过程可以利用驱动的函数符合表,注册回调函数。在地理信息服务请求获取卫星导航模块的定位信息的情况下,可以通过回调函数接收卫星导航模块返回的信息。其实,这一过程是对驱动中能接收卫星导航模块返回的串口数据的接口进行接口的回调注册。在注册之后,当此接口有数据传入,则将此接口的数据回调至进程当中。
初始化的过程还可以包括:通过跨组件状态共享进程,设置回调函数返回的数据的传输格式。回调函数返回的数据以串口的形式传输,则可以设置此串口数据的波特率、数据位等串口参数。
在用户在第一操作系统中输入指令以开始获取定位信息时,第一操作系统的地理信息服务通过总线向跨组件状态共享进程发送开始定位请求。然后,进程将请求发送给驱动,驱动将请求发送给第二操作系统的卫星导航模块。卫星导航模块在接收到请求时开始搜星,以获取卫星导航定位信息。对于进程来说,转发请求的过程可以参考如下:
在接收到地理信息服务请求获取卫星导航定位信息的情况下,通过跨组件状态共享进程,从函数符号表中查询卫星导航模块的驱动的接口函数的地址,并根据查询到的地址,将开始定位请求发送给卫星导航模块的驱动,其中,开始定位请求用于请求卫星导航模块开始获取卫星导航定位信息。
在本实施例中,可以通过请求来触发卫星导航模块搜索卫星导航定位信息。在其他一些实施例中,可以是卫星导航模块根据自身需求自动搜索卫星导航定位信息。还可以是在进程初始化的过程中,设定启动卫星导航模块进入搜星阶段的条件,例如,设定特定的时间点或时间段,或者每隔一段时间这样的条件来触发卫星导航模块开始获取卫星导航定位信息。
卫星导航模块可以在搜星阶段产生卫星导航定位信息,其可以是以NMEA(National Marine Electronics Association,美国国家海洋电子协会)标准协议封装的数据。搜星阶段得到的数据通过驱动进入跨组件状态共享进程的回调函数中。进程对回调得到的数据可以执行以下操作:
通过跨组件状态共享进程,从回调函数中接收卫星导航模块返回的以NMEA标准协议封装的数据,对接收到的以NMEA标准协议封装的数据中的状态标志位进行检查,在状态标志位为有效状态的情况下,从以NMEA标准协议封装的数据中提取卫星导航定位信息。
NMEA标准协议是为了在不同的GPS导航设备中建立统一的标准通讯协议。卫星导航模块根据此协议的标准规范,将位置、速度等信息通过串口传送给目标接收者。
以NMEA标准协议封装的数据包括诸多字段,例如,GGA(Global Positioning System Fix Data,GPS定位信息)、GSA(GPS DOP and Active Satellites,当前卫星信息)、GSV(GPS Satellites in View,可见卫星信息)、RMC(Recommended Minimum Specific GPS/TRANSIT Data,推荐定位信息)、VTG(Track Made Good and Ground Speed,地面速度信息)、GLL(Geographic Position,定位地理信息)等字段。其中,在这些字段中,包括有状态标志位。进程对回调函数返回的以NMEA标准协议封装的数据进行初步的解析,检查状态标志位是否为有效状态来确定数据中是否包含有有效的卫星导航定位信息。在确定状态标志位为有效状态的情况下,才对NMEA数据进行进一步的解析,以获取有效的定位信息。然后,进程再将获取到的有效数据返回给地理信息服务,这样可以避免将大量无效的定位信息提供给地理信息服务,提高进程的传输效率。
进程也可以直接将回调函数返回的数据未经解析直接广播到总线中,但这样返回的数据存在有无效的定位信息,需要地理信息服务在接收到总线传回来的数据之后对数据进行进一步的解析,以提取有效的定位信息。
在一些实施例中,在跨组件状态共享进程获取到有效的卫星导航定位信息之后,还可以:通过跨组件状态共享进程,基于获取到的卫星导航定位信息,构建卫星数据链表,并将卫星数据链表广播到总线中,其中,卫星数据链表至少包括卫星编号、信号强度、经纬度和授时时间。如此,地理信息服务可以从总线中获取卫星数据链表,并通过总线再返回给操作系统中的其他应用进程。
图2示出了本公开的定位信息的获取过程的一个应用示例。如图2所示,以下将描述Linux系统中的Geoclue地理信息服务访问Android GPS HAL的过程:
在Linux系统的Geoclue服务启动阶段,本应用示例引入Provider Manager(进程管理器)。Provider Manager作用是通过扫描Linux系统指定的路径,找到此路径对应的Provider(跨组件状态共享)进程的配置文件,并基于配置文件加载Provider进程。
Provider进程的配置文件包括有待连接的provider进程的名称、注册服务名称、接口名称等信息。Provider Manager在加载完成配置信息后根据配置信息中的服务名称、接口名称等将Provider进程注册在Linux系统的D-bus消息总线中。这样D-bus的后台进程dbus-Daemon可以与Provider进程建立连接,为Provider进程提供消息转发的服务。
Provider进程的主要作用为了连接和访问Android系统中的GPS HAL,获取GPS驱动的数据接口。由于Provider进程为运行在LINUX系统下的glibc进程,Android GPS驱动为Android系统下的bionic动态库,因此,Provider进程通过linker机制可以加载gps驱动,读取gps驱动的elf.文件的信息,解析得到GPS驱动的函数符号表,从而可以利用函数符号表实现Provider进程对GPS驱动的同进程访问。
Provider进程通过GPS驱动打开并加载GPS模块后,对GPS模块进行上电初始化。通过Android系统中的GPS驱动注册接口回设,以接收GPS模块返回的串口数据,并配置串口数据的波特率、数据位等串口参数。
当用户在Linux系统中请求开始获取定位信息时,Geoclue服务通过D-bus总线向Provider进程发送启动GPS指令。Provider进程将启动GPS指令发送到Android GPS HAL,GPS驱动将GPS指令提交给GPS模块,GPS模块开始进行搜星。
GPS模块在搜星阶段会产生NMEA标准数据,通过串口驱动进入Provider进程的回调函数。Provider进程通过回调对NMEA数据进行初步解析,检查状态标志位是否处于有效状态,以确定是否已搜到有效的GPS卫星数据。
当确定GPS模块搜索到有效的GPS卫星数据,Provider进程从NMEA数据中提取有效的GPS卫星数据。Provider进程还可以基于有效的GPS卫星数据进一步构建卫星数据链表。此链表可以包括卫星编号、信号强度、经纬度、授时时间等数据信息。Provider进程将构建好的卫星数据链表通过D-bus总线广播给Geoclue服务对应的进程。
Geoclue进程接收到Provider进程的D-bus广播后,将卫星数据链表返回给应用进程。例如,将授时信息通过Linux系统中的timed进程设置给系统时间。这样,最终完成GPS信息的访问及处理。
在本应用示例中,Linux系统在Geoclue服务后端建立Provider Manager,通过Provider Manager自动加载Provider进程,并将Provider进程注册在Linux系统的D-bus总线上。通过Provider进程加载Android GPS HAL,向Android GPS HAL发送请求并 接收Android GPS HAL返回的GPS信息,然后将GPS信息广播在D-bus总线上,Geoclue服务可以从D-bus总线上获取GPS信息。
图3示出了根据本公开一实施例的定位信息的获取装置的结构框图。如图3所示,该装置300应用于第一操作系统,包括:
配置文件获取模块310,用于获取跨组件状态共享进程的配置文件,配置文件包括跨组件状态共享进程的注册信息;
进程加载模块320,用于根据配置文件,加载跨组件状态共享进程;
进程注册模块330,用于根据注册信息,将跨组件状态共享进程注册到第一操作系统的总线中,其中,第一操作系统的总线上部署有地理信息服务;
驱动加载模块340,用于在跨组件状态共享进程中加载第二操作系统的卫星导航模块的驱动;驱动用于在地理信息服务请求获取卫星导航定位信息的情况下,从卫星导航模块中获取卫星导航定位信息;跨组件状态共享进程用于将获取到的卫星导航定位信息广播到总线中。
在一些实施例中,上述装置300还可以包括:
回调函数注册模块350,用于通过跨组件状态共享进程,读取函数符号表,并根据函数符号表中驱动的接口函数以及接口函数的地址,注册回调函数;
定位信息获取模块360,用于在检测到地理信息服务请求获取卫星导航定位信息的情况下,通过跨组件状态享进程,接收回调函数基于驱动的接口函数获取的卫星导航定位信息。
在一些实施例中,上述装置300还可以包括:
数据格式设置模块370,用于通过跨组件状态共享进程,设置回调函数返回的数据的传输格式。
在一些实施例中,上述装置300还可以包括:
定位请求发送模块380,用于在接收到地理信息服务请求获取卫星导航定位信息的情况下,通过跨组件状态共享进程,从函数符号表中查询卫星导航模块的驱动的接口函数的地址,并根据查询到的地址,将开始定位请求发送给卫星导航模块的驱动,开始定位请求用于请求卫星导航模块开始获取卫星导航定位信息。
在一些实施例中,卫星导航定位信息是以NMEA标准协议封装的数据,定位信息获取模块360具体用于:
通过跨组件状态共享进程,从回调函数中接收卫星导航模块返回的以NMEA标准协议封装的数据,对接收到的以NMEA标准协议封装的数据中的状态标志位进行检查,在状态标志位为有效状态的情况下,从以NMEA标准协议封装的数据中提取卫星导航定位信息。
在一些实施例中,上述装置300还可以包括:
链表构建模块390,用于通过跨组件状态共享进程,基于获取到的卫星导航定位信息,构建卫星数据链表,并将卫星数据链表广播到总线中,其中,卫星数据链表至少包括卫星编号、信号强度、经纬度和授时时间。
本公开实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
图4示出根据本公开一实施例的电子设备的结构框图。如图4所示,该电子设备包括:存储器410和处理器420,存储器410内存储有可在处理器420上运行的指令。处理器420执行该指令时实现上述实施例中的用于获取定位信息的方法。存储器410和处理器420的数量可以为一个或多个。该电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
该电子设备还可以包括通信接口430,用于与外界设备进行通信,进行数据交互传输。各个设备利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器420可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器410、处理器420及通信接口430集成在一块芯片上,则存储器410、处理器420及通信接口430可以通过内部接口完成相互间的通信。
应理解的是,上述处理器可以是中央处理器(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(Advanced RISC Machines,ARM)架构的处理器。
本公开实施例提供了一种计算机可读存储介质(如上述的存储器410),其存储有计算机指令,该程序被处理器执行时实现本公开实施例中提供的方法。
可选的,存储器410可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据用于获取定位信息的电子设备的使用所创建的数据等。此外,存储器410可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器410可选包括相对于处理器420远程设置的存储器,这些远程存储器可以通过网络连接至用于获取定位信息的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述方法实施例中的定位信息的获取方法。
本公开实施例还提供了一种计算机程序,当该计算机程序被计算机执行时,使该计算机执行前述方法实施例中的定位信息的获取方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本公开的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或多个(两个或两个以上)用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
应理解的是,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
Claims (14)
- 一种定位信息的获取方法,其特征在于,应用于第一操作系统,包括:获取跨组件状态共享进程的配置文件,所述配置文件包括所述跨组件状态共享进程的注册信息;根据所述配置文件,加载所述跨组件状态共享进程;根据所述注册信息,将所述跨组件状态共享进程注册到第一操作系统的总线中,其中,所述第一操作系统的总线上部署有地理信息服务;在所述跨组件状态共享进程中加载第二操作系统的卫星导航模块的驱动;所述驱动用于在所述地理信息服务请求获取卫星导航定位信息的情况下,从所述卫星导航模块中获取卫星导航定位信息;所述跨组件状态共享进程用于将获取到的卫星导航定位信息广播到所述总线中。
- 如权利要求1所述的方法,其特征在于,所述方法还包括:通过所述跨组件状态共享进程,读取函数符号表,并根据所述函数符号表中所述驱动的接口函数以及所述接口函数的地址,注册回调函数;在检测到所述地理信息服务请求获取卫星导航定位信息的情况下,通过所述跨组件状态享进程,接收所述回调函数基于所述驱动的接口函数获取的卫星导航定位信息。
- 如权利要求2所述的方法,其特征在于,所述方法还包括:通过所述跨组件状态共享进程,设置所述回调函数返回的数据的传输格式。
- 如权利要求2或3所述的方法,其特征在于,所述方法还包括:在接收到所述地理信息服务请求获取卫星导航定位信息的情况下,通过所述跨组件状态共享进程,从所述函数符号表中查询所述卫星导航模块的驱动的接口函数的地址,并根据查询到的地址,将开始定位请求发送给所述卫星导航模块的驱动,所述开始定位请求用于请求所述卫星导航模块开始获取卫星导航定位信息。
- 如权利要求2-4中任一项所述的方法,其特征在于,所述卫星导航定位信息是以美国国家海洋电子协会NMEA标准协议封装的数据,所述接收所述回调函数基于所述驱动的接口函数获取的卫星导航定位信息,包括:通过所述跨组件状态共享进程,从所述回调函数中接收所述卫星导航模块返回的以NMEA标准协议封装的数据,对接收到的以NMEA标准协议封装的数据中的状态标志位进行检查,在所述状态标志位为有效状态的情况下,从所述以NMEA标准协议封装的数据中提取卫星导航定位信息。
- 一种定位信息的获取装置,其特征在于,应用于第一操作系统,包括:配置文件获取模块,用于获取跨组件状态共享进程的配置文件,所述配置文件包 括所述跨组件状态共享进程的注册信息;进程加载模块,用于根据所述配置文件,加载所述跨组件状态共享进程;进程注册模块,用于根据所述注册信息,将所述跨组件状态共享进程注册到第一操作系统的总线中,其中,所述第一操作系统的总线上部署有地理信息服务;驱动加载模块,用于在所述跨组件状态共享进程中加载第二操作系统的卫星导航模块的驱动;所述驱动用于在所述地理信息服务请求获取卫星导航定位信息的情况下,从所述卫星导航模块中获取卫星导航定位信息;所述跨组件状态共享进程用于将获取到的卫星导航定位信息广播到所述总线中。
- 如权利要求6所述的装置,其特征在于,所述装置还包括:回调函数注册模块,用于通过所述跨组件状态共享进程,读取函数符号表,并根据所述函数符号表中所述驱动的接口函数以及所述接口函数的地址,注册回调函数;定位信息获取模块,用于在检测到所述地理信息服务请求获取卫星导航定位信息的情况下,通过所述跨组件状态享进程,接收所述回调函数基于所述驱动的接口函数获取的卫星导航定位信息。
- 如权利要求7所述的装置,其特征在于,所述装置还包括:数据格式设置模块,用于通过所述跨组件状态共享进程,设置所述回调函数返回的数据的传输格式。
- 如权利要求7或8所述的装置,其特征在于,所述装置还包括:定位请求发送模块,用于在接收到所述地理信息服务请求获取卫星导航定位信息的情况下,通过所述跨组件状态共享进程,从所述函数符号表中查询所述卫星导航模块的驱动的接口函数的地址,并根据查询到的地址,将开始定位请求发送给所述卫星导航模块的驱动,所述开始定位请求用于请求所述卫星导航模块开始获取卫星导航定位信息。
- 如权利要求6-9中任一项所述的装置,其特征在于,所述装置还包括:链表构建模块,用于通过所述跨组件状态共享进程,基于获取到的卫星导航定位信息,构建卫星数据链表,并将所述卫星数据链表广播到所述总线中,其中,所述卫星数据链表至少包括卫星编号、信号强度、经纬度和授时时间。
- 一种电子设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的方法。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有 计算机指令,所述计算机指令被处理器执行时实现如权利要求1-5中任一项所述的方法。
- 一种计算机程序产品,其特征在于,包括计算机程序指令,所述计算机程序指令使得计算机实现如权利要求1-5中任一项所述的方法。
- 一种计算机程序,其特征在于,当所述计算机程序在计算机上运行时,使得所述计算机实现如权利要求1-5中任一项所述的方法。
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202110785532.0 | 2021-07-12 | ||
| CN202110785532.0A CN113505007A (zh) | 2021-07-12 | 2021-07-12 | 基于Linux系统的协议栈数据传输方法、计算机设备和存储介质 |
| CN202111220792.X | 2021-10-20 | ||
| CN202111220792.XA CN113722128B (zh) | 2021-07-12 | 2021-10-20 | 定位信息的获取方法、装置、电子设备及存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2023284693A1 true WO2023284693A1 (zh) | 2023-01-19 |
Family
ID=78012793
Family Applications (6)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2022/104739 Ceased WO2023284653A1 (zh) | 2021-07-12 | 2022-07-08 | 音频驱动的系统兼容的方法、装置和设备 |
| PCT/CN2022/104869 Ceased WO2023284672A1 (zh) | 2021-07-12 | 2022-07-11 | 定位信息的获取方法、装置、电子设备及存储介质 |
| PCT/CN2022/105002 Ceased WO2023284693A1 (zh) | 2021-07-12 | 2022-07-11 | 定位信息的获取方法、装置、电子设备及存储介质 |
| PCT/CN2022/105172 Ceased WO2023284732A1 (zh) | 2021-07-12 | 2022-07-12 | 基于Linux内核的协议栈数据传输方法及装置 |
| PCT/CN2022/105303 Ceased WO2023284759A1 (zh) | 2021-07-12 | 2022-07-12 | 指纹访问方法、装置、设备及存储介质 |
| PCT/CN2022/105026 Ceased WO2023284699A1 (zh) | 2021-07-12 | 2022-07-12 | 基于Linux系统的协议栈数据传输方法、计算机设备和存储介质 |
Family Applications Before (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2022/104739 Ceased WO2023284653A1 (zh) | 2021-07-12 | 2022-07-08 | 音频驱动的系统兼容的方法、装置和设备 |
| PCT/CN2022/104869 Ceased WO2023284672A1 (zh) | 2021-07-12 | 2022-07-11 | 定位信息的获取方法、装置、电子设备及存储介质 |
Family Applications After (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2022/105172 Ceased WO2023284732A1 (zh) | 2021-07-12 | 2022-07-12 | 基于Linux内核的协议栈数据传输方法及装置 |
| PCT/CN2022/105303 Ceased WO2023284759A1 (zh) | 2021-07-12 | 2022-07-12 | 指纹访问方法、装置、设备及存储介质 |
| PCT/CN2022/105026 Ceased WO2023284699A1 (zh) | 2021-07-12 | 2022-07-12 | 基于Linux系统的协议栈数据传输方法、计算机设备和存储介质 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20240296081A1 (zh) |
| CN (8) | CN113505007A (zh) |
| WO (6) | WO2023284653A1 (zh) |
Families Citing this family (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111625246A (zh) * | 2020-05-15 | 2020-09-04 | 武汉蓝星科技股份有限公司 | 一种Linux-Android终端双系统的桌面管理方法 |
| CN113505007A (zh) * | 2021-07-12 | 2021-10-15 | 北京鲸鲮信息系统技术有限公司 | 基于Linux系统的协议栈数据传输方法、计算机设备和存储介质 |
| CN114153564B (zh) * | 2021-12-07 | 2024-04-26 | 北京字节跳动网络技术有限公司 | 多系统中近场通信单元访问方法及装置、电子设备、存储介质 |
| CN114356804B (zh) * | 2021-12-28 | 2024-05-31 | 北京奕斯伟计算技术股份有限公司 | 通信方法、装置、设备、计算机可读存储介质及程序产品 |
| CN113990354B (zh) * | 2021-12-29 | 2022-06-17 | 北京鲸鲮信息系统技术有限公司 | 基于Linux的音频控制方法、装置、设备和存储介质 |
| CN114242105A (zh) * | 2022-02-24 | 2022-03-25 | 麒麟软件有限公司 | 一种对Android应用实施录音降噪的方法和系统 |
| CN116782370A (zh) * | 2022-03-07 | 2023-09-19 | Oppo广东移动通信有限公司 | 定位方法、装置、可穿戴设备、存储介质及产品 |
| CN115292235A (zh) * | 2022-08-05 | 2022-11-04 | 广州河东科技有限公司 | 一种子系统管理方法、装置、终端设备以及存储介质 |
| CN115373759A (zh) * | 2022-08-22 | 2022-11-22 | 江苏润和软件股份有限公司 | 将音频设备兼容于Openharmony与Android的方法 |
| CN115910122B (zh) * | 2022-10-31 | 2025-07-04 | 深圳市广和通无线股份有限公司 | 录音方法及相关装置 |
| CN115562765B (zh) * | 2022-12-05 | 2023-04-07 | 北京小米移动软件有限公司 | 定位组件的控制方法、装置、电子设备及存储介质 |
| CN117978210B (zh) * | 2022-12-09 | 2024-10-18 | 北京小米移动软件有限公司 | 近场通信nfc业务的处理方法、装置、电子设备及存储介质 |
| CN116737281B (zh) * | 2023-01-12 | 2024-01-09 | 银河航天(北京)通信技术有限公司 | 文件上注的方法、装置及存储介质 |
| CN116561039A (zh) * | 2023-04-28 | 2023-08-08 | 京东方科技集团股份有限公司 | 设备交互方法、系统、设备和可读存储介质 |
| CN116795452B (zh) * | 2023-07-20 | 2024-04-02 | 龙芯中科(北京)信息技术有限公司 | 驱动程序兼容性的确定方法、装置及设备 |
| CN120213003A (zh) * | 2023-12-27 | 2025-06-27 | 华为云计算技术有限公司 | 一种云手机导航系统、操作系统及云手机导航方法 |
| CN118132028A (zh) * | 2024-03-13 | 2024-06-04 | 亿咖通(湖北)技术有限公司 | 一种跨域音频处理方法、装置、电子设备和存储介质 |
| CN118295723A (zh) * | 2024-06-05 | 2024-07-05 | 成都阿加犀智能科技有限公司 | 一种使用Android系统播放Linux音频的方法、装置、设备及介质 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110161620A1 (en) * | 2009-12-29 | 2011-06-30 | Advanced Micro Devices, Inc. | Systems and methods implementing shared page tables for sharing memory resources managed by a main operating system with accelerator devices |
| WO2016004587A1 (zh) * | 2014-07-08 | 2016-01-14 | 北京航空航天大学 | 一种基于多核处理器架构的机器人混合系统应用框架 |
| CN105278940A (zh) * | 2014-07-08 | 2016-01-27 | 北京航空航天大学 | 一种基于多核处理器架构的机器人混合系统应用框架 |
| CN112882987A (zh) * | 2021-03-12 | 2021-06-01 | 北京小米移动软件有限公司 | 多核通信方法、装置、电子设备及存储介质 |
| CN113722128A (zh) * | 2021-07-12 | 2021-11-30 | 北京鲸鲮信息系统技术有限公司 | 定位信息的获取方法、装置、电子设备及存储介质 |
Family Cites Families (44)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5265239A (en) * | 1991-04-08 | 1993-11-23 | Ardolino Anthony A | Method for remotely accessing service programs of a local processing system supporting multiple protocol stacks and multiple device drivers |
| US7734829B2 (en) * | 2004-06-09 | 2010-06-08 | Emc Corporation | Methods, systems, and computer program products for transparently controlling communications between network applications and a plurality of network communications protocol stacks using deferred protocol stack association |
| TW200636631A (en) * | 2005-04-15 | 2006-10-16 | Mitac Int Corp | Satellite navigation device for real-time route planning |
| US7577441B2 (en) * | 2007-06-27 | 2009-08-18 | Motorola, Inc. | Method and device for determining a position of a portable electronic device |
| CN101866326B (zh) * | 2010-05-24 | 2012-10-24 | 北京航空航天大学 | 一种消息传递接口支持总线通信框架 |
| WO2012092706A1 (en) * | 2011-01-04 | 2012-07-12 | Motorola Mobility, Inc. | Hybrid operating system media integration |
| CN102833080A (zh) * | 2011-06-15 | 2012-12-19 | 康佳集团股份有限公司 | 一种应用软件的进程间通信方法和系统 |
| CN102339234B (zh) * | 2011-07-12 | 2013-04-17 | 迈普通信技术股份有限公司 | 一种协议栈运行装置和方法 |
| WO2013026461A1 (en) * | 2011-08-19 | 2013-02-28 | Abb Research Ltd | Method, positioning unit and system for communication in a mine |
| CN102984823A (zh) * | 2012-10-30 | 2013-03-20 | 上海孚恩电子科技有限公司 | 物联网移动终端的多功能管理系统 |
| US8893222B2 (en) * | 2012-11-13 | 2014-11-18 | Auckland Uniservices Ltd. | Security system and method for the android operating system |
| US9378038B2 (en) * | 2013-06-07 | 2016-06-28 | American Megatrends, Inc. | Methods, devices and computer readable storage devices for emulating a gyroscope in a guest operating system from a host operating system |
| US9749280B2 (en) * | 2013-09-20 | 2017-08-29 | Oracle International Corporation | Techniques for reliable messaging for an intermediary in a network communication environment |
| CN103761089B (zh) * | 2014-01-14 | 2017-09-15 | 清华大学 | 基于寄存器传输语言确定动态函数调用关系的方法 |
| CN104267956B (zh) * | 2014-09-28 | 2016-05-11 | 深圳光启智能光子技术有限公司 | 一种操作系统中控制硬件设备的方法和装置 |
| CN105657562A (zh) * | 2014-11-10 | 2016-06-08 | 乐视致新电子科技(天津)有限公司 | 一种实现卡拉ok应用的系统和方法 |
| CN104567821A (zh) * | 2015-01-27 | 2015-04-29 | 合肥华科信息科技有限公司 | 一种基于卫星定位的交通事故现场勘察测绘系统 |
| US10015120B2 (en) * | 2015-03-25 | 2018-07-03 | Oracle International Corporation | Providing message delivery services between requestors and providers |
| US10467421B2 (en) * | 2015-10-23 | 2019-11-05 | Oracle International Corporation | Establishing trust between containers |
| CN105491524B (zh) * | 2015-12-11 | 2019-04-26 | 小米科技有限责任公司 | 一种确定目标便携设备位置的方法和装置 |
| CN105893038A (zh) * | 2016-03-30 | 2016-08-24 | 大连理工大学 | 一种安卓蓝牙协议栈向Mint17系统移植的方法 |
| CN107515790A (zh) * | 2016-06-16 | 2017-12-26 | 成都鼎桥通信技术有限公司 | 电子设备的系统 |
| CN109669782A (zh) * | 2017-10-13 | 2019-04-23 | 阿里巴巴集团控股有限公司 | 硬件抽象层复用方法、装置、操作系统和设备 |
| CN109669723B (zh) * | 2017-10-13 | 2023-06-13 | 斑马智行网络(香港)有限公司 | 硬件访问方法、装置、设备和机器可读介质 |
| WO2019078917A1 (en) * | 2017-10-20 | 2019-04-25 | Galatea Technology LLC | METHOD AND APPARATUS FOR VIRTUAL WRITING ON AN NFC CHIP |
| CN108304247A (zh) * | 2017-12-19 | 2018-07-20 | 华为技术有限公司 | 访问摄像头的方法和装置、服务器、可读存储介质 |
| CN108152839B (zh) * | 2017-12-22 | 2021-11-19 | 西安烽火电子科技有限责任公司 | 基于Android操作系统的北斗数据通信系统及方法 |
| CN109313566B (zh) * | 2017-12-27 | 2022-06-07 | 深圳前海达闼云端智能科技有限公司 | 一种虚拟机的音频播放方法及其装置、移动终端 |
| CN108319513B (zh) * | 2018-01-23 | 2021-04-02 | 北京东土科技股份有限公司 | 一种多分区操作系统中的消息传递方法及装置 |
| CN109063434A (zh) * | 2018-07-24 | 2018-12-21 | 广州朗国电子科技有限公司 | 同步解锁双系统会议白板的方法及系统 |
| US20200218500A1 (en) * | 2019-01-04 | 2020-07-09 | Joseph Thomas Hanley | System and method for audio information instruction |
| CN111427617B (zh) * | 2019-01-09 | 2023-05-30 | 斑马智行网络(香港)有限公司 | 数据处理方法、装置及设备 |
| FR3094514A1 (fr) * | 2019-03-25 | 2020-10-02 | Proton World International N.V. | Système électronique |
| CN110262874B (zh) * | 2019-05-31 | 2023-08-22 | 东信和平科技股份有限公司 | 一种基于java虚拟机的新型物联网多任务操作系统及方法 |
| CN112073762B (zh) * | 2019-06-10 | 2022-05-06 | 聚好看科技股份有限公司 | 基于多系统显示设备的信息获取方法及多系统显示设备 |
| CN112073448B (zh) * | 2019-06-11 | 2022-10-11 | 成都鼎桥通信技术有限公司 | 一种双系统终端的服务隔离方法和装置 |
| CN110515667B (zh) * | 2019-08-26 | 2023-04-11 | 武汉蓝星科技股份有限公司 | 一种基于linux内核的终端双系统显示切换方法及终端双系统 |
| CN112751815B (zh) * | 2019-10-31 | 2021-11-19 | 华为技术有限公司 | 报文处理方法、装置、设备及计算机可读存储介质 |
| CN112749017B (zh) * | 2019-10-31 | 2025-08-29 | 中兴通讯股份有限公司 | 移动通信方法及装置、存储介质、电子装置 |
| CN110944286A (zh) * | 2019-11-28 | 2020-03-31 | 出门问问信息科技有限公司 | 提供定位信息的方法、装置、系统及存储介质 |
| CN111182063B (zh) * | 2019-12-30 | 2022-09-09 | 奇安信科技集团股份有限公司 | 应用于电子设备的数据处理方法、电子设备及介质 |
| CN111930340B (zh) * | 2020-09-21 | 2021-06-01 | 北京技德系统技术有限公司 | 一种基于Linux与Android兼容技术的虚拟音频装置与方法 |
| CN112099923B (zh) * | 2020-11-17 | 2021-02-05 | 江苏北弓智能科技有限公司 | 一种运行于Linux操作系统上的Android虚拟化系统 |
| CN113792280A (zh) * | 2021-09-24 | 2021-12-14 | 北京鲸鲮信息系统技术有限公司 | 指纹访问方法、装置、设备及存储介质 |
-
2021
- 2021-07-12 CN CN202110785532.0A patent/CN113505007A/zh active Pending
- 2021-09-24 CN CN202111124022.5A patent/CN113608898A/zh active Pending
- 2021-09-27 CN CN202111136458.6A patent/CN113626224B/zh active Active
- 2021-10-09 CN CN202111177649.7A patent/CN113806116A/zh active Pending
- 2021-10-14 CN CN202111197400.2A patent/CN113821359B/zh active Active
- 2021-10-20 CN CN202111220792.XA patent/CN113722128B/zh active Active
- 2021-10-20 CN CN202111222084.XA patent/CN113821360B/zh active Active
- 2021-12-02 CN CN202111459128.0A patent/CN114253740A/zh active Pending
-
2022
- 2022-07-08 WO PCT/CN2022/104739 patent/WO2023284653A1/zh not_active Ceased
- 2022-07-11 WO PCT/CN2022/104869 patent/WO2023284672A1/zh not_active Ceased
- 2022-07-11 WO PCT/CN2022/105002 patent/WO2023284693A1/zh not_active Ceased
- 2022-07-12 WO PCT/CN2022/105172 patent/WO2023284732A1/zh not_active Ceased
- 2022-07-12 US US18/573,781 patent/US20240296081A1/en active Pending
- 2022-07-12 WO PCT/CN2022/105303 patent/WO2023284759A1/zh not_active Ceased
- 2022-07-12 WO PCT/CN2022/105026 patent/WO2023284699A1/zh not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110161620A1 (en) * | 2009-12-29 | 2011-06-30 | Advanced Micro Devices, Inc. | Systems and methods implementing shared page tables for sharing memory resources managed by a main operating system with accelerator devices |
| WO2016004587A1 (zh) * | 2014-07-08 | 2016-01-14 | 北京航空航天大学 | 一种基于多核处理器架构的机器人混合系统应用框架 |
| CN105278940A (zh) * | 2014-07-08 | 2016-01-27 | 北京航空航天大学 | 一种基于多核处理器架构的机器人混合系统应用框架 |
| CN112882987A (zh) * | 2021-03-12 | 2021-06-01 | 北京小米移动软件有限公司 | 多核通信方法、装置、电子设备及存储介质 |
| CN113722128A (zh) * | 2021-07-12 | 2021-11-30 | 北京鲸鲮信息系统技术有限公司 | 定位信息的获取方法、装置、电子设备及存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN113821359A (zh) | 2021-12-21 |
| WO2023284699A1 (zh) | 2023-01-19 |
| US20240296081A1 (en) | 2024-09-05 |
| CN113626224B (zh) | 2024-03-19 |
| CN113626224A (zh) | 2021-11-09 |
| CN113722128B (zh) | 2024-08-13 |
| WO2023284653A1 (zh) | 2023-01-19 |
| CN113821360B (zh) | 2024-12-20 |
| CN113722128A (zh) | 2021-11-30 |
| CN113821360A (zh) | 2021-12-21 |
| WO2023284759A1 (zh) | 2023-01-19 |
| WO2023284732A1 (zh) | 2023-01-19 |
| WO2023284672A1 (zh) | 2023-01-19 |
| CN113806116A (zh) | 2021-12-17 |
| CN113821359B (zh) | 2024-04-26 |
| CN113608898A (zh) | 2021-11-05 |
| CN113505007A (zh) | 2021-10-15 |
| CN114253740A (zh) | 2022-03-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2023284693A1 (zh) | 定位信息的获取方法、装置、电子设备及存储介质 | |
| CN104598253B (zh) | 一种在Android内核层实现GNSS/INS组合导航的方法 | |
| WO2017162043A1 (zh) | 用于设备间服务的访问方法、配置方法及装置 | |
| CN116257320B (zh) | 一种基于dpu虚拟化配置管理方法、装置、设备及介质 | |
| US20190317783A1 (en) | Methods, apparatus, and systems for providing access to serial ports of virtual machines in self-deployed virtual applications | |
| CN112073448A (zh) | 一种双系统终端的服务隔离方法和装置 | |
| CN109729121A (zh) | 一种云存储系统及用于云存储系统中实现自定义数据处理的方法 | |
| CN115599669A (zh) | 微服务的调试方法和装置、电子设备和可读存储介质 | |
| CN116991331B (zh) | 日志文件的存储方法及装置、存储介质及电子装置 | |
| US8301690B2 (en) | Correlator system for web services | |
| CN105191358A (zh) | 定位设备间数据共享的方法及装置 | |
| CN111381832A (zh) | 自动化部署控制方法、装置、计算机设备及存储介质 | |
| CN108152839A (zh) | 基于Android操作系统的北斗数据通信系统及方法 | |
| CN112084247A (zh) | 一种应用程序服务扩展的方法和装置 | |
| US20180011741A1 (en) | Interoperability-as-a-service in a cloud environment | |
| BR112016006793B1 (pt) | Método e terminal de posicionamento | |
| US20250379819A1 (en) | Data transmission method based on cloud network, apparatus, electronic device, and storage medium | |
| WO2018121652A1 (zh) | 通过用户设备中的应用连接无线接入点的方法与设备 | |
| US20100274841A1 (en) | Systems and methods for dynamically updating virtual desktops or virtual applications in a standard computing environment | |
| CN112073505B (zh) | 在云服务器上进行卸载的方法、控制装置、存储介质 | |
| US12468645B2 (en) | Methods, systems, and computer readable media for exposing features of an internet of things (IoT) device | |
| US20250307116A1 (en) | Debugging microservices in a containerized application | |
| CN112596987A (zh) | 应用程序可用性的监控方法、装置、电子设备和介质 | |
| CN115357653B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
| CN112558939A (zh) | 软件定义卫星的服务化星载软件构建方法、系统和设备 |
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: 22841329 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 230424) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 22841329 Country of ref document: EP Kind code of ref document: A1 |