CN115391061A - Device and method for operating application program across operating systems - Google Patents

Device and method for operating application program across operating systems Download PDF

Info

Publication number
CN115391061A
CN115391061A CN202211037880.0A CN202211037880A CN115391061A CN 115391061 A CN115391061 A CN 115391061A CN 202211037880 A CN202211037880 A CN 202211037880A CN 115391061 A CN115391061 A CN 115391061A
Authority
CN
China
Prior art keywords
application
operating
operating system
communication interface
display
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.)
Pending
Application number
CN202211037880.0A
Other languages
Chinese (zh)
Inventor
朱佳欢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Semidrive Technology Co Ltd
Original Assignee
Nanjing Semidrive Technology Co Ltd
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 Nanjing Semidrive Technology Co Ltd filed Critical Nanjing Semidrive Technology Co Ltd
Priority to CN202211037880.0A priority Critical patent/CN115391061A/en
Publication of CN115391061A publication Critical patent/CN115391061A/en
Pending legal-status Critical Current

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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • 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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

A method of operating an application across operating systems, the method comprising: the first operating system sends an application starting instruction to the second operating system through the first communication interface; the second operating system creates a virtual display to start a corresponding application, and sends display picture data of the application acquired by the virtual display to the first operating system in real time through a second communication interface; the first operating system synchronously displays the display screen of the application for a user to view and trigger operation, and sends an in-application operating instruction comprising position information of the trigger operation in the display screen of the first operating system to the second operating system through a first communication interface; and responding the actual operation in the application corresponding to the position information by the application in the second operating system. The application also provides a device for operating the application program across the operating systems, which is convenient for operating the application program of the other side between the operating systems, does not influence the use of the operating system of the other side, and has high interactive use efficiency.

Description

