CN116248772A - Data transmission method, device, equipment and medium under virtualization management - Google Patents

Data transmission method, device, equipment and medium under virtualization management Download PDF

Info

Publication number
CN116248772A
CN116248772A CN202310134855.2A CN202310134855A CN116248772A CN 116248772 A CN116248772 A CN 116248772A CN 202310134855 A CN202310134855 A CN 202310134855A CN 116248772 A CN116248772 A CN 116248772A
Authority
CN
China
Prior art keywords
data
platform domain
target
data packet
domain
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
CN202310134855.2A
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.)
Ecarx Hubei Tech Co Ltd
Original Assignee
Ecarx Hubei Tech 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 Ecarx Hubei Tech Co Ltd filed Critical Ecarx Hubei Tech Co Ltd
Priority to CN202310134855.2A priority Critical patent/CN116248772A/en
Publication of CN116248772A publication Critical patent/CN116248772A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06F15/7825Globally asynchronous, locally synchronous, e.g. network on chip
    • 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/542Event management; Broadcasting; Multicasting; Notifications
    • 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/544Buffers; Shared memory; Pipes
    • 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/546Message passing systems or structures, e.g. queues
    • 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/08Protocols for interworking; Protocol conversion
    • 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/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • 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/22Parsing or analysis of headers
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention discloses a data transmission method, device, equipment and medium under virtualization management. The method is applied to the same system-on-chip SOC, wherein the SOC comprises a first platform domain and a second platform domain, and the method comprises the following steps: receiving service data of a user space through a first platform domain, determining a target data packet of the service data under a target format by combining a first driver of a first virtual Ethernet in a kernel space, writing the target data packet into a designated memory area, and sending a notification message to a second platform domain; and receiving the notification message through the second platform domain, and acquiring service data in the user space of the second platform domain according to the notification message and combining a second driver of the second virtual Ethernet in the kernel space of the second platform domain. Through the virtual Ethernet, the supporting of standard network communication related APIs between different platform domains and the supporting of various network protocol stacks are realized; different platform domain standards, high efficiency, simplicity and convenience and general communication modes are realized.

Description

