A method and device for session management based on ARM architecture
Through the session management method based on ARM architecture, the problem of high power consumption in cloud rendering technology is solved, and the session management of communication between cloud rendering containers and clients is realized, which improves the scheduling efficiency of ARM cloud rendering.
Patent Information
- Application Number
- CN202310082284.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-01-29
- Publication Date
- 2024-12-27
- Estimated Expiration
- 2043-01-29
AI Technical Summary
The existing cloud rendering technology mainly uses the x86 architecture, which has the problem of high power consumption.
Using the ARM architecture-based session management method, by receiving client allocation requests, find out whether there is a running emulator in the database. If it does not exist, create a virtual machine and deploy an Android system, install applications and capture services, and obtain and process videos. Streams are sent to the client to enable the start of the session.
The session management of cloud rendering container communication with clients is realized, which improves the scheduling efficiency of ARM cloud rendering and reduces power consumption.
Smart Images

Figure CN116132406B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a method and device for session management based on ARM architecture. Background Art
[0002] Cloud rendering is to render the 3D program on a remote server, that is, the server executes the corresponding rendering task according to the instructions sent by the user terminal, and transmits the rendering result image back to the user terminal for display. At present, the x86 architecture is mainly used at home and abroad to implement cloud rendering, which has very significant performance and speed, but also has defects such as high power consumption. Summary of the invention
[0003] In view of this, an embodiment of the present invention provides a method and apparatus for session management based on ARM architecture to solve the problem of high power consumption in current cloud rendering session management.
[0004] To achieve the above objectives, the embodiments of the present invention provide the following technical solutions:
[0005] The first aspect of an embodiment of the present invention discloses a session management method based on an ARM architecture, the method comprising:
[0006] receiving an allocation request sent by a client, wherein the allocation request at least includes an application requirement;
[0007] According to the allocation request, searching a database for a simulator in operation;
[0008] When there is no running simulator, create a virtual machine based on the ARM architecture;
[0009] Deploy the Android system in the virtual machine;
[0010] Installing corresponding applications and capture services in the Android system according to the application requirements;
[0011] Acquire the video stream of the Android system through the capture service, and process the video stream to obtain a processed video stream;
[0012] The processed video stream is sent to the client according to a preset controller data channel to start a session.
[0013] Preferably, after searching the database for a simulator in operation according to the allocation request, the method further comprises:
[0014] When there is a simulator in a running state, determining whether the simulator is in an idle state;
[0015] If the simulator is not in an idle state, creating a virtual machine based on the ARM architecture;
[0016] If the simulator is in an idle state, the simulator is allocated to the client according to the allocation request.
[0017] Preferably, the virtual machine at least includes an Android system image and a startup script;
[0018] The step of deploying the Android system in the virtual machine includes:
[0019] Installing the Android system in the virtual machine based on the Android system image;
[0020] Mapping the local network port to the Android system management port using the startup script;
[0021] The Android system is mounted to a corresponding server through a preset command line tool to complete the deployment of the Android system.
[0022] Preferably, acquiring the video stream of the Android system through the capture service and processing the video stream to obtain a processed video stream includes:
[0023] Acquire the video stream of the Android system by using the capture service and a preset streaming media framework;
[0024] Encoding the video stream to obtain an encoded video stream;
[0025] Start the RTMP video receiving service, and use the RTMP video receiving service to generate a video stream receiving address;
[0026] The encoded video stream is pushed to the video stream receiving address to obtain a processed video stream.
[0027] Preferably, the method further comprises:
[0028] When a release instruction is received, stop sending the processed video stream to the client;
[0029] Sending a restart instruction to the Android system through a preset command line tool to restart the Android system;
[0030] The state of the virtual machine is set to be usable to release the session.
[0031] A second aspect of an embodiment of the present invention discloses a session management device based on an ARM architecture, the device comprising:
[0032] A receiving unit, configured to receive an allocation request sent by a client, wherein the allocation request at least includes an application requirement;
[0033] A search unit, used for searching from a database whether there is a simulator in a running state according to the allocation request;
[0034] A first creation unit, configured to create a virtual machine based on the ARM architecture when there is no simulator in a running state;
[0035] A deployment unit, used for deploying the Android system in the virtual machine;
[0036] An installation unit, configured to install the corresponding application and the capture service in the Android system according to the application requirements;
[0037] A processing unit, used for acquiring the video stream of the Android system through the capture service, and processing the video stream to obtain a processed video stream;
[0038] The first sending unit is used to send the processed video stream to the client according to a preset controller data channel to start a session.
[0039] Preferably, the device further comprises:
[0040] A judging unit, used for judging whether the simulator is in an idle state when there is a simulator in a running state;
[0041] A second creation unit, configured to create a virtual machine based on an ARM architecture if the simulator is not in an idle state;
[0042] An allocating unit is used to allocate the simulator to the client according to the allocation request if the simulator is in an idle state.
[0043] Preferably, the virtual machine at least includes an Android system image and a startup script;
[0044] The deployment unit includes:
[0045] An installation module, used to install the Android system in the virtual machine based on the Android system image;
[0046] A mapping module, used to map the local network port to the Android system management port using the startup script;
[0047] The mounting module is used to mount the Android system to a corresponding server through a preset command line tool to complete the deployment of the Android system.
[0048] Preferably, the processing unit comprises:
[0049] An acquisition module, used for acquiring the video stream of the Android system by using the capture service and a preset streaming media framework;
[0050] An encoding module, used for encoding the video stream to obtain an encoded video stream;
[0051] A generation module, used to start the RTMP video receiving service and generate a video stream receiving address using the RTMP video receiving service;
[0052] The streaming module is used to stream the encoded video stream to the video stream receiving address to obtain a processed video stream.
[0053] Preferably, the device further comprises:
[0054] A stopping unit, configured to stop sending the processed video stream to the client when receiving a release instruction;
[0055] A first sending unit, configured to send a restart instruction to the Android system through a preset command line tool to cause the Android system to restart;
[0056] The setting unit is used to set the state of the virtual machine to a usable state to release the session.
[0057] Based on the above-mentioned embodiment of the present invention, a method and device for session management based on ARM architecture is provided, receiving an allocation request sent by a client, wherein the allocation request at least includes application requirements; according to the allocation request, searching from a database whether there is an emulator in a running state; when there is no emulator in a running state, creating a virtual machine based on the ARM architecture; deploying an Android system in the virtual machine; installing corresponding applications and capture services in the Android system according to the application requirements; obtaining the video stream of the Android system through the capture service, and processing the video stream to obtain a processed video stream; sending the processed video stream to the client according to a preset controller data channel to start the session. Session management of communication between cloud rendering container and client is realized; at the same time, allocation, monitoring and session communication of stand-alone ARM cloud rendering are realized, thereby improving the scheduling efficiency of ARM cloud rendering. BRIEF DESCRIPTION OF THE DRAWINGS
[0058] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.
[0059] Figure 1 A flowchart of a method for session management based on ARM architecture provided by an embodiment of the present invention;
[0060] Figure 2 A structural block diagram of a session management device based on ARM architecture provided in an embodiment of the present invention;
[0061] Figure 3 Another structural block diagram of a session management device based on ARM architecture provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0062] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0063] In this application, the terms "comprises", "comprising" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprising a ..." does not exclude the presence of other identical elements in the process, method, article or device comprising the element.
[0064] As can be seen from the background technology, the x86 architecture is currently mainly used at home and abroad to achieve cloud rendering. Its performance and speed have very significant performance, but it also has defects such as high power consumption.
[0065] Therefore, an embodiment of the present invention provides a method and device for session management based on ARM architecture, receiving an allocation request sent by a client, wherein the allocation request at least includes application requirements; according to the allocation request, searching from a database whether there is a simulator in a running state; when there is no simulator in a running state, creating a virtual machine based on the ARM architecture; deploying an Android system in the virtual machine; installing corresponding applications and capture services in the Android system according to the application requirements; obtaining a video stream of the Android system through the capture service, and processing the video stream to obtain a processed video stream; sending the processed video stream to the client according to a preset controller data channel to start a session. Session management of communication between cloud rendering container and client is implemented; at the same time, allocation, monitoring and session communication of stand-alone ARM cloud rendering are implemented, thereby improving the scheduling efficiency of ARM cloud rendering.
[0066] See also Figure 1, shows a flow chart of a session management method based on ARM architecture provided by an embodiment of the present invention, the session management method based on ARM architecture includes:
[0067] It should be noted that the ARM cloud rendering used in the ARM architecture-based session management method is a virtual machine that provides users with 3D rendering based on Android capabilities, which can be applied to cloud games, cloud conferences, and rendering of metaverse space; to achieve timely interaction between users and content. ARM cloud rendering is mainly composed of ARM servers, ARM server virtualization capabilities, Ubuntu operating system, and LXC container management technology. After enabling virtualization technology on an ARM server, an ARM server is decomposed into multiple virtual machines based on Ubuntu and LXC container technology. At the same time, the Android operating system is deployed based on the ARM virtual machine to enable the operation of mobile applications on the ARM server.
[0068] It can be understood that the session management method based on the ARM architecture provided in the embodiment of the present invention is implemented based on JAVA, so the session management method based on the ARM architecture can be implemented by deploying JAVA applications.
[0069] Step S101: receiving an allocation request sent by a client.
[0070] In the specific implementation of step S101, an allocation request sent by a user through a client is received, wherein the allocation request at least includes application requirements (ie, requirements of an application program requested to be run by the user) and ARM cloud rendering usage requirements.
[0071] It can be understood that when the allocation request is received, it can be regarded that the session is started.
[0072] Step S102: according to the allocation request, check whether there is a simulator in operation from the database. If there is no simulator in operation, execute step S103; if there is a simulator in operation, execute step S108.
[0073] In the specific implementation of step S102, according to the allocation request, a search is performed from the local database to determine whether there is a simulator in operation; if there is no simulator in operation, step S103 is performed; if there is a simulator in operation, step S108 is performed.
[0074] Step S103: Create a virtual machine based on the ARM architecture.
[0075] In the specific implementation of step S103, when there is no simulator in the running state, or when there is a simulator in the running state but the simulator is not in the idle state, a virtual machine is created based on the ARM architecture.
[0076] It should be noted that the virtual machine created based on the ARM architecture at least includes the Android system image and startup script.
[0077] Step S104: deploying the Android system in the virtual machine.
[0078] In the specific implementation of step S104, the Android system is installed in the virtual machine based on the Android system image; the local network port is mapped to the Android system management port using the startup script; and the Android system is mounted to the corresponding server through a preset command line tool to complete the deployment of the Android system.
[0079] It should be noted that the startup script specifically uses the Adb Forward command officially provided by Android to map the local network port to the Android system management port. For example, through the Adb Forwad command, the local network port such as port 5554 is mapped to port 5555 of the Android system. After the mapping is successful, the command can be forwarded to port 5555 of the Android system through the local network port 5554.
[0080] It is understandable that, since the virtual machine is in a DHCP network environment, after mapping the local network port to the Android system management port using the startup script, the IP address corresponding to the virtual machine is obtained from the DHCP server based on the DHCP protocol.
[0081] It should be noted that, through the local preset command line tool (ADB tool), using the IP address corresponding to the virtual machine and the Android system management port, the Android system is mounted to the corresponding server; at this time, the corresponding server has control authority over the Android system, and the deployment of the Android system is completed.
[0082] Step S105: Install corresponding applications and capture services in the Android system according to application requirements.
[0083] In the specific implementation of step S105 , the corresponding application and capture service (such as Capture service) are installed in the Android system according to the application requirements in the received allocation request.
[0084] It should be noted that, according to the application requirements, the corresponding application is queried from the NFS network storage space, and the application is installed to the Android system using the ADBInstall command. Among them, NFS generally refers to the network file system; the English name is Network File System (NFS), which is a UNIX presentation layer protocol developed by SUN, which enables users to access files elsewhere on the network as if they were using their own computers. NFS network storage space is used to store Android application files.
[0085] It is understandable that a capture service such as a Capture service, wherein the Capture service is an Android Service-level application, can be compiled into the Android system when compiling the system, or can be installed through the ADB Install command.
[0086] Step S106: Acquire the video stream of the Android system through the capture service, and process the video stream to obtain a processed video stream.
[0087] In the specific implementation process of step S106, the video stream of the Android system screen is obtained through a capture service (such as Capture service) using a preset streaming media framework (such as MediaFramework); the video stream is encoded (such as H264 encoding) to obtain an encoded video stream; the RTMP video receiving service is started, and the video stream receiving address is generated using the RTMP video receiving service; the encoded video stream is pushed to the video stream receiving address to obtain a processed video stream.
[0088] It should be noted that the RTC TurnSERVER device is started to start the RTMP video receiving service, and the RTMP video receiving service is used to generate the rtmp video stream receiving address; the rtmp video stream receiving address is set to the push stream address of the capture service, so that the encoded video stream can be pushed to the rtmp video stream receiving address to obtain the processed video stream; the video stream capture, encoding and push streaming from the Android system screen are realized.
[0089] In some embodiments, the Capture service starts a LocalService monitoring port 1111 in the Android system and sets the port to the RTC TurnSERVER device. The RTC TurnServer device can implement the following process: using a data channel (such as Data Channel) to receive operation instructions input through the client program package (SDK), and using the Capture service to transmit the operation instructions (such as moving, clicking, etc.) to the Android system and execute them. Among them, the Data Channel is a network communication link for transmitting data instructions.
[0090] Step S107: sending the processed video stream to the client according to the preset controller data channel to start the session.
[0091] In some embodiments, the status of the currently running program on the Android system is monitored through the Capture service. For example, when the Android system is monitored to switch between horizontal and vertical screens, the rotation angle of the Android system screen and the values of the direction generation angle and direction are monitored through the Capture service, and the client is notified to perform the same operation. That is, during the running process, the video screen output by the client is ensured to be consistent with the Android system screen, achieving a mirroring effect.
[0092] Step S108: Determine whether the simulator is in an idle state. If the simulator is in an idle state, execute step S109; if the simulator is not in an idle state, execute step S110.
[0093] In the specific implementation of step S108, when there is a simulator in the running state, it is determined whether the simulator is in the idle state. When the simulator is in the idle state, step S109 is executed; when the simulator is not in the idle state, step S103 is executed.
[0094] Step S109: Allocate the simulator to the client according to the allocation request.
[0095] In the specific implementation of step S109 , when the simulator is in an idle state, the simulator is allocated to the client according to the allocation request.
[0096] In actual application, when a release instruction is received, the processed video stream is stopped from being sent to the client. Specifically, the RTC TurnSERVER device stops operating and the video stream communication between the Android system and the client is cut off. A restart instruction is sent to the Android system through a preset command line tool (such as an ADB tool) to restart the Android system. The state of the virtual machine is set to a usable state to release the session.
[0097] In the embodiment of the present invention, session management of communication between the cloud rendering container and the client is implemented; at the same time, allocation, monitoring and session communication of stand-alone ARM cloud rendering are implemented, thereby improving the scheduling efficiency of ARM cloud rendering.
[0098] Corresponding to the method for session management based on ARM architecture provided in the above embodiment of the present invention, see Figure 2 , showing a structural block diagram of a session management device based on ARM architecture provided in an embodiment of the present invention; the session management device based on ARM architecture includes: a receiving unit 201, a searching unit 202, a first creating unit 203, a deploying unit 204, an installing unit 205, a processing unit 206 and a first sending unit 207.
[0099] The receiving unit 201 is used to receive an allocation request sent by a client, where the allocation request at least includes application requirements.
[0100] The searching unit 202 is used to search the database for a simulator in operation according to the allocation request.
[0101] The first creation unit 203 is used to create a virtual machine based on the ARM architecture when there is no simulator in a running state.
[0102] The deployment unit 204 is used to deploy the Android system in the virtual machine.
[0103] The installation unit 205 is used to install the corresponding application and capture service in the Android system according to the application requirements.
[0104] The processing unit 206 is used to obtain the video stream of the Android system through the capture service, and process the video stream to obtain a processed video stream.
[0105] The first sending unit 207 is used to send the processed video stream to the client according to the preset controller data channel to start the session.
[0106] In the embodiment of the present invention, session management of communication between the cloud rendering container and the client is implemented; at the same time, allocation, monitoring and session communication of stand-alone ARM cloud rendering are implemented, thereby improving the scheduling efficiency of ARM cloud rendering.
[0107] Preferably, combined Figure 2 For the contents shown, see Figure 3 , shows another structural block diagram of a session management device based on ARM architecture provided in an embodiment of the present invention; the session management device based on ARM architecture also includes: a judgment unit 208, a second creation unit 209 and an allocation unit 210.
[0108] The judging unit 208 is used to judge whether the simulator is in an idle state when there is a simulator in a running state.
[0109] The second creating unit 209 is used to create a virtual machine based on the ARM architecture if the simulator is not in an idle state.
[0110] The allocation unit 210 is configured to allocate the simulator to the client according to an allocation request if the simulator is in an idle state.
[0111] Preferably, combined Figure 2 As shown in the figure, the deployment unit 204 includes: an installation module, a mapping module and a mounting module. The implementation principle of each module is as follows:
[0112] The installation module is used to install the Android system in the virtual machine based on the Android system image.
[0113] The mapping module is used to map the local network port to the Android system management port using the startup script.
[0114] The mounting module is used to mount the Android system to the corresponding server through a preset command line tool to complete the deployment of the Android system.
[0115] Preferably, combined Figure 2 The processing unit 206 includes: an acquisition module, an encoding module, a generation module and a streaming module. The implementation principle of each module is as follows:
[0116] The acquisition module is used to acquire the video stream of the Android system by using the preset streaming media framework through the capture service.
[0117] The encoding module is used to encode the video stream to obtain an encoded video stream.
[0118] The generation module is used to start the RTMP video receiving service and generate a video stream receiving address using the RTMP video receiving service.
[0119] The streaming module is used to stream the encoded video stream to the video stream receiving address to obtain the processed video stream.
[0120] Preferably, combined Figure 2 As shown in the content, the session management device based on the ARM architecture also includes: a stopping unit, a first sending unit and a setting unit.
[0121] A stop unit, used for stopping sending the processed video stream to the client when receiving a release instruction;
[0122] A first sending unit, configured to send a restart instruction to the Android system through a preset command line tool to cause the Android system to restart;
[0123] The setting unit is used to set the state of the virtual machine to a usable state to release the session.
[0124] In summary, the embodiments of the present invention provide a method and device for session management based on the ARM architecture, which realizes the session management of the communication between the cloud rendering container and the client; at the same time, it realizes the allocation, monitoring and session communication of the stand-alone ARM cloud rendering, and improves the scheduling efficiency of the ARM cloud rendering.
[0125] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can refer to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system or system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can refer to the partial description of the method embodiment. The system and system embodiments described above are merely schematic, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without creative work.
[0126] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.
[0127] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present invention. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the scope of the present invention. Therefore, the present invention will not be limited to the embodiments shown herein, but rather to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A session management method based on ARM architecture, characterized in that: The method comprises: receiving an allocation request sent by a client, wherein the allocation request at least includes an application requirement; According to the allocation request, searching a database for a simulator in operation; When there is no running simulator, create a virtual machine based on the ARM architecture; Deploy the Android system in the virtual machine; Installing corresponding applications and capture services in the Android system according to the application requirements; Acquire the video stream of the Android system through the capture service, and process the video stream to obtain a processed video stream; The processed video stream is sent to the client according to a preset controller data channel to start a session.
2. The method according to claim 1, characterized in that After searching the database for a simulator in operation according to the allocation request, the method further includes: When there is a simulator in a running state, determining whether the simulator is in an idle state; If the simulator is not in an idle state, creating a virtual machine based on the ARM architecture; If the simulator is in an idle state, the simulator is allocated to the client according to the allocation request.
3. The method according to claim 1, characterized in that The virtual machine at least includes an Android system image and a startup script; The step of deploying the Android system in the virtual machine includes: Installing the Android system in the virtual machine based on the Android system image; Mapping the local network port to the Android system management port using the startup script; The Android system is mounted to a corresponding server through a preset command line tool to complete the deployment of the Android system.
4. The method according to claim 1, characterized in that The acquiring the video stream of the Android system through the capture service and processing the video stream to obtain a processed video stream includes: Acquire the video stream of the Android system by using the capture service and a preset streaming media framework; Encoding the video stream to obtain an encoded video stream; Start the RTMP video receiving service, and use the RTMP video receiving service to generate a video stream receiving address; The encoded video stream is pushed to the video stream receiving address to obtain a processed video stream.
5. The method according to claim 1, characterized in that The method further comprises: When a release instruction is received, stop sending the processed video stream to the client; Sending a restart instruction to the Android system through a preset command line tool to restart the Android system; The state of the virtual machine is set to be usable to release the session.
6. A session management device based on ARM architecture, characterized in that: The device comprises: A receiving unit, configured to receive an allocation request sent by a client, wherein the allocation request at least includes an application requirement; A search unit, used for searching from a database whether there is a simulator in a running state according to the allocation request; A first creation unit, configured to create a virtual machine based on the ARM architecture when there is no simulator in a running state; A deployment unit, used for deploying the Android system in the virtual machine; An installation unit, configured to install a corresponding application and a capture service in the Android system according to the application requirements; A processing unit, used for acquiring the video stream of the Android system through the capture service, and processing the video stream to obtain a processed video stream; The first sending unit is used to send the processed video stream to the client according to a preset controller data channel to start a session.
7. The device according to claim 6, characterized in that The device also includes: A judging unit, used for judging whether the simulator is in an idle state when there is a simulator in a running state; A second creation unit, configured to create a virtual machine based on an ARM architecture if the simulator is not in an idle state; An allocating unit is used to allocate the simulator to the client according to the allocation request if the simulator is in an idle state.
8. The device according to claim 6, characterized in that The virtual machine at least includes an Android system image and a startup script; The deployment unit includes: An installation module, used to install the Android system in the virtual machine based on the Android system image; A mapping module, used to map the local network port to the Android system management port using the startup script; The mounting module is used to mount the Android system to a corresponding server through a preset command line tool to complete the deployment of the Android system.
9. The device according to claim 6, characterized in that The processing unit comprises: An acquisition module, used for acquiring the video stream of the Android system by using the capture service and a preset streaming media framework; An encoding module, used for encoding the video stream to obtain an encoded video stream; A generation module, used to start the RTMP video receiving service and generate a video stream receiving address using the RTMP video receiving service; The streaming module is used to stream the encoded video stream to the video stream receiving address to obtain a processed video stream.
10. The device according to claim 6, characterized in that The device also includes: A stopping unit, configured to stop sending the processed video stream to the client when receiving a release instruction; A first sending unit, configured to send a restart instruction to the Android system through a preset command line tool to cause the Android system to restart; The setting unit is used to set the state of the virtual machine to a usable state to release the session.