Device and method for operating application program across operating systems
Technical Field
The present application relates to the field of application operation technologies, and in particular, to a device and a method for operating an application program across operating systems.
Background
With the continuous development of the integrated circuit theory and the appearance of the System On Chip (System On Chip) technology, designers have raised the design capability and efficiency of the Chip to some extent, which makes the complexity and scale of the Chip increase gradually. In a vehicle-mounted application scene, the development of a vehicle-mounted system is from meeting the driving requirement of main driving to meeting the entertainment requirement of the main driving to meeting the entertainment requirement of passengers, at present, in order to meet the various functional requirements of the vehicle-mounted system, a plurality of processor cores with different architectures are often arranged on a vehicle-mounted system-on-chip, and different systems and screens are configured for different processor cores to meet the functional requirements of different personnel in the vehicle-mounted scene.
However, in the prior art, the most complete functions are configured for the system of the main driving, and the systems of the rear rows are configured with only some simple functions, which results in that when the passengers in the rear rows want to realize the functions such as watching movies on their own screens, the main driving is required to operate the main driving to play the movie and then project the movie on the screens of the passengers. Therefore, the method is not only unsafe and easy to cause safety accidents, but also has low interaction efficiency among systems.
Disclosure of Invention
In order to solve the defects in the prior art, the present application aims to provide a device and a method for operating an application program across operating systems, which are convenient for operating and using an application program of an opposite side between different operating systems.
To achieve the above objects, the present application provides a method for operating an application program across operating systems, comprising,
a first operating system sends an application starting instruction to a second operating system through a first communication interface, wherein the first operating system runs on a first hardware set of a multi-core heterogeneous system on chip, the second operating system runs on a second hardware set of the multi-core heterogeneous system on chip, the first hardware set and the second hardware set belong to different hardware domains, and the first communication interface is a first inter-core communication channel between the hardware domains;
based on a received application starting instruction, a second operating system creates a virtual display to start a corresponding application, and sends display picture data of the application acquired by the virtual display to a first operating system in real time through a second communication interface, wherein the second communication interface is a second inter-core communication channel between the hardware domains, and the bandwidth of the second inter-core communication channel is greater than that of the first inter-core communication channel;
the first operating system synchronously displays a display screen of the application for a user to view and trigger operation, and based on the trigger operation of the user, the first operating system sends an in-application operating instruction comprising position information of the trigger operation in the display screen of the first operating system to the second operating system through the first communication interface;
and responding the actual operation in the application corresponding to the position information by the application in the second operating system based on the position information in the application operating instruction.
The type of the first operating system and the system type of the second operating system are the same or different.
Furthermore, after the first operating system acquires the display image data of the application, the format of the display image data is converted, and then the display image data is synchronously displayed on the first operating system.
Further, the method further comprises: the first operating system acquires application information of each application program in the second operating system through the first communication interface and displays the application information on the first operating system for a user to select the application program to start, wherein the application information comprises an application icon, an application name and application identification information.
Further, the first communication interface is socket communication, and the second communication interface is any one of Mailbox and PCIe.
Further, the protocol data of the socket communication includes 1 byte of data identifier and 8 bytes of data content, the data identifier is used for identifying the response type of the data content, and the response type includes application start, application close and operation in the application.
To achieve the above object, the present application further provides an apparatus for operating an application across operating systems, comprising:
the display control unit is configured on the operating system, is in communication connection with the display control units on other operating systems through a first communication interface to transmit application information and operating instructions, and is used for controlling the display unit, the application starting unit and the image transmission unit to respond to the operating instructions based on the user operating instructions and the operating instructions transmitted by other operating systems;
the application starting unit is used for starting the corresponding application in the operating system based on the operating instruction;
the display unit comprises a virtual display unit and a physical display unit, the virtual display unit is used for capturing display picture data after the application program is started, and the physical display unit is used for displaying application information on an operation system screen so that a user can select to start or display the display picture data after the application program is started, which is received by the image transmission unit, so that the user can view and operate the display picture data;
the image transmission unit is in communication connection with the image transmission units on other operating systems through a second communication interface so as to transmit the display picture data captured by the virtual display unit;
the operating systems respectively run on different hardware sets of the multi-core heterogeneous system on chip, the different hardware sets belong to different hardware domains, the first communication interface is a first inter-core communication channel between the hardware domains, the second communication interface is a second inter-core communication channel between the hardware domains, and the bandwidth of the second inter-core communication channel is greater than that of the first inter-core communication channel.
Further, the operation instruction comprises an application starting instruction, an in-application operation instruction and an application closing instruction.
Further, the application information includes an application icon, an application name, and application identification information.
Further, the first communication interface is socket communication, and the second communication interface is any one of Mailbox and PCIe.
To achieve the above object, the present application provides an electronic device, comprising:
a processor;
a memory including one or more computer program modules;
wherein the one or more computer program modules are stored in the memory and configured to be executed by the processor, the one or more computer program modules comprising means for implementing a cross-operating system operating application program as described above.
To achieve the above objects, the present application provides a computer readable storage medium having stored thereon computer instructions which, when executed, perform the steps of the method of operating an application program across operating systems as described above.
The device and the method for operating the application program across the operating systems are convenient for operating the application program of the other side between the operating systems, do not influence the use of the operating system of the other side, and have high interactive use efficiency.
Additional features and advantages of the application will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the application.
Drawings
The accompanying drawings are included to provide a further understanding of the application and are incorporated in and constitute a part of this specification, illustrate embodiments of the application and together with the description serve to explain the principles of the application and not limit the application. In the drawings:
FIG. 1 is a flowchart illustrating a method for operating an application across operating systems according to the present application;
FIG. 2 is a block diagram of an apparatus for operating an application across operating systems according to the present application;
FIG. 3 is a schematic block diagram of an electronic device of the present application;
fig. 4 is a schematic diagram of a storage medium of the present application.
Detailed Description
Embodiments of the present application will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present application are shown in the drawings, it should be understood that the present application may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for a more thorough and complete understanding of the present application. It should be understood that the drawings and embodiments of the present application are for illustration purposes only and are not intended to limit the scope of the present application.
It should be understood that the various steps recited in the method embodiments of the present application may be performed in a different order and/or in parallel. Moreover, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present application is not limited in this respect.
The term "include" and variations thereof as used herein are open-ended, i.e., "including but not limited to". The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions for other terms will be given in the following description.
It is noted that references to "a", "an", and "the" modifications in this application are intended to be illustrative rather than limiting, and that those skilled in the art will recognize that reference to "one or more" unless the context clearly dictates otherwise. "plurality" is to be understood as two or more.
Hereinafter, embodiments of the present application will be described in detail with reference to the accompanying drawings.
Example 1
One embodiment of the present application provides a method for operating an application program across operating systems, which facilitates the cross-operating system operation of the application program between operating systems.
Fig. 1 is a schematic flowchart of a method for operating an application program across operating systems according to the present application, and the method for operating an application program across operating systems according to the present application will be described in detail with reference to fig. 1:
step S101: a first operating system sends an application starting instruction to a second operating system through a first communication interface, wherein the first operating system runs on a first hardware set of a multi-core heterogeneous system on chip, the second operating system runs on a second hardware set of the multi-core heterogeneous system on chip, the first hardware set and the second hardware set belong to different hardware domains, and the first communication interface is a first inter-core communication channel between the hardware domains;
step S102: based on the received application starting instruction, the second operating system creates a virtual display to start a corresponding application, and sends display picture data of the application acquired by the virtual display to the first operating system in real time through a second communication interface, wherein the second communication interface is a second inter-core communication channel between the hardware domains, and the bandwidth of the second inter-core communication channel is greater than that of the first inter-core communication channel;
step S103: the first operating system synchronously displays a display picture of the application for a user to view and trigger operation, and based on the trigger operation of the user, the first operating system sends an in-application operating instruction comprising position information of the trigger operation in the display picture of the first operating system to the second operating system through the first communication interface;
step S104: and responding the actual operation in the application corresponding to the position information by the application in the second operating system based on the position information in the application operating instruction.
In this embodiment, the type of the first operating system is the same as that of the second operating system, and both are Android operating systems, and in some other embodiments, the types of the operating systems include but are not limited to Android, linux, QNX, and FREERTOS.
In this embodiment, after acquiring display screen data of an application, the first operating system performs format conversion on the display screen data and then synchronously displays the display screen data on the first operating system. It can be understood that, due to different operating systems and different display screens, format conversion of the display screen data is required before the display of the display screen.
In this embodiment, when the first operating system operates the application of the second operating system, the application is started in the background when the second operating system starts the application, and the display screen of the application is not displayed on the screen of the second operating system.
In this embodiment, before step S101, the first operating system first obtains application information of each application program in the second operating system through the first communication interface and displays the application information on the first operating system for the user to select the application program to start, where the application information includes, but is not limited to, an application icon, an application name, and application identification information.
It can be understood that the application information is only for letting the user know which applications are on the second operating system, and further, selecting the applications to issue the application start operation instruction, in this embodiment, the first operating system acquires the reference information through the first communication interface, in other embodiments, the application information of the second operating system may also be pre-stored in the first operating system, and when the applications in the second operating system need to be operated, the first operating system directly reads the pre-stored application information.
In this embodiment, the first communication interface is socket communication and is mainly used for transmitting operation instructions and operation information, the second communication interface is PCIe, the transmission bandwidth of PCIe is large, the transmission speed is high, and synchronization of operation and display to the greatest extent is ensured.
In this embodiment, protocol data of socket communication includes 1-byte data identifier and 8-byte data content, where the data identifier is used to identify a response type of the data content, and the response type includes application start, application close, and in-application operation.
It can be understood that, for the operation instruction whose response type is application start, the data content is application related information of the application to be started, and the application related information is used by the second operating system to start a matched and unique application, in this embodiment, because the first operating system obtains the application icon, the application name, and the application identification information through the second operating system, after the application to be started is selected by the user, the first operating system issues the operation instruction whose application data is the application name corresponding to the application; in other embodiments, the data content may also be location information and application serial number information of the application in the second operating system.
In this embodiment, for the operation instruction whose response type is application shutdown, when the first operating system wants to exit after finishing the operation on the application of the second operating system, the user may issue an application shutdown instruction through the first operating system, based on the instruction, the first operating system stops displaying the acquired display screen data and stops acquiring the display screen data from the second operating system, and at the same time, the second operating system shuts down the application and destroys the virtual display, thereby ending the cross-system operation application.
In this embodiment, for an operation instruction with a response type of an intra-application operation, and a data content of the operation instruction is location information of the trigger operation in a display screen of the first system, in this embodiment, both the first operating system and the second operating system are Android operating systems, when a user starts an application of the second operating system and sees the display screen of the application on the first operating system, and operates the application by touching, the first operating system obtains the location information of the touch operation in the display screen through an actual display window of the first operating system and a report point of onTouch (), and issues the intra-application operation instruction including the location information to the second operating system, and after receiving the operation instruction, the second operating system transmits the operation instruction to the virtual display through an interface of inputevent (), thereby determining an actual operation of the application, and controlling an application response.
Example 2
One embodiment of the present application provides a device for operating an application program across operating systems, which facilitates the operation of the application program across operating systems between operating systems.
In the present embodiment, a device for operating an application program across operating systems according to the present invention will be described in detail with a device for operating an application program across systems between two systems. It will be appreciated that the apparatus may be used between any number of systems.
Fig. 2 is a schematic structural diagram of an apparatus for operating an application across operating systems according to the present application, as shown in fig. 2, including:
a display control unit 110, a display unit 120, an application starting unit 130, and an image transmission unit 140 configured on the first operating system 100; a display control unit 210, a display unit 220, an application starting unit 230, and an image transmission unit 240 configured on the second operating system 200; the display unit, the application starting unit and the image transmission unit in each operating system are all connected with the display control unit of the system, each operating system is also respectively loaded with a plurality of applications, illustratively, the first operating system 100 is loaded with applications 301, 302 and 303, and the second operating system 200 is loaded with applications 304 and 305.
The display control unit 110 and the display control unit 210 are communicatively connected through a first communication interface to transmit application information and an operation instruction, and are used for controlling the display unit, the application starting unit and the image transmission unit of the operating system to respond to the operation instruction based on the user operation instruction and the operation instruction transmitted by other operating systems.
Exemplarily, a first operating system is taken as an example to explain the functions of the units, where the application starting unit 130 is configured to start a corresponding application in the first operating system based on an operation instruction; the display unit 120 comprises a virtual display unit 121 and a physical display unit 122, wherein the virtual display unit 121 is used for capturing display screen data after the application program is started, and the physical display unit 122 is used for displaying application information on a screen of the first operating system 100 so that a user can select to start or display the display screen data after the application program is started, which is received by the image transmission unit 140, so that the user can view and operate the display screen data; and the image transmission unit 140 is in communication connection with the image transmission unit 240 on the second operating system 200 through a second communication interface to transmit the display screen data captured by the virtual display unit 121.
It should be noted that the virtual display unit is created after receiving the application start instruction, and the physical display unit is created when the image processing unit receives the display screen data of the application and displays the application information.
The operating systems respectively run on different hardware sets of the multi-core heterogeneous system on chip, the different hardware sets belong to different hardware domains, a first communication interface is a first inter-core communication channel between the hardware domains, a second communication interface is a second inter-core communication channel between the hardware domains, and the bandwidth of the second inter-core communication channel is greater than that of the first inter-core communication channel.
It will be appreciated that the first operating system and the second operating system each have a screen pertaining to the use of their operating systems.
In this embodiment, the operation instruction includes an application start instruction, an in-application operation instruction, and an application close instruction.
In this embodiment, the application information includes an application icon, an application name, and application identification information.
In this embodiment, the first communication interface is socket communication, and the second communication interface is any one of Mailbox and PCIe.
In the present embodiment, the image transmission unit 140 transmits display screen data of an application using the framework of v4L 2.
The working process of the embodiment is as follows: when a user of the first operating system 100 wants to operate the application 305 of the second operating system 200, the display control unit 110 of the first operating system 100 acquires all application information on the second operating system 200 from the display control unit 210 of the second operating system and displays the application information on the screen of the first operating system 100 for the user to select, when the user selects to start the application 305 according to the displayed information, the display control unit 110 of the first operating system 100 sends an application start instruction to the display control unit 210 of the second operating system 200, the second operating system 200 controls the application start unit 230 to start the corresponding application 305 after receiving the application start instruction and controls the display unit 220 to create a virtual display unit 221 to capture the started screen data of the application 305, synchronously, the image transmission unit 240 transmits the started screen data to the image transmission unit 140 of the first operating system 100, after receiving the screen data, the physical display unit 122 displays the screen data on the screen for the user to view and operate the application 305, when the user triggers an in-application operation, the display control unit 110 of the first operating system 100 receives the application start instruction and stops the display control unit 210, and the display control unit 210 sends the display control screen data to stop the display control unit 210 when the display control unit 210 of the display control unit 100 receives the application start instruction, and stops the display control unit 210, and stops the display control unit 210 when the display control unit 100 sends the display control display data in-display control instruction to stop the display unit 210 of the application data in-display control display unit 210, closing the application and destroying the virtual display, and ending the cross-system operation application.
In a similar manner, the process of the user of the second os 200 operating the application of the first os 100 is not described herein again.
It should be noted that, the first operating system 100 and the second operating system 200 are both Android operating systems, when a user starts an application of the second operating system and sees a display screen of the application on the first operating system, and then the user triggers an in-application operation, the display control unit 110 of the first operating system 100 obtains location information of the touch operation in the display screen through an actual display window of the first operating system 100 and a report of onTouch (), the display control unit 110 of the first operating system 100 sends an in-application operation instruction including the location information to the display control unit 210 of the second operating system 200, and after receiving the operation instruction, the second operating system 200 transmits an in-application operation instruction including the location information to the virtual display through an interface of inputevent () to determine an operation that the application 305 actually needs to execute, and control a response of the application 305.
Example 3
In this embodiment, an electronic device is further provided, and fig. 3 is a schematic block diagram of the electronic device provided in this application. As shown in fig. 3, the electronic device 130 includes a processor 131 and a memory 132. The memory 132 is used to store non-transitory computer readable instructions (e.g., one or more computer program modules). The processor 131 is configured to execute non-transitory computer readable instructions, and the processor 131 may execute one or more steps of the method of operating an application program across operating systems as described above. The memory 132 and the processor 131 may be interconnected by a bus system and/or other form of connection mechanism (not shown).
For example, the processor 131 may be a Central Processing Unit (CPU), a Digital Signal Processor (DSP), or other form of processing unit having data processing capabilities and/or program execution capabilities, such as a Field Programmable Gate Array (FPGA), or the like; for example, the Central Processing Unit (CPU) may be an X86 or ARM architecture or the like.
For example, memory 132 may include any combination of one or more computer program products that may include various forms of computer-readable storage media, such as volatile memory and/or non-volatile memory. Volatile memory can include, for example, random Access Memory (RAM), cache memory (or the like). The non-volatile memory may include, for example, read Only Memory (ROM), hard disk, erasable Programmable Read Only Memory (EPROM), portable compact disk read only memory (CD-ROM), USB memory, flash memory, and the like. One or more computer program modules may be stored on the computer-readable storage medium and executed by processor 131 to implement various functions of electronic device 130. Various applications and various data, as well as various data used and/or generated by the applications, and the like, may also be stored in the computer-readable storage medium.
It should be noted that, in the embodiment of the present application, reference may be made to the above description on a method for operating an application program across operating systems for specific functions and technical effects of the electronic device 130, and details are not described herein again.
Example 4
In this embodiment, a computer-readable storage medium is further provided, and fig. 4 is a schematic diagram of a storage medium of the present application. As shown in fig. 4, storage medium 150 is used to store non-transitory computer readable instructions 151. For example, the non-transitory computer readable instructions 151, when executed by a computer, may perform one or more steps of a method of operating an application program across operating systems in accordance with the description above.
For example, the storage medium 150 may be applied to the electronic device 130 described above. For example, the storage medium 150 may be the memory 132 in the electronic device 130 shown in fig. 3. For example, the related description about the storage medium 150 may refer to the corresponding description of the memory 132 in the electronic device 130 shown in fig. 3, and is not repeated here.
It should be noted that the storage medium (computer-readable medium) described above in the present application may be a computer-readable signal medium or a non-transitory computer-readable storage medium or any combination of the two. The non-transitory computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples of the non-transitory computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
In the present application, a non-transitory computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a non-transitory computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
Computer program code for carrying out operations for aspects of the present application may be written in any combination of one or more programming languages, including but not limited to an object oriented programming language such as Java, smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present application may be implemented by software or hardware. Wherein the name of an element does not in some cases constitute a limitation on the element itself.
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), system-on-chips (systems-on-chips), complex Programmable Logic Devices (CPLDs), and the like.
The above description is only a few embodiments of the present application and is intended to be illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the disclosure herein is not limited to the particular combination of features described above, but also encompasses other arrangements formed by any combination of the above features or their equivalents without departing from the spirit of the disclosure. For example, the above features may be replaced with (but not limited to) features having similar functions disclosed in the present application.
Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limitations on the scope of the application. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (12)