Data transmission method, device, equipment and medium under virtualization management
Technical Field
The present invention relates to the field of virtualization technologies, and in particular, to a method, an apparatus, a device, and a medium for data transmission under virtualization management.
Background
The intelligent cabin chip comprises three independent CPU units, namely an adaptive platform (Adaptive Platform, AP) domain, wherein the AP domain is CPU Cluster0 and comprises 2 Cortex-A55 and 4 Cortex-A76; a Classical Platform (CP) domain, the CP domain being CPU Cluster1 comprising 2 Cortex-a55, the RP domain being a secure processor comprising 1 Cortex-R52; in addition, E04 contains subsystem modules such as LPDDR5, UFS, GPU, VPU, HIFI, audio, DPU, ethernet, etc., which can be assigned to different CPU domains for processing. In the vehicle system software, the AP domain and the CP domain need to interact with a large amount of data, for example: signal data of the vehicle, control data of AVM service, image data of navigation projection screen to instrument screen, etc.
At present, data interaction between an AP domain and a CP domain is realized through a Mailbox and a Share Memory bottom layer software, but service data belongs to an application space, namely a mechanism corresponding to a driving layer, and is not suitable for software design and development of service requirements.
Disclosure of Invention
The invention provides a data transmission method, device, equipment and medium under virtualization management to realize communication among different platform domains.
According to an aspect of the present invention, a data transmission method under virtualization management is provided, and the method is applied to a same system-on-chip SOC, where the SOC includes a first platform domain and a second platform domain, and the method includes:
receiving service data of a user space through the first platform domain, determining a target data packet of the service data under a target format by combining a first driver of a first virtual Ethernet in a kernel space, writing the target data packet into a designated memory area, and sending a notification message to the second platform domain;
and receiving the notification message through the second platform domain, and acquiring the service data in the user space of the second platform domain according to the notification message and combining a second driver of a second virtual Ethernet in the kernel space of the second platform domain.
According to another aspect of the present invention, there is provided a data transmission device under virtualization management, applied to the same system-on-chip SOC, where the SOC includes a first platform domain and a second platform domain, the device including:
the sending module is used for receiving service data of a user space through the first platform domain, combining a first driver of a first virtual Ethernet in a kernel space, determining a target data packet of the service data in a target format, writing the target data packet into a designated memory area, and sending a notification message to the second platform domain;
and the acquisition module is used for receiving the notification message through the second platform domain, and acquiring the service data in the user space of the second platform domain according to the notification message and combining a second driver of a second virtual Ethernet in the kernel space of the second platform domain.
According to a third aspect of the present invention, there is provided an electronic device comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein, the liquid crystal display device comprises a liquid crystal display device,
the memory stores a computer program executable by the at least one processor to enable the at least one processor to perform the data transmission method under the virtualization management according to any one of the embodiments of the present invention.
According to a fourth aspect of the present invention, there is provided a computer readable storage medium storing computer instructions for causing a processor to implement a method for data transmission under virtualization management according to any one of the embodiments of the present invention when executed.
The technical scheme of the embodiment of the invention is applied to the same system-on-chip SOC, wherein the SOC comprises a first platform domain and a second platform domain, and the method comprises the following steps: receiving service data of a user space through a first platform domain, determining a target data packet of the service data under a target format by combining a first driver of a first virtual Ethernet in a kernel space, writing the target data packet into a designated memory area, and sending a notification message to a second platform domain; and receiving the notification message through the second platform domain, and acquiring service data in the user space of the second platform domain according to the notification message and combining a second driver of the second virtual Ethernet in the kernel space of the second platform domain. Through the virtual Ethernet, the related APIs of supporting standard network socket communication among different platform domains and supporting various network protocol stacks are realized; different platform domain standards, high efficiency, simplicity and convenience and general communication modes are realized.
It should be understood that the description in this section is not intended to identify key or critical features of the embodiments of the invention or to delineate the scope of the invention. Other features of the present invention will become apparent from the description that follows.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for the description of the embodiments will be briefly described below, and it is apparent that the drawings in the following description are only some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a flowchart of a data transmission method under virtualization management according to a first embodiment of the present invention;
fig. 2 is a flowchart of a data transmission method under virtualization management according to a second embodiment of the present invention;
fig. 3 is a schematic software architecture diagram of a data transmission method under virtualization management according to a second embodiment of the present invention;
fig. 4 is a schematic structural diagram of a data transmission device under virtualization management according to a third embodiment of the present invention;
fig. 5 is a schematic structural diagram of an electronic device implementing an embodiment of the present invention.
Detailed Description
In order that those skilled in the art will better understand the present invention, a technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present invention without making any inventive effort, shall fall within the scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present invention and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the invention described herein may be implemented in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Example 1
Fig. 1 is a flowchart of a data transmission method under virtualization management, where the method is applicable to a case of cross-domain interaction data, and the SOC includes a first platform domain and a second platform domain and can be executed by a data transmission device under virtualization management, where the data transmission device under virtualization management can be implemented in a form of hardware and/or software, and the data transmission device under virtualization management can be configured in an electronic device.
As shown in fig. 1, the method includes:
s110, receiving service data of a user space through a first platform domain, determining a target data packet of the service data in a target format by combining a first driver of a first virtual Ethernet in a kernel space, writing the target data packet into a designated memory area, and sending a notification message to a second platform domain.
In this embodiment, the first platform domain may be understood as an independent CPU unit, such as an AP domain or a CP domain. A user space may be understood as a running space of a user program. Kernel space can be understood as the running space of the linux kernel, such as a kernel space. The first virtual ethernet is understood to mean a virtual network operating on the ethernet principle implemented in the data link layer by means of software in the real internet, which operates in the first platform domain. The service data may be understood as data that needs to be processed, such as signal data of a vehicle, control data of AVM service, image data of navigation projection screen to meter screen, etc. The target format may be understood as a format for writing, and may be preferably a raw format. The first driver may be understood as a program for implementing a service function of the virtual network card set in the first platform domain, for example: opening and closing the network card, transmitting network frame data, receiving the network frame data and the like.
In this embodiment, the second platform domain may be understood as an independent CPU unit, such as an AP domain or a CP domain. The target data packet may be understood as a data packet that may be received by a second platform domain formed after processing the service data. The stored information may be understood to include information that stores the address of the destination packet. The notification message may be understood as a message transmitted to the second platform domain for notifying the second platform domain of the stored information of the target data packet.
Specifically, the first platform domain can receive service data sent by the user space, after the service data is transmitted to the kernel space, the service data can be converted into a form which can be received by the virtual ethernet, and then the service data after the conversion is packaged by combining a first driver of the first virtual ethernet in the kernel space, the packaged service data is secondarily packaged according to a target format to form a target data packet, a shared memory area can be divided into memory hardware, the target data packet is written into the designated memory area, and the first platform domain can send a notification message to the second platform domain through a hardware channel. The memory hardware may be LPDDR, and the hardware channel may be Mailbox, which is only used as an example of the present invention, and the memory hardware and the hardware channel are not specifically limited.
S120, receiving the notification message through the second platform domain, and acquiring service data in the user space of the second platform domain according to the notification message combined with the second driver of the second virtual Ethernet in the kernel space of the second platform domain.
In this embodiment, the second virtual ethernet is understood to be a virtual network operating on the ethernet principle, which is implemented in the data link layer by a software method, and runs in the real internet of the second platform domain. The second driver may be understood as a program for implementing a service function of the virtual network card set in the second platform domain.
Specifically, the notification message sent by the first platform domain may be received through a hardware channel of the second platform domain, the second platform domain reads the target data packet from the memory hardware according to the notification message, analyzes the target data packet through a second driver of the second virtual ethernet in the kernel space of the second platform domain, converts the analyzed target data packet into a format that can be received by the user space, that is, into a service data format, and sends the service data to the user space of the second platform domain, so as to obtain the service data in the user space of the second platform domain.
The technical scheme of the embodiment of the invention is applied to the same system-on-chip SOC, wherein the SOC comprises a first platform domain and a second platform domain, and the method comprises the following steps: receiving service data of a user space through a first platform domain, determining a target data packet of the service data under a target format by combining a first driver of a first virtual Ethernet in a kernel space, writing the target data packet into a designated memory area, and sending a notification message to a second platform domain; and receiving the notification message through the second platform domain, and acquiring service data in the user space of the second platform domain according to the notification message and combining a second driver of the second virtual Ethernet in the kernel space of the second platform domain. Through the virtual Ethernet, the related APIs of supporting standard network socket communication among different platform domains and supporting various network protocol stacks are realized; different platform domain standards, high efficiency, simplicity and convenience and general communication modes are realized.
Example two
Fig. 2 is a flowchart of a data transmission method under virtualization management according to a second embodiment of the present invention, where the present embodiment is further refined based on the foregoing embodiment. As shown in fig. 2, the method includes:
s201, receiving service data of a user space through a first platform domain, and converting the service data into a first data stream through a set network protocol stack.
In this embodiment, the first data stream may be understood as a set of ordered data sequences of bytes with a start point and an end point in the first platform domain. A network protocol stack may be understood as a protocol stack that is set up for completing a communication.
The network protocol stack is configured with at least one standard network protocol, such as socket API, HTTP, TCP/UDP, SOME/IP, and the like.
Specifically, the first platform domain can receive service data in the user space, send the service data to the kernel space, and convert the service data in the kernel space through a set network protocol stack to form a first data stream under a corresponding network protocol.
S202, the first data stream is encapsulated into first network frame data under a specified protocol.
In this embodiment, the specified protocol may be understood as a protocol configured by the first platform domain. The first network frame data may be understood as data in the first platform domain when transmitted in the ethernet.
Specifically, the first platform domain may encapsulate the first data stream according to a specified protocol to form network frame data corresponding to the first data stream.
Illustratively, the specified protocol may be a TCP/IP protocol stack, and the first data stream is encapsulated by the TCP/IP protocol stack to form TCP/IP protocol network frame data.
And S203, driving the first virtual network card to encapsulate the first network frame data through the first driving program to obtain a middle data packet.
In this embodiment, the first virtual network card may be understood as a virtual network card that simulates a network environment through software in the first platform domain and simulates a network adapter function. A middle packet is understood to be a packet encapsulated in a memory format.
Specifically, after the first network frame data is formed, the first platform domain can drive the first virtual network card through the first driver, and package the first data frame data according to a set format to obtain a middle data packet.
Illustratively, after the TCP/IP protocol network frame data is formed, the first virtual network card is driven by the first driver to encapsulate the first network frame data into an intermediate data packet in RPMSG format.
S204, packaging the intermediate data packet according to the target format to obtain the target data packet.
Specifically, after the intermediate data packet is formed, the first platform domain may encapsulate the intermediate data packet according to the target format, to obtain the target data packet in the target format.
Illustratively, the first platform domain may encapsulate the intermediate data packet in the RPMSG format to form the target data packet in the raw format.
S205, writing the target data packet into the designated memory area through a preset bus protocol.
In this embodiment, the preset bus protocol may be understood as a bus protocol under a preset hardware mechanism. The memory address may be understood as the location where the target packet is stored.
Specifically, the first platform domain may transmit the target data packet to the designated memory area through a preset bus protocol.
S206, after the writing is completed, sending a notification message to the second platform domain.
Specifically, after the first platform domain finishes writing the target data packet, the first platform domain can automatically generate a notification message and send the notification message to the second platform domain according to a set transmission mode.
For example, the first platform domain and the second platform domain may be respectively interconnected through a Mailbox hardware, where the first platform domain generates a Mailbox message according to the stored information, and sends the Mailbox message to the second platform domain. Wherein, mailbox: two different platform domains can communicate messages with each other through a Mailbox hardware channel; the Mailbox contains 2 FIFOs, some status and control registers, and is a bi-directional message channel.
S207, determining a designated memory area according to the notification message.
Specifically, the second platform domain may receive, through the hardware channel, the notification message sent by the first platform domain, and after receiving the notification message, the second platform domain may determine the specified memory area according to a predetermined configuration.
Illustratively, the second platform domain is coupled to the LPDDR hardware via an AXI, and the designated memory area on the LPDDR is determined by the stored information.
S208, reading the target data packet from the appointed memory region.
Specifically, the second platform domain may read the target data packet from the specified memory area through the set bus protocol.
S209, determining a second data flow under the target protocol according to the target data packet and the second driver.
In this embodiment, the second data stream may be understood as a set of ordered, byte data sequences having a start point and an end point in the second platform domain. The target protocol may be understood as a communication protocol configured by the second platform domain.
Specifically, the second platform domain may parse the target data packet through a second driver of the second virtual ethernet in the kernel space, and convert the parsed target data packet to form a second data stream under the target protocol, where if the target protocol may be a TCP/IP protocol, the second data stream is corresponding to the data stream under the TCP/IP protocol.
Further, according to the target data packet and the second driver, the step of determining the second data flow under the target protocol may be:
the second virtual network card is driven by a second driving program to analyze the target data packet, and second network frame data is determined; and analyzing the second network frame data to determine a second data stream.
In this embodiment, the second virtual network card may be understood as a virtual network card that simulates a network environment through software in the second platform domain and simulates a network adapter function. The second network frame data may be understood as data in the second platform domain when transmitted in the ethernet.
Specifically, the second platform domain may drive the second virtual network card to parse the target data packet through the second driver, determine second network frame data, parse the second network frame data, and determine a second data stream.
The second platform domain may analyze the target data table in the raw format to form a target data table in the RPMSG format, and drive the second virtual network card to analyze the target data packet in the RPMSG format through the second driver to determine the second network frame data, and then analyze the second network frame data to determine the second data flow in the TCP/IP protocol.
S210, analyzing the second data stream through the set network protocol stack, and acquiring service data in the user space.
Specifically, the second data stream is analyzed through the set network protocol stack to obtain service data, the service data is sent to the user space, and the service data is obtained in the user space.
According to the technical scheme, service data are encapsulated through a network protocol stack of a first platform domain to form a data stream, the data stream is encapsulated into network frame data under a specified protocol, a virtual network card is driven to encapsulate the network frame data through a virtual Ethernet driver to obtain a middle data packet, the middle data packet is encapsulated according to a corresponding storage format and stored in a shared memory, a notification message is sent to a second platform domain through a hardware channel, a target data packet is carried out according to the notification message through the second platform domain, the target data packet is analyzed, the virtual network card is driven to analyze the target data packet through the virtual Ethernet driver to obtain the network frame data, and the network frame data are converted into service data through the network protocol stack and are sent to a user space of the second platform domain. Supporting standard network socket communication related APIs between different platform domains and supporting various network protocol stacks; different platform domain standards, high efficiency, simplicity and convenience and general communication modes are realized.
For the sake of convenience in understanding the present invention, the first platform domain is exemplified by the AP domain, the second platform domain is exemplified by the CP domain, where the AP domain may also be exemplified by the second platform domain, and the CP domain may also be exemplified by the first platform domain, and described in an exemplary manner by a software architecture, fig. 3 is a schematic software architecture diagram of a data transmission method under virtualization management provided in the second embodiment of the present invention, as shown in fig. 3:
1. vehicle service layer: the AP domain vehicle data service program can transmit the service data to the AP domain TCP/IP protocol stack through the standard socket API, HTTP, TCP/UDP, SOME/IP and other network protocol stacks; meanwhile, business data is received from the TCP/IP protocol stack of the AP domain;
TCP/IP protocol stack: TCP/IP protocol stack realized by AP domain Linux kernel; the driver is used for receiving the data flow of the AP domain vehicle service layer, encapsulating the data flow into TCP/IP protocol network frame data and transmitting the data flow to the virtual Ethernet; meanwhile, network frame data of a driver of the virtual Ethernet is received, analyzed into a TCP/IP protocol data stream and transmitted to a vehicle service layer;
3. driver for virtual ethernet: APIs responsible for implementing virtual network cards, such as: opening and closing the network card, transmitting network frame data, receiving the network frame data and the like, which are core programs of the virtual network card; receiving network frame data of an AP domain TCP/IP protocol stack, encapsulating the network frame data into a data packet in an RPMSG format, and transmitting the data packet to an AP domain RPMSG software layer; meanwhile, the data packet in the RPMSG format of the AP domain is received, analyzed into a network frame data format and transmitted to the TCP/IP protocol stack of the AP domain;
rpmsg software layer: the AP domain Remote Processor Messaging is a standard interface for communication between cross domains in the heterogeneous multi-core SOC; receiving a data packet in an RPMSG format of a driver of the AP domain virtual Ethernet, packaging the data packet into a raw format, writing the data packet into a designated memory area of an AP domain shared memory, and sending a Mailbox message to a CP domain; meanwhile, the Mailbox message of the CP domain is also received, and then the raw format data is fetched from the appointed memory area of the shared memory of the AP domain and is transmitted to the virtual Ethernet driver of the AP domain.
Mailbox & shared memory: the method refers to a bottom software implementation mode of AP domain communication, wherein a Mailbox is mainly responsible for receiving and transmitting events, and a shared memory is a shared memory of a large-data-volume AP domain and a CP domain; the AP Mailbox notifies the message to the CP domain Mailbox; the AP Mailbox also receives the message of the CP domain Mailbox at the same time;
6. vehicle service layer: refers to the CP domain vehicle service layer; the function is consistent with the vehicle service layer 1;
TCP/IP protocol stack: refers to the TCP/IP protocol stack under the CP domain; the function is consistent with a '2. TCP/IP protocol stack';
8. driver for virtual ethernet: refers to a driver of the CP domain virtual ethernet; the function is consistent with a virtual Ethernet driver;
rpmsg software layer: refers to the CP domain RPMSG software layer; the action is consistent with the "4.RPMSG software layer";
mailbox & shared memory: refers to a CP domain Mailbox & shared memory; the effect is consistent with "5.Mailbox & shared memory".
Example III
Fig. 4 is a schematic structural diagram of a data transmission device under virtualization management according to a third embodiment of the present invention. As shown in fig. 4, the apparatus includes: the sending module 31 and the obtaining module 32. Wherein, the liquid crystal display device comprises a liquid crystal display device,
a sending module 31, configured to receive, through the first platform domain, service data in a user space, determine a target data packet of the service data in a target format in combination with a first driver of a first virtual ethernet in a kernel space, write the target data packet into a specified memory area, and send a notification message to the second platform domain;
and the obtaining module 32 is configured to receive the notification message through the second platform domain, and obtain the service data in the user space of the second platform domain according to the notification message in combination with a second driver of the second virtual ethernet in the kernel space of the second platform domain.
The technical scheme of the embodiment of the invention is applied to the same system-on-chip SOC, wherein the SOC comprises a first platform domain and a second platform domain, and the method comprises the following steps: receiving service data of a user space through a first platform domain, determining a target data packet of the service data under a target format by combining a first driver of a first virtual Ethernet in a kernel space, writing the target data packet into a designated memory area, and sending a notification message to a second platform domain; and receiving the notification message through the second platform domain, and acquiring service data in the user space of the second platform domain according to the notification message and combining a second driver of the second virtual Ethernet in the kernel space of the second platform domain. Through the virtual Ethernet, the related APIs of supporting standard network socket communication among different platform domains and supporting various network protocol stacks are realized; different platform domain standards, high efficiency, simplicity and convenience and general communication modes are realized.
Optionally, the sending module 31 is configured to:
converting the service data into a first data stream through a set network protocol stack;
encapsulating the first data stream into first network frame data under a specified protocol;
driving a first virtual network card to encapsulate the first network frame data through the first driver to obtain a middle data packet;
and packaging the intermediate data packet according to the target format to obtain the target data packet.
Wherein the network protocol stack is configured with at least one standard network protocol.
Optionally, the sending module 31 includes:
the first determining unit is used for writing the target data packet into a designated memory area in the shared memory;
and the message notification unit is used for sending the notification message to the second platform domain after the writing is completed. .
The first determining unit is specifically configured to:
transmitting the target data packet to the designated memory area through a preset bus protocol;
and acquiring the storage address of the appointed memory region, and determining storage information according to the storage address.
Optionally, the obtaining module 32 includes:
the second determining unit is used for determining the appointed memory region according to the notification message;
the reading unit is used for reading the target data packet from the appointed memory region;
a third determining unit, configured to determine a second data flow under a target protocol according to the target data packet and the second driver;
and the acquisition unit is used for analyzing the second data stream through a set network protocol stack and acquiring the service data in the user space.
Further, the third determining unit is specifically configured to:
the second virtual network card is driven by the second driving program to analyze the target data packet, and second network frame data is determined;
and analyzing the second network frame data to determine the second data stream.
The data transmission device under the virtualization management provided by the embodiment of the invention can execute the data transmission method under the virtualization management provided by any embodiment of the invention, and has the corresponding functional modules and beneficial effects of the execution method.
Example IV
Fig. 5 shows a schematic diagram of an electronic device 40 that may be used to implement an embodiment of the invention. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. Electronic equipment may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein.
As shown in fig. 5, the electronic device 40 includes at least one processor 41, and a memory communicatively connected to the at least one processor 41, such as a Read Only Memory (ROM) 42, a Random Access Memory (RAM) 43, etc., in which the memory stores a computer program executable by the at least one processor, and the processor 41 may perform various suitable actions and processes according to the computer program stored in the Read Only Memory (ROM) 42 or the computer program loaded from the storage unit 48 into the Random Access Memory (RAM) 43. In the RAM 43, various programs and data required for the operation of the electronic device 40 may also be stored. The processor 41, the ROM 42 and the RAM 43 are connected to each other via a bus 44. An input/output (I/O) interface 45 is also connected to bus 44.
Various components in electronic device 40 are connected to I/O interface 45, including: an input unit 46 such as a keyboard, a mouse, etc.; an output unit 47 such as various types of displays, speakers, and the like; a storage unit 48 such as a magnetic disk, an optical disk, or the like; and a communication unit 49 such as a network card, modem, wireless communication transceiver, etc. The communication unit 49 allows the electronic device 40 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunication networks.
The processor 41 may be various general and/or special purpose processing components with processing and computing capabilities. Some examples of processor 41 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various processors running machine learning model algorithms, digital Signal Processors (DSPs), and any suitable processor, controller, microcontroller, etc. The processor 41 performs the respective methods and processes described above, for example, a data transfer method under virtualization management.
In some embodiments, the data transmission method under virtualization management may be implemented as a computer program tangibly embodied on a computer-readable storage medium, such as the storage unit 48. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 40 via the ROM 42 and/or the communication unit 49. When the computer program is loaded into the RAM 43 and executed by the processor 41, one or more steps of the data transmission method under the virtualization management described above may be performed. Alternatively, in other embodiments, the processor 41 may be configured to perform the data transfer method under virtualization management in any other suitable manner (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On Chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
A computer program for carrying out methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the computer programs, when executed by the processor, cause the functions/acts specified in the flowchart and/or block diagram block or blocks to be implemented. The computer program may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of the present invention, a computer-readable storage medium may be a tangible medium that can contain, or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. The computer readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, the computer readable storage medium may be a machine readable signal medium. More specific examples of a machine-readable storage medium would include an electrical connection based on 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.
To provide for interaction with a user, the systems and techniques described here can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) through which a user can provide input to the electronic device. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a first piece of component (e.g., an application server), or that includes a front-end component (e.g., a user computer with a graphical user interface or web browser through which a user can interact with an implementation of the systems and techniques described here), or that includes any combination of such background, first piece of component, or front-end component. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), blockchain networks, and the internet.
The computing system may include clients and servers. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical hosts and VPS service are overcome.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps described in the present invention may be performed in parallel, sequentially, or in a different order, so long as the desired results of the technical solution of the present invention are achieved, and the present invention is not limited herein.
The above embodiments do not limit the scope of the present invention. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the scope of the present invention.

Claims (10)

1. The data transmission method under the virtualization management is characterized by being applied to the same system-on-chip (SOC), wherein the SOC comprises a first platform domain and a second platform domain, and the method comprises the following steps:
receiving service data of a user space through the first platform domain, determining a target data packet of the service data under a target format by combining a first driver of a first virtual Ethernet in a kernel space, writing the target data packet into a designated memory area, and sending a notification message to the second platform domain;
and receiving the notification message through the second platform domain, and acquiring the service data in the user space of the second platform domain according to the notification message and combining a second driver of a second virtual Ethernet in the kernel space of the second platform domain.
2. The method of claim 1, wherein the determining, in conjunction with the first driver of the first virtual ethernet in the kernel space, the target packet of the traffic data in the target format comprises:
converting the service data into a first data stream through a set network protocol stack;
encapsulating the first data stream into first network frame data under a specified protocol;
driving a first virtual network card to encapsulate the first network frame data through the first driver to obtain a middle data packet;
and packaging the intermediate data packet according to the target format to obtain the target data packet.
3. The method of claim 1, wherein writing the target data packet into a designated memory area and sending a notification message to the second platform domain comprises:
writing the target data packet into the appointed memory region through a preset bus protocol;
and after the writing is completed, sending the notification message to the second platform domain.
4. The method of claim 1, wherein the acquiring the traffic data in the user space of the second platform domain according to the notification message in combination with a second driver of a second virtual ethernet in the kernel space of the second platform domain comprises:
determining the appointed memory region according to the notification message;
reading the target data packet from the appointed memory region;
determining a second data flow under a target protocol according to the target data packet and the second driver;
and analyzing the second data stream through a set network protocol stack, and acquiring the service data in the user space.
5. The method of claim 4, wherein determining a second data flow under a target protocol based on the target data packet and the second driver comprises:
the second virtual network card is driven by the second driving program to analyze the target data packet, and second network frame data is determined;
and analyzing the second network frame data to determine the second data stream.
6. The method of claim 2, wherein the network protocol stack is configured with at least one standard network protocol.
7. The data transmission device under the virtualization management is characterized by being applied to the same system-on-chip (SOC), wherein the SOC comprises a first platform domain and a second platform domain, and the device comprises:
the sending module is used for receiving service data of a user space through the first platform domain, combining a first driver of a first virtual Ethernet in a kernel space, determining a target data packet of the service data in a target format, writing the target data packet into a designated memory area, and sending a notification message to the second platform domain;
and the acquisition module is used for receiving the notification message through the second platform domain, and acquiring the service data in the user space of the second platform domain according to the notification message and combining a second driver of a second virtual Ethernet in the kernel space of the second platform domain.
8. The data transmission device under the virtualization management is characterized in that the sending module is specifically configured to:
converting the service data into a first data stream through a set network protocol stack;
encapsulating the first data stream into first network frame data under a specified protocol;
driving a first virtual network card to encapsulate the first network frame data through the first driver to obtain a middle data packet;
and packaging the intermediate data packet according to the target format to obtain the target data packet.
9. An electronic device, the electronic device comprising:
at least one system on chip, SOC, comprising a first platform domain and a second platform domain; and
a memory communicatively coupled to the at least one SOC;
wherein, the liquid crystal display device comprises a liquid crystal display device,
the memory stores a computer program executable by the at least one SOC to enable the at least one SOC to perform the data transfer method under virtualization management of any of claims 1-6.
10. A computer readable storage medium storing computer instructions for causing a processor to implement the method of data transmission under virtualization management of any one of claims 1-6 when executed.
CN202310134855.2A 2023-02-20 2023-02-20 Data transmission method, device, equipment and medium under virtualization management Pending CN116248772A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310134855.2A CN116248772A (en) 2023-02-20 2023-02-20 Data transmission method, device, equipment and medium under virtualization management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310134855.2A CN116248772A (en) 2023-02-20 2023-02-20 Data transmission method, device, equipment and medium under virtualization management

Publications (1)

Publication Number Publication Date
CN116248772A true CN116248772A (en) 2023-06-09

Family

ID=86630825

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310134855.2A Pending CN116248772A (en) 2023-02-20 2023-02-20 Data transmission method, device, equipment and medium under virtualization management

Country Status (1)

Country Link
CN (1) CN116248772A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116932454A (en) * 2023-09-15 2023-10-24 湖北芯擎科技有限公司 Data transmission method, device, electronic equipment and computer readable storage medium
CN116932454B (en) * 2023-09-15 2024-05-17 湖北芯擎科技有限公司 Data transmission method, device, electronic equipment and computer readable storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116932454A (en) * 2023-09-15 2023-10-24 湖北芯擎科技有限公司 Data transmission method, device, electronic equipment and computer readable storage medium
CN116932454B (en) * 2023-09-15 2024-05-17 湖北芯擎科技有限公司 Data transmission method, device, electronic equipment and computer readable storage medium

Similar Documents

Publication Publication Date Title
CN112540806B (en) Method and device for rendering small program page, electronic equipment and storage medium
CN112698872A (en) Voice data processing method, device, equipment and storage medium
CN114697391B (en) Data processing method, device, equipment and storage medium
CN112905314A (en) Asynchronous processing method and device, electronic equipment, storage medium and road side equipment
CN113961289A (en) Data processing method, device, equipment and storage medium
CN113778593A (en) Cloud desktop control method and device, electronic equipment, storage medium and program product
CN115514718B (en) Data interaction method, control layer and equipment based on data transmission system
CN116248772A (en) Data transmission method, device, equipment and medium under virtualization management
CN113905040B (en) File transmission method, device, system, equipment and storage medium
CN113411267B (en) Message forwarding method and device
CN113971200A (en) Map service flow recording system and method of cloud native platform
CN116841773B (en) Data interaction method and device, electronic equipment and storage medium
JP7482223B2 (en) APPLET PAGE RENDERING METHOD, DEVICE, ELECTRONIC DEVICE, AND STORAGE MEDIUM
CN115686748B (en) Service request response method, device, equipment and medium under virtualization management
CN116932626B (en) Data analysis method, device, equipment and storage medium
CN114615168B (en) Application level monitoring method and device, electronic equipment, storage medium and product
CN114416199B (en) Windows program running method and device, electronic equipment and storage medium
CN113434551B (en) Data processing method, device, equipment and computer storage medium
CN116306407B (en) Verification method, device, equipment and storage medium of Network On Chip (NOC)
CN116170188A (en) Network access control method, device, electronic equipment and storage medium
CN115658341A (en) Method, device, equipment and medium for reading and writing data by Freeswitch
CN116991539A (en) Inter-domain communication method, system, equipment and storage medium based on virtual machine
CN116737403A (en) Data processing method, device, electronic equipment and storage medium
CN115470193A (en) Radar data simulation method, device, equipment and medium
CN115801718A (en) Message processing method and device, electronic equipment and message processing system

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