Data processing method and electronic device

By fragmenting data and transmitting it in parallel to different communication channels, dynamically adjusting bandwidth allocation and status management, the problem of low data transmission efficiency in the collaboration between computing devices and other devices is solved, and efficient and accurate data backup is achieved.

CN122293655APending Publication Date: 2026-06-26LENOVO (BEIJING) LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610418115.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-03-31
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

When computing devices collaborate with other electronic devices to perform data backup, existing technologies have low data transmission efficiency and cannot effectively utilize the bandwidth resources of multiple communication channels.

Method used

The data to be transmitted is divided into multiple data fragments, and the data fragments are transmitted simultaneously in forward and reverse order through two different communication channels (such as wireless and wired channels). The bandwidth allocation is dynamically adjusted to optimize the transmission efficiency, and duplicate transmissions are avoided through a status log table.

Benefits of technology

It significantly improves data transmission efficiency, ensures the accuracy and integrity of data transmission, and enhances the speed and efficiency of overall data backup.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122293655A_ABST
    Figure CN122293655A_ABST
Patent Text Reader

Abstract

This application discloses a data processing method and an electronic device. The method includes: dividing data to be transmitted into multiple data fragments, wherein the multiple data fragments are numbered sequentially; transmitting each data fragment sequentially in ascending order based on the sequential numbering of the data fragments through a first communication channel with a second device; transmitting each data fragment sequentially in reverse order based on the sequential numbering of the data fragments through a second communication channel with the second device; transmitting the data fragments simultaneously through the first communication channel and the second communication channel until all data fragments have been transmitted.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and more specifically, to a data processing method and an electronic device. Background Technology

[0002] With the continuous development of artificial intelligence technology, many computing devices capable of running models have emerged in the field of electronic products. In some scenarios, these computing devices will collaborate with other electronic devices to perform task processing, thus requiring data backup from the computing devices to other electronic devices. Summary of the Invention

[0003] In view of the above, this application provides the following technical solution:

[0004] The first aspect of this application provides a data processing method applied to a first device, the method comprising:

[0005] The data to be transmitted is divided into multiple data fragments, and the multiple data fragments are numbered sequentially.

[0006] Based on the sequential numbering of the data fragments, each data fragment is transmitted sequentially in ascending order through the first communication channel with the second device.

[0007] Based on the sequential numbering of the data fragments, each data fragment is transmitted in reverse order through the second communication channel with the second device.

[0008] The first communication channel and the second communication channel transmit data fragments simultaneously until all data fragments have been transmitted.

[0009] One possible implementation also includes:

[0010] Based on the first bandwidth of the first communication channel and the second bandwidth of the second communication channel, the number of data fragments to be transmitted is allocated to the first communication channel and the second communication channel, and the bandwidth of the communication channel is proportional to the number of data fragments allocated.

[0011] One possible implementation also includes:

[0012] If either the first communication channel or the second communication channel completes the transmission task of the assigned data slice or has started transmitting the last assigned data slice, the bandwidth of the first communication channel and the second communication channel will be re-detected.

[0013] Based on the detection results of the re-detection bandwidth, the data fragments that have not yet been transmitted are redistributed to the first communication channel and the second communication channel.

[0014] One possible implementation also includes:

[0015] During the transmission of data fragments through the first and second communication channels, the first and second bandwidths are periodically detected, and the number of data fragments to be transmitted allocated to the first and second communication channels is dynamically adjusted based on the latest detected first and second bandwidths.

[0016] One possible implementation also includes:

[0017] Configure a status record table, which records the numbers of data slices that have started transmission or have completed transmission;

[0018] The allocation of data slices is controlled based on the status record table, so that the same data slice is transmitted only by the first communication channel or the second communication channel.

[0019] In one possible implementation, the first communication channel is a wireless communication channel, and the second communication channel is a wired communication channel.

[0020] One possible implementation also includes:

[0021] The first device and the second device first handshake communication via a wired connection line to establish a wired communication channel. The wired connection line is used for data communication and to enable the second device to supply power to the first device.

[0022] After all data fragments have been transmitted, the controller connects the first processing module of the first device to the second device via the wired connection line and performs a second handshake communication with the second device.

[0023] Instruction information is sent to the second device to identify the first processing module and the first acquisition module as functional modules in the second device, so that the second device can use the first processing module to perform data processing work related to the received data slices.

[0024] In one possible implementation, the first device and the second device establish a wired communication channel by first performing a handshake communication via a wired connection, including:

[0025] Detect whether the first pin in the first port is at the first voltage level;

[0026] If so, determine whether the device identifier received from the first port and sent by the second device is the same as the preset identifier data;

[0027] If they are the same, the second device is determined to be the target device that the first processing module needs to switch to.

[0028] In one possible implementation, before dividing the data to be transmitted into multiple data fragments, the following steps are included:

[0029] A data backup instruction is obtained. The data backup instruction is generated based on the operation of a first function key triggered by a first method. The first function key generates a first function instruction different from the data backup instruction when triggered by a second method different from the first method.

[0030] A second aspect of this application provides an electronic device, including at least one processor and a memory connected to the processor, wherein:

[0031] The memory is used to store computer programs;

[0032] The processor executes the computer program to enable the electronic device to: divide the data to be transmitted into multiple data fragments, the multiple data fragments being numbered sequentially; transmit each data fragment sequentially in ascending order based on the sequential numbering of the data fragments through a first communication channel with the second device; transmit each data fragment sequentially in reverse order based on the sequential numbering of the data fragments through a second communication channel with the second device; transmit the data fragments simultaneously through the first communication channel and the second communication channel until all data fragments have been transmitted. Attached Figure Description

[0033] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0034] Figure 1 This is a flowchart of a data processing method disclosed in an embodiment of this application;

[0035] Figure 2 This is a flowchart of data fragment redistribution disclosed in an embodiment of this application;

[0036] Figure 3 This is a flowchart illustrating the state management process for data fragmentation transmission as disclosed in an embodiment of this application.

[0037] Figure 4 This is a flowchart illustrating the interaction between the first device and the second device as disclosed in an embodiment of this application.

[0038] Figure 5This is a schematic diagram of the structure of a data processing device disclosed in an embodiment of this application;

[0039] Figure 6 This is a schematic diagram of the structure of an electronic device disclosed in an embodiment of this application. Detailed Implementation

[0040] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0041] Figure 1 This is a flowchart of a data processing method disclosed in an embodiment of this application. Figure 1 The method shown applies to the first device, see [link / reference]. Figure 1 As shown, data processing methods may include:

[0042] Step 101: Divide the data to be transmitted into multiple data fragments, and number the multiple data fragments sequentially.

[0043] The first device can be a computing device capable of running various models, such as LLM (Large Language Model) models and image processing models. The first device has a memory that stores the data to be transmitted. For ease of explanation and understanding, the following description will use an LLM device (a device with large language model processing capabilities, capable of performing various AI audio processing or AI text processing tasks) as an example. The data to be transmitted can be data collected by the LLM device itself or data obtained by processing the collected data. For example, the LLM device may record a large amount of voice data, which is data collected by the device itself; or the LLM device may perform voiceprint recognition on the recorded voice data, identifying multiple speakers within the voice data and adding tags to the corresponding voice data segments. This tagged data is the data obtained by processing the collected data.

[0044] In applications, the LLM device itself may not have display or voice output capabilities. For example, if the LLM device is a recording device, it may only support recording or playback, but it lacks screen display and UI-based interactive functions. Therefore, a second device with screen display and UI interactive capabilities is required. In scenarios where the data processing in the LLM device is controlled by the second device, the LLM device needs to transmit the data it needs to process (data it collects itself or data obtained by processing the collected data) to the second device.

[0045] In this embodiment, the first device and the second device have different communication channels, including at least a first communication channel and a second communication channel. Both communication channels can transmit data. Considering that using both communication channels simultaneously for data transmission results in faster transmission efficiency, this embodiment employs the simultaneous transmission of data to be transmitted via the first and second communication channels. Since two communication channels are used to transmit the data, the data needs to be segmented. In this application, the number of segments is not based on the number of communication channels, but rather the data is divided into multiple data fragments. The number of data fragments is greater than the number of communication channels capable of transmitting the data.

[0046] The data fragments can be the same size or different sizes; this application does not impose a fixed limitation on this. The resulting data fragments are assigned sequential numbers, which can be numerical or alphabetical, as long as the order of the data fragments is clearly defined.

[0047] Step 102: Transmit each data fragment sequentially in ascending order based on the data fragment sequence number through the first communication channel with the second device.

[0048] Step 103: Transmit each data fragment in reverse order based on the sequential numbering of the data fragments through the second communication channel with the second device.

[0049] The first communication channel and the second communication channel between the first device and the second device are communication channels with different communication protocols, which may include, but are not limited to, Bluetooth, WIFI, USB, etc. For example, the first communication channel is a wireless communication channel and the second communication channel is a wired communication channel.

[0050] In this application, for multiple numbered data fragments, the first communication channel transmits each data fragment sequentially in forward order, while the second communication channel transmits each data fragment sequentially in reverse order. That is, one communication channel transmits data fragments one by one starting from one end of the sequentially arranged data fragments, while the other communication channel transmits data fragments one by one starting from the other end of the sequentially arranged data fragments. Both communication channels perform data transmission tasks simultaneously, thereby significantly accelerating the transmission efficiency of the data to be transmitted.

[0051] Step 104: The first communication channel and the second communication channel simultaneously transmit data fragments until all data fragments have been transmitted.

[0052] The first and second communication channels transmit data fragments one by one from both ends of the data fragments arranged in numerical order. During the process, the number of remaining untransmitted data fragments decreases until the last data fragment is transmitted by either the first or second communication channel, and the complete data transmission task is completed.

[0053] After receiving all the data fragments, the second device can combine all the data fragments into complete data to be transmitted according to the numbers of all the received data fragments, and perform the corresponding subsequent processing.

[0054] The data processing method described in this embodiment first divides the data to be transmitted into multiple data fragments and numbers them sequentially. Then, the data fragments are transmitted simultaneously from opposite directions according to the numbering order of the data fragments through the first and second communication channels until all data fragments have been transmitted. This implementation uses two communication channels to transmit the data to be transmitted in parallel, which greatly improves the overall data transmission efficiency compared to the implementation that transmits the data to be transmitted through only one communication channel.

[0055] During the parallel transmission of data fragments via the first and second communication channels, it is not necessary to allocate multiple data fragments between the two communication channels. The first communication channel transmits the data fragments sequentially in forward order, and the second communication channel transmits them sequentially in reverse order. Alternatively, after obtaining the numbered data fragments, all data fragments can be allocated to the two communication channels, with each communication channel receiving multiple data fragments that are consecutively numbered.

[0056] In one implementation, allocating data fragments to two communication channels may include: allocating a number of data fragments to be transmitted to the first communication channel and the second communication channel based on the first bandwidth of the first communication channel and the second bandwidth of the second communication channel, wherein the bandwidth of the communication channel is proportional to the number of data fragments allocated.

[0057] The bandwidths of the first and second communication channels may be the same or different. In this implementation, the number of data fragments can be allocated based on the bandwidth of the communication channel. Understandably, the larger the bandwidth of the communication channel, the faster the data transmission speed, and therefore the more data fragments can be allocated to it.

[0058] For example, if there are 100 data slices, the bandwidth of the first communication channel is 800Mbps, and the bandwidth of the second communication channel is 200Mbps, then the number of data slices allocated to the first communication channel can be 80, and the number of data slices allocated to the second communication channel can be 20.

[0059] For example, the first communication channel is a Wi-Fi wireless channel, and the second communication channel is a Type-C wired channel, with a total of N data fragments. The Wi-Fi wireless channel transmits data fragments in forward order (e.g., 0, 1, 2, ...), while the Type-C wired channel transmits data fragments in reverse order (N, N-1, N-2, ...). Data fragments are allocated according to the real-time bandwidth ratio. For example, if the bandwidth ratio of Wi-Fi to Type-C is 1:3, then the Wi-Fi wireless channel, which transmits in forward order, is allocated 25% of the data fragments, and the Type-C wired channel, which transmits in reverse order, is allocated 75% of the data fragments.

[0060] The above allocation is based on the bandwidth of the first and second communication channels before the data slices begin to be transmitted. Theoretically, as long as the bandwidth of the first and second communication channels remains unchanged, the time it takes for the first and second communication channels to transmit their allocated data slices should be about the same.

[0061] In this implementation, when allocating the number of data fragments to the first and second communication channels, the allocation is based on the bandwidth of the two communication channels. The communication channel with a faster transmission speed is allocated more data fragments, thereby enabling the first and second communication channels to synchronously complete the transmission tasks of their respective allocated data fragments within a relatively small error range, thus improving the overall transmission efficiency of the data to be transmitted.

[0062] During the actual data fragmentation process, the bandwidth of the first and second communication channels changes in real time. Therefore, it is possible that one communication channel completes the transmission of all the data fragments it is allocated to first, while the other communication channel still has several data fragments to transmit.

[0063] Based on the above, in one implementation, the data processing method may also include a data fragmentation and redistribution process. Figure 2 For a flowchart of data fragment redistribution disclosed in an embodiment of this application, see [link to flowchart]. Figure 2 As shown, it may include:

[0064] Step 201: If either the first communication channel or the second communication channel completes the transmission task of the assigned data slice or has started transmitting the last assigned data slice, re-detect the bandwidth of the first communication channel and the second communication channel.

[0065] If the overall bandwidth (average bandwidth) of a communication channel during data fragmentation transmission is greater than the bandwidth at the time of data fragment allocation, and / or the overall bandwidth of another communication channel during data fragmentation transmission is smaller than the bandwidth at the time of data fragment allocation, then the first communication channel will complete the transmission task of the allocated data fragments before the other communication channel. If the communication channel has completed the transmission task of all allocated data slices, or has started transmitting the last allocated data slice, the bandwidth of the first and second communication channels can be re-detected to facilitate the reallocation of data slices that have not yet been transmitted by the other communication channel, thereby accelerating the data transmission progress.

[0066] Step 202: Based on the detection results of the re-detection bandwidth, the data fragments that have not yet been transmitted are redistributed to the first communication channel and the second communication channel.

[0067] After re-detecting and obtaining the bandwidth of the first and second communication channels, based on the principle that the bandwidth of the previous communication channel is proportional to the number of data fragments allocated, the remaining data fragments of the communication channels that have not yet completed the data fragment transmission task can be reallocated, so that the first and second communication channels can still transmit data fragments in parallel.

[0068] Of course, in practical applications, after data fragment redistribution, there may be another situation where a communication channel prioritizes transmitting all of its allocated data fragments. In this case, the data fragments can be redistributed again based on the data fragment redistribution process disclosed in this embodiment.

[0069] In this implementation, the bandwidth of the communication channel is dynamically changing. If a communication channel prioritizes transmitting all the allocated data fragments, the remaining untransmitted data fragments can be reallocated based on the bandwidth of the first and second communication channels after re-detection. This ensures that the first and second communication channels are transmitting data fragments in parallel during the transmission task, thereby maximizing the transmission efficiency of the data to be transmitted.

[0070] In another implementation, the redistribution of data fragments can be as follows: during the transmission of data fragments through the first communication channel and the second communication channel, the first bandwidth and the second bandwidth are periodically detected, and the number of data fragments to be transmitted allocated to the first communication channel and the second communication channel is dynamically adjusted based on the latest detected first bandwidth and the second bandwidth.

[0071] In other words, compared to the previous implementation where bandwidth was re-detected after the data fragments allocated in one channel were transmitted, this implementation periodically detects the first and second bandwidths and dynamically adjusts the number of data fragments allocated to the first and second communication channels in real time after each detection. Compared to the previous implementation, this implementation provides more dynamic and precise redistribution of data fragments, but the computational overhead is relatively larger.

[0072] The above embodiments describe the implementation of a solution for fragmented dual-track transmission of data to be transmitted with dynamic bandwidth adaptation. This solution can ensure efficient and accurate transmission of the data to be transmitted and accelerate the backup and migration of the data to be transmitted in the first device.

[0073] In one implementation, to avoid the repeated transmission of the same data fragments between two communication channels, the data processing method may also include a state management process. Figure 3 For a flowchart of the state management of data fragmentation transmission disclosed in an embodiment of this application, see [link to relevant documentation]. Figure 3 As shown, the status management process may include:

[0074] Step 301: Configure a status record table, which records the numbers of data slices that have started transmission or have completed transmission.

[0075] The status table can record the status of all data fragments, and the status type can include waiting for transmission, in transmission, and transmission completed. Alternatively, the status table can also only record the numbers of data fragments that have not yet completed transmission or have started transmission.

[0076] Step 302: Based on the status record table, control the allocation of data slices so that the same data slice is transmitted only by the first communication channel or the second communication channel.

[0077] Based on the status record table, it can be clearly determined which data fragments have not yet been transmitted. Before transmitting a data fragment, the first communication channel and the second communication channel can access the status record table to determine which data fragment has not yet been transmitted, and then start the transmission task of the corresponding data fragment.

[0078] This implementation ensures that data fragments are transmitted without overlap by configuring a status log table, thus preventing data fragments received by the second device from becoming disordered and effectively guaranteeing the accuracy of data transmission.

[0079] In one implementation, before processing the data to be transmitted, the first device (such as an LLM device) needs to establish a connection with the second device (such as an artificial intelligence computer device, or AI PC device). Only after establishing the connection can the data to be transmitted (data fragments) be transmitted. Furthermore, after the data transmission is completed, the computing power module (such as a dNPU, which stands for Dynamic Neural Processing Unit) in the LLM device can be migrated to the second device for use, thereby increasing the overall processing capacity of the second device to process the received data to be transmitted accordingly.

[0080] The above implementation is a customized solution for LLM devices and AI PC devices. Before implementation, the initialization timing needs to be customized based on the AI ​​PC device's PD (power delivery, USB power supply protocol) and VDM (Vehicle Data Manager, original manufacturer custom information) to achieve orderly connection between task processing and hardware initialization.

[0081] Figure 4 This is a flowchart illustrating the interaction between the first device and the second device disclosed in an embodiment of this application. See also... Figure 4 As shown, the data processing method may also include:

[0082] Step 401: The first device and the second device first handshake communication through a wired connection line to establish a wired communication channel. The wired connection line is used for data communication and to enable the second device to supply power to the first device.

[0083] The initial handshake communication between the first and second devices can be implemented using the PD modules of both devices. After the first device detects that its external port is connected to another device, it controls the identification and handshake of the connected device. Specifically, for example, an additional detection module can be added to Type-C pin 6 of the LLM device to detect whether it is in independent mode or peripheral mode. When the MCU (Microcontroller Unit) of the LLM device detects that Type-C pin 6 is high, it is determined to be in independent mode (no other device is connected). When the detection signal is low, further determination is required: a specific PID VID (AI PC device identification code) is added to the PD module of the LLM device. After recognizing that the connected device carries the same identification code, it is determined that the connected device is the bound AI PC device.

[0084] That is, the first device and the second device establish a wired communication channel by pre-handshaking communication through a wired connection line. This may include: detecting whether the first pin in the first port is at the first level; if so, determining whether the device identifier sent by the second device received from the first port is the same as the preset identifier data; if so, determining that the second device is the target device that the first processing module needs to switch to.

[0085] After the AI ​​PC device is detected to be connected, it can establish communication with the LLM device through the PCIE (Peripheral Component Interconnect Express, a high-speed serial computer expansion bus standard) bus, detect whether there are any unfinished tasks in the LLM device, access the "task log index table" in the LLM device's memory (which records the ID, creation time, data storage path, etc. of all unfinished tasks), and check whether there is any temporarily unprocessed task data (such as real-time voice cache, inference intermediate results, etc.) in the memory cache.

[0086] Step 402: After all data fragments have been transmitted, the controller connects the first processing module of the first device to the second device via the wired connection line and performs a second handshake communication with the second device.

[0087] If the AI ​​PC device detects a new task, the LLM device's SOC (System on Chip) establishes a high-speed data transmission channel with the AI ​​PC via the PCIe bus, identifies the corresponding data file stored in the task log index, and transfers these data files to a designated directory on the AI ​​PC device to provide data support for subsequent cloud processing. For specific data transmission implementation details, please refer to the data transmission implementation described in the example.

[0088] In implementation, LLM devices require two handshake communications: one with the LLM device itself to transfer the data to be transmitted, and another with the LLM device's sub-modules (such as the dNPU module and microphone). Different modules of the LLM device can act as different types of slave devices of the AI ​​PC device; for example, the dNPU module acts as the AI ​​PC's PCIE device, and the microphone acts as the AI ​​PC's USB device.

[0089] Step 403: Send indication information to the second device to identify the first processing module and the first acquisition module as functional modules in the second device, so that the second device can use the first processing module to perform data processing work related to the received data slices.

[0090] The indication information is used to instruct the second device to perform an enumeration operation and initialize the first processing module and the first acquisition module detected by the enumeration. The LLM device controls its own multiplexer to switch from SOC to dNPU, and at the same time notifies the CPU (Central Processing Unit) of the AI ​​PC device to perform formal initialization of the device. The dNPU (corresponding to the first processing module) is enumerated as a PC-side device through the PCIE bus, and the microphone (corresponding to the first acquisition module) of the LLM device is enumerated as a PC-side device through USB. This integrates the hardware components of the LLM device into the AI ​​PC system for subsequent use, such as tasks like summarizing and analyzing content based on voice data.

[0091] This embodiment describes the specific implementation of establishing a connection between the first device and the second device, performing data migration, and enumerating the computing power module of the first device as a functional module of the second device, so as to facilitate those skilled in the art to better understand and implement the technical solution of this application.

[0092] In implementation, the first device sends the data to be transmitted to the second device, which is to achieve data backup. Before dividing the data to be transmitted into multiple data fragments, the data processing method may also include: obtaining a data backup instruction, the data backup instruction being generated based on the operation triggering a first function key in a first manner, and the first function key generating a first function instruction different from the data backup instruction under a second method triggering operation different from the first method.

[0093] For example, an LLM device is a recording device with a physical button. A short press (corresponding to the second method) of the physical button enables one-click recording; a long press of the physical button for 3 seconds (corresponding to the first method) activates the data backup function.

[0094] Of course, in practice, there is no fixed limit to the number of buttons on the LLM device, and the button triggering methods for different functions can also be configured. Through appropriate software design, data backup commands can be quickly triggered through the buttons on the LLM device, thereby realizing the data processing method described above and starting the data backup work from the first device to the second device.

[0095] For the foregoing method embodiments, in order to simplify the description, they are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, because according to this application, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0096] The methods described in the above-disclosed embodiments of this application are detailed in terms of the methods. The methods of this application can be implemented by various forms of apparatus. Therefore, this application also discloses an apparatus. Specific embodiments are given below for detailed description.

[0097] Figure 5 This is a schematic diagram of the structure of a data processing apparatus disclosed in an embodiment of this application. See also... Figure 5 As shown, the data processing device 50 may include:

[0098] The fragmentation processing module 501 is used to divide the data to be transmitted into multiple data fragments, which are numbered sequentially.

[0099] The first transmission module 502 is used to transmit each data fragment sequentially in ascending order based on the sequential numbering of the data fragments through the first communication channel between the module and the second device.

[0100] The second transmission module 503 is used to transmit each data fragment in reverse order based on the sequential numbering of the data fragments through the second communication channel with the second device.

[0101] The transmission management module 504 is used to control the first communication channel and the second communication channel to transmit data fragments simultaneously until all data fragments are transmitted.

[0102] The data processing device described in this embodiment first divides the data to be transmitted into multiple data fragments and numbers them sequentially. Then, it transmits the data fragments simultaneously from two opposite directions according to the numbering order of the data fragments through the first and second communication channels until all data fragments have been transmitted. This implementation achieves parallel transmission of the data to be transmitted through two communication channels, which greatly improves the overall transmission efficiency of the data transmission task compared to the implementation that transmits the data to be transmitted through only one communication channel.

[0103] For details on the specific implementation of the data processing device and its various modules, as well as other possible implementations, please refer to the relevant sections of the method embodiments; they will not be repeated here.

[0104] Any of the data processing devices described in the above embodiments includes a processor and a memory. The segmentation processing module, the first transmission module, the second transmission module, the transmission management module, etc. in the above embodiments are all stored in the memory as program modules, and the processor executes the above program modules stored in the memory to realize the corresponding functions.

[0105] The processor contains a kernel, which retrieves the corresponding program modules from memory. One or more kernels can be configured, and the processing of backtracking data can be achieved by adjusting kernel parameters.

[0106] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.

[0107] In an exemplary embodiment, a computer-readable storage medium is also provided, which can be directly loaded into the internal memory of a computer, and contains software code. The computer program, after being loaded and executed by the computer, can implement the steps shown in any of the embodiments of the above data processing method.

[0108] In an exemplary embodiment, a computer program product is also provided, which can be directly loaded into the internal memory of a computer and contains software code. After being loaded and executed by the computer, the computer program can implement the steps shown in any embodiment of the data processing method described above.

[0109] Furthermore, embodiments of this application provide an electronic device. Figure 6 This is a schematic diagram of the structure of an electronic device disclosed in an embodiment of this application. See also... Figure 6 As shown, the electronic device 60 includes at least one processor 601, and at least one memory 602 and a bus 603 connected to the processor; wherein the processor and the memory communicate with each other through the bus; the processor is used to call program instructions in the memory to: divide the data to be transmitted into multiple data fragments, the multiple data fragments being numbered sequentially; transmit each data fragment in ascending order based on the sequential numbering of the data fragments through a first communication channel with the second device; transmit each data fragment in reverse order based on the sequential numbering of the data fragments through a second communication channel with the second device; the first communication channel and the second communication channel transmit the data fragments simultaneously until all data fragments have been transmitted.

[0110] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to the method section.

[0111] It should also be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0112] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.

[0113] The above description of the disclosed embodiments enables those skilled in the art to make or use this application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. Therefore, this application is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A data processing method applied to a first device, the method comprising: The data to be transmitted is divided into multiple data fragments, and the multiple data fragments are numbered sequentially. Based on the sequential numbering of the data fragments, each data fragment is transmitted sequentially in ascending order through the first communication channel with the second device. Based on the sequential numbering of the data fragments, each data fragment is transmitted in reverse order through the second communication channel with the second device. The first communication channel and the second communication channel transmit data fragments simultaneously until all data fragments have been transmitted.

2. The data processing method according to claim 1 further includes: Based on the first bandwidth of the first communication channel and the second bandwidth of the second communication channel, the number of data fragments to be transmitted is allocated to the first communication channel and the second communication channel, and the bandwidth of the communication channel is proportional to the number of data fragments allocated.

3. The data processing method according to claim 2 further includes: If either the first communication channel or the second communication channel completes the transmission task of the assigned data slice or has started transmitting the last assigned data slice, the bandwidth of the first communication channel and the second communication channel will be re-detected. Based on the detection results of the re-detection bandwidth, the data fragments that have not yet been transmitted are redistributed to the first communication channel and the second communication channel.

4. The data processing method according to claim 2 further includes: During the transmission of data fragments through the first and second communication channels, the first and second bandwidths are periodically detected, and the number of data fragments to be transmitted allocated to the first and second communication channels is dynamically adjusted based on the latest detected first and second bandwidths.

5. The data processing method according to claim 1, further comprising: Configure a status record table, which records the numbers of data slices that have started transmission or have completed transmission; The allocation of data slices is controlled based on the status record table, so that the same data slice is transmitted only by the first communication channel or the second communication channel.

6. The data processing method according to claim 1, wherein the first communication channel is a wireless communication channel and the second communication channel is a wired communication channel.

7. The data processing method according to claim 1 further includes: The first device and the second device first handshake communication via a wired connection line to establish a wired communication channel. The wired connection line is used for data communication and to enable the second device to supply power to the first device. After all data fragments have been transmitted, the controller connects the first processing module of the first device to the second device via the wired connection line and performs a second handshake communication with the second device. Instruction information is sent to the second device to identify the first processing module and the first acquisition module as functional modules in the second device, so that the second device can use the first processing module to perform data processing work related to the received data slices.

8. The data processing method according to claim 7, wherein the first device and the second device establish a wired communication channel by pre-establishing a handshake communication via a wired connection line, comprising: Detect whether the first pin in the first port is at the first voltage level; If so, determine whether the device identifier received from the first port and sent by the second device is the same as the preset identifier data; If they are the same, the second device is determined to be the target device that the first processing module needs to switch to.

9. The data processing method according to claim 1, before dividing the data to be transmitted into multiple data fragments, includes: A data backup instruction is obtained. The data backup instruction is generated based on the operation of a first function key triggered by a first method. The first function key generates a first function instruction different from the data backup instruction when triggered by a second method different from the first method.

10. An electronic device comprising at least one processor and a memory connected to the processor, wherein: The memory is used to store computer programs; The processor executes the computer program to enable the electronic device to: divide the data to be transmitted into multiple data fragments, the multiple data fragments being numbered sequentially; transmit each data fragment sequentially in ascending order based on the sequential numbering of the data fragments through a first communication channel with the second device; transmit each data fragment sequentially in reverse order based on the sequential numbering of the data fragments through a second communication channel with the second device; transmit the data fragments simultaneously through the first communication channel and the second communication channel until all data fragments have been transmitted.