1. A method of operating an application across operating systems, the method comprising:
a first operating system sends an application starting instruction to a second operating system through a first communication interface, wherein the first operating system runs on a first hardware set of a multi-core heterogeneous system on chip, the second operating system runs on a second hardware set of the multi-core heterogeneous system on chip, the first hardware set and the second hardware set belong to different hardware domains, and the first communication interface is a first inter-core communication channel between the hardware domains;
based on a received application starting instruction, a second operating system creates a virtual display to start a corresponding application, and sends display picture data of the application acquired by the virtual display to a first operating system in real time through a second communication interface, wherein the second communication interface is a second inter-core communication channel between the hardware domains, and the bandwidth of the second inter-core communication channel is greater than that of the first inter-core communication channel;
the first operating system synchronously displays a display picture of the application for a user to view and trigger operation, and based on the trigger operation of the user, the first operating system sends an in-application operating instruction comprising position information of the trigger operation in the display picture of the first operating system to the second operating system through the first communication interface;
and responding the actual operation in the application corresponding to the position information by the application in the second operating system based on the position information in the application operating instruction.
2. The method of operating an application across operating systems of claim 1, wherein the type of the first operating system and the system type of the second operating system are the same or different.
3. The method for operating an application program across operating systems according to claim 1, wherein the first operating system obtains display screen data of the application, performs format conversion on the display screen data, and then synchronously displays the display screen data on the first operating system.
4. The method of operating an application across operating systems of claim 1, further comprising: the first operating system acquires application information of each application program in the second operating system through the first communication interface and displays the application information on the first operating system for a user to select the application program to start, wherein the application information comprises an application icon, an application name and application identification information.
5. The method for operating an application across operating systems according to claim 1, wherein the first communication interface is socket communication, and the second communication interface is any one of Mailbox and PCIe.
6. The method for operating application programs across operating systems according to claim 5, wherein the protocol data of socket communication comprises 1-byte data identification and 8-byte data content, the data identification is used for identifying the response type of the data content, and the response type comprises application starting, application closing and in-application operation.
7. An apparatus for operating applications across systems, comprising:
the display control unit is configured on the operating system, is in communication connection with the display control units on other operating systems through a first communication interface to transmit application information and operating instructions, and is used for controlling the display unit, the application starting unit and the image transmission unit to respond to the operating instructions based on the user operating instructions and the operating instructions transmitted by other operating systems;
the application starting unit is used for starting corresponding applications in the operating system based on the operating instructions;
the display unit comprises a virtual display unit and a physical display unit, the virtual display unit is used for capturing display picture data after the application program is started, and the physical display unit is used for displaying application information on an operation system screen so that a user can select to start or display the display picture data after the application program is started, which is received by the image transmission unit, so that the user can view and operate the display picture data;
the image transmission unit is in communication connection with the image transmission units on other operating systems through a second communication interface so as to transmit the display screen data captured by the virtual display unit;
the operating systems respectively run on different hardware sets of the multi-core heterogeneous system on chip, the different hardware sets belong to different hardware domains, the first communication interface is a first inter-core communication channel between the hardware domains, the second communication interface is a second inter-core communication channel between the hardware domains, and the bandwidth of the second inter-core communication channel is greater than that of the first inter-core communication channel.
8. The apparatus for operating an application program across systems according to claim 7, wherein the operation instruction comprises an application start instruction, an in-application operation instruction, and an application close instruction.
9. The apparatus for operating application programs across systems according to claim 7, wherein the application information comprises application icon, application name and application identification information.
10. The apparatus for operating an application across a system according to claim 7, wherein the first communication interface is socket communication, and the second communication interface is any one of Mailbox and PCIe.
11. An electronic device, comprising:
a processor;
a memory including one or more computer program modules;
wherein the one or more computer program modules are stored in the memory and configured to be executed by the processor, the one or more computer program modules comprising means for implementing the cross-operating system operating application of any of claims 1-6.
12. A computer readable storage medium having stored thereon computer instructions which, when executed, perform the steps of the method of operating an application across operating systems of any of claims 1-6.
CN202211037880.0A 2022-08-26 2022-08-26 Device and method for operating application program across operating systems Pending CN115391061A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211037880.0A CN115391061A (en) 2022-08-26 2022-08-26 Device and method for operating application program across operating systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211037880.0A CN115391061A (en) 2022-08-26 2022-08-26 Device and method for operating application program across operating systems

Publications (1)

Publication Number Publication Date
CN115391061A true CN115391061A (en) 2022-11-25

Family

ID=84122521

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211037880.0A Pending CN115391061A (en) 2022-08-26 2022-08-26 Device and method for operating application program across operating systems

Country Status (1)

Country Link
CN (1) CN115391061A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115904295A (en) * 2023-02-21 2023-04-04 南京芯驰半导体科技有限公司 Multi-screen display control method, device, medium, system, chip and panel
CN115934632A (en) * 2023-02-09 2023-04-07 南京芯驰半导体科技有限公司 Data processing method and device, electronic equipment and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115934632A (en) * 2023-02-09 2023-04-07 南京芯驰半导体科技有限公司 Data processing method and device, electronic equipment and storage medium
CN115904295A (en) * 2023-02-21 2023-04-04 南京芯驰半导体科技有限公司 Multi-screen display control method, device, medium, system, chip and panel

Similar Documents

Publication Publication Date Title
CN115391061A (en) Device and method for operating application program across operating systems
CN107786794B (en) Electronic device and method for providing an image acquired by an image sensor to an application
KR20200022329A (en) Method and device for determining response time
US9760331B2 (en) Sharing a screen between electronic devices
EP3037963A1 (en) Camera command set host command translation
EP3697023A1 (en) Fpga device and cloud system based on fpga device
US10863072B2 (en) Image processing system, method, apparatus and device of processing image data
US9686460B2 (en) Enabling a metadata storage subsystem
CN108897575A (en) The configuration method and configuration system of electronic equipment
US20200258195A1 (en) Image Processing Method and Device
CN111309617A (en) Application program control method and device, storage medium and electronic equipment
CN112764563A (en) Multi-screen control method, device and system, electronic equipment and storage medium
CN110766600B (en) Image processing system with distributed architecture
CN111352957A (en) Remote dictionary service optimization method and related equipment
US20180307497A1 (en) System and method of interactive splash screen in embedded environments
CN107153621B (en) Equipment identification method and device
US9244694B2 (en) Executing a command within a transport mechanism based on a get and set architecture
CN108415655B (en) Touch data processing method and device, all-in-one machine and storage medium
US9235438B2 (en) Image display apparatus, image display method, and computer program product
CN115422058A (en) Method and device for testing face recognition application
CN114697512B (en) Configuration method and device
CN116643698B (en) Data writing method and device, electronic equipment and storage medium
US20160343103A1 (en) System and method for rendering video data
CN110851150B (en) Method and apparatus for installing applications
US20230259457A1 (en) Electronic apparatus and control method thereof

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination