CN112136104A - Data packet writing method and device, control terminal and movable platform - Google Patents

Data packet writing method and device, control terminal and movable platform Download PDF

Info

Publication number
CN112136104A
CN112136104A CN201980030068.5A CN201980030068A CN112136104A CN 112136104 A CN112136104 A CN 112136104A CN 201980030068 A CN201980030068 A CN 201980030068A CN 112136104 A CN112136104 A CN 112136104A
Authority
CN
China
Prior art keywords
data packet
storage medium
target storage
writing
data
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
CN201980030068.5A
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.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI 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 SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Publication of CN112136104A publication Critical patent/CN112136104A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The embodiment of the invention provides a data packet writing method and device, a control terminal and a movable platform, wherein the data packet writing method comprises the following steps: receiving at least one data packet through a preset API (application program interface) and acquiring attribute characteristics of the data packet; and selecting a target storage medium from a plurality of preset storage media according to the attribute characteristics of the data packet, and writing the data packet into the target storage medium. The data packet writing method provided by the disclosure is used for receiving a data packet by designating a unique preset API interface, a set of independent API interfaces do not need to be developed for each storage medium, the research and development workload is saved, the data packet writing method has good transportability and expansibility, the problem that multiple storage media are completed by different models of aerial photography aircrafts is effectively solved, the development workload is large during multi-type data storage, the repeatability is high, the operation of a user is troublesome, the portability and the expansibility are poor, and when the development version is excessive to a formal version, the firmware is generated without manual coding.

Description

Data packet writing method and device, control terminal and movable platform
Technical Field
The present disclosure relates to the field of data writing technologies, and in particular, to a data packet writing method, a data packet writing apparatus, a control terminal, a movable platform, and a computer-readable storage medium.
Background
The development process of the aerial photography aircraft needs to store various types of debugging data into different storage media, the storage space of the fuselage of the aerial photography aircraft is limited, and the bandwidth of APP (Application) storage is limited, so that the current consumer-grade aerial photography aircraft needs to store data with different frequencies and sizes generated by flight onto different storage media. This method has the following disadvantages:
the research and development personnel are required to specify that certain data generated by the aerial photography aircraft is stored on a certain medium, wherein for the storage of each storage medium, a set of storage framework needs to be developed and different API (application Programming interface) interfaces are provided for research and development users, and the research and development workload is large and the repeatability is high.
Therefore, the problem that the data packets with different frequencies and sizes generated by flight are stored in different storage media in real time under the condition of limited storage space and bandwidth is solved, and the method has important significance for improving the system performance and reducing the research and development cost.
BRIEF SUMMARY OF THE PRESENT DISCLOSURE
The embodiments of the present invention are directed to solving at least one of the technical problems occurring in the prior art or the related art.
To this end, a first aspect of an embodiment of the present invention provides a method for writing a data packet.
A second aspect of the present invention provides a packet writing apparatus.
A third aspect of an embodiment of the present invention provides a control terminal.
A fourth aspect of the embodiments of the present invention provides a movable platform.
A fifth aspect of an embodiment of the present invention provides a computer-readable storage medium.
In view of the above, in a first aspect, an embodiment of the present invention provides a data packet writing method, including: receiving at least one data packet through a preset API (application program interface) and acquiring attribute characteristics of the data packet; and selecting a target storage medium from a plurality of preset storage media according to the attribute characteristics of the data packet, and writing the data packet into the target storage medium.
According to the data packet writing method provided by the embodiment of the invention, a unique preset API is appointed for receiving the data packet, and an independent API does not need to be developed for each storage medium, so that the research and development workload is saved. Simultaneously according to the attribute characteristic of data package self, according to the rule of writing in of predetermineeing, for the data package distribution target storage medium of receiving in a plurality of predetermined storage media, and write the data package into target storage medium, make storage interface, data and storage medium have stable mapping relation, good portability and expansibility have, the advantage of different storage media of full play, effectual solution is accomplished many storage media at different models aerial photography aircraft, development work volume when polymorphic type data storage is big and repeatability is high, user operation is troublesome, portability and expansibility poor problem. Because the mapping relation among the data packet, the data interface and the storage medium can be uniformly specified through a preset rule, when the development version is transited to the formal version, the firmware is generated without manual coding, so that the switching process between the development version and the stable version becomes simple and easy to operate.
In a second aspect, an embodiment of the present invention provides a packet writing apparatus, including: a memory having a computer program stored therein; a processor for running a computer program to implement: receiving at least one data packet through a preset API (application program interface) and acquiring attribute characteristics of the data packet; and selecting a target storage medium from a plurality of preset storage media according to the attribute characteristics of the data packet, and writing the data packet into the target storage medium.
In a third aspect, an embodiment of the present invention provides a control terminal, which can be used for interacting with a user and for communicating with a data packet writing device provided in the second aspect of the present disclosure, where the control terminal includes: a memory having a computer program stored therein; a processor for running a computer program to implement: receiving a setting operation input by a user; and generating a configuration file according to the setting operation, and sending the configuration file to the data packet writing device.
The control terminal provided by the embodiment of the invention receives the setting operation input by the user through the processor, wherein the setting operation comprises the operation of sending the configuration file to the user, the operation of modifying the existing configuration file and the operation of generating a new configuration file, the configuration file comprises the thread pool size, the cache size, the data packet example and the storage medium example, and the writing rule corresponding to the attribute information of the data packet, namely the mapping relation between different data packets and different storage media. Therefore, through this control terminal, can make the user can freely set up the mapping relation between data packet instance and the storage medium instance, and then the advantage of full play different storage medium, effectual solved accomplish many storage medium at different models aerial photography aircraft, development work volume when the polymorphic type data storage is big and repeatability is high, user operation is troublesome, portability and expansibility poor problem.
In a fourth aspect, an embodiment of the present invention provides a movable platform, including: a body; the power system is arranged on the machine body and used for providing power for the movable platform; the system comprises a machine body, a plurality of sensors, a data processing module and a data processing module, wherein the plurality of sensors are arranged on the machine body and used for sensing environmental information and state information of a movable platform and generating at least one data packet; the system comprises one or more processors, a data processing module and a data processing module, wherein the one or more processors are used for receiving at least one data packet through a preset API (application program interface) and acquiring the attribute characteristics of the data packet; and selecting a target storage medium from a plurality of preset storage media according to the attribute characteristics of the data packet, and writing the data packet into the target storage medium.
In a fifth aspect, an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the data packet writing method provided in the first aspect of the present disclosure, and therefore, the computer-readable storage medium includes all the beneficial effects of the data packet writing method provided in the first aspect of the present disclosure, and therefore, the description is omitted here.
Drawings
FIG. 1 illustrates a flow diagram of a data packet writing method provided in accordance with one embodiment of the present description;
FIG. 2 is a diagram illustrating features of different types of data packets in a data packet writing method according to an embodiment of the present disclosure;
FIG. 3 is a diagram illustrating characteristics of different storage media in a packet writing method provided in accordance with one embodiment of the present description;
FIG. 4 illustrates a flow diagram of a data packet writing method provided in accordance with another embodiment of the present description;
FIG. 5 illustrates a flow diagram of a data packet writing method provided in accordance with yet another embodiment of the present description;
FIG. 6 illustrates a flow diagram of a data packet writing method provided in accordance with yet another embodiment of the present description;
FIG. 7 illustrates a flow diagram of a data packet writing method provided in accordance with yet another embodiment of the present description;
FIG. 8 illustrates a flow diagram of a data packet writing method provided in accordance with yet another embodiment of the present description;
FIG. 9 illustrates a flow diagram of a data packet writing method provided in accordance with yet another embodiment of the present description;
fig. 10 is a block diagram illustrating a structure of a packet writing apparatus provided according to an embodiment of the present specification;
fig. 11 is a block diagram showing a configuration of a packet writing apparatus provided according to another embodiment of the present specification;
FIG. 12 illustrates a schematic diagram of a system framework in a packet writing device provided in accordance with one embodiment of the present description;
fig. 13 is a block diagram showing a configuration of a control terminal provided according to an embodiment of the present specification;
FIG. 14 illustrates a block diagram of a movable platform provided in accordance with one embodiment of the present description;
FIG. 15 illustrates a block diagram of a moveable platform provided in accordance with one embodiment of the present description.
Detailed Description
In order that the above objects, features and advantages of the present specification may be more clearly understood, a more particular description of the present specification is rendered by reference to the appended drawings, which are appended to the following detailed description. It should be noted that the embodiments and features of the embodiments in the present specification may be combined with each other without conflict.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present specification, however, the present specification may be practiced in other ways than those specifically described herein, and therefore the scope of the present specification is not limited by the specific embodiments disclosed below.
A data packet writing method, a data packet writing apparatus, a control terminal, a movable platform, and a computer-readable storage medium according to some embodiments of the present description are described below with reference to fig. 1 to 15.
As shown in fig. 1, in an embodiment of the present invention, there is provided a packet writing method, including:
s102, receiving at least one data packet through a preset API (application program interface) and acquiring attribute characteristics of the data packet;
s104, according to the attribute characteristics of the data packet, selecting a target storage medium from a plurality of preset storage media, and writing the data packet into the target storage medium.
In the embodiment, at least one data packet is received through a preset API interface, wherein the preset API interface is a uniform API interface designated by a user, and all kinds of data packets are received through the uniform API interface, so that the problems of large development workload and high repeatability caused by the development of different APIs due to different storage media are avoided.
Further, after the data packet is received, the attribute characteristics of the data packet are obtained, and a target storage medium for storing the data packet is selected from a plurality of preset storage media according to the attribute characteristics of the data packet. Specifically, as shown in fig. 2 and 3, different data packets have different types, such as frequency, size, and the like, and different indexes of different storage media, so that the data packets are stored in the storage media having indexes matching with the attribute characteristics of the data packets according to the attribute characteristics of the data packets, thereby effectively solving the problem that storage IO (Input/Output) bandwidth and storage space compete with each other in the stored data, and simultaneously solving the problem that the data packets generated during the operation of the device, such as an aerial vehicle, are stored in the appropriate storage media in real time under the condition that the storage space and the bandwidth are limited.
In an inventive embodiment of the present description, further, the attribute features include one or more of the following: the file size of the data packet, the frequency of the data packet, the configuration information corresponding to the data packet and the caching possibility information of the data packet.
In this embodiment, the attribute characteristics of the data packet include a file size of the data packet, a frequency of the data packet, configuration information corresponding to the data packet, and cacheability information of the data packet, where the size of the data packet is the file size of the data packet, and the attribute may include a storage medium space required for storing the data packet. The frequency of the data packets may include the number of times the same type of data packet occurs per unit time. The configuration information corresponding to the data package may include whether the data package is specified by a user or a developer to be stored in a specified storage medium, for example, if the data package of "photo" is specified by the user to be stored in a storage medium of "TF (Trans-Flash) card", the configuration information of "store in TF card" is bound with the data package of "photo" through a configuration file. The cacheable information of the data packet indicates whether the data packet can be cached in a cache region such as a memory or not in the process of writing the data packet into the corresponding storage medium, if so, the data packet is cached into the cache region after being received and before being written into the corresponding target storage medium, and then the data packet is extracted from the cache region and written into the target storage medium. And if the data packet cannot be cached, directly writing the data packet into the target storage medium through an idle thread in the corresponding thread pool.
In an embodiment of the present invention in this specification, as shown in fig. 4, the step of obtaining the attribute characteristics of the data packet specifically includes:
s402, acquiring complete information of the data packet, and determining whether the data packet is a complete data packet according to the complete information of the data packet;
s404, when the data packet is a complete data packet, selecting a target storage medium from a plurality of preset storage media.
In this embodiment, after receiving a data packet, the storage engine triggers the message listener to obtain complete information of the data packet, and further determines whether the data packet is a complete data packet. In the process of generating, transmitting and receiving the data packet, the risk of data damage exists, so before the target storage medium corresponding to the data packet is determined, the integrity of the data packet needs to be checked, the corresponding target storage medium is only allocated to the complete data packet, and the risk of storing the damaged data packet can be avoided.
In an embodiment of the present disclosure, each of the predetermined storage media corresponds to a predetermined thread pool; after the step of selecting a target storage medium among a plurality of preset storage media, the writing method further includes: and distributing the data packet to a thread pool corresponding to the target storage medium, so that the data packet is stored to the target storage medium through an idle thread in the thread pool.
In this embodiment, each preset storage medium corresponds to a preset thread pool, and specifically, the corresponding relationship may be preset by software or specified by a user or a developer. After a target storage medium of a data packet is selected from preset storage media, the data packet is distributed to a thread pool corresponding to the target storage medium, so that the data packet is stored to the target storage medium through an idle thread in the thread pool.
In an embodiment of the present invention, further, the step of obtaining attribute characteristics of the data packet further includes: and based on the data packet being an incomplete data packet, discarding the data packet.
In this embodiment, after receiving a data packet, the storage engine triggers the message listener to obtain complete information of the data packet, and further determines whether the data packet is a complete data packet. If the data packet is an incomplete data packet, the file damage of the data packet occurs in the transmission process, the data packet is an invalid data packet, and the data packet is discarded at the moment, so that the waste of resources and storage space is avoided.
In an embodiment of the invention of this specification, further, the data packet writing method further includes: and receiving the configuration file sent by the control terminal.
In this embodiment, the control terminal is a terminal held by a user or a developer, the configuration file may include data that can be configured by the user in a customized manner, such as a mapping relationship between attribute characteristics of the data packet and the target storage medium, and the writing process in which the user freely configures the data packet according to actual requirements may be implemented by receiving the configuration file sent by the control terminal.
In an embodiment of the invention of this specification, further, the data packet writing method further includes: and receiving a configuration instruction sent by the control terminal, and generating a configuration file according to the configuration instruction.
In the embodiment, a configuration instruction sent by a terminal held by a user or a research and development staff is received, wherein the user or the research and development staff directly writes and generates a corresponding configuration file on equipment such as a movable platform by sending the configuration instruction to the equipment, so that the writing process of freely configuring a data packet by the user according to actual requirements is realized.
In an embodiment of the invention of this specification, further, the data packet writing method further includes: and receiving a modification instruction aiming at the configuration file sent by the control terminal, and modifying the configuration file according to the modification instruction.
In this embodiment, when the corresponding configuration file is already stored locally, a user or a developer may send a modification instruction for the existing configuration file through a control terminal held by the user or the developer, and modify one or more items in the configuration file through the modification instruction, thereby implementing a dynamic and free configuration of a data packet writing process.
In an inventive embodiment of the present description, further, the configuration file includes one or more of the following: thread pool size, cache size, packet instance, and storage medium instance.
In this embodiment, the configuration file may include a thread pool size, which may correspond to at least one storage medium, for accommodating at least one thread configured to write data packets to the storage medium, wherein the thread pool size may include a number of threads that the thread pool may accommodate. The buffer size may include a space size of a buffer area available for buffering the data packet, where the buffer area may be obtained by dividing the configuration file in an operating memory or other internal storage space of a device such as a mobile platform, and the buffer size may include a space capacity available for buffering the data packet in the divided buffer area. The packet instance may include a tag for a particular packet, for example, the mobile platform may have a camera function, and after taking a picture, generate a packet of the taken picture that satisfies the instance that conforms to a "picture" packet. The data packet instance may also include the size of the data packet, e.g., for a movable platform, how many times flight data may be stored, etc. Examples of storage media include storage media names such as TF card, FLASH memory, or APP server, etc. Preferably, the configuration file may also include a storage medium corresponding to a packet specifying an instance, for example, a packet conforming to the "picture" packet instance is written to a storage medium conforming to the "TF card" instance according to a preset writing rule.
In an inventive embodiment of the present description, further, the configuration file includes configuration information for selecting the local storage medium.
In this embodiment, the configuration file includes configuration information for selecting an ontology storage medium, for example, the configuration information includes a mapping relationship between any packet instance and any local storage medium instance.
In an embodiment of the present invention of this specification, further, as shown in fig. 5, the step of determining a target storage medium corresponding to the attribute feature specifically includes:
s502, acquiring a configuration file, and determining a writing rule corresponding to the attribute information of the data packet according to the configuration file;
s504, the target storage medium is determined according to the writing rule.
In this embodiment, the configuration file is received from the control terminal, and the configuration file includes a thread pool size, a cache size, a packet instance, and a storage medium instance, and includes a write rule indicating a mapping relationship between a specific packet instance and a specific storage medium instance, specifically, a mapping relationship between an attribute feature of the packet instance and a target storage medium. Specifically, after a data packet is received and the attribute characteristics of the data packet are acquired, a write rule corresponding to the corresponding attribute characteristics is acquired according to a configuration file, a target storage medium corresponding to the data packet is determined according to the write rule, and the data packet is written into the corresponding target storage medium according to the write rule.
In an embodiment of the present invention in this specification, further, as shown in fig. 6, each storage medium corresponds to a preconfigured thread pool, and before the step of writing the data packet to the target storage medium, the writing method further includes:
s602, determining a thread pool corresponding to the data packet;
s604, calling a first idle thread in the thread pool to cache the data packet to a cache region.
In this embodiment, each storage medium is assigned a preconfigured thread pool according to the configuration file, wherein each thread in the thread pool is used to write a data packet to the corresponding storage medium. Specifically, in the initialization process, the system loads a user configuration file, initializes a thread pool according to the configuration file, registers a message listener for intercepting each data packet, specifically, the data packet is a cacheable data packet and a target storage medium corresponding to the data packet according to the attribute characteristics of the data packet, and distributes the data packet to the thread pool corresponding to the target storage medium. After receiving the non-matched data packet, the thread pool calls a first idle thread to cache the data packet to a cache region based on the data packet being a cacheable data packet.
In an embodiment of the invention of this specification, further, the data packet writing method further includes: setting a cache region in a preset storage space according to the configuration file; the buffer area is used for buffering at least one data packet.
In this embodiment, a cache area is set in a preset storage space according to a configuration file. Specifically, the preset storage space may be a running Memory (RAM) or any self-configured Memory. The configuration file further comprises the required size of a cache region, the cache region with the specified size is divided in the specified storage space according to the configuration file, and under the condition that the data packet is a cacheable data packet, the data packet is cached to the cache region through a first idle thread in the thread pool.
Because the attribute characteristics of the data packets are different, for a data packet with higher frequency and smaller size, if the data packet is directly written into the storage medium, the storage medium IO blocking can be caused, and the writing time is long.
In an embodiment of the present invention in the present specification, further, as shown in fig. 7, the step of writing the data packet to the target storage medium includes:
s702, reading a plurality of data packets in the cache region, and merging the data packets to generate merged data packets;
s704, the merged data packet is written into the target storage medium.
In this embodiment, in the process of writing the data packet into the target storage medium, for the data packet with higher frequency and smaller size, if the data packet is directly written into the storage medium, IO blocking of the storage medium may be caused, the writing time is long, and the writing efficiency of the data packet is reduced. Under the condition, the 'fragmented' data packets with higher frequency and smaller file size are preferentially cached in the cache region, the merging operation is performed on the plurality of data packets in the cache region to generate a complete merged data packet, and the merged data packet is written into the target storage medium, so that the blockage of the 'fragmented' data packet to the target storage medium IO in the writing process can be effectively reduced, and the writing speed of the data packet is effectively improved.
In an embodiment of the present invention of this specification, further, as shown in fig. 8, the step of writing the data packet to the target storage medium includes:
s802, acquiring a target storage medium corresponding to the data packet and sequence information corresponding to the data packet;
s804, a second idle thread in the thread pool is called to write the data packet into the target storage medium according to the sequence information.
In this embodiment, for a data packet cached in the cache area but not required to be merged or not meeting the merging execution condition, a corresponding thread pool is selected according to a target storage medium corresponding to each data packet in the data packet, a second idle thread in the corresponding thread pool is called, and the data packet is written in the target storage medium according to the sequence information. Specifically, the sequence information may be a sequence in which the data packets are cached in the cache region, and since the write bandwidth of the target storage medium is limited, when a large number of data packets are simultaneously written in the target storage medium, IO congestion of the target storage medium may be caused, at this time, the data packets are preferentially written in the cache region, and "queuing" is performed for a plurality of data packets according to the cache sequence, and a second idle thread is invoked to write the data packets in the target storage medium according to the queuing sequence, so that IO congestion caused by insufficient bandwidth of the storage medium may be effectively avoided, and the write efficiency of the data packets is improved.
It can be understood that caching the data packet in the cache region first, and then storing the data packet in the target storage medium belongs to an asynchronous storage mode.
In an embodiment of the present invention of the present specification, further, the step of performing a merge operation on a plurality of data packets to generate a merged data packet includes: and if the number of the plurality of data packets meets the preset merging condition, merging the plurality of data packets to generate a merged data packet.
In this embodiment, when performing a merge operation on a plurality of data packets in the cache area, based on a preset merge condition, if the number of the plurality of data packets meets the preset merge condition, the merge operation is performed, the plurality of data packets are included, a merged data packet is generated, and the merged data packet is stored in the target storage medium.
In an embodiment of the present invention in this specification, further, as shown in fig. 9, the step of writing the data packet to the target storage medium further includes:
s902, determining a thread pool corresponding to the data packet;
and S904, calling idle threads in the thread pool to directly write the data packet into the target storage medium.
In this embodiment, for the case that the cacheability information is not cacheable or not in the attribute characteristics of the data packet, or the configuration file indicates that the data packet needs to be directly written to the storage medium, when writing the data packet to the target storage medium, the thread pool corresponding to the data packet needs to be determined first. Specifically, a target storage medium corresponding to the data packet is determined according to the attribute characteristics of the data packet, a thread pool corresponding to the data packet is further determined according to a thread pool allocated to the target storage medium, the data packet is further allocated to the corresponding thread pool, an idle thread in the thread pool is called, and the data packet is directly written into the target storage medium.
It is understood that direct writing to the target storage medium is in a synchronous manner.
In an embodiment of the invention of this specification, further, the data packet writing method further includes: and if the residual space of the target storage medium is smaller than a preset space threshold value, deleting at least one data packet in all the data packets.
In this embodiment, when the remaining space of the target storage medium is smaller than the preset space threshold, in order to ensure that the subsequent data packets can be successfully written into the target storage medium, at least one data packet of all the data packets stored in the target storage medium is deleted until the remaining space of the target storage medium is not smaller than the preset space threshold, that is, the writing condition of the latest data packet is satisfied, so as to ensure that the data packet may not be lost.
Optionally, at least one data packet with a lower priority is deleted based on the priority of each data packet in all data packets in the target storage medium.
In an embodiment of the invention of this specification, further, the data packet writing method further includes: and if the residual space of the target storage medium is smaller than the preset space threshold, deleting at least one data packet with the earliest writing time according to the writing time of all data packets in the target storage medium.
In another embodiment, the storage batch of the data packet may also be configured. For example, for an aerial photography aircraft, only 3 times of aerial photography data can be saved, and when new aerial photography data needs to be saved, the earliest one-time aerial photography data is deleted, so that data loss caused by insufficient storage space of the aerial photography aircraft during multiple flights is avoided.
By the above mode, dynamic rolling storage of data can be realized.
In this embodiment, if the remaining space of the target storage medium is smaller than the preset space threshold, that is, the remaining space is insufficient to satisfy the writing condition of the latest data packet, at least one data packet with the earliest writing time is deleted according to the writing time sequence of all data packets in the target storage medium, and optionally, the "oldest" data packet is deleted according to the writing time sequence of the data packets, so as to implement dynamic rolling writing of the data packets in the target storage medium, and avoid data loss due to insufficient storage space.
In an embodiment of the invention of this specification, further, the data packet writing method further includes: and if the residual space of the target storage medium is smaller than the size of the data packet to be written into the target storage medium in the thread pool corresponding to the target storage medium, deleting at least one data packet in all the data packets according to the writing time of all the data packets in the target storage medium until the residual space of the target storage medium is larger than the size of the data packet to be written into the target storage medium.
In this embodiment, when the thread pool receives a data packet, the system determines the size of the remaining space of the target storage medium corresponding to the data packet, and if the remaining space of the target storage medium is smaller than the size of the data packet to be written, that is, the remaining space of the current target storage medium is not enough to store the data packet, in order to ensure smooth writing of the data packet, at least one data packet of all the data packets is deleted according to the writing time of all the data packets in the target storage medium, and optionally, the "oldest" data packet is deleted according to the writing time sequence of the data packets until the remaining space of the target storage medium is larger than the size of the data packet to be written in the target storage medium, thereby implementing dynamic rolling writing of the data packet in the target storage medium and avoiding data loss due to insufficient storage space.
In an inventive embodiment of the present specification, further, the target storage medium comprises at least one or more of: TF card, NAND flash memory, external storage terminal, APP server.
In this embodiment, the target storage medium includes a TF card, such as an expansion memory card, which is removably installed in the removable platform, as shown in fig. 3, the TF card has the characteristics of large space, large link bandwidth and small IO bandwidth. The target storage medium further comprises a NAND flash memory (NAND flash memory), the NAND flash memory is integrated on the mainboard, and the target storage medium has the characteristics of small space, large link bandwidth and small IO bandwidth.
The external storage terminal comprises a control terminal, such as a remote controller, a smart phone, an upper computer control terminal and the like, the external storage terminal is generally a complete hardware terminal and comprises a processor, a communication device and a memory, the external storage terminal is mutually connected with a movable platform (such as an unmanned aerial vehicle) through the communication device, for example, the unmanned aerial vehicle shoots a video file in an aerial shooting process, one or more data packets corresponding to the video file are generated, the data packets are sent to the external storage terminal through wireless transmission between the external storage terminal and the unmanned aerial vehicle, and after the external storage terminal receives the data packets through the communication device, the data packets are written into the memory of the external storage terminal through the processor of the external storage terminal.
The APP server comprises a cloud server, the data packet is uploaded to the APP server at the cloud end by the aid of a movable platform (such as an unmanned aerial vehicle) through network connection of the movable platform, and the APP server writes the data packet into a cloud storage space after receiving the data packet.
In an inventive embodiment of the present description, further, the packet writing method is applied to a movable platform.
Further, the removable platform comprises communication means, which can be used to interact with external storage terminals and/or APP servers;
the method for writing the data packet into the target storage medium based on the target storage medium being the external storage terminal and/or the APP server specifically comprises the following steps:
and calling the communication device to send the data packet and the write-in instruction corresponding to the data packet to the external storage terminal and/or the APP server so that the external storage terminal and/or the APP server writes the data packet according to the write-in instruction.
In this embodiment, the data packet writing method is applied to a movable platform, optionally comprising an unmanned aerial vehicle having power means, control means, storage means, energy storage means, communication means and photographing means. The energy storage device provides energy for the power device, the power device drives the unmanned aerial vehicle to fly under the control of the control device, receives a control instruction of the control terminal through the communication device, and controls the shooting device to shoot images/videos according to the control instruction.
During the working process of the unmanned aerial vehicle, various data packets can be generated along with the flight/shooting work, such as a flight log data packet for recording a flight procedure, a received control/debugging instruction data packet, an image data packet generated when an image/video is taken, and the like, wherein, the attribute characteristics of each data packet are different, such as small size and high frequency of log data packets, since the video data packets are small in frequency and large in size, it is preferable to store different data packets in different storage media, under the condition that a user feels no, the multi-type data with different frequencies and sizes are automatically distributed to different storage media (such as TF cards, NAND flash memories, external storage terminals, APP servers and the like) to be processed and stored under the limitation of different storage medium storage spaces and performance bandwidths corresponding to the unmanned aerial vehicle.
Under the condition that the storage medium is an external storage terminal and/or an APP server, the movable platform interacts with the external storage terminal and the APP server through the communication device, the data packet and the corresponding writing instruction are sent to the corresponding external storage terminal and the APP server through calling the communication device, and the external storage terminal and/or the APP server writes the data packet into the storage space of the external storage terminal and/or the APP server according to the writing instruction after receiving the data packet and the writing instruction.
Specifically, research personnel of the movable platform (unmanned aerial vehicle) combine system characteristics to specify items such as a thread pool size, a cache area size, a data packet instance, a storage medium instance and the like by setting a configuration file, so that the movable platform dynamically selects different storage positions of different data packets based on software. For consumer users, storage media may also be dynamically selected by a particular APP. For example, a user with a need for confidential data protection may select a local storage medium.
In the process of powering on and initializing the movable platform, the movable platform loads a configuration file, generates a write rule according to the configuration file, initializes the memory pool to generate a cache region, and initializes the thread pool to obtain at least one thread pool corresponding to each storage medium.
After initialization is completed, a developer can designate a preset API interface to receive various data packets and distribute the data packets to a storage engine, and the storage engine triggers a message listener to check the integrity of the data packets and determine the attribute characteristics of the data packets, including the frequency, the size, the cache possibility and the like of the data packets. Discarding incomplete data packets to ensure data correctness after data packet integrity check, for data packets which do not manually specify a storage medium, according to the attribute characteristics of the data packets, allocating a target storage medium for the data packets according to a write rule, after allocation, intercepting the data packets through a message processor, distributing the data packets to a thread pool of the target medium corresponding to the data packets, allocating idle threads to the thread pool, and selecting to cache the data packets to a cache region according to user configuration or directly writing the data packets into the target storage medium.
The configuration file can be freely configured according to the actual requirements of a user, and when the residual space of the target storage medium is insufficient, at least one data packet can be deleted according to the information such as the writing time, the priority level, the size of the data packet, the number of the data packets and the like of the data packets stored in the target storage medium, so that sufficient storage space is provided for new data packets, dynamic rolling storage is realized, and data loss caused by insufficient storage space is avoided.
As shown in fig. 10, in an embodiment of the present specification, there is provided a packet writing apparatus 10, including: a memory 12, the memory 12 having a computer program stored therein; a processor 14, the processor 14 being configured to run a computer program to implement: receiving at least one data packet through a preset API (application program interface) and acquiring attribute characteristics of the data packet; and selecting a target storage medium from a plurality of preset storage media according to the attribute characteristics of the data packet, and writing the data packet into the target storage medium.
In the embodiment, at least one data packet is received through a preset API interface, wherein the preset API interface is a uniform API interface designated by a user, and all kinds of data packets are received through the uniform API interface, so that the problems of large development workload and high repeatability caused by the development of different APIs due to different storage media are avoided.
Further, after the data packet is received, the attribute characteristics of the data packet are obtained, and a target storage medium for storing the data packet is selected from a plurality of preset storage media according to the attribute characteristics of the data packet. Specifically, as shown in fig. 2 and 3, different data packets have different types, such as frequency and size, received in a unit time, and different indexes of different storage media, so that the data packets are stored in the storage media having indexes matching with the attribute characteristics of the data packets according to the attribute characteristics of the data packets, thereby effectively solving the problem that storage IO (Input/Output) bandwidth and storage space compete with each other in the stored data, and simultaneously solving the problem that the data packets generated in the working process of the device, such as an aerial vehicle, are stored in the appropriate storage media in real time under the condition that the storage space and the bandwidth are limited.
In an inventive embodiment of the present description, further, the attribute features include one or more of the following: the file size of the data packet, the frequency of the data packet, the configuration information corresponding to the data packet and the caching possibility information of the data packet.
In this embodiment, the attribute characteristics of the data packet include a file size of the data packet, a frequency of the data packet, configuration information corresponding to the data packet, and cacheability information of the data packet, where the size of the data packet is the file size of the data packet, and the attribute may include a storage medium space required for storing the data packet. The frequency of the data packets may include the number of times the same type of data packet occurs per unit time. The configuration information corresponding to the data package may include whether the data package is specified by a user or a developer to be stored in a specified storage medium, for example, if the data package of "photo" is specified by the user to be stored in a storage medium of "TF (Trans-Flash) card", the configuration information of "store in TF card" is bound with the data package of "photo" through a configuration file. The cacheable information of the data packet indicates whether the data packet can be cached in a cache region such as a memory or not in the process of writing the data packet into the corresponding storage medium, if so, the data packet is cached into the cache region after being received and before being written into the corresponding target storage medium, and then the data packet is extracted from the cache region and written into the target storage medium. And if the data packet cannot be cached, directly writing the data packet into the target storage medium through an idle thread in the corresponding thread pool.
In an embodiment of the present invention in the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement the step of obtaining the attribute feature of the data packet, which specifically includes: acquiring complete information of a data packet, and determining whether the data packet is a complete data packet according to the complete information of the data packet; and when the data packet is a complete data packet, selecting a target storage medium from a plurality of preset storage media.
In this embodiment, after receiving a data packet, the storage engine triggers the message listener to obtain complete information of the data packet, and further determines whether the data packet is a complete data packet. In the process of generating, transmitting and receiving the data packet, the risk of data damage exists, so before the target storage medium corresponding to the data packet is determined, the integrity of the data packet needs to be checked, the corresponding target storage medium is only allocated to the complete data packet, and the risk of storing the damaged data packet can be avoided.
In an embodiment of the present disclosure, each of the predetermined storage media corresponds to a predetermined thread pool; after the step of selecting a target storage medium among a plurality of preset storage media, the writing method further includes: and distributing the data packet to a thread pool corresponding to the target storage medium, so that the data packet is stored to the target storage medium through an idle thread in the thread pool.
In this embodiment, each preset storage medium corresponds to a preset thread pool, and specifically, the corresponding relationship may be preset by software or specified by a user or a developer. After a target storage medium of a data packet is selected from preset storage media, the data packet is distributed to a thread pool corresponding to the target storage medium, so that the data packet is stored to the target storage medium through an idle thread in the thread pool.
In an embodiment of the present invention in the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement the step of obtaining the attribute feature of the data packet, and further includes: and based on the data packet being an incomplete data packet, discarding the data packet.
In this embodiment, after receiving a data packet, the storage engine triggers the message listener to obtain complete information of the data packet, and further determines whether the data packet is a complete data packet. If the data packet is an incomplete data packet, the file damage of the data packet occurs in the transmission process, the data packet is an invalid data packet, and the data packet is discarded at the moment, so that the waste of resources and storage space is avoided.
In one embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement: and receiving the configuration file sent by the control terminal.
In this embodiment, the control terminal is a terminal held by a user or a developer, the configuration file may include data that can be configured by the user in a customized manner, such as a mapping relationship between attribute characteristics of the data packet and the target storage medium, and the writing process in which the user freely configures the data packet according to actual requirements may be implemented by receiving the configuration file sent by the control terminal.
In one embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement: and receiving a configuration instruction sent by the control terminal, and generating a configuration file according to the configuration instruction.
In the embodiment, a configuration instruction sent by a terminal held by a user or a research and development staff is received, wherein the user or the research and development staff directly writes and generates a corresponding configuration file on equipment such as a movable platform by sending the configuration instruction to the equipment, so that the writing process of freely configuring a data packet by the user according to actual requirements is realized.
In one embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement: and receiving a modification instruction aiming at the configuration file sent by the control terminal, and modifying the configuration file according to the modification instruction.
In this embodiment, when the corresponding configuration file is already stored locally, a user or a developer may send a modification instruction for the existing configuration file through a control terminal held by the user or the developer, and modify one or more items in the configuration file through the modification instruction, thereby implementing a dynamic and free configuration of a data packet writing process.
In an inventive embodiment of the present description, further, the configuration file includes one or more of the following: thread pool size, cache size, packet instance, and storage medium instance.
In this embodiment, the configuration file may include a thread pool size, which may correspond to at least one storage medium, for accommodating at least one thread configured to write data packets to the storage medium, wherein the thread pool size may include a number of threads that the thread pool may accommodate. The buffer size may include a space size of a buffer area available for buffering the data packet, where the buffer area may be obtained by dividing the configuration file in an operating memory or other internal storage space of a device such as a mobile platform, and the buffer size may include a space capacity available for buffering the data packet in the divided buffer area. The packet instance may be a tag for a particular packet, for example, the mobile platform may have a camera function, and after taking a picture, generate a packet for the taken picture that satisfies an instance that conforms to a "picture" packet. The data packet instance may also include the size of the data packet, e.g., for a movable platform, how many times flight data may be stored, etc. Examples of storage media include storage media names such as TF card, FLASH memory, or APP server, etc. Preferably, the configuration file may also include a storage medium corresponding to a packet specifying an instance, for example, a packet conforming to the "picture" packet instance is written to a storage medium conforming to the "TF card" instance according to a preset writing rule.
In an inventive embodiment of the present description, further, the configuration file includes configuration information for selecting the local storage medium.
In this embodiment, the configuration file includes configuration information for selecting an ontology storage medium, for example, the configuration information includes a mapping relationship between any packet instance and any local storage medium instance.
In an embodiment of the present invention in the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement the step of determining a target storage medium corresponding to the attribute feature, which specifically includes: acquiring a configuration file, and determining a writing rule corresponding to the attribute information of the data packet according to the configuration file; the target storage medium is determined according to the writing rule.
In this embodiment, the configuration file is received from the control terminal, and the configuration file includes a thread pool size, a cache size, a packet instance, and a storage medium instance, and includes a write rule indicating a mapping relationship between a specific packet instance and a specific storage medium instance, specifically, a mapping relationship between an attribute feature of the packet instance and a target storage medium. Specifically, after a data packet is received and the attribute characteristics of the data packet are acquired, a write rule corresponding to the corresponding attribute characteristics is acquired according to a configuration file, a target storage medium corresponding to the data packet is determined according to the write rule, and the data packet is written into the corresponding target storage medium according to the write rule.
In an embodiment of the present invention in this specification, further, as shown in fig. 10, each storage medium corresponds to a preconfigured thread pool, and before the step of the processor 14 running the computer program to write the data packet to the target storage medium, the method further includes: determining a thread pool corresponding to the data packet; and calling a first idle thread in the thread pool to cache the data packet to a cache region.
In this embodiment, each storage medium is assigned a preconfigured thread pool according to the configuration file, wherein each thread in the thread pool is used to write a data packet to the corresponding storage medium. Specifically, in the initialization process, the system loads a user configuration file, initializes a thread pool according to the configuration file, registers a message listener for intercepting each data packet, specifically, the data packet is a cacheable data packet and a target storage medium corresponding to the data packet according to the attribute characteristics of the data packet, and distributes the data packet to the thread pool corresponding to the target storage medium. After receiving the non-matched data packet, the thread pool calls a first idle thread to cache the data packet to a cache region based on the data packet being a cacheable data packet.
In one embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement: setting a cache region in a preset storage space according to the configuration file; the buffer area is used for buffering at least one data packet.
In this embodiment, a cache area is set in a preset storage space according to a configuration file. Specifically, the preset storage space may be a running Memory (RAM) or any self-configured Memory. The configuration file further comprises the required size of a cache region, the cache region with the specified size is divided in the specified storage space according to the configuration file, and under the condition that the data packet is a cacheable data packet, the data packet is cached to the cache region through a first idle thread in the thread pool.
Because the attribute characteristics of the data packets are different, for a data packet with higher frequency and smaller size, if the data packet is directly written into the storage medium, the storage medium IO blocking can be caused, and the writing time is long.
In an embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement the step of writing the data packet to the target storage medium, including: reading a plurality of data packets in the cache region, and performing merging operation on the plurality of data packets to generate merged data packets; the merged data packet is written to the target storage medium.
In this embodiment, in the process of writing the data packet into the target storage medium, for the data packet with higher frequency and smaller size, if the data packet is directly written into the storage medium, IO blocking of the storage medium may be caused, the writing time is long, and the writing efficiency of the data packet is reduced. Under the condition, the 'fragmented' data packets with higher frequency and smaller file size are preferentially cached in the cache region, the merging operation is performed on the plurality of data packets in the cache region to generate a complete merged data packet, and the merged data packet is written into the target storage medium, so that the blockage of the 'fragmented' data packet to the target storage medium IO in the writing process can be effectively reduced, and the writing speed of the data packet is effectively improved.
In an embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement the step of writing the data packet to the target storage medium, including: acquiring a target storage medium corresponding to a data packet and sequence information corresponding to the data packet; and calling a second idle thread in the thread pool to write the data packet into the target storage medium according to the sequence information.
In this embodiment, for a data packet cached in the cache area but not required to be merged or not meeting the merging execution condition, a corresponding thread pool is selected according to a target storage medium corresponding to each data packet in the data packet, a second idle thread in the corresponding thread pool is called, and the data packet is written in the target storage medium according to the sequence information. Specifically, the sequence information may be a sequence in which the data packets are cached in the cache region, and since the write bandwidth of the target storage medium is limited, when a large number of data packets are simultaneously written in the target storage medium, IO congestion of the target storage medium may be caused, at this time, the data packets are preferentially written in the cache region, and "queuing" is performed for a plurality of data packets according to the cache sequence, and a second idle thread is invoked to write the data packets in the target storage medium according to the queuing sequence, so that IO congestion caused by insufficient bandwidth of the storage medium may be effectively avoided, and the write efficiency of the data packets is improved.
It can be understood that caching the data packet in the cache region first, and then storing the data packet in the target storage medium belongs to an asynchronous storage mode.
In an embodiment of the present invention in the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement the step of performing a merge operation on a plurality of data packets to generate a merged data packet, including: and if the number of the plurality of data packets meets the preset merging condition, merging the plurality of data packets to generate a merged data packet.
In this embodiment, when performing a merge operation on a plurality of data packets in the cache area, based on a preset merge condition, if the number of the plurality of data packets meets the preset merge condition, the merge operation is performed, the plurality of data packets are included, a merged data packet is generated, and the merged data packet is stored in the target storage medium.
In an embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 runs a computer program to implement the step of writing the data packet to the target storage medium, including: determining a thread pool corresponding to the data packet; and calling idle threads in the thread pool to directly write the data packet into the target storage medium.
In this embodiment, for the case that the cacheability information is not cacheable or not in the attribute characteristics of the data packet, or the configuration file indicates that the data packet needs to be directly written to the storage medium, when writing the data packet to the target storage medium, the thread pool corresponding to the data packet needs to be determined first. Specifically, a target storage medium corresponding to the data packet is determined according to the attribute characteristics of the data packet, a thread pool corresponding to the data packet is further determined according to a thread pool allocated to the target storage medium, the data packet is further allocated to the corresponding thread pool, an idle thread in the thread pool is called, and the data packet is directly written into the target storage medium.
It is understood that direct writing to the target storage medium is in a synchronous manner.
In one embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 is configured to run a computer program to implement: and if the residual space of the target storage medium is smaller than a preset space threshold value, deleting at least one data packet in all the data packets.
In this embodiment, when the remaining space of the target storage medium is smaller than the preset space threshold, in order to ensure that the subsequent data packets can be successfully written into the target storage medium, at least one data packet of all the data packets stored in the target storage medium is deleted until the remaining space of the target storage medium is not smaller than the preset space threshold, that is, the writing condition of the latest data packet is satisfied, so as to ensure that the data packet may not be lost.
Optionally, at least one data packet with a lower priority is deleted based on the priority of each data packet in all data packets in the target storage medium.
In one embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 is configured to run a computer program to implement: and if the residual space of the target storage medium is smaller than the preset space threshold, deleting at least one data packet with the earliest writing time according to the writing time of all data packets in the target storage medium.
In another embodiment, the storage batch of the data packet may also be configured. For example, for an aerial photography aircraft, only 3 times of aerial photography data can be saved, and when new aerial photography data needs to be saved, the earliest one-time aerial photography data is deleted, so that data loss caused by insufficient storage space of the aerial photography aircraft during multiple flights is avoided.
By the above mode, dynamic rolling storage of data can be realized.
In this embodiment, if the remaining space of the target storage medium is smaller than the preset space threshold, that is, the remaining space is insufficient to satisfy the writing condition of the latest data packet, at least one data packet with the earliest writing time is deleted according to the writing time sequence of all data packets in the target storage medium, and optionally, the "oldest" data packet is deleted according to the writing time sequence of the data packets, so as to implement dynamic rolling writing of the data packets in the target storage medium, and avoid data loss due to insufficient storage space.
In one embodiment of the invention of the present specification, further, as shown in fig. 10, the processor 14 is configured to run a computer program to implement: and if the residual space of the target storage medium is smaller than the size of the data packet to be written into the target storage medium in the thread pool corresponding to the target storage medium, deleting at least one data packet in all the data packets according to the writing time of all the data packets in the target storage medium until the residual space of the target storage medium is larger than the size of the data packet to be written into the target storage medium.
In this embodiment, when the thread pool receives a data packet, the system determines the size of the remaining space of the target storage medium corresponding to the data packet, and if the remaining space of the target storage medium is smaller than the size of the data packet to be written, that is, the remaining space of the current target storage medium is not enough to store the data packet, in order to ensure smooth writing of the data packet, at least one data packet of all the data packets is deleted according to the writing time of all the data packets in the target storage medium, and optionally, the "oldest" data packet is deleted according to the writing time sequence of the data packets until the remaining space of the target storage medium is larger than the size of the data packet to be written in the target storage medium, thereby implementing dynamic rolling writing of the data packet in the target storage medium and avoiding data loss due to insufficient storage space.
In an inventive embodiment of the present specification, further, as shown in fig. 10, the target storage medium includes at least one or more of: TF card, NAND flash memory, external storage terminal, APP server.
In this embodiment, the target storage medium includes a TF card, such as an expansion memory card, which is removably installed in the removable platform, as shown in fig. 3, the TF card has the characteristics of large space, large link bandwidth and small IO bandwidth. The target storage medium further comprises a NAND flash memory (NAND flash memory), the NAND flash memory is integrated on the mainboard, and the target storage medium has the characteristics of small space, large link bandwidth and small IO bandwidth.
The external storage terminal comprises a control terminal, such as a remote controller, a smart phone, an upper computer control terminal and the like, the external storage terminal is generally a complete hardware terminal and comprises a processor, a communication device and a memory, the external storage terminal is mutually connected with a movable platform (such as an unmanned aerial vehicle) through the communication device, for example, the unmanned aerial vehicle shoots a video file in an aerial shooting process, one or more data packets corresponding to the video file are generated, the data packets are sent to the external storage terminal through wireless transmission between the external storage terminal and the unmanned aerial vehicle, and after the external storage terminal receives the data packets through the communication device, the data packets are written into the memory of the external storage terminal through the processor of the external storage terminal.
The APP server comprises a cloud server, the data packet is uploaded to the APP server at the cloud end by the aid of a movable platform (such as an unmanned aerial vehicle) through network connection of the movable platform, and the APP server writes the data packet into a cloud storage space after receiving the data packet.
As shown in fig. 11, in an embodiment of the present invention, the data packet writing device 20 is further applied to a movable platform.
Further, the data packet writing means 20 comprises a memory 22, a processor 24 and communication means 26, the communication means 26 being capable of being used for interacting with an external storage terminal and/or APP server; the processor 24 is configured to: based on that the target storage medium is an external storage terminal and/or an APP server, calling the communication device 26 to send the data packet and a write-in instruction corresponding to the data packet to the external storage terminal and/or the APP server, so that the external storage terminal and/or the APP server writes in the data packet according to the write-in instruction.
In this embodiment, the data packet writing method is applied to a movable platform, optionally comprising an unmanned aerial vehicle having power means, control means, storage means, energy storage means, communication means and photographing means. The energy storage device provides energy for the power device, the power device drives the unmanned aerial vehicle to fly under the control of the control device, receives a control instruction of the control terminal through the communication device, and controls the shooting device to shoot images/videos according to the control instruction.
During the working process of the unmanned aerial vehicle, various data packets can be generated along with the flight/shooting work, such as a flight log data packet for recording a flight procedure, a received control/debugging instruction data packet, an image data packet generated when an image/video is taken, and the like, wherein, the attribute characteristics of each data packet are different, such as small size and high frequency of log data packets, since the video data packets are small in frequency and large in size, it is preferable to store different data packets in different storage media, under the condition that a user feels no, the multi-type data with different frequencies and sizes are automatically distributed to different storage media (such as TF cards, NAND flash memories, external storage terminals, APP servers and the like) to be processed and stored under the limitation of different storage medium storage spaces and performance bandwidths corresponding to the unmanned aerial vehicle.
Under the condition that the storage medium is an external storage terminal and/or an APP server, the movable platform interacts with the external storage terminal and the APP server through the communication device, the data packet and the corresponding writing instruction are sent to the corresponding external storage terminal and the APP server through calling the communication device, and the external storage terminal and/or the APP server writes the data packet into the storage space of the external storage terminal and/or the APP server according to the writing instruction after receiving the data packet and the writing instruction.
Specifically, research personnel of the movable platform (unmanned aerial vehicle) combine system characteristics to specify items such as a thread pool size, a cache area size, a data packet instance, a storage medium instance and the like by setting a configuration file, so that the movable platform dynamically selects different storage positions of different data packets based on software. For consumer users, storage media may also be dynamically selected by a particular APP. For example, a user with a need for confidential data protection may select a local storage medium.
In the process of powering on and initializing the movable platform, the movable platform loads a configuration file, generates a write rule according to the configuration file, initializes the memory pool to generate a cache region, and initializes the thread pool to obtain at least one thread pool corresponding to each storage medium.
After initialization is completed, a developer can designate a preset API interface to receive various data packets and distribute the data packets to a storage engine, and the storage engine triggers a message listener to check the integrity of the data packets and determine the attribute characteristics of the data packets, including the frequency, the size, the cache possibility and the like of the data packets. Discarding incomplete data packets to ensure data correctness after data packet integrity check, for data packets which do not manually specify a storage medium, according to the attribute characteristics of the data packets, allocating a target storage medium for the data packets according to a write rule, after allocation, intercepting the data packets through a message processor, distributing the data packets to a thread pool of the target medium corresponding to the data packets, allocating idle threads to the thread pool, and selecting to cache the data packets to a cache region according to user configuration or directly writing the data packets into the target storage medium.
The configuration file can be freely configured according to the actual requirements of a user, and when the residual space of the target storage medium is insufficient, at least one data packet can be deleted according to the information such as the writing time, the priority level, the size of the data packet, the number of the data packets and the like of the data packets stored in the target storage medium, so that sufficient storage space is provided for new data packets, dynamic rolling storage is realized, and data loss caused by insufficient storage space is avoided.
Further, the packet writing device automatically distributes different packets to different parking space media through a system framework as shown in fig. 12, which implements packet integrity check based on an internal message listener and a message processor, and automatically selects and distributes packets to a specific storage medium for storage.
The parameters of the framework can be configured, and a user can configure the size of the thread pool by combining the storage medium, the system load and the data type. Support tasks are bound to special threads. The support task is bound to the storage medium.
Meanwhile, when the data packet is written in, an asynchronous storage mode and a synchronous storage mode are specifically included, under the condition of the asynchronous storage mode, a buffer and a cache can be selected and used for storing the asynchronously stored data packet, and the bandwidth pressure of a storage medium can be reduced for high-frequency small data. And the synchronous storage mode directly writes the data packet into the corresponding target storage medium.
The data packets are intercepted by the message processor and distributed to the thread pools corresponding to different storage media, and it can be understood that other data packet processing modes can be customized.
The message listener can be used for checking the frequency, size and other attribute characteristics of the data packet, performing integrity check, and automatically selecting a target storage medium for the data packet according to a write rule according to the attribute characteristics of the data packet under the condition that the data packet is an integral data packet.
As shown in fig. 13, in an embodiment of the present invention, there is provided a control terminal 30, the control terminal 30 being capable of being used for interacting with a user and for communicating with a packet writing device provided in the second embodiment of the present specification, the control terminal 30 including: a memory 32, the memory 32 having a computer program stored therein; a processor 34, the processor 34 being configured to run a computer program to implement: receiving a setting operation input by a user; and generating a configuration file according to the setting operation, and sending the configuration file to the data packet writing device.
In this embodiment, the control terminal 30 receives a setting operation input by a user, and generates a corresponding profile according to the setting operation. The control terminal 30 is a terminal held by a developer or a general user, and the control terminal 30 is provided with a corresponding human-computer interaction interface, such as a touch screen, a keyboard, a voice recognition device, and the like, receives a setting operation input by the user through the interpersonal interaction interface, and generates a corresponding configuration file according to the setting operation input by the user through the processor 34. Meanwhile, the control terminal 30 may also communicate with the packet writing device to send a configuration file generated according to a setting operation input by a user to the packet writing device, to implement all custom settings of packet writing rules, and to update in real time.
In one embodiment of the invention of the present specification, further, as shown in fig. 13, the processor 34 is configured to run the computer program to implement: and generating a corresponding configuration instruction according to the setting operation, and sending the configuration instruction to the data packet writing device.
In this embodiment, after receiving the setting operation input by the user, the control terminal 30 generates a corresponding configuration instruction according to the setting operation through the processor 34, where the configuration instruction is used to control the packet writing device to generate a corresponding configuration file, that is, the configuration file is directly generated by remotely controlling the packet writing device through the control terminal 30.
In one embodiment of the invention of the present specification, further, as shown in fig. 13, the processor 34 is configured to run the computer program to implement: and generating a modification instruction aiming at the configuration file according to the setting operation, and sending the modification instruction to the data packet writing device.
In this embodiment, after receiving the setting operation input by the user, the control terminal 30 generates, by the processor 34, a modification instruction for the existing configuration file of the packet writing device according to the setting operation, where the modification instruction is used to instruct the packet writing device to modify the existing configuration file, that is, the control terminal 30 remotely controls the packet writing device to modify the existing configuration file, so as to implement the customized modification of the configuration file in real time.
As shown in fig. 14, in an embodiment of the present invention, there is provided a movable platform 40, the movable platform 40 including: a body 42; the power system 44 is arranged on the machine body 42, and the power system 44 is used for providing power for the movable platform; the sensors 46 are arranged on the machine body, and the sensors 46 are used for sensing the environmental information and the state information of the movable platform and generating at least one data packet; one or more processors 48, configured to receive at least one data packet through a preset API interface and obtain attribute characteristics of the data packet; and selecting a target storage medium from a plurality of preset storage media according to the attribute characteristics of the data packet, and writing the data packet into the target storage medium.
In this embodiment, the movable platform 40 receives at least one data packet through a preset API interface, where the preset API interface is a unified API interface specified by a user, and receives all kinds of data packets through the unified API interface, so as to avoid the problem of development workload and high repeatability due to different APIs being developed according to different storage media.
Further, after the data packet is received, the attribute characteristics of the data packet are obtained, and a target storage medium for storing the data packet is selected from a plurality of preset storage media according to the attribute characteristics of the data packet. Specifically, as shown in fig. 2 and 3, different data packets have different types, such as frequency, size, and the like, and different indexes of different storage media, so that the data packets are stored in the storage media having indexes matching with the attribute characteristics of the data packets according to the attribute characteristics of the data packets, thereby effectively solving the problem that storage IO (Input/Output) bandwidth and storage space compete with each other in the stored data, and simultaneously solving the problem that the data packets generated during the operation of the device, such as an aerial vehicle, are stored in the appropriate storage media in real time under the condition that the storage space and the bandwidth are limited.
In an inventive embodiment of the present description, further, the attribute features include one or more of the following: the file size of the data packet, the frequency of the data packet, the configuration information corresponding to the data packet and the caching possibility information of the data packet.
In this embodiment, the attribute characteristics of the data packet include a file size of the data packet, a frequency of the data packet, configuration information corresponding to the data packet, and cacheability information of the data packet, where the size of the data packet is the file size of the data packet, and the attribute may include a storage medium space required for storing the data packet. The frequency of the data packets may include the number of times the same type of data packet occurs per unit time. The configuration information corresponding to the data package may include whether the data package is specified by a user or a developer to be stored in a specified storage medium, for example, if the data package of "photo" is specified by the user to be stored in a storage medium of "TF (Trans-Flash) card", the configuration information of "store in TF card" is bound with the data package of "photo" through a configuration file. The cacheable information of the data packet indicates whether the data packet can be cached in a cache region such as a memory or not in the process of writing the data packet into the corresponding storage medium, if so, the data packet is cached into the cache region after being received and before being written into the corresponding target storage medium, and then the data packet is extracted from the cache region and written into the target storage medium. And if the data packet cannot be cached, directly writing the data packet into the target storage medium through an idle thread in the corresponding thread pool.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: acquiring complete information of a data packet, and determining whether the data packet is a complete data packet according to the complete information of the data packet; and when the data packet is a complete data packet, selecting a target storage medium from a plurality of preset storage media.
In this embodiment, after receiving a data packet, the storage engine triggers the message listener to obtain complete information of the data packet, and further determines whether the data packet is a complete data packet. In the process of generating, transmitting and receiving the data packet, the risk of data damage exists, so before the target storage medium corresponding to the data packet is determined, the integrity of the data packet needs to be checked, the corresponding target storage medium is only allocated to the complete data packet, and the risk of storing the damaged data packet can be avoided.
In an embodiment of the present invention, as shown in fig. 14, each preset storage medium corresponds to a preset thread pool; the processor 48 is further configured to: and distributing the data packet to a thread pool corresponding to the target storage medium, so that the data packet is stored to the target storage medium through an idle thread in the thread pool.
In this embodiment, each preset storage medium corresponds to a preset thread pool, and specifically, the corresponding relationship may be preset by software or specified by a user or a developer. After a target storage medium of a data packet is selected from preset storage media, the data packet is distributed to a thread pool corresponding to the target storage medium, so that the data packet is stored to the target storage medium through an idle thread in the thread pool.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: and based on the data packet being an incomplete data packet, discarding the data packet.
In this embodiment, after receiving a data packet, the storage engine triggers the message listener to obtain complete information of the data packet, and further determines whether the data packet is a complete data packet. If the data packet is an incomplete data packet, the file damage of the data packet occurs in the transmission process, the data packet is an invalid data packet, and the data packet is discarded at the moment, so that the waste of resources and storage space is avoided.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: and receiving the configuration file sent by the control terminal.
In this embodiment, the control terminal is a terminal held by a user or a developer, the configuration file may include data that can be configured by the user in a customized manner, such as a mapping relationship between attribute characteristics of the data packet and the target storage medium, and the writing process in which the user freely configures the data packet according to actual requirements may be implemented by receiving the configuration file sent by the control terminal.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: and receiving a configuration instruction sent by the control terminal, and generating a configuration file according to the configuration instruction.
In the embodiment, a configuration instruction sent by a terminal held by a user or a research and development staff is received, wherein the user or the research and development staff directly writes and generates a corresponding configuration file on equipment such as a movable platform by sending the configuration instruction to the equipment, so that the writing process of freely configuring a data packet by the user according to actual requirements is realized.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: and receiving a modification instruction aiming at the configuration file sent by the control terminal, and modifying the configuration file according to the modification instruction.
In this embodiment, when the corresponding configuration file is already stored locally, a user or a developer may send a modification instruction for the existing configuration file through a control terminal held by the user or the developer, and modify one or more items in the configuration file through the modification instruction, thereby implementing a dynamic and free configuration of a data packet writing process.
In an inventive embodiment of the present description, further, the configuration file includes one or more of the following: thread pool size, cache size, packet instance, and storage medium instance.
In this embodiment, the configuration file may include a thread pool size, which may correspond to at least one storage medium, for accommodating at least one thread configured to write data packets to the storage medium, wherein the thread pool size may include a number of threads that the thread pool may accommodate. The buffer size may include a space size of a buffer area available for buffering the data packet, where the buffer area may be obtained by dividing the configuration file in an operating memory or other internal storage space of a device such as a mobile platform, and the buffer size may include a space capacity available for buffering the data packet in the divided buffer area. The packet instance may include a tag for a particular packet, for example, the mobile platform may have a camera function, and after taking a picture, a packet of the taken picture is generated, i.e., the packet conforms to an instance of a "picture" packet. The data packet instance may also include the size of the data packet, e.g., for a movable platform, how many times flight data may be stored, etc. Examples of storage media include storage media names such as TF card, FLASH memory, or APP server, etc. Preferably, the configuration file may also include a storage medium corresponding to a packet specifying an instance, for example, a packet conforming to the "picture" packet instance is written to a storage medium conforming to the "TF card" instance according to a preset writing rule.
In an inventive embodiment of the present description, further, the configuration file includes configuration information for selecting the local storage medium.
In this embodiment, the configuration file includes configuration information for selecting an ontology storage medium, for example, the configuration information includes a mapping relationship between any packet instance and any local storage medium instance.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: acquiring a configuration file, and determining a writing rule corresponding to the attribute information of the data packet according to the configuration file; the target storage medium is determined according to the writing rule.
In this embodiment, the configuration file is received from the control terminal, and the configuration file includes a thread pool size, a cache size, a packet instance, and a storage medium instance, and includes a write rule indicating a mapping relationship between a specific packet instance and a specific storage medium instance, specifically, a mapping relationship between an attribute feature of the packet instance and a target storage medium. Specifically, after a data packet is received and the attribute characteristics of the data packet are acquired, a write rule corresponding to the corresponding attribute characteristics is acquired according to a configuration file, a target storage medium corresponding to the data packet is determined according to the write rule, and the data packet is written into the corresponding target storage medium according to the write rule.
In an embodiment of the present invention of the present specification, further, as shown in fig. 14, each storage medium corresponds to a preconfigured thread pool, and the processor 48 is further configured to: determining a thread pool corresponding to the data packet; and calling a first idle thread in the thread pool to cache the data packet to a cache region.
In this embodiment, each storage medium is assigned a preconfigured thread pool according to the configuration file, wherein each thread in the thread pool is used to write a data packet to the corresponding storage medium. Specifically, in the initialization process, the system loads a user configuration file, initializes a thread pool according to the configuration file, registers a message listener for intercepting each data packet, specifically, the data packet is a cacheable data packet and a target storage medium corresponding to the data packet according to the attribute characteristics of the data packet, and distributes the data packet to the thread pool corresponding to the target storage medium. After receiving the non-matched data packet, the thread pool calls a first idle thread to cache the data packet to a cache region based on the data packet being a cacheable data packet.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: setting a cache region in a preset storage space according to the configuration file; the buffer area is used for buffering at least one data packet.
In this embodiment, a cache area is set in a preset storage space according to a configuration file. Specifically, the preset storage space may be a running Memory (RAM) or any self-configured Memory. The configuration file further comprises the required size of a cache region, the cache region with the specified size is divided in the specified storage space according to the configuration file, and under the condition that the data packet is a cacheable data packet, the data packet is cached to the cache region through a first idle thread in the thread pool.
Because the attribute characteristics of the data packets are different, for a data packet with higher frequency and smaller size, if the data packet is directly written into the storage medium, the storage medium IO blocking can be caused, and the writing time is long.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: reading a plurality of data packets in the cache region, and performing merging operation on the plurality of data packets to generate merged data packets; the merged data packet is written to the target storage medium.
In this embodiment, in the process of writing the data packet into the target storage medium, for the data packet with higher frequency and smaller size, if the data packet is directly written into the storage medium, IO blocking of the storage medium may be caused, the writing time is long, and the writing efficiency of the data packet is reduced. Under the condition, the 'fragmented' data packets with higher frequency and smaller file size are preferentially cached in the cache region, the merging operation is performed on the plurality of data packets in the cache region to generate a complete merged data packet, and the merged data packet is written into the target storage medium, so that the blockage of the 'fragmented' data packet to the target storage medium IO in the writing process can be effectively reduced, and the writing speed of the data packet is effectively improved.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: acquiring a target storage medium corresponding to a data packet and sequence information corresponding to the data packet; and calling a second idle thread in the thread pool to write the data packet into the target storage medium according to the sequence information.
In this embodiment, for a data packet cached in the cache area but not required to be merged or not meeting the merging execution condition, a corresponding thread pool is selected according to a target storage medium corresponding to each data packet in the data packet, a second idle thread in the corresponding thread pool is called, and the data packet is written in the target storage medium according to the sequence information. Specifically, the sequence information may be a sequence in which the data packets are cached in the cache region, and since the write bandwidth of the target storage medium is limited, when a large number of data packets are simultaneously written in the target storage medium, IO congestion of the target storage medium may be caused, at this time, the data packets are preferentially written in the cache region, and "queuing" is performed for a plurality of data packets according to the cache sequence, and a second idle thread is invoked to write the data packets in the target storage medium according to the queuing sequence, so that IO congestion caused by insufficient bandwidth of the storage medium may be effectively avoided, and the write efficiency of the data packets is improved.
It can be understood that caching the data packet in the cache region first, and then storing the data packet in the target storage medium belongs to an asynchronous storage mode.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: and if the number of the plurality of data packets meets the preset merging condition, merging the plurality of data packets to generate a merged data packet.
In this embodiment, when performing a merge operation on a plurality of data packets in the cache area, based on a preset merge condition, if the number of the plurality of data packets meets the preset merge condition, the merge operation is performed, the plurality of data packets are included, a merged data packet is generated, and the merged data packet is stored in the target storage medium.
In one inventive embodiment of the present description, further, as shown in fig. 14, processor 48 is further operative to: determining a thread pool corresponding to the data packet; and calling idle threads in the thread pool to directly write the data packet into the target storage medium.
In this embodiment, for the case that the cacheability information is not cacheable or not in the attribute characteristics of the data packet, or the configuration file indicates that the data packet needs to be directly written to the storage medium, when writing the data packet to the target storage medium, the thread pool corresponding to the data packet needs to be determined first. Specifically, a target storage medium corresponding to the data packet is determined according to the attribute characteristics of the data packet, a thread pool corresponding to the data packet is further determined according to a thread pool allocated to the target storage medium, the data packet is further allocated to the corresponding thread pool, an idle thread in the thread pool is called, and the data packet is directly written into the target storage medium.
It is understood that direct writing to the target storage medium is in a synchronous manner.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: and if the residual space of the target storage medium is smaller than a preset space threshold value, deleting at least one data packet in all the data packets.
In order to ensure that the subsequent data packets can be successfully written into the target storage medium, at least one data packet in all the data packets stored in the target storage medium is deleted until the remaining space of the target storage medium is not less than a preset space threshold, that is, the writing condition of the latest data packet is met, so as to ensure that the data packet is not lost.
Optionally, at least one data packet with a lower priority is deleted based on the priority of each data packet in all data packets in the target storage medium.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: and if the residual space of the target storage medium is smaller than the preset space threshold, deleting at least one data packet with the earliest writing time according to the writing time of all data packets in the target storage medium.
In another embodiment, the storage batch of the data packet may also be configured. For example, for an aerial photography aircraft, only 3 times of aerial photography data can be saved, and when new aerial photography data needs to be saved, the earliest one-time aerial photography data is deleted, so that data loss caused by insufficient storage space of the aerial photography aircraft during multiple flights is avoided.
By the above mode, dynamic rolling storage of data can be realized.
In this embodiment, if the remaining space of the target storage medium is smaller than the preset space threshold, that is, the remaining space is insufficient to satisfy the writing condition of the latest data packet, at least one data packet with the earliest writing time is deleted according to the writing time sequence of all data packets in the target storage medium, and optionally, the "oldest" data packet is deleted according to the writing time sequence of the data packets, so as to implement dynamic rolling writing of the data packets in the target storage medium, and avoid data loss due to insufficient storage space.
In an embodiment of the present invention, further, as shown in fig. 14, the processor 48 is further configured to: and if the residual space of the target storage medium is smaller than the size of the data packet to be written into the target storage medium in the thread pool corresponding to the target storage medium, deleting at least one data packet in all the data packets according to the writing time of all the data packets in the target storage medium until the residual space of the target storage medium is larger than the size of the data packet to be written into the target storage medium.
In this embodiment, when the thread pool receives a data packet, the system determines the size of the remaining space of the target storage medium corresponding to the data packet, and if the remaining space of the target storage medium is smaller than the size of the data packet to be written, that is, the remaining space of the current target storage medium is not enough to store the data packet, in order to ensure smooth writing of the data packet, at least one data packet of all the data packets is deleted according to the writing time of all the data packets in the target storage medium, and optionally, the "oldest" data packet is deleted according to the writing time sequence of the data packets until the remaining space of the target storage medium is larger than the size of the data packet to be written in the target storage medium, thereby implementing dynamic rolling writing of the data packet in the target storage medium and avoiding data loss due to insufficient storage space.
In an inventive embodiment of the present specification, further, the target storage medium includes: TF card, NAND flash memory, external storage terminal, APP server.
In this embodiment, the target storage medium includes a TF card, such as an expansion memory card, which is removably installed in the removable platform 40, as shown in fig. 3, the TF card has the characteristics of large space, large link bandwidth, and small IO bandwidth. The target storage medium further comprises a NAND flash memory (NAND flash memory), the NAND flash memory is integrated on the mainboard, and the target storage medium has the characteristics of small space, large link bandwidth and small IO bandwidth.
The external storage terminal comprises a control terminal, such as a remote controller, a smart phone, an upper computer control terminal and the like, the external storage terminal is generally a complete set of hardware terminal and comprises a processor, a communication device and a memory, the external storage terminal is interacted with the movable platform 40 through the communication device, for example, the unmanned aerial vehicle shoots a video file in the aerial shooting process, one or more data packets corresponding to the video file are generated, the data packets are sent to the external storage terminal through wireless transmission between the external storage terminal and the unmanned aerial vehicle, and after the external storage terminal receives the data packets through the communication device, the data packets are written into the memory of the external storage terminal through the processor of the external storage terminal.
The APP server comprises a cloud server, the mobile platform 40 uploads the data packet to the APP server at the cloud end through self network connection, and the APP server writes the data packet into the cloud storage space after receiving the data packet.
In an embodiment of the invention of the present specification, further, as shown in fig. 15, the movable platform 50 includes: body 52, power system 54, at least one sensor 56, at least one processor 58 and communication means 59, communication means 59 being able to be used for interacting with external storage terminals and/or APP servers: the processor 58 is also configured to: and calling the communication device to send the data packet and the write-in instruction corresponding to the data packet to the external storage terminal and/or the APP server based on the target storage medium serving as the external storage terminal and/or the APP server, so that the external storage terminal and/or the APP server writes in the data packet according to the write-in instruction.
In this embodiment, during operation of the movable platform 50, as the flight/capture operation progresses, various data packets are generated, such as a flight log data packet for recording a flight procedure, a received control/debugging instruction data packet, an image data packet generated when an image/video is taken, and the like, wherein, the attribute characteristics of each data packet are different, such as small size and high frequency of log data packets, since the video data packets are small in frequency and large in size, it is preferable to store different data packets in different storage media, that is, under the condition that the user feels nothing, the multi-type data with different frequencies and sizes are automatically distributed to different storage media (such as TF card, NAND flash memory, external storage terminal, APP server, etc.) for processing and storage under the limitation of different storage media storage spaces and performance bandwidths corresponding to the balanced movable platform 50.
Under the condition that the storage medium is an external storage terminal and/or an APP server, the movable platform interacts with the external storage terminal and the APP server through the communication device, the data packet and the corresponding writing instruction are sent to the corresponding external storage terminal and the APP server through calling the communication device, and the external storage terminal and/or the APP server writes the data packet into the storage space of the external storage terminal and/or the APP server according to the writing instruction after receiving the data packet and the writing instruction.
Specifically, the developer of the mobile platform 50, in combination with the system characteristics, specifies the thread pool size, the cache area size, the data packet instance, the storage medium instance, and other items by setting the configuration file, so that the mobile platform dynamically selects different storage locations of different data packets based on software. For consumer users, storage media may also be dynamically selected by a particular APP. For example, a user with a need for confidential data protection may select a local storage medium.
In the process of powering on and initializing the movable platform, the movable platform loads a configuration file, generates a write rule according to the configuration file, initializes the memory pool to generate a cache region, and initializes the thread pool to obtain at least one thread pool corresponding to each storage medium.
After initialization is completed, a developer can designate a preset API interface to receive various data packets and distribute the data packets to a storage engine, and the storage engine triggers a message listener to check the integrity of the data packets and determine the attribute characteristics of the data packets, including the frequency, the size, the cache possibility and the like of the data packets. Discarding incomplete data packets to ensure data correctness after data packet integrity check, for data packets which do not manually specify a storage medium, according to the attribute characteristics of the data packets, allocating a target storage medium for the data packets according to a write rule, after allocation, intercepting the data packets through a message processor, distributing the data packets to a thread pool of the target medium corresponding to the data packets, allocating idle threads to the thread pool, and selecting to cache the data packets to a cache region according to user configuration or directly writing the data packets into the target storage medium.
The configuration file can be freely configured according to the actual requirements of a user, and when the residual space of the target storage medium is insufficient, at least one data packet can be deleted according to the information such as the writing time, the priority level, the size of the data packet, the number of the data packets and the like of the data packets stored in the target storage medium, so that sufficient storage space is provided for new data packets, dynamic rolling storage is realized, and data loss caused by insufficient storage space is avoided.
As shown in fig. 15, in an embodiment of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored, and the computer program, when executed by a processor, implements the data packet writing method provided in the first embodiment of the present disclosure, so that the computer-readable storage medium includes all the beneficial effects of the data packet writing method provided in the first embodiment of the present disclosure, and therefore, the description thereof is omitted.
In the description of the present specification, the term "plurality" means two or more, and unless otherwise specifically limited, the terms "upper", "lower", and the like, indicate orientations or positional relationships that are based on the orientations or positional relationships illustrated in the drawings, are merely for convenience in describing the present specification and simplifying the description, and do not indicate or imply that the referenced devices or elements must have a particular orientation, be constructed and operated in a particular orientation, and thus, are not to be construed as limiting the present specification; the terms "connected," "mounted," "secured," and the like are to be construed broadly and include, for example, fixed connections, removable connections, or integral connections; may be directly connected or indirectly connected through an intermediate. The specific meanings of the above terms in the present specification can be understood by those of ordinary skill in the art as appropriate.
In the description of the present specification, the description of the terms "one embodiment," "some embodiments," "specific embodiments," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the specification. In this specification, the schematic representations of the terms used above do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
The above description is only a preferred embodiment of the present disclosure, and is not intended to limit the present disclosure, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present specification shall be included in the protection scope of the present specification.

Claims (72)

1. A method for writing a data packet, the method comprising:
receiving at least one data packet through a preset API (application program interface) and acquiring the attribute characteristics of the data packet;
and selecting a target storage medium from a plurality of preset storage media according to the attribute characteristics of the data packet, and writing the data packet into the target storage medium.
2. The data packet writing method of claim 1, wherein the attribute features include one or more of:
the file size of the data packet, the frequency of the data packet, the configuration information corresponding to the data packet, and the cache availability information of the data packet.
3. The method according to claim 1, wherein the step of obtaining the attribute characteristics of the data packet specifically comprises:
acquiring complete information of the data packet, and determining whether the data packet is a complete data packet according to the complete information of the data packet;
and when the data packet is a complete data packet, selecting the target storage medium from a plurality of preset storage media.
4. The method of claim 3, wherein each of the predetermined storage media corresponds to a predetermined thread pool;
after the step of selecting a target storage medium among a plurality of preset storage media, the writing method further includes:
and distributing the data packet to a thread pool corresponding to the target storage medium, so as to store the data packet to the target storage medium through an idle thread in the thread pool.
5. The data packet writing method according to any one of claims 1 to 4, wherein the step of obtaining the attribute characteristics of the data packet further comprises:
and based on the data packet being an incomplete data packet, discarding the data packet.
6. The packet writing method according to any one of claims 1 to 5, further comprising:
and receiving the configuration file sent by the control terminal.
7. The packet writing method according to any one of claims 1 to 5, further comprising:
and receiving a configuration instruction sent by a control terminal, and generating a configuration file according to the configuration instruction.
8. The packet writing method according to any one of claims 1 to 5, further comprising:
receiving a modification instruction aiming at the configuration file sent by a control terminal, and modifying the configuration file according to the modification instruction.
9. The data packet writing method of any of claims 6 to 8, wherein the configuration file comprises one or more of:
thread pool size, cache size, packet instance, and storage medium instance.
10. The packet writing method according to any one of claims 6 to 8, wherein the configuration file includes configuration information for selecting a local storage medium.
11. The data packet writing method according to claim 9 or 10, wherein the step of selecting the target storage medium among a plurality of preset storage media specifically comprises:
acquiring the configuration file, and determining a writing rule corresponding to the attribute information of the data packet according to the configuration file;
and determining the target storage medium according to the writing rule.
12. The data packet writing method of claim 1, wherein each of the storage media corresponds to a preconfigured thread pool, and prior to the step of writing the data packet to the target storage medium, the writing method further comprises:
determining a thread pool corresponding to the data packet;
and calling a first idle thread in the thread pool to cache the data packet to a cache region.
13. The data packet writing method of claim 11, the method further comprising:
setting a cache region in a preset storage space according to the configuration file;
wherein the buffer area is used for buffering at least one data packet.
14. The data packet writing method of claim 12, wherein the step of writing the data packet to the target storage medium comprises:
reading a plurality of data packets in the cache region, and performing merging operation on the plurality of data packets to generate a merged data packet;
writing the merged data packet to the target storage medium.
15. The data packet writing method of claim 12, wherein the step of writing the data packet to the target storage medium comprises:
acquiring a target storage medium corresponding to the data packet and sequence information corresponding to the data packet;
and calling a second idle thread in the thread pool to write the data packet into the target storage medium according to the sequence information.
16. The method of claim 14, wherein the step of performing a merge operation on the plurality of data packets to generate a merged data packet comprises:
and if the number of the data packets meets a preset merging condition, merging the data packets to generate a merged data packet.
17. The data packet writing method of claim 12, wherein the step of writing the data packet to the target storage medium further comprises:
determining a thread pool corresponding to the data packet;
and calling idle threads in the thread pool to directly write the data packet into the target storage medium.
18. The data packet writing method according to any one of claims 1 to 17, further comprising:
and if the residual space of the target storage medium is smaller than a preset space threshold value, deleting at least one data packet in all the data packets.
19. The data packet writing method according to any one of claims 1 to 17, further comprising:
and if the residual space of the target storage medium is smaller than a preset space threshold value, deleting at least one data packet with the earliest writing time according to the writing time of all data packets in the target storage medium.
20. The data packet writing method according to any one of claims 4 to 17, further comprising;
if the remaining space of the target storage medium is smaller than the size of a data packet to be written into the target storage medium in a thread pool corresponding to the target storage medium, deleting at least one data packet in all the data packets according to the writing time of all the data packets in the target storage medium until the remaining space of the target storage medium is larger than the size of the data packet to be written into the target storage medium.
21. The data packet writing method according to any one of claims 1 to 20, wherein the target storage medium includes at least one or more of:
TF card, NAND flash memory, external storage terminal, APP server.
22. The data packet writing method of claim 21, wherein the method is applied to a movable platform.
23. The data packet writing method according to claim 22, characterized in that said movable platform comprises communication means usable for interacting with said external storage terminal and/or said APP server;
based on that the target storage medium is the external storage terminal and/or the APP server, the step of writing the data packet into the target storage medium specifically includes:
calling the communication device to send the data packet and the write-in instruction corresponding to the data packet to the external storage terminal and/or the APP server, so that the external storage terminal and/or the APP server writes the data packet according to the write-in instruction.
24. A packet writing apparatus, comprising:
a memory having a computer program stored therein;
a processor for executing the computer program to implement:
receiving at least one data packet through a preset API (application program interface) and acquiring the attribute characteristics of the data packet;
and selecting a target storage medium from a plurality of preset storage media according to the attribute characteristics of the data packet, and writing the data packet into the target storage medium.
25. The data packet writing device of claim 24, wherein the attribute features include one or more of:
the file size of the data packet, the frequency of the data packet, the configuration information corresponding to the data packet, and the cache availability information of the data packet.
26. The apparatus according to claim 24, wherein the processor executes the computer program to implement the step of obtaining the attribute characteristic of the data packet, and specifically comprises:
acquiring complete information of the data packet, and determining whether the data packet is a complete data packet according to the complete information of the data packet;
and when the data packet is a complete data packet, selecting the target storage medium from a plurality of preset storage media.
27. The apparatus of claim 26, wherein each of the predetermined storage media corresponds to a predetermined thread pool;
after the step of executing the computer program by the processor to select the target storage medium from the plurality of preset storage media, the method further includes:
and distributing the data packet to a thread pool corresponding to the target storage medium, so as to store the data packet to the target storage medium through an idle thread in the thread pool.
28. The data packet writing device of any of claims 24 to 27, wherein the processor runs the computer program to implement the step of obtaining attribute characteristics of the data packet, further comprising:
and based on the data packet being an incomplete data packet, discarding the data packet.
29. The data packet writing device of any of claims 24 to 28, wherein the processor runs the computer program to implement:
and receiving the configuration file sent by the control terminal.
30. The data packet writing device of any of claims 24 to 28, wherein the processor runs the computer program to implement:
and receiving a configuration instruction sent by a control terminal, and generating a configuration file according to the configuration instruction.
31. The data packet writing device of any of claims 24 to 28, wherein the processor runs the computer program to implement:
receiving a modification instruction aiming at the configuration file sent by a control terminal, and modifying the configuration file according to the modification instruction.
32. The data packet writing device of any of claims 29 to 31, wherein the configuration file comprises one or more of:
thread pool size, cache size, packet instance, and storage medium instance.
33. The data packet writing device of any of claims 29 to 31, wherein the configuration file includes configuration information for selecting a local storage medium.
34. The data packet writing device of claim 29, wherein the processor executes the computer program to implement the step of selecting a target storage medium among a plurality of preset storage media, and specifically comprises:
acquiring the configuration file, and determining a writing rule corresponding to the attribute information of the data packet according to the configuration file;
and determining the target storage medium according to the writing rule.
35. The packet writing device of claim 24, wherein each of the storage media corresponds to a preconfigured thread pool, and wherein the processor, prior to executing the computer program to implement the step of writing the packet to the target storage medium, further comprises:
determining a thread pool corresponding to the data packet;
and calling a first idle thread in the thread pool to cache the data packet to a cache region.
36. The data packet writing device of claim 34, wherein the processor runs the computer program to implement:
setting a cache region in a preset storage space according to the configuration file;
wherein the buffer area is used for buffering at least one data packet.
37. The data packet writing device of claim 35, wherein the processor executes the computer program to perform the step of writing the data packet to the target storage medium, comprising:
reading a plurality of data packets in the cache region, and performing merging operation on the plurality of data packets to generate a merged data packet;
writing the merged data packet to the target storage medium.
38. The data packet writing device of claim 35, wherein the processor executes the computer program to perform the step of writing the data packet to the target storage medium, comprising:
acquiring a target storage medium corresponding to the data packet and sequence information corresponding to the data packet;
and calling a second idle thread in the thread pool to write the data packet into the target storage medium according to the sequence information.
39. The data packet writing device of claim 37, wherein the processor executes the computer program to perform the step of merging the plurality of data packets to generate a merged data packet, comprising:
and if the number of the data packets meets a preset merging condition, merging the data packets to generate a merged data packet.
40. The data packet writing device of claim 35, wherein the processor executes the computer program to perform the step of writing the data packet to the target storage medium, comprising:
determining a thread pool corresponding to the data packet;
and calling idle threads in the thread pool to directly write the data packet into the target storage medium.
41. The data packet writing device of any of claims 24 to 40, wherein the processor is configured to run the computer program to implement:
and if the residual space of the target storage medium is smaller than a preset space threshold value, deleting at least one data packet in all the data packets.
42. The data packet writing device of any of claims 24 to 40, wherein the processor is configured to run the computer program to implement:
and if the residual space of the target storage medium is smaller than a preset space threshold value, deleting at least one data packet with the earliest writing time according to the writing time of all data packets in the target storage medium.
43. The data packet writing device of any of claims 27 to 40, wherein the processor is configured to run the computer program to implement:
if the remaining space of the target storage medium is smaller than the size of a data packet to be written into the target storage medium in a thread pool corresponding to the target storage medium, deleting at least one data packet in all the data packets according to the writing time of all the data packets in the target storage medium until the remaining space of the target storage medium is larger than the size of the data packet to be written into the target storage medium.
44. The packet writing device of any of claims 24 to 43, wherein the target storage medium comprises at least one or more of:
TF card, NAND flash memory, external storage terminal, APP server.
45. The data packet writing device of claim 44, wherein the data packet writing device is applied to a movable platform.
46. The data packet writing device of claim 45, comprising communication means operable to interact with the external storage terminal and/or the APP server;
the processor is configured to:
based on the target storage medium being the external storage terminal and/or the APP server, calling the communication device to send the data packet and the write-in instruction corresponding to the data packet to the external storage terminal and/or the APP server, so that the external storage terminal and/or the APP server writes in the data packet according to the write-in instruction.
47. A control terminal, characterized in that the control terminal is capable of being used for interaction with a user and for communication with a data packet writing device according to any of claims 24 to 46, the control terminal comprising:
a memory having a computer program stored therein;
a processor for executing the computer program to implement:
receiving a setting operation input by a user;
and generating a configuration file according to the setting operation, and sending the configuration file to the data packet writing device.
48. The control terminal of claim 47, wherein the processor is configured to execute the computer program to:
and generating a corresponding configuration instruction according to the setting operation, and sending the configuration instruction to the data packet writing device.
49. The control terminal of claim 47, wherein the processor is configured to execute the computer program to:
and generating a modification instruction aiming at the configuration file according to the setting operation, and sending the modification instruction to the data packet writing device.
50. A movable platform, comprising:
a body;
the power system is arranged on the machine body and used for providing power for the movable platform;
the sensors are arranged on the machine body and used for sensing the environmental information and the state information of the movable platform and generating at least one data packet;
the one or more processors are used for receiving at least one data packet through a preset API (application program interface) and acquiring the attribute characteristics of the data packet;
and selecting a target storage medium from a plurality of preset storage media according to the attribute characteristics of the data packet, and writing the data packet into the target storage medium.
51. The movable platform of claim 50, wherein the attribute features comprise one or more of:
the file size of the data packet, the frequency of the data packet, the configuration information corresponding to the data packet, and the cache availability information of the data packet.
52. The movable platform of claim 51, wherein the processor is further configured to:
acquiring complete information of the data packet, and determining whether the data packet is a complete data packet according to the complete information of the data packet;
and when the data packet is a complete data packet, selecting the target storage medium from a plurality of preset storage media.
53. The movable platform of claim 52, wherein each of the predetermined storage media corresponds to a predetermined thread pool;
the processor is further configured to:
and distributing the data packet to a thread pool corresponding to the target storage medium, so as to store the data packet to the target storage medium through an idle thread in the thread pool.
54. The movable platform of any one of claims 50-53, wherein the processor is further configured to:
and based on the data packet being an incomplete data packet, discarding the data packet.
55. The movable platform of any one of claims 50-54, wherein the processor is further configured to:
and receiving the configuration file sent by the control terminal.
56. The movable platform of any one of claims 50-54, wherein the processor is further configured to:
and receiving a configuration instruction sent by a control terminal, and generating a configuration file according to the configuration instruction.
57. The movable platform of claim 55 or 56, wherein the processor is further configured to:
receiving a modification instruction aiming at the configuration file sent by a control terminal, and modifying the configuration file according to the modification instruction.
58. The movable platform of any one of claims 55 to 57, wherein the configuration file comprises one or more of:
thread pool size, cache size, packet instance, and storage medium instance.
59. The movable platform of any of claims 55 to 57, wherein the configuration file comprises configuration information for selecting a local storage medium.
60. The movable platform of claim 58 or 59, wherein the processor is further configured to:
acquiring a configuration file, and determining a writing rule corresponding to the attribute information of the data packet according to the configuration file;
and determining the target storage medium according to the writing rule.
61. The movable platform of claim 50, wherein each of the storage media corresponds to a preconfigured thread pool, the processor further configured to:
determining a thread pool corresponding to the data packet;
and calling a first idle thread in the thread pool to cache the data packet to a cache region.
62. The movable platform of claim 60, wherein the processor is further configured to:
setting a cache region in a preset storage space according to the configuration file;
wherein the buffer area is used for buffering at least one data packet.
63. The movable platform of claim 61, wherein the processor is further configured to:
reading a plurality of data packets in the cache region, and performing merging operation on the plurality of data packets to generate merged data packets;
writing the merged data packet to the target storage medium.
64. The movable platform of claim 61, wherein the processor is further configured to:
acquiring a target storage medium corresponding to the data packet and sequence information corresponding to the data packet;
and calling a second idle thread in the thread pool to write the data packet into the target storage medium according to the sequence information.
65. The movable platform of claim 63, wherein the processor is further configured to:
and if the number of the data packets meets a preset merging condition, merging the data packets to generate a merged data packet.
66. The movable platform of claim 61, wherein the processor is further operable to:
determining a thread pool corresponding to the data packet;
and calling idle threads in the thread pool to directly write the data packet into the target storage medium.
67. The movable platform of any one of claims 50-66, wherein the processor is further configured to:
and if the residual space of the target storage medium is smaller than a preset space threshold value, deleting at least one data packet in all the data packets.
68. The movable platform of any one of claims 60-67, wherein the processor is further configured to:
and if the residual space of the target storage medium is smaller than a preset space threshold value, deleting at least one data packet with the earliest writing time according to the writing time of all data packets in the target storage medium.
69. The movable platform of any one of claims 54-67, wherein the processor is further configured to:
if the remaining space of the target storage medium is smaller than the size of a data packet to be written into the target storage medium in a thread pool corresponding to the target storage medium, deleting at least one data packet in all the data packets according to the writing time of all the data packets in the target storage medium until the remaining space of the target storage medium is larger than the size of the data packet to be written into the target storage medium.
70. The movable platform of any one of claims 50-69, wherein the target storage medium comprises:
TF card, NAND flash memory, external storage terminal, APP server.
71. The movable platform of claim 70, further comprising:
communication means operable to interact with said external storage terminal and/or said APP server:
the processor is further configured to:
based on the target storage medium being the external storage terminal and/or the APP server, calling the communication device to send the data packet and the write-in instruction corresponding to the data packet to the external storage terminal and/or the APP server, so that the external storage terminal and/or the APP server writes in the data packet according to the write-in instruction.
72. A computer-readable storage medium having stored thereon a computer program, characterized in that: the computer program when executed by a processor implements a data packet writing method as claimed in any one of claims 1 to 23.
CN201980030068.5A 2019-07-29 2019-07-29 Data packet writing method and device, control terminal and movable platform Pending CN112136104A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/098218 WO2021016815A1 (en) 2019-07-29 2019-07-29 Data packet writing method and apparatus, control terminal, and mobile platform

Publications (1)

Publication Number Publication Date
CN112136104A true CN112136104A (en) 2020-12-25

Family

ID=73849586

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980030068.5A Pending CN112136104A (en) 2019-07-29 2019-07-29 Data packet writing method and device, control terminal and movable platform

Country Status (2)

Country Link
CN (1) CN112136104A (en)
WO (1) WO2021016815A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113590381A (en) * 2021-06-30 2021-11-02 北京旷视科技有限公司 Feature distribution method and device, electronic equipment and computer-readable storage medium
CN113608771A (en) * 2021-06-20 2021-11-05 山东云海国创云计算装备产业创新中心有限公司 Method, device and equipment for quickly programming FPGA firmware and readable medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101539617B1 (en) * 2014-04-24 2015-08-06 서강대학교산학협력단 File wiping method according to file type structure in mobile system, and apparatus thereof
CN104991736A (en) * 2015-06-15 2015-10-21 联想(北京)有限公司 Method and device for typing in data and storage equipment
CN109768926A (en) * 2019-01-10 2019-05-17 维沃移动通信有限公司 A kind of data processing method, terminal device and computer readable storage medium
CN109977129A (en) * 2019-03-28 2019-07-05 中国联合网络通信集团有限公司 Multi-stage data caching method and equipment
CN110022335A (en) * 2018-01-09 2019-07-16 腾讯科技(深圳)有限公司 Data packet sending method, device, server and computer readable storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011154547A (en) * 2010-01-27 2011-08-11 Toshiba Corp Memory management device and memory management method
CN106021506A (en) * 2016-05-23 2016-10-12 深圳市中博科创信息技术有限公司 File storage method and apparatus for cluster system
CN109164974B (en) * 2018-06-27 2021-07-09 创新先进技术有限公司 Data storage method and device, computing equipment and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101539617B1 (en) * 2014-04-24 2015-08-06 서강대학교산학협력단 File wiping method according to file type structure in mobile system, and apparatus thereof
CN104991736A (en) * 2015-06-15 2015-10-21 联想(北京)有限公司 Method and device for typing in data and storage equipment
CN110022335A (en) * 2018-01-09 2019-07-16 腾讯科技(深圳)有限公司 Data packet sending method, device, server and computer readable storage medium
CN109768926A (en) * 2019-01-10 2019-05-17 维沃移动通信有限公司 A kind of data processing method, terminal device and computer readable storage medium
CN109977129A (en) * 2019-03-28 2019-07-05 中国联合网络通信集团有限公司 Multi-stage data caching method and equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113608771A (en) * 2021-06-20 2021-11-05 山东云海国创云计算装备产业创新中心有限公司 Method, device and equipment for quickly programming FPGA firmware and readable medium
CN113590381A (en) * 2021-06-30 2021-11-02 北京旷视科技有限公司 Feature distribution method and device, electronic equipment and computer-readable storage medium

Also Published As

Publication number Publication date
WO2021016815A1 (en) 2021-02-04

Similar Documents

Publication Publication Date Title
CN110896404B (en) Data processing method and device and computing node
CN112671830B (en) Resource scheduling method, system, device, computer equipment and storage medium
EP4113319A1 (en) Distributed storage system and data processing method
CN113641457B (en) Container creation method, device, apparatus, medium, and program product
CN105409160B (en) System for remotely controlling electronic device and operating method thereof
EP3076296A1 (en) Computer, control device and data processing method
JP7100154B2 (en) Processor core scheduling method, equipment, terminals and storage media
CN112136104A (en) Data packet writing method and device, control terminal and movable platform
WO2013172816A1 (en) Managing the operation of a computing system
CN110704365A (en) Reconstruction device based on FPGA
CN113407157A (en) Object model determination method and device, storage medium and electronic device
CN113742290B (en) Data storage method and device, storage medium and electronic device
CN115080479A (en) Transmission method, server, equipment, bare metal example and substrate management controller
CN104579908A (en) Method and device for displaying images
US11797184B2 (en) SD card hot plugging identification method, SD card identification module and electronic device
CN117312229B (en) Data transmission device, data processing equipment, system, method and medium
US20230273801A1 (en) Method for configuring compute mode, apparatus, and computing device
US11252457B2 (en) Multimedia streaming and routing apparatus and operation method of the same
US20220394211A1 (en) Information transmission method and related device
CN115357198B (en) Mounting method and device of storage volume, storage medium and electronic equipment
CN115576565A (en) Application program deployment method and device, electronic equipment and storage medium
WO2021022947A1 (en) Method for deploying virtual machine and related device
CN113384893A (en) Data processing method and device and computer readable storage medium
CN115766438B (en) DPDK-based interface management method and system
CN116501449B (en) Method and system for managing container files in cloud primary environment

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