Method and system for accessing terminal I / O device by cloud computing unit

By adding a bus proxy unit to the terminal device, the cloud computing unit can access I/O devices on the terminal device, solving the problems of limited computing capabilities and inconsistent user experience in existing computer systems, achieving efficient data transmission and protocol conversion, and adapting to the new computer architecture that integrates the end-to-cloud.

CN119892923AActive Publication Date: 2025-04-25CHINA UNITED NETWORK COMM GRP CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202311385402.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-10-24
Publication Date
2025-04-25
Estimated Expiration
2043-10-24

AI Technical Summary

Technical Problem

The existing computer systems are integrated into the same device by computing units and I/O devices, which leads to limited computing capabilities and difficult to expand. The computing performance of different products varies greatly, resulting in inconsistent user experience and difficult deployment and maintenance management.

Method used

By adding a bus proxy unit to the terminal device, the cloud computing unit can access the I/O devices on the terminal device, realize data transmission and protocol conversion, so that the cloud-side computing unit can communicate with the I/O devices in the terminal.

Benefits of technology

It realizes that the cloud computing unit accesses the existing I/O devices of the existing technical standards through the network, multiplexes the existing I/O controllers and device drivers, makes full use of massive I/O devices, and adapts to the new computer architecture that integrates the end-to-cloud, improves computing power and user experience, and simplifies deployment and maintenance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119892923A_ABST
    Figure CN119892923A_ABST
Patent Text Reader

Abstract

The invention provides a method and system for a cloud computing unit to access a terminal I / O device, electronic equipment and a storage medium, and aims to solve the problem that the existing bus technology cannot adapt to a terminal-cloud integrated computer architecture, the method comprises the following steps: identifying a bus controller existing in terminal equipment, and loading a bus agent program; establishing network connection with the on-cloud computing unit, so that the on-cloud computing unit loads a virtual bus driving program and loads a device driving program of the I / O device; data from an I / O device are received through a bus agent program, and the data are forwarded to a corresponding device driving program through a virtual bus driving program on a cloud computing unit; and forwarding data sent to the I / O devices by the device driving program to the bus agent program through the virtual bus driving program on the cloud computing unit to the corresponding I / O devices. According to the invention, the operation unit on the cloud can access the I / O device on the terminal equipment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of communication technology, and in particular to a method for a cloud computing unit to access a terminal I / O device, a system for a cloud computing unit to access a terminal I / O device, an electronic device, and a computer-readable storage medium. Background Art

[0002] PC (Personal Computer), mobile phone, TV set-top box, Internet of Things terminal, etc. are all computer systems. A computer system is generally composed of three functional components: multiple input and output devices with different functions, computing unit, and memory. Taking PC as an example, its input and output devices include display, mouse, keyboard, speaker, camera, etc., built-in CPU (Central Processing Unit) as computing unit, and built-in RAM (Random Access Memory) of a certain capacity as memory. A typical small computing system model is as follows: Figure 1 As shown. The computing unit of the computer and the input and output devices (I / O devices) are connected through a communication bus to achieve data transmission. Small computer systems generally use short-distance or board-level communication bus technology standards, including USB (Universal

[0003] Serial Bus, Universal Serial Bus), PCI (Peripheral Component Interconnect, a standard that defines local buses), I2C (Inter-Integrated Circuit, a bidirectional two-wire synchronous serial bus), etc. A bus can connect multiple I / O devices at the same time.

[0004] The computing unit contains the controller hardware of each bus and runs the operating system software. In order for the software in the computing unit to use the communication bus, the driver of each bus controller needs to be loaded in the operating system; in order for the software in the computing unit to communicate with different I / O devices, the driver of each I / O device needs to be loaded in the operating system.

[0005] A feature of existing computer systems is that the computing unit and I / O devices are integrated in the same device, forming a terminal product with complete computing functions. In this technical architecture, the existing short-distance or board-level communication bus technology is applicable and works well. However, there are three main problems with this computer system: First, since it relies on the computing unit integrated in the device, the computing power is limited and difficult to expand; second, the computing performance of different products varies greatly, resulting in inconsistent experience for users using different terminals for the same application; third, the need to install software on the terminal makes deployment and maintenance management difficult. Summary of the invention

[0006] In order to at least solve the above-mentioned technical problems existing in the prior art, the present disclosure provides a method for a cloud computing unit to access a terminal I / O device, a system for a cloud computing unit to access a terminal I / O device, an electronic device and a computer-readable storage medium, so that the cloud computing unit can access the I / O devices on the terminal device; in this way, it is possible to fully utilize the existing massive I / O devices and adapt to the new end-cloud integrated computer architecture.

[0007] In a first aspect, the present disclosure provides a method for a cloud computing unit to access a terminal input / output device I / O device, which is applied to a bus proxy unit, and the method includes:

[0008] Identify the bus controller present in the terminal device and load the bus agent program;

[0009] Establishing a network connection with the cloud computing unit, and causing the cloud computing unit to load a virtual bus driver, and causing the cloud computing unit to load a device driver of an I / O device;

[0010] The bus agent receives data from the I / O device, forwards the data to the corresponding device driver through the virtual bus driver on the cloud computing unit, and forwards the data sent to the I / O device by the device driver to the bus agent through the virtual bus driver on the cloud computing unit to the corresponding I / O device.

[0011] Furthermore,

[0012] The step of causing the cloud computing unit to load the virtual bus driver comprises:

[0013] Sending information of each bus contained in the terminal device to the cloud computing unit, so that the cloud computing unit loads a virtual bus driver of each type of bus according to the bus information; and

[0014] Establish a network connection with each virtual bus driver in the cloud computing unit;

[0015] The device driver for enabling the cloud computing unit to load the I / O device includes:

[0016] Initialize the communication bus and obtain the information of the I / O devices connected to the bus;

[0017] Sending the information of the I / O device to the virtual bus driver of the cloud computing unit through the network connection, so that the virtual bus driver loads the corresponding device driver according to the information of the I / O device;

[0018] or,

[0019] The bus agent program is used to enable the cloud computing unit to communicate with the bus controller and obtain the information of the I / O devices on the bus. The virtual bus driver then loads the corresponding device driver according to the information of the I / O devices.

[0020] Further, the initializing the communication bus and obtaining the I / O device information connected to the bus includes:

[0021] Obtain I / O device information directly from the bus controller through the bus agent; or,

[0022] receiving a bus initialization instruction sent by the virtual bus driver to the bus agent;

[0023] The bus controller is initialized through a bus agent program according to the instruction for initializing the bus, so as to obtain information of I / O devices connected to the bus.

[0024] Furthermore, the method further comprises:

[0025] When there are multiple cloud computing units, for each communication bus, a separate connection is established between its bus agent and the cloud computing unit;

[0026] The separate connection is used for subsequent communication between the bus agent of the communication bus and the virtual bus driver corresponding to the communication bus.

[0027] Furthermore, establishing a network connection with the cloud computing unit includes:

[0028] Connect to the computing unit management server, query the address of the cloud computing unit to be connected, and provide the identifier of the terminal device when querying, so that the computing unit management server determines the address information of the cloud computing unit to be connected according to the identifier of the terminal device, and returns the address information of the cloud computing unit to be connected to the bus proxy unit;

[0029] Use the returned address information of the cloud computing unit to connect to the cloud computing unit.

[0030] Furthermore,

[0031] The method further comprises:

[0032] When querying the address of the cloud computing unit to be connected to the computing unit management server, the identification information of the communication bus is also provided, so that the address information of the cloud computing unit returned by the computing unit management server to the bus proxy unit also includes the corresponding relationship between the cloud computing unit and the communication bus;

[0033] The method of connecting the on-cloud computing unit using the returned address information of the on-cloud computing unit includes:

[0034] Each bus agent is connected to the corresponding cloud computing unit according to the corresponding relationship between the cloud computing unit and the communication bus.

[0035] In a second aspect, the present disclosure provides a method for a cloud computing unit to access a terminal input / output device I / O device, which is applied to a cloud computing unit, and the method includes:

[0036] Establishing a network connection with a bus agent unit, wherein the bus agent unit identifies a bus controller present in the terminal device and is loaded with a bus agent program;

[0037] Loading a virtual bus driver based on a bus agent unit; and,

[0038] Loading device drivers for I / O devices based on bus proxy units;

[0039] The data from the I / O device is forwarded to the corresponding device driver through the virtual bus driver. The data from the I / O device is received by the bus agent unit through the bus agent program and forwarded to the virtual bus driver. The data sent by the device driver to the I / O device is sent to the bus agent program through the virtual bus driver and forwarded to the corresponding I / O device through the bus agent program.

[0040] Furthermore,

[0041] The loading of the virtual bus driver based on the bus agent unit comprises:

[0042] Receiving information of each bus contained in the terminal device sent by the bus agent unit;

[0043] Load the virtual bus driver of each type of bus according to the bus information;

[0044] Establishing a network connection between each virtual bus driver and the bus agent unit;

[0045] The device driver program of the I / O device loaded based on the bus agent unit includes:

[0046] receiving, through a virtual bus driver, information about I / O devices sent by a bus agent unit through a network connection, the information about the I / O devices being information about the I / O devices connected to the bus obtained after the bus agent unit initializes the communication bus, and loading, through the virtual bus driver, a corresponding device driver according to the information about the I / O devices;

[0047] or,

[0048] The virtual bus driver communicates with the bus controller through the bus agent to obtain the information of the I / O devices on the bus, and then loads the corresponding device driver according to the information of the I / O devices through the virtual bus driver.

[0049] Furthermore,

[0050] Before receiving the information of the I / O device sent by the bus agent unit through the network connection, it also includes:

[0051] The virtual bus driver sends a bus initialization instruction to the bus agent program, so that the bus agent unit initializes the bus controller through the bus agent program according to the bus initialization instruction to obtain information of the I / O devices connected to the bus.

[0052] In a third aspect, the present disclosure provides a system for a cloud computing unit to access a terminal I / O device, the system comprising a bus proxy unit and a cloud computing unit, the bus proxy unit comprising:

[0053] A first loading module, which is configured to identify a bus controller present in the terminal device and load a bus agent program;

[0054] A first connection module is configured to establish a network connection with the cloud computing unit, and to enable the cloud computing unit to load a virtual bus driver, and to enable the cloud computing unit to load a device driver of an I / O device;

[0055] A transmission module is configured to receive data from an I / O device through a bus agent, forward the data to a corresponding device driver through a virtual bus driver on the cloud computing unit, and forward the data sent to the I / O device by the device driver to the bus agent through the virtual bus driver on the cloud computing unit to the corresponding I / O device.

[0056] Further, the first connection module includes a first sending unit and a connecting unit;

[0057] The first sending unit is configured to send information of each bus included in the terminal device to the cloud computing unit, so that the cloud computing unit loads a virtual bus driver for each type of bus according to the bus information;

[0058] The connection unit is configured to establish a network connection with each virtual bus driver in the cloud computing unit;

[0059] The first connection module also includes an initialization unit and a second sending unit;

[0060] The initialization unit is configured to initialize the communication bus and obtain information of I / O devices connected to the bus;

[0061] The second sending unit is configured to send the information of the I / O device to the virtual bus driver of the cloud computing unit through a network connection, so that the virtual bus driver loads the corresponding device driver according to the information of the I / O device;

[0062] Alternatively, the first connection module further includes a transfer unit;

[0063] The transfer unit is configured to enable the cloud computing unit to communicate with the bus controller through the bus agent program, and enable the cloud computing unit to obtain information about the I / O devices on the bus, and then the virtual bus driver loads the corresponding device driver according to the information of the I / O devices.

[0064] Furthermore, the initialization unit is specifically configured as:

[0065] Obtain I / O device information directly from the bus controller through the bus agent; or,

[0066] receiving an instruction for initializing the bus sent by the virtual bus driver to the bus agent; and,

[0067] The bus controller is initialized through a bus agent program according to the instruction for initializing the bus, so as to obtain information of I / O devices connected to the bus.

[0068] Furthermore, the first connection module is further configured to:

[0069] When there are multiple cloud computing units, for each communication bus, a separate connection is established between its bus agent and the cloud computing unit;

[0070] The separate connection is used for subsequent communication between the bus agent of the communication bus and the virtual bus driver corresponding to the communication bus.

[0071] Furthermore, the first connection module is specifically configured as follows:

[0072] Connect to the computing unit management server, query the address of the cloud computing unit to be connected, and provide the identifier of the terminal device when querying, so that the computing unit management server determines the address information of the cloud computing unit to be connected according to the terminal device identifier, and returns the address information of the cloud computing unit to be connected to the bus proxy unit;

[0073] Use the returned address information of the cloud computing unit to connect to the cloud computing unit.

[0074] Furthermore, the first connection module is further configured to:

[0075] When querying the address of the cloud computing unit to be connected to the computing unit management server, the identification information of the communication bus is also provided, so that the address information of the cloud computing unit returned by the computing unit management server to the bus proxy unit also includes the corresponding relationship between the cloud computing unit and the communication bus;

[0076] Each bus agent is connected to the corresponding cloud computing unit according to the corresponding relationship between the cloud computing unit and the communication bus.

[0077] In a fourth aspect, the present disclosure provides a system for a cloud computing unit to access a terminal I / O device, the system comprising a bus proxy unit and a cloud computing unit, the cloud computing unit comprising:

[0078] a second connection module, which is configured to establish a network connection with a bus agent unit, the bus agent unit identifying a bus controller present in the terminal device and having a bus agent program loaded thereon;

[0079] A second loading module, which is configured to load the virtual bus driver based on the bus agent unit;

[0080] A third loading module, which is configured to load a device driver of the I / O device based on the bus agent unit;

[0081] An access module is configured to forward data from an I / O device to a corresponding device driver through a virtual bus driver, wherein the data from the I / O device is received by a bus agent unit through a bus agent program and forwarded to the virtual bus driver, and the data sent by the device driver to the I / O device is sent to the bus agent program through the virtual bus driver and forwarded to the corresponding I / O device through the bus agent program.

[0082] Furthermore,

[0083] The second loading module is specifically configured as:

[0084] Receiving information of each bus contained in the terminal device sent by the bus agent unit;

[0085] Load the virtual bus driver of each type of bus according to the bus information;

[0086] Establishing a network connection between each virtual bus driver and the bus agent unit;

[0087] The third loading module is specifically configured as:

[0088] receiving, through a virtual bus driver, information about I / O devices sent by a bus agent unit through a network connection, the information about the I / O devices being information about the I / O devices connected to the bus obtained after the bus agent unit initializes the communication bus, and loading, through the virtual bus driver, a corresponding device driver according to the information about the I / O devices;

[0089] or,

[0090] The virtual bus driver communicates with the bus controller through the bus agent to obtain the information of the I / O devices on the bus, and then loads the corresponding device driver according to the information of the I / O devices through the virtual bus driver.

[0091] Furthermore,

[0092] The third loading module is also configured to send an instruction to initialize the bus to the bus agent program through a virtual bus driver before receiving the information of the I / O device sent by the bus agent unit through the network connection, so that the bus agent unit initializes the bus controller through the bus agent program according to the instruction to initialize the bus to obtain the information of the I / O device connected to the bus.

[0093] In a fifth aspect, the present disclosure provides an electronic device comprising a memory and a processor, wherein the memory stores a computer program, and when the processor runs the computer program stored in the memory, the processor executes a method for a cloud computing unit to access a terminal I / O device as described in any one of the first and second aspects.

[0094] In a sixth aspect, the present disclosure provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the method for a cloud computing unit to access a terminal I / O device as described in any one of the first and second aspects above is implemented.

[0095] Beneficial effects:

[0096] The method for a cloud computing unit to access a terminal I / O device, the system for a cloud computing unit to access a terminal I / O device, the electronic device and the storage medium provided by the present invention can enable a cloud computing unit to access I / O devices of existing technical standards through a network, can reuse existing I / O controllers, bus controllers, device drivers and other products, can fully utilize existing massive I / O devices, and can adapt to a new computer architecture that integrates end and cloud. BRIEF DESCRIPTION OF THE DRAWINGS

[0097] Figure 1 It is a schematic diagram of a small computing system model;

[0098] Figure 2 A cloud computing unit access terminal I / O provided in the first embodiment of the present disclosure

[0099] A schematic flow chart of a method for a device;

[0100] Figure 3 A cloud computing unit access terminal I / O provided in the second embodiment of the present disclosure

[0101] A schematic flow chart of a method for a device;

[0102] Figure 4 A cloud computing unit access terminal I / O provided in the third embodiment of the present disclosure

[0103] The basic structure diagram of the device system;

[0104] Figure 5 A cloud computing unit access terminal I / O provided in the third embodiment of the present disclosure

[0105] A schematic flow chart of a method for a device;

[0106] Figure 6 An architectural diagram of a bus proxy unit provided in Embodiment 4 of the present disclosure;

[0107] Figure 7 This is an architecture diagram of a cloud computing unit provided in Embodiment 5 of the present disclosure;

[0108] Figure 8 This is an architecture diagram of an electronic device provided in Example 6 of the present disclosure. DETAILED DESCRIPTION

[0109] In order to enable those skilled in the art to better understand the technical solution of the present disclosure, the present disclosure is further described in detail below in conjunction with the drawings and embodiments. It should be understood that the specific embodiments and drawings described herein are only used to explain the present invention, rather than to limit the present invention.

[0110] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence; and, in the absence of conflict, the embodiments in the present disclosure and the features in the embodiments can be arbitrarily combined with each other.

[0111] The terms used in the embodiments of the present disclosure are only for the purpose of describing specific embodiments and are not intended to limit the present disclosure. The singular forms of "a", "said" and "the" used in the embodiments of the present disclosure and the appended claims are also intended to include plural forms unless the context clearly indicates other meanings.

[0112] In the subsequent description, the suffixes such as "module", "component" or "unit" used to represent elements are only used to facilitate the description of the present disclosure, and have no specific meanings. Therefore, "module", "component" or "unit" can be used in a mixed manner.

[0113] The technical solution of the present invention and how the technical solution of the present invention solves the above-mentioned technical problems existing in the prior art are described in detail below with specific embodiments. It is understandable that in the embodiments of the present application, the execution subject can perform some or all of the steps in the embodiments of the present application, and these steps or operations are only examples. The embodiments of the present application can also perform other operations or deformations of various operations. In addition, each step can be performed in a different order presented in the embodiments of the present application, and it is possible not to perform all the operations in the embodiments of the present application. And, the following several specific embodiments can be combined with each other, and may not be repeated in some embodiments for the same or similar concepts or processes.

[0114] Figure 2 A flowchart of a method for a cloud computing unit to access a terminal I / O device provided in the first embodiment of the present disclosure is applied to a bus proxy unit, such as Figure 2 As shown, the method includes:

[0115] Step S101: Identify the bus controller in the terminal device and load the bus agent program;

[0116] Step S102: establishing a network connection with the cloud computing unit, and causing the cloud computing unit to load a virtual bus driver, and causing the cloud computing unit to load a device driver of an I / O device;

[0117] Step S103: Receive data from the I / O device through the bus agent, forward the data to the corresponding device driver through the virtual bus driver on the cloud computing unit, and forward the data sent to the I / O device by the device driver to the bus agent through the virtual bus driver on the cloud computing unit to the corresponding I / O device.

[0118] In order to solve the problem of integrating the computing unit and the I / O device in the architecture of the same device, the embodiment of the present disclosure separates the computing unit of the computer from the terminal device and replaces it with the computing power of cloud computing to form an end-to-cloud integrated computer architecture. In this new computer architecture, the existing bus technology is no longer applicable. To this end, it is necessary to enable the computing unit on the cloud to access the I / O devices on the terminal device; the embodiment of the present disclosure adds a bus proxy unit to the terminal device, which is connected to the I / O device in the south through the existing bus technology and to the cloud-side computing unit (i.e., the computing unit on the cloud) in the north through the network, and converts the data transmission protocol on the bus into the data transmission protocol on the network, so that the cloud-side computing unit can communicate with the I / O devices in the terminal.

[0119] The bus proxy unit includes a network connection device and network communication software. In the computer system of the original architecture, the network connection device is an I / O device, and the network communication software is part of the computing unit software. In the present disclosure, the bus proxy unit is an independent unit, and the network connection device and network communication software contained therein are not I / O devices and software of the computer system.

[0120] The bus agent unit identifies the bus controllers in the terminal device and loads the bus agent program for each bus controller. The bus agent program is responsible for communicating with the bus controller. Generally, the terminal device supports the plug-and-play mechanism of the device, through which the bus controller in the terminal device can be identified.

[0121] The bus proxy unit obtains the network address information of the cloud computing unit. For example, the network address information includes the IP address or network domain name of the cloud computing unit, and also includes the TCP protocol port number. The bus proxy unit can establish a TCP connection with the cloud computing unit through this information.

[0122] The bus proxy unit uses the network address information of the cloud computing unit to initiate the establishment of a network connection; and synchronizes the bus information with the cloud computing unit. After synchronizing the bus information, the cloud computing unit loads the virtual bus driver of each type of bus according to the bus information. Then the cloud computing unit obtains the information of the I / O device connected to the bus, and loads the corresponding device driver.

[0123] When the I / O device sends data to the computing unit, the bus agent receives the data from the I / O device and forwards the data to the virtual bus driver through the network connection, and the virtual bus driver forwards the data to the device driver. When the cloud computing unit sends data to the I / O device, the device driver first sends the data sent to the I / O device to the virtual bus driver, and the virtual bus driver forwards the data to the bus agent through the network connection, and then the bus agent forwards the data to the corresponding I / O device.

[0124] The disclosed embodiment enables the cloud computing unit to access I / O devices of existing technical standards through the network. Existing I / O controllers, bus controllers, device drivers and other products can be reused; and the bus driver is divided into two parts: a bus agent and a virtual bus driver, which communicate with each other through a network connection, which can fully utilize the existing massive I / O devices and adapt to the new computer architecture of end-cloud integration. The computing power of I / O devices no longer depends on the computing unit integrated in the device, and the computing power is unlimited and easy to expand. Moreover, due to the use of cloud computing units, the experience is consistent for users using different terminals, and the virtual bus driver and device driver are installed by the cloud computing unit, which reduces the dependence on terminal capabilities and is easy to deploy and maintain in a unified manner.

[0125] Furthermore,

[0126] The step of causing the cloud computing unit to load the virtual bus driver comprises:

[0127] Sending information of each bus contained in the terminal device to the cloud computing unit, so that the cloud computing unit loads a virtual bus driver of each type of bus according to the bus information; and

[0128] Establish a network connection with each virtual bus driver in the cloud computing unit;

[0129] The device driver for enabling the cloud computing unit to load the I / O device includes:

[0130] Initialize the communication bus and obtain the information of the I / O devices connected to the bus;

[0131] Sending the information of the I / O device to the virtual bus driver of the cloud computing unit through the network connection, so that the virtual bus driver loads the corresponding device driver according to the information of the I / O device;

[0132] or,

[0133] The bus agent program is used to enable the cloud computing unit to communicate with the bus controller and obtain the information of the I / O devices on the bus. The virtual bus driver then loads the corresponding device driver according to the information of the I / O devices.

[0134] The method for establishing a network connection between a bus proxy unit and an on-cloud computing unit may be: a network connection is established between the bus proxy unit and the computing unit, and the bus proxy unit sends information about each bus contained in the device to the on-cloud computing unit. The information about each bus includes at least the type of bus; after synchronizing the bus information, the computing unit loads the virtual bus driver for each type of bus according to the bus information. For example, if the bus information contains two types, USB and PCI, the on-cloud computing unit simultaneously loads the virtual bus driver for the USB bus and the virtual bus driver for the PCI bus. This enables the bus proxy unit to establish a network connection with each virtual bus driver in the on-cloud computing unit;

[0135] When loading the device driver corresponding to the information of the I / O device for the cloud computing unit, it is necessary to enable the cloud computing unit to obtain the information of the I / O device on the bus, which can be obtained by the bus agent unit through the initialization communication bus and sent to the cloud computing unit. Generally speaking, the bus agent unit will allocate system resources to the bus controller after identifying it (this belongs to the plug-and-play mechanism), including the address segment required to access the internal register of the bus controller, the interrupt number required to receive the interrupt signal of the bus controller, etc. The operation of initializing the bus controller includes a series of accesses to its internal registers and setting interrupt vectors. After completing the initialization of the bus controller, the bus agent unit can obtain the information of the I / O device connected to the bus. The information includes the type of I / O device; the bus agent program of the bus agent unit sends the I / O device information to the virtual bus driver through the network connection. The virtual bus driver loads the corresponding device driver according to the information of the I / O device.

[0136] In another preferred embodiment of the present disclosure, the virtual bus driver of the cloud computing unit can also communicate with the bus controller through the bus agent program to obtain the information of the I / O device, including the type of the I / O device. The virtual bus driver loads the corresponding device driver according to the information of the I / O device.

[0137] Further, the initializing the communication bus and obtaining the I / O device information connected to the bus includes:

[0138] Obtain I / O device information directly from the bus controller through the bus agent; or,

[0139] receiving a bus initialization instruction sent by the virtual bus driver to the bus agent;

[0140] The bus controller is initialized through a bus agent program according to the instruction for initializing the bus, so as to obtain information of I / O devices connected to the bus.

[0141] The method for the bus proxy unit to initialize the communication bus can be performed after receiving the instruction for initializing the bus sent by the virtual bus driver to the bus proxy program. It can also be performed by the bus proxy unit before establishing a network connection with the computing unit, directly obtaining the information of the I / O device from the bus controller, including the type of the I / O device; after identifying the I / O device, the bus proxy unit establishes a network connection with the computing unit, so that the computing unit can establish a connection with the I / O device through the bus proxy unit.

[0142] Furthermore, the method further comprises:

[0143] When there are multiple cloud computing units, for each communication bus, a separate connection is established between its bus agent and the cloud computing unit;

[0144] The separate connection is used for subsequent communication between the bus agent of the communication bus and the virtual bus driver corresponding to the communication bus.

[0145] The bus proxy unit is configured with the network address information of the computing unit. When one computing unit is used, the method for establishing a network connection between the bus proxy unit and the computing unit can be: a network connection is established between the bus proxy unit and the computing unit, and the bus proxy unit sends the information of each bus contained in the device to the cloud computing unit. The information of each bus includes at least the type of bus. The cloud computing unit loads the virtual bus drivers of various buses at the same time.

[0146] When the bus agent unit is connected to multiple computing units, the method for establishing a network connection between the bus agent unit and the computing unit and synchronizing bus information can also be: for each communication bus, a separate connection is established between its bus agent program and the computing unit, and the information of the bus is sent after the connection is established. After synchronizing the bus information, it also includes: the computing unit loads the corresponding bus driver according to the bus information. For example, if the type of the bus is a USB bus, the virtual bus driver of the USB bus is loaded; if the type of the bus is a PCI bus, the virtual bus driver of the PCI bus is loaded; the above network connection is used for subsequent communication between the bus agent program and the virtual bus driver of the bus.

[0147] Furthermore, establishing a network connection with the cloud computing unit includes:

[0148] Connect to the computing unit management server, query the address of the cloud computing unit to be connected, and provide the identifier of the terminal device when querying, so that the computing unit management server determines the address information of the cloud computing unit to be connected according to the identifier of the terminal device, and returns the address information of the cloud computing unit to be connected to the bus proxy unit;

[0149] Use the returned address information of the cloud computing unit to connect to the cloud computing unit.

[0150] In one implementation of the present disclosure, the network address information of the operation unit may be pre-configured in the bus agent unit, and the bus agent unit establishes a connection according to the network address information of the operation unit.

[0151] In another preferred embodiment of the present disclosure, dynamic configuration of operation units can also be achieved, and the method for the bus agent unit to establish a connection with the dynamically allocated operation unit is specifically as follows: an operation unit management server is configured in the system, and only the address of the operation unit management server is configured in the bus agent unit. The bus agent unit connects to the operation unit management server and queries the address of the operation unit to be connected. The identification of the terminal device is provided during the query. The operation unit management server determines the address information of the operation unit to be connected based on the terminal device identification, and returns the address information to the bus agent unit. The bus agent unit uses the address information to connect to the operation unit; thereby achieving dynamic configuration of the operation unit.

[0152] Furthermore,

[0153] The method further comprises:

[0154] When querying the address of the cloud computing unit to be connected to the computing unit management server, the identification information of the communication bus is also provided, so that the address information of the cloud computing unit returned by the computing unit management server to the bus proxy unit also includes the corresponding relationship between the cloud computing unit and the communication bus;

[0155] The method of connecting the on-cloud computing unit using the returned address information of the on-cloud computing unit includes:

[0156] Connect each bus agent to the corresponding cloud computing unit according to the corresponding relationship between the cloud computing unit and the communication bus

[0157] When multiple computing units are connected, for each communication bus, a separate connection is established between the bus agent and the computing unit, and the information of the bus is sent after the connection is established.

[0158] The method of establishing a separate connection between each bus agent and the operation unit also includes: different bus agents can establish connections with different operation units. That is, a terminal device can be connected to multiple operation units, and each operation unit accesses different I / O devices. To implement this method, the bus agent independently connects to the operation unit management server to query the information of the operation unit to be connected. When querying, in addition to providing the identification of the terminal device to which it belongs, it is also necessary to provide the identification information of the communication bus; when the operation unit management server returns the address information of the operation unit to the bus agent, it can return the address information of multiple operation units, and include the corresponding relationship between the operation unit and the communication bus, so that the bus agent can connect to the correct operation unit.

[0159] The disclosed embodiments can enable cloud computing units to access I / O devices of existing technical standards through the network, and can reuse existing I / O controllers, bus controllers, device drivers and other products. This can not only make full use of existing massive I / O devices, but also adapt to the new end-to-end cloud integrated computer architecture.

[0160] Figure 3 A flowchart of a method for a cloud computing unit to access a terminal I / O device provided in Embodiment 2 of the present disclosure is applied to a cloud computing unit, such as Figure 3 As shown, the method includes:

[0161] Step S201: establishing a network connection with a bus agent unit, wherein the bus agent unit identifies a bus controller existing in a terminal device and is loaded with a bus agent program;

[0162] Step S202: loading a virtual bus driver based on the bus agent unit; and,

[0163] Step S203: loading the device driver of the I / O device based on the bus agent unit;

[0164] Step S204: forwarding the data from the I / O device to the corresponding device driver through the virtual bus driver, the data from the I / O device is received by the bus agent unit through the bus agent program and forwarded to the virtual bus driver, and the data sent by the device driver to the I / O device is sent to the bus agent program through the virtual bus driver, and forwarded to the corresponding I / O device through the bus agent program.

[0165] Furthermore,

[0166] The loading of the virtual bus driver based on the bus agent unit comprises:

[0167] Receiving information of each bus contained in the terminal device sent by the bus agent unit;

[0168] Load the virtual bus driver of each type of bus according to the bus information;

[0169] Establishing a network connection between each virtual bus driver and the bus agent unit;

[0170] The device driver program of the I / O device loaded based on the bus agent unit includes:

[0171] receiving, through a virtual bus driver, information about I / O devices sent by a bus agent unit through a network connection, the information about the I / O devices being information about the I / O devices connected to the bus obtained after the bus agent unit initializes the communication bus, and loading, through the virtual bus driver, a corresponding device driver according to the information about the I / O devices;

[0172] or,

[0173] The virtual bus driver communicates with the bus controller through the bus agent to obtain the information of the I / O devices on the bus, and then loads the corresponding device driver according to the information of the I / O devices through the virtual bus driver.

[0174] Furthermore,

[0175] Before receiving the information of the I / O device sent by the bus agent unit through the network connection, it also includes:

[0176] The virtual bus driver sends a bus initialization instruction to the bus agent program, so that the bus agent unit initializes the bus controller through the bus agent program according to the bus initialization instruction to obtain information of the I / O devices connected to the bus.

[0177] The disclosed embodiment implements a method for a cloud computing unit to access a terminal I / O device from the cloud computing unit side, and its implementation process corresponds to the bus proxy unit side. For details, please refer to the relevant description in the first embodiment.

[0178] The disclosed embodiments enable the cloud computing unit to access the I / O devices on the terminal device; in this way, it is possible to fully utilize the existing massive I / O devices and adapt to the new end-cloud integrated computer architecture.

[0179] In order to more clearly describe the technical solution of the present disclosure, the third embodiment of the present disclosure also provides a method for a cloud computing unit to access a terminal I / O device. The method is based on a system implementation of a cloud computing unit accessing a terminal I / O device. The basic structure of the system is as follows: Figure 4As shown, a bus agent unit is added to the terminal device. The unit is connected to the I / O device in the south through the existing bus technology and to the cloud-side computing unit in the north through the network. The data transmission protocol on the bus is converted into the data transmission protocol on the network, so that the cloud-side computing unit can communicate with the I / O device in the terminal.

[0180] (a) Figure 5 As shown, the basic process of the method includes:

[0181] S1, the bus agent unit establishes a network connection with the computing unit;

[0182] S2, the bus agent unit initializes the communication bus;

[0183] S3, the computing unit establishes a connection with the I / O device through the bus proxy unit;

[0184] S4. The operation unit communicates with the I / O device through the bus proxy unit.

[0185] (ii) In the method of (i) above, the method of establishing a network connection between the bus proxy unit and the computing unit in step S1 is specifically as follows:

[0186] 1. The bus agent unit identifies the bus controllers in the terminal device and loads the bus agent program for each bus controller. The bus agent program is responsible for communicating with the bus controller. Generally, the terminal device supports the plug-and-play mechanism of the device, through which the bus controller in the terminal device can be identified.

[0187] 2. The bus agent unit is configured with the network address information of the computing unit. For example, the network address information includes the IP address or network domain name of the computing unit, and also includes the TCP protocol port number. The bus agent unit can establish a TCP connection with the computing unit through this information.

[0188] 3. The bus agent unit uses the network address information of the computing unit to initiate the establishment of a network connection.

[0189] (III) In the method of (II) above, the method for establishing a network connection between the bus proxy unit and the computing unit may be: a network connection is established between the bus proxy unit and the computing unit, and the bus proxy unit sends information of each bus included in the device to the computing unit. The information of each bus includes at least the type of the bus.

[0190] After synchronizing the bus information, the following also includes: (1) the operation unit loads the virtual bus driver for each type of bus according to the bus information. For example, if the bus information includes two types, USB and PCI, the operation unit loads the virtual bus driver for the USB bus and the virtual bus driver for the PCI bus at the same time. (2) the bus agent unit establishes a network connection with each virtual bus driver separately for subsequent communication between the bus agent program and the virtual bus driver of the bus.

[0191] (IV) In the method described in (I) above, the method of initializing the communication bus by the bus agent unit in step S2 is specifically as follows: (1) the virtual bus driver sends an instruction to initialize the bus to the bus agent; (2) the bus agent initializes the bus controller.

[0192] Generally speaking, after identifying the bus controller, the bus agent unit will allocate system resources to it (this belongs to the plug-and-play mechanism), including the address segment required to access the internal registers of the bus controller, the interrupt number required to receive the interrupt signal of the bus controller, etc. The operation of initializing the bus controller includes a series of accesses to its internal registers and setting interrupt vectors, etc.

[0193] After completing the bus controller initialization, the bus agent can obtain the information of the I / O devices connected to the bus.

[0194] (V) In the method of (I) above, the method of establishing a connection between the operation unit and the I / O device through the bus proxy unit in step S3 is specifically as follows: (1) The virtual bus driver communicates with the bus controller through the bus proxy program to obtain the information of the I / O device, including the type of the I / O device. (2) The virtual bus driver loads the corresponding device driver according to the information of the I / O device.

[0195] Alternatively: (1) The bus agent obtains the information of the I / O device from the bus controller, including the type of the I / O device. (2) The bus agent sends the I / O device information to the virtual bus driver through the network connection. (3) The virtual bus driver loads the corresponding device driver according to the I / O device information.

[0196] (VI) In the method of (I) above, the method of step S4 in which the operation unit communicates with the I / O device through the bus agent unit is specifically as follows: (1) When the I / O device sends data to the operation unit, the bus agent receives the data from the I / O device and forwards the data to the virtual bus driver through the network connection, and the virtual bus driver forwards the data to the device driver. (2) When the operation unit sends data to the I / O device, the device driver first sends the data to the virtual bus driver, the virtual bus driver forwards the data to the bus agent through the network connection, and the bus agent forwards the data to the I / O device.

[0197] 2. Methods for Dynamically Configuring Computing Units

[0198] (VII) In the method described in (I) above, the method of establishing a network connection between the bus agent unit and the operation unit in step S1 also includes a method of establishing a connection between the bus agent unit and a dynamically allocated operation unit. Specifically: (1) The system is configured with an operation unit management server, and only the operation unit management server is configured in the bus agent unit. (2) The bus agent unit connects to the operation unit management server and queries the address of the operation unit to be connected. The identification of the terminal device is provided during the query. (3) The operation unit management server determines the address information of the operation unit to be connected based on the terminal device identification, and returns the address information to the bus agent unit, and the bus agent unit uses the address information to connect to the operation unit.

[0199] 3. Methods for connecting multiple computing units

[0200] (VIII) In the method described in (II) above, the method for establishing a network connection between the bus agent unit and the operation unit and synchronizing bus information may also be as follows: for each communication bus, a separate connection is established between the bus agent program and the operation unit, and the information of the bus is sent after the connection is established.

[0201] After synchronizing the bus information, the method further includes: (1) the operation unit loads the corresponding bus driver according to the bus information. For example, if the bus type is a USB bus, the virtual bus driver of the USB bus is loaded; if the bus type is a PCI bus, the virtual bus driver of the PCI bus is loaded; (2) the above network connection is used for subsequent communication between the bus agent program of the bus and the virtual bus driver.

[0202] (IX) In the method of (VIII) above, the method of establishing a separate connection between each bus agent and the operation unit also includes: different bus agents can establish connections with different operation units. That is, a terminal device can be connected to multiple operation units, and each operation unit accesses different I / O devices. To implement this method, the method of (VII) above also includes: when the operation unit management server returns the address information of the operation unit to the bus agent unit, it can return the address information of multiple operation units, and include the corresponding relationship between the operation unit and the communication bus, so that the bus agent can connect to the correct operation unit.

[0203] (10) To implement the method in (9) above, the method in (7) above may also be specifically as follows: the bus agent program independently connects to the operation unit management server to query the information of the operation unit to be connected. When querying, in addition to providing the identification of the terminal device to which it belongs, it is also necessary to provide the identification information of the communication bus.

[0204] 4. Alternative: Delayed Connection

[0205] (XI) The method in (I) above can be replaced by:

[0206] 1. The bus agent unit initializes the communication bus.

[0207] 2. After the I / O device is identified, the bus proxy unit establishes a network connection with the computing unit, so that the computing unit can establish a connection with the I / O device through the bus proxy unit.

[0208] 3. The arithmetic unit communicates with the I / O devices through the bus proxy unit.

[0209] (XII) In the method of (XI) above, the method of step 2 is specifically as follows: (1) The bus agent obtains the information of the I / O device from the bus controller, the information including the type of the I / O device. (2) The bus agent obtains the address information of the operation unit, establishes a connection with the operation unit, and synchronizes the bus information and the I / O device information. (3) The operation unit loads the corresponding virtual bus driver according to the bus information, and loads the corresponding device driver according to the I / O device information. (4) The above network connection is used for subsequent communication between the bus agent and the virtual bus driver.

[0210] In this method, each I / O device loads a virtual bus driver, that is, a bus agent connects multiple virtual bus drivers. In a specific implementation, the virtual bus driver and the I / O device driver can be merged.

[0211] (XIII) In the method of (XII) above, the bus agent program may obtain the address information of the operation unit by pre-configuration or by querying the operation unit management server. When querying the operation unit management server, in addition to providing the identification of the terminal device, the identification information of the I / O device is also required.

[0212] The disclosed embodiments can enable the cloud computing unit to access the terminal I / O devices, reuse existing I / O controllers, bus controllers, device drivers and other products; can make full use of the existing massive I / O devices, and adapt to the new computer architecture of end-cloud integration. The computing power of the I / O device no longer depends on the computing unit integrated in the device, the computing power is unlimited and easy to expand, and because of the use of the cloud computing unit, the experience is consistent for users using different terminals, and the virtual bus driver and device driver are installed by the cloud computing unit, which reduces the dependence on terminal capabilities and is easy to deploy and maintain in a unified manner.

[0213] Embodiment 4 of the present disclosure also provides a system for a cloud computing unit to access a terminal I / O device, the system comprising a bus proxy unit and a cloud computing unit and a cloud computing unit, such as Figure 6 As shown, the bus agent unit includes:

[0214] A first loading module 11, which is configured to identify a bus controller existing in a terminal device and load a bus agent program;

[0215] A first connection module 12, which is configured to establish a network connection with the cloud computing unit, and enable the cloud computing unit to load a virtual bus driver, and enable the cloud computing unit to load a device driver of an I / O device;

[0216] The transmission module 13 is configured to receive data from the I / O device through the bus agent program, forward the data to the corresponding device driver through the virtual bus driver on the cloud computing unit, and forward the data sent to the I / O device by the device driver to the bus agent program through the virtual bus driver on the cloud computing unit to the corresponding I / O device.

[0217] Further, the first connection module 12 includes a first sending unit and a connecting unit;

[0218] The first sending unit is configured to send information of each bus included in the terminal device to the cloud computing unit, so that the cloud computing unit loads a virtual bus driver for each type of bus according to the bus information;

[0219] The connection unit is configured to establish a network connection with each virtual bus driver in the cloud computing unit;

[0220] The first connection module 12 further includes an initialization unit and a second sending unit;

[0221] The initialization unit is configured to initialize the communication bus and obtain information of I / O devices connected to the bus;

[0222] The second sending unit is configured to send the information of the I / O device to the virtual bus driver of the cloud computing unit through a network connection, so that the virtual bus driver loads the corresponding device driver according to the information of the I / O device;

[0223] Alternatively, the first connection module 12 further includes a transfer unit;

[0224] The transfer unit is configured to enable the cloud computing unit to communicate with the bus controller through the bus agent program, and enable the cloud computing unit to obtain information about the I / O devices on the bus, and then the virtual bus driver loads the corresponding device driver according to the information of the I / O devices.

[0225] Furthermore, the initialization unit is specifically configured as:

[0226] Obtain I / O device information directly from the bus controller through the bus agent; or,

[0227] receiving an instruction for initializing the bus sent by the virtual bus driver to the bus agent; and,

[0228] The bus controller is initialized through a bus agent program according to the instruction for initializing the bus, so as to obtain information of I / O devices connected to the bus.

[0229] Furthermore, the first connection module 12 is further configured to:

[0230] When there are multiple cloud computing units, for each communication bus, a separate connection is established between its bus agent and the cloud computing unit;

[0231] The separate connection is used for subsequent communication between the bus agent of the communication bus and the virtual bus driver corresponding to the communication bus.

[0232] Furthermore, the first connection module 12 is specifically configured as follows:

[0233] Connect to the computing unit management server, query the address of the cloud computing unit to be connected, and provide the identifier of the terminal device when querying, so that the computing unit management server determines the address information of the cloud computing unit to be connected according to the identifier of the terminal device, and returns the address information of the cloud computing unit to be connected to the bus proxy unit;

[0234] Use the returned address information of the cloud computing unit to connect to the cloud computing unit.

[0235] Furthermore, the first connection module 12 is further configured to:

[0236] When querying the address of the cloud computing unit to be connected to the computing unit management server, the identification information of the communication bus is also provided, so that the address information of the cloud computing unit returned by the computing unit management server to the bus proxy unit also includes the corresponding relationship between the cloud computing unit and the communication bus;

[0237] Each bus agent is connected to the corresponding cloud computing unit according to the corresponding relationship between the cloud computing unit and the communication bus.

[0238] Embodiment 5 of the present disclosure also provides a system for a cloud computing unit to access a terminal I / O device, the system comprising a bus proxy unit and a cloud computing unit, such as Figure 7 As shown, the cloud computing unit includes:

[0239] A second connection module 21, which is configured to establish a network connection with a bus agent unit, the bus agent unit identifying a bus controller present in the terminal device and loaded with a bus agent program;

[0240] A second loading module 22, which is configured to load a virtual bus driver based on a bus agent unit;

[0241] A third loading module 23, which is configured to load a device driver of the I / O device based on the bus agent unit;

[0242] The access module 24 is configured to forward data from the I / O device to the corresponding device driver through the virtual bus driver. The data from the I / O device is received by the bus agent unit through the bus agent program and forwarded to the virtual bus driver. The data sent by the device driver to the I / O device is sent to the bus agent program through the virtual bus driver and forwarded to the corresponding I / O device through the bus agent program.

[0243] Furthermore,

[0244] The second loading module 22 is specifically configured as:

[0245] Receiving information of each bus contained in the terminal device sent by the bus agent unit;

[0246] Load the virtual bus driver of each type of bus according to the bus information;

[0247] Establishing a network connection between each virtual bus driver and the bus agent unit;

[0248] The third loading module 23 is specifically configured as follows:

[0249] receiving, through a virtual bus driver, information about I / O devices sent by a bus agent unit through a network connection, the information about the I / O devices being information about the I / O devices connected to the bus obtained after the bus agent unit initializes the communication bus, and loading, through the virtual bus driver, a corresponding device driver according to the information about the I / O devices;

[0250] or,

[0251] The virtual bus driver communicates with the bus controller through the bus agent to obtain the information of the I / O devices on the bus, and then loads the corresponding device driver according to the information of the I / O devices through the virtual bus driver.

[0252] Furthermore,

[0253] The third loading module 23 is also configured to send an instruction to initialize the bus to the bus agent program through the virtual bus driver before receiving the information of the I / O device sent by the bus agent unit through the network connection, so that the bus agent unit initializes the bus controller through the bus agent program according to the instruction to initialize the bus to obtain the information of the I / O device connected to the bus.

[0254] The system for the cloud computing unit accessing the terminal I / O device in the fourth and fifth embodiments of the present disclosure is used to implement the method for the cloud computing unit accessing the terminal I / O device in the first to third embodiments of the method, so the description is relatively simple. For details, please refer to the relevant description in the previous first to third embodiments of the method, which will not be repeated here.

[0255] In addition, if Figure 8 As shown, the sixth embodiment of the present disclosure further provides an electronic device, including a memory 100 and a processor 200, wherein the memory 100 stores a computer program, and when the processor 200 runs the computer program stored in the memory 100, the processor 200 executes the above-mentioned various possible methods.

[0256] The memory 100 is connected to the processor 200. The memory 100 may be a flash memory, a read-only memory or other memory, and the processor 200 may be a central processing unit or a single-chip microcomputer.

[0257] In addition, an embodiment of the present disclosure further provides a computer-readable storage medium, on which a computer program is stored, and the computer program is executed by a processor to perform the above-mentioned various possible methods.

[0258] The computer-readable storage medium includes volatile or non-volatile, removable or non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, computer program modules or other data). Computer-readable storage media include, but are not limited to, RAM (Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable read only memory), flash memory or other memory technology, CD-ROM (Compact Disc Read-Only Memory), Digital Video Disc (DVD) or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and can be accessed by a computer.

[0259] It is to be understood that the above embodiments are merely exemplary embodiments used to illustrate the principles of the present disclosure, but the present disclosure is not limited thereto. For those of ordinary skill in the art, various modifications and improvements can be made without departing from the spirit and substance of the present disclosure, and these modifications and improvements are also considered to be within the scope of protection of the present disclosure.

Claims

1. A method for a cloud computing unit to access a terminal input / output device I / O device, characterized in that: Applied to a bus agent unit, the method comprises: Identify the bus controller present in the terminal device and load the bus agent program; Establishing a network connection with the cloud computing unit, and causing the cloud computing unit to load a virtual bus driver, and causing the cloud computing unit to load a device driver of an I / O device; The bus agent receives data from the I / O device, forwards the data to the corresponding device driver through the virtual bus driver on the cloud computing unit, and forwards the data sent to the I / O device by the device driver to the bus agent through the virtual bus driver on the cloud computing unit to the corresponding I / O device.

2. The method according to claim 1, characterized in that The step of causing the cloud computing unit to load the virtual bus driver comprises: Sending information of each bus contained in the terminal device to the cloud computing unit, so that the cloud computing unit loads a virtual bus driver of each type of bus according to the bus information; and Establish a network connection with each virtual bus driver in the cloud computing unit; The device driver for enabling the cloud computing unit to load the I / O device includes: Initialize the communication bus and obtain the information of the I / O devices connected to the bus; Sending the information of the I / O device to the virtual bus driver of the cloud computing unit through the network connection, so that the virtual bus driver loads the corresponding device driver according to the information of the I / O device; or, The bus agent program is used to enable the cloud computing unit to communicate with the bus controller and obtain the information of the I / O devices on the bus. The virtual bus driver then loads the corresponding device driver according to the information of the I / O devices.

3. The method according to claim 2, characterized in that Initializing the communication bus and obtaining information of I / O devices connected to the bus include: Obtain I / O device information directly from the bus controller through the bus agent; or, receiving a bus initialization instruction sent by the virtual bus driver to the bus agent; The bus controller is initialized through a bus agent program according to the instruction for initializing the bus, so as to obtain information of I / O devices connected to the bus.

4. The method according to claim 1, characterized in that The method further comprises: When there are multiple cloud computing units, for each communication bus, a separate connection is established between its bus agent and the cloud computing unit; The separate connection is used for subsequent communication between the bus agent of the communication bus and the virtual bus driver corresponding to the communication bus.

5. The method according to claim 1 or 4, characterized in that: The establishing of a network connection with the cloud computing unit includes: Connect to the computing unit management server, query the address of the cloud computing unit to be connected, and provide the identifier of the terminal device when querying, so that the computing unit management server determines the address information of the cloud computing unit to be connected according to the identifier of the terminal device, and returns the address information of the cloud computing unit to be connected to the bus proxy unit; Use the returned address information of the cloud computing unit to connect to the cloud computing unit.

6. The method according to claim 5, characterized in that The method further comprises: When querying the address of the cloud computing unit to be connected to the computing unit management server, the identification information of the communication bus is also provided, so that the address information of the cloud computing unit returned by the computing unit management server to the bus proxy unit also includes the corresponding relationship between the cloud computing unit and the communication bus; The using the returned address information of the on-cloud computing unit to connect to the on-cloud computing unit includes: Each bus agent is connected to the corresponding cloud computing unit according to the corresponding relationship between the cloud computing unit and the communication bus.

7. A method for a cloud computing unit to access a terminal input / output device I / O device, characterized in that: Applied to a cloud computing unit, the method includes: Establishing a network connection with a bus agent unit, wherein the bus agent unit identifies a bus controller present in the terminal device and is loaded with a bus agent program; Loading a virtual bus driver based on a bus agent unit; and, Loading device drivers for I / O devices based on bus proxy units; The data from the I / O device is forwarded to the corresponding device driver through the virtual bus driver. The data from the I / O device is received by the bus agent unit through the bus agent program and forwarded to the virtual bus driver. The data sent by the device driver to the I / O device is sent to the bus agent program through the virtual bus driver and forwarded to the corresponding I / O device through the bus agent program.

8. The method according to claim 7, characterized in that The loading of the virtual bus driver based on the bus agent unit comprises: Receiving information of each bus contained in the terminal device sent by the bus agent unit; Load the virtual bus driver of each type of bus according to the bus information; Establishing a network connection between each virtual bus driver and the bus agent unit; The device driver program of the I / O device loaded based on the bus agent unit comprises: receiving, through a virtual bus driver, information about I / O devices sent by a bus agent unit through a network connection, the information about the I / O devices being information about the I / O devices connected to the bus obtained after the bus agent unit initializes the communication bus, and loading, through the virtual bus driver, a corresponding device driver according to the information about the I / O devices; or, The virtual bus driver communicates with the bus controller through the bus agent to obtain the information of the I / O devices on the bus, and then loads the corresponding device driver according to the information of the I / O devices through the virtual bus driver.

9. The method according to claim 8, characterized in that Before receiving the information of the I / O device sent by the bus agent unit through the network connection, it also includes: The virtual bus driver sends a bus initialization instruction to the bus agent program, so that the bus agent unit initializes the bus controller through the bus agent program according to the bus initialization instruction to obtain information of the I / O devices connected to the bus.

10. A system for a cloud computing unit to access a terminal I / O device, characterized in that: The system includes a bus proxy unit and a cloud computing unit, and the bus proxy unit includes: A first loading module, which is configured to identify a bus controller present in the terminal device and load a bus agent program; A first connection module is configured to establish a network connection with the cloud computing unit, and to enable the cloud computing unit to load a virtual bus driver, and to enable the cloud computing unit to load a device driver of an I / O device; A transmission module is configured to receive data from an I / O device through a bus agent, forward the data to a corresponding device driver through a virtual bus driver on the cloud computing unit, and forward the data sent to the I / O device by the device driver to the bus agent through the virtual bus driver on the cloud computing unit to the corresponding I / O device.

11. The system according to claim 10, characterized in that The first connection module includes a first sending unit and a connecting unit; The first sending unit is configured to send information of each bus included in the terminal device to the cloud computing unit, so that the cloud computing unit loads a virtual bus driver for each type of bus according to the bus information; The connection unit is configured to establish a network connection with each virtual bus driver in the cloud computing unit; The first connection module also includes an initialization unit and a second sending unit; The initialization unit is configured to initialize the communication bus and obtain information of I / O devices connected to the bus; The second sending unit is configured to send the information of the I / O device to the virtual bus driver of the cloud computing unit through a network connection, so that the virtual bus driver loads the corresponding device driver according to the information of the I / O device; Alternatively, the first connection module further includes a transfer unit; The transfer unit is configured to enable the cloud computing unit to communicate with the bus controller through the bus agent program, and enable the cloud computing unit to obtain information about the I / O devices on the bus, and then the virtual bus driver loads the corresponding device driver according to the information of the I / O devices.

12. The system according to claim 11, characterized in that The initialization unit is specifically configured as: Obtain I / O device information directly from the bus controller through the bus agent; or, receiving an instruction for initializing the bus sent by the virtual bus driver to the bus agent; and, The bus controller is initialized through a bus agent program according to the instruction for initializing the bus, so as to obtain information of I / O devices connected to the bus.

13. The system according to claim 10, characterized in that The first connection module is further configured to: When there are multiple cloud computing units, for each communication bus, a separate connection is established between its bus agent and the cloud computing unit; The separate connection is used for subsequent communication between the bus agent of the communication bus and the virtual bus driver corresponding to the communication bus.

14. The system according to claim 10 or 13, characterized in that The first connection module is specifically configured as: Connect to the computing unit management server, query the address of the cloud computing unit to be connected, and provide the identifier of the terminal device when querying, so that the computing unit management server determines the address information of the cloud computing unit to be connected according to the identifier of the terminal device, and returns the address information of the cloud computing unit to be connected to the bus proxy unit; Use the returned address information of the cloud computing unit to connect to the cloud computing unit.

15. The system according to claim 14, characterized in that The first connection module is further configured to: When querying the address of the cloud computing unit to be connected to the computing unit management server, the identification information of the communication bus is also provided, so that the address information of the cloud computing unit returned by the computing unit management server to the bus proxy unit also includes the corresponding relationship between the cloud computing unit and the communication bus; Each bus agent is connected to the corresponding cloud computing unit according to the corresponding relationship between the cloud computing unit and the communication bus.

16. A system for a cloud computing unit to access a terminal I / O device, characterized in that: The system includes a bus proxy unit and a cloud computing unit, and the cloud computing unit includes: a second connection module, which is configured to establish a network connection with a bus agent unit, the bus agent unit identifying a bus controller present in the terminal device and having a bus agent program loaded thereon; A second loading module, which is configured to load the virtual bus driver based on the bus agent unit; A third loading module, which is configured to load a device driver of the I / O device based on the bus agent unit; An access module is configured to forward data from an I / O device to a corresponding device driver through a virtual bus driver, wherein the data from the I / O device is received by a bus agent unit through a bus agent program and forwarded to the virtual bus driver, and the data sent by the device driver to the I / O device is sent to the bus agent program through the virtual bus driver and forwarded to the corresponding I / O device through the bus agent program.

17. The system according to claim 16, characterized in that The second loading module is specifically configured as: Receiving information of each bus contained in the terminal device sent by the bus agent unit; Load the virtual bus driver of each type of bus according to the bus information; Establishing a network connection between each virtual bus driver and the bus agent unit; The third loading module is specifically configured as: receiving, through a virtual bus driver, information about I / O devices sent by a bus agent unit through a network connection, the information about the I / O devices being information about the I / O devices connected to the bus obtained after the bus agent unit initializes the communication bus, and loading, through the virtual bus driver, a corresponding device driver according to the information about the I / O devices; or, The virtual bus driver communicates with the bus controller through the bus agent to obtain the information of the I / O devices on the bus, and then loads the corresponding device driver according to the information of the I / O devices through the virtual bus driver.

18. The system according to claim 17, characterized in that The third loading module is also configured to send an instruction to initialize the bus to the bus agent program through a virtual bus driver before receiving the information of the I / O device sent by the bus agent unit through the network connection, so that the bus agent unit initializes the bus controller through the bus agent program according to the instruction to initialize the bus to obtain the information of the I / O device connected to the bus.

19. An electronic device, characterized in that: It includes a memory and a processor, wherein a computer program is stored in the memory. When the processor runs the computer program stored in the memory, the processor executes a method for a cloud computing unit to access a terminal I / O device as described in any one of claims 1-6 or claims 7-9.

20. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by the processor, the method for a cloud computing unit to access a terminal I / O device as described in any one of claims 1-6 or claims 7-9 is implemented.

Citation Information

Patent Citations

  • CAN controller excitation sequence generation method and device based on UVM and verification platform

    CN114780143A

  • Device control method and distributed system

    CN116016726A

  • Local device virtualization

    US20090150909A1

  • Kernel Bus System to Build Virtual Machine Monitor and the Performance Service Framework and Method Therefor

    US20110296411A1