WO2023109140A1 - 信息处理方法、装置、电子设备及存储介质 - Google Patents

信息处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
WO2023109140A1
WO2023109140A1 PCT/CN2022/108407 CN2022108407W WO2023109140A1 WO 2023109140 A1 WO2023109140 A1 WO 2023109140A1 CN 2022108407 W CN2022108407 W CN 2022108407W WO 2023109140 A1 WO2023109140 A1 WO 2023109140A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
buffer
application
server
protocol
Prior art date
Application number
PCT/CN2022/108407
Other languages
English (en)
French (fr)
Inventor
沙斌
Original Assignee
北京字节跳动网络技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京字节跳动网络技术有限公司 filed Critical 北京字节跳动网络技术有限公司
Publication of WO2023109140A1 publication Critical patent/WO2023109140A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/541Client-server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/549Remote execution

Definitions

  • the present disclosure relates to a computer technology product, in particular to an information processing method, device, electronic equipment and storage medium, computer program product and computer program.
  • the Linux system is a widely used computer system that exists in various server products and terminal products.
  • Wayland is a simple "Display Server” (Display Server), which belongs to the same level as X Window. It defines how to communicate with the kernel and how to communicate with Client (user). Wayland does not have a traditional server/client mode. Runs on top of a Linux server. However, Wayland has a unique advantage when it comes to graphical displays.
  • X11 is also called the X Window System, which is a window system for bitmap display. Since the display function of Wayland is better than that of the X11 system, how to make the X11 application have the same high-quality display effect is a problem that needs to be improved for the X11 application.
  • Embodiments of the present disclosure provide an information processing method, device, electronic equipment, storage medium, computer program product, and computer program to solve problems existing in related technologies.
  • the technical solutions are as follows:
  • an embodiment of the present disclosure provides an information processing method, which is applied to a terminal using a first communication protocol for information transmission, including:
  • the application backend based on the extended protocol of the first communication protocol, according to the rendering information and the display storage buffer, generate the submission information including the texture information used to generate the display screen, and the submission information is converted by the application backend to use the second communication Information that can be identified by the server process of the protocol for information transmission;
  • the information processing method further includes:
  • the submission information including the texture information used to generate the display picture is generated, including:
  • the pixel map is generated by the server according to the buffer handle.
  • the information processing method further includes:
  • a terminal buffer is applied for, and the terminal buffer is used to store a queue of pixel maps to be submitted.
  • an embodiment of the present disclosure provides an information processing method, which is applied to a server using a second communication protocol for information transmission, including:
  • the submission information sent by the application backend of the terminal is received through the server process based on the extension protocol of the second communication protocol; the terminal uses the first communication protocol for information transmission, and the application backend performs information transmission based on the extension protocol of the first communication protocol, The submitted information is converted by the application backend into information recognizable by the server process;
  • a virtual display screen is generated according to the texture information contained in the submission information and the display storage buffer corresponding to the submission information on the server side;
  • the information processing method further includes:
  • the display storage buffer information is sent to the application through the server process, so that the application can determine the pre-applied buffer storage area through the display storage buffer information, and submit the aforementioned submission information based on the pre-applied buffer storage area.
  • the information processing method further includes:
  • a virtual display screen based on the extended protocol of the second protocol is constructed through the server process.
  • an embodiment of the present disclosure further provides an information processing device, which is applied to a terminal using a first communication protocol for information transmission, including:
  • the rendering information generation module is used to generate rendering information corresponding to the display storage buffer in the terminal based on the pre-applied display storage buffer of the server;
  • the submission information generating module is used to generate submission information including texture information for generating a display screen according to the rendering information and the display storage buffer through the application backend of the extended protocol based on the first communication protocol, and the submission information is based on the application
  • the terminal is converted into information recognizable by the server process using the second communication protocol for information transmission;
  • the submission information sending module is used to submit the submission information to the server process using the extension protocol of the second communication protocol, so that the server process can generate a virtual display screen in the virtual display screen of the server according to the submission information; the second communication protocol The communication protocol used by the server to transmit information.
  • the information processing device further includes:
  • the handle module is used to send the buffer handle in the application buffer to the server through the application backend; after receiving the buffer handle, the server can control the application buffer according to the buffer handle, and return the application in the application through the server application. Display storage buffer information on the server side;
  • the determining module is configured to determine the pre-applied display storage buffer according to the information of the display storage buffer.
  • the submission information generation module includes:
  • a texture unit configured to generate image texture information according to the rendering information
  • the texture adding unit is used to store the image texture information into the pixel map corresponding to the display storage buffer, and generate submission information.
  • the pixel map is generated by the server according to the buffer handle.
  • the information processing device further includes:
  • the application buffer module is configured to apply for a terminal buffer through the application backend process based on the extended protocol of the first communication protocol, and the terminal buffer is used to store a queue of pixel maps to be submitted.
  • an embodiment of the present disclosure further provides an information processing device, which is applied to a server end that uses a second communication protocol for information transmission, including:
  • the submission information receiving module is used to receive the submission information sent by the application backend of the terminal through the server process based on the extension protocol of the second communication protocol; the terminal uses the first communication protocol for information transmission, and the application backend is based on the first communication protocol The extended protocol for information transmission, the submitted information is converted by the application backend into information that can be recognized by the server process;
  • the virtual display module is used to generate a virtual display screen in the virtual display screen created by the server process, according to the texture information contained in the submission information and the display storage buffer corresponding to the submission information at the server end;
  • the display module is used for displaying according to the virtual display screen.
  • the information processing device further includes:
  • the handle receiving module is used to receive the buffer handle in the application buffer sent by the application through the application backend through the server process, and the buffer handle is used to control the application buffer;
  • the buffer information sending module is used to send the display storage buffer information to the application through the server process according to the buffer handle, so that the application can determine the pre-applied buffer storage area through the display storage buffer information, and based on the pre-applied buffer storage District to submit the aforementioned submission information.
  • the information processing device further includes:
  • a process creation module configured to create a server process based on the extended protocol of the second protocol
  • the virtual display screen construction module is used to construct a virtual display screen based on the extended protocol of the second protocol through the server process.
  • an embodiment of the present disclosure provides an information processing device, which includes: a memory and a processor.
  • the memory and the processor communicate with each other through an internal connection path, the memory is used to store instructions, the processor is used to execute the instructions stored in the memory, and when the processor executes the instructions stored in the memory, the processor Execute the method in any one of the implementation manners of the foregoing aspects.
  • an embodiment of the present disclosure provides a computer-readable storage medium, which stores a computer program, and when the computer program is run on a computer, the method in any one of the above-mentioned aspects is executed.
  • the embodiments of the present disclosure provide a computer program product, including a computer program, and when the computer program is executed by a processor, the method in any one of the implementation manners of the foregoing aspects is implemented.
  • the embodiments of the present disclosure provide a computer program, which implements the method in any one of the above-mentioned aspects when executed by a processor.
  • the information processing method can enable the transmission of information between the application using the first communication protocol and the terminal using the second communication protocol, and realize the display function based on the transmitted information, so that in the second communication protocol
  • the application using the first communication protocol for information transmission can realize image screen display through the server based on the second communication protocol.
  • FIG. 1 is a first schematic flow diagram of an information processing method provided by an embodiment of the present disclosure
  • FIG. 2 is a second schematic flow diagram of an information processing method provided by an embodiment of the present disclosure
  • FIG. 3 is a third schematic flow diagram of an information processing method provided by an embodiment of the present disclosure.
  • FIG. 4 is a fourth schematic flow diagram of an information processing method provided by an embodiment of the present disclosure.
  • FIG. 5 is a fifth schematic flow diagram of an information processing method provided by an embodiment of the present disclosure.
  • FIG. 6 is a schematic diagram of a server and a terminal applied to an information processing method provided by an example of the present disclosure
  • FIG. 7 is a first schematic diagram of an information processing device provided by an embodiment of the present disclosure.
  • FIG. 8 is a second schematic diagram of an information processing device provided by an embodiment of the present disclosure.
  • FIG. 9 is a third schematic diagram of an information processing device provided by an embodiment of the present disclosure.
  • FIG. 10 is a fourth schematic diagram of an information processing device provided by an embodiment of the present disclosure.
  • FIG. 11 is a fifth schematic diagram of an information processing device provided by an embodiment of the present disclosure.
  • FIG. 12 is a sixth schematic diagram of an information processing device provided by an embodiment of the present disclosure.
  • Fig. 13 is a structural block diagram of an information processing device provided by an embodiment of the present disclosure.
  • Fig. 1 shows a flowchart of an information processing method according to an embodiment of the present disclosure, which is applied to a terminal based on a first protocol.
  • the information processing method may include: including:
  • Step S11 Based on the pre-applied display storage buffer of the server, generate the rendering information corresponding to the display storage buffer in the terminal;
  • Step S12 Through the application backend based on the extended protocol of the first communication protocol, according to the rendering information and the display storage buffer, generate submission information including texture information used to generate the display screen, the submission information is converted by the application backend to use Information identifiable by the server process of the second communication protocol for information transmission;
  • Step S13 Submit the submission information to the server process using the extension protocol of the second communication protocol, so that the server process can generate a virtual display screen on the virtual display screen of the server according to the submission information;
  • the second communication protocol is the server transmission The communication protocol used for the message.
  • the pre-applied display storage buffer may be a display storage buffer at the server side, and is used to store information to be displayed.
  • the first communication protocol may be a standard window system protocol, which is responsible for managing the window connection between the display server and the application end, input device event transmission, graphics buffer operation, and the like.
  • the extension protocol of the first communication protocol may be based on the first communication protocol, and expand the transmission protocol of the graphics buffer that can be used by the application for information transmission based on the second communication protocol, so as to realize the display server and the second communication protocol.
  • Information transfer applications share synchronous graphics buffers.
  • the application backend based on the extended protocol of the first communication protocol may be an application backend that performs information transmission based on the extended protocol of the first communication protocol.
  • the above-mentioned application backend may be a backend graphics buffer queue based on the second communication protocol implemented based on the extension protocol of the first communication protocol.
  • the above-mentioned application backend communicates with the display server to realize functions such as application, rendering, and synchronous submission of graphics buffers.
  • the texture information for display contained in the submission information may be generated according to the rendering information.
  • the second communication protocol may be a standard window system protocol, responsible for managing the window connection between the server for information transmission based on the second communication protocol and the application end for information transmission based on the second communication protocol, the input device Event transmission and graphics buffer operations, etc.
  • the extension protocol of the second communication protocol can be based on the second communication protocol to realize the server end for information transmission based on the second communication protocol and the application end for information transmission based on the second communication protocol Among them, a graphics buffer that can be used by applications that perform information transmission based on the second communication protocol for synchronization is shared.
  • the application backend based on the extended protocol of the first communication protocol can be used to convert the information sent by the application to the server from the format of the first communication protocol to the server process based on the extended protocol of the second communication protocol recognized format.
  • the format conversion of the communication protocol of the information may include: graphics buffer application, release, submission synchronization and other operation functions as well as the protocol conversion of the graphics buffer.
  • the virtual display screen of the server may be created and maintained by a process of the server. Sending the virtual display screen to the server for display may be sending the virtual screen to a real display screen of the server to create a display screen.
  • the graphics buffer queue function based on the extended protocol of the second communication protocol is realized, so that the sub-process derived based on the first communication protocol can pass the first communication
  • the extension protocol of the protocol receives function requests such as graphics buffer application and synchronous submission from the application side based on the second communication protocol, and further sends these function requests to the display server through the first communication protocol.
  • the information processing method further includes:
  • Step S21 Send the buffer handle in the application buffer to the server through the application backend; after receiving the buffer handle, the server can control the application buffer according to the buffer handle, and return the application on the server through the server application. Display the information of the storage buffer;
  • Step S22 Determine the pre-applied display storage buffer according to the information of the display storage buffer.
  • the buffer handle is used to control the application buffer of the terminal, such as applying for, invoking and releasing the application buffer.
  • the information of the display storage buffer of the application on the server is returned through the server application, specifically, the pixel map (Pixmap) used to carry the texture information in the display storage buffer may be returned through the server application.
  • the submission information is generated according to the rendering information and the display storage buffer, as shown in FIG. 3 , including:
  • Step S31 Generate image texture information according to the rendering information
  • Step S32 Store the image texture information into the pixel map corresponding to the display storage buffer, and generate submission information.
  • image texture information may be used to generate an image to be displayed.
  • the information processing method further includes:
  • a terminal buffer is applied for, and the terminal buffer is used to store a queue of pixel maps to be submitted.
  • An embodiment of the present disclosure also provides an information processing method, which is applied to a server end that uses a second communication protocol for information transmission, as shown in FIG. 4 , including:
  • Step S41 Through the server process based on the extended protocol of the second communication protocol, receive the submission information sent by the application backend of the terminal; the terminal uses the first communication protocol for information transmission, and the application backend performs information transmission based on the extended protocol of the first communication protocol Information transmission, the submitted information is converted by the application backend into information that can be recognized by the server process;
  • Step S42 In the virtual display screen created by the server process, generate a virtual display screen according to the texture information included in the submission information and the display storage buffer corresponding to the submission information at the server end;
  • Step S43 Display according to the virtual display screen.
  • the information processing method further includes:
  • Step S51 through the server process, receive the buffer handle in the application buffer sent by the application through the application backend, and the buffer handle is used to control the application buffer;
  • Step S52 According to the buffer handle, send the display storage buffer information to the application through the server process, so that the application can determine the pre-applied buffer storage area through the display storage buffer information, and submit the aforementioned submission information based on the pre-applied buffer storage area .
  • the server can generate a Pixmap for carrying texture information, and send the Pixmap to the application as part of the information of the display storage buffer.
  • the information processing method further includes:
  • a virtual display screen based on the extended protocol of the second protocol is constructed through the server process.
  • the first communication protocol is the X protocol, that is, X Window (X Window) or X Protocol, also known as the X Window System Protocol.
  • the second communication protocol may be a Wayland protocol.
  • Wayland is a graphics display protocol (Protocol).
  • the Wayland protocol divides a graphics system into a graphics application client (client) and a graphics display compositor (compositor).
  • the graphics application client and the graphics display synthesis terminal communicate through the Wayland protocol.
  • the server includes WaylandServer 61 , server process (Xwayland) 62 , and the terminal includes X11 application 63 and application backend 64 .
  • the desktop system of the Linux system will create a WaylandServer, that is, a server that uses the second communication protocol for information transmission, and monitors the connections of all Wayland protocol window applications, including creating windows, registering agents, and monitoring agent events.
  • WaylandServer that is, a server that uses the second communication protocol for information transmission
  • WaylandServer subprocess Xwayland through the Fork mechanism (fork mechanism or cloning mechanism), which is the server process in the foregoing embodiment, and is used to handle all connections of the applications of the X11 protocol.
  • the Xwayland process will build the Wayland protocol virtual screen xwl_screen during the initialization phase.
  • Wayland protocol virtual screen xwl_screen mainly completes the communication connection with WaylandServer by registering and monitoring Wayland actual screen-related protocols, such as wl_display, wl_register, etc.
  • wl_register is the actual screen registration protocol, which can also be used to apply for display storage.
  • wl_display is the actual screen display protocol, and can also be used to realize the delivery of buffer-related information and the synchronization of buffer-related information between the server process and the server.
  • glamor is mainly used to provide the hardware acceleration function of the graphics card for the application of the X11 protocol, and provide the related interface of X11.
  • the custom backend glamor_wayland_android is used as the application backend to provide the Android (Android) graphics driver acceleration function for X11 protocol applications.
  • glamor_wayland_android will register the Wayland extension protocol agent android_wlegl, which is used to communicate with WaylandServer and apply for Android driver-related resources.
  • glamor_wayland_android initializes the screen interface after registering the Wayland extension protocol proxy. glamor_wayland_android will implement the function of creating and destroying buffers for the ScreenPtr interface held by xwl_screen.
  • the ScreenPtr is a standard X11 application protocol interface, and the window operations of X11 applications will maintain window functions through this interface.
  • glamor_wayland_android will register the X11 extension protocol interface with ScreenPtr to build and obtain Pixmap.
  • Pixmap is an X11 standard protocol interface and is used to manage the graphics buffer buffer.
  • an X11 application When an X11 application creates a window, it will construct a window buffer through the EGL (Embedded Graphic Library, embedded graphics library) standard interface eglCreateWindowSurface.
  • EGL embedded Graphic Library, embedded graphics library
  • the Gralloc driver module applies for a buffer queue of N (for example, 3) blocks of Buffer for the window on the X11 terminal.
  • an X11 application When an X11 application starts rendering, it will obtain the current context of the application through the EGL standard interface eglMakeCurrent. After generating the rendering information, the EGL driver will call back the dequeueBuffer interface of the window buffer to apply for a cache buffer to store the rendering information.
  • a hardware buffer can be taken from the buffer queue and returned to the EGL driver, and marked as used.
  • the X11 application When the X11 application finishes rendering a frame of data, it will submit the buffer data to the server through the EGL standard interface eglSwapBuffer. In this example, through the built EGL X11 backend, the exhausted buffer buffer will be returned to the queue first, and the usage mark will be cleared. Then pass the buffer handle in the buffer buffer to the Xwayland process through the extended X11 protocol in exchange for the Pixmap object.
  • the buffer handle is a concept of the Windows system, and it can also be called a file descriptor FD (file description) under Linux.
  • the Xwayland process After the Xwayland process receives the remote buffer handle fd through the X extension protocol, it creates an EGLClientBuffer (application buffer) according to the handle, and generates an EGLImage texture. Finally, the object Pixmap that holds the EGLImage texture is created and returned to the application side.
  • EGLClientBuffer application buffer
  • X11 application side After the X11 application side gets the Pixmap, it will submit the Pixmap to the xwayland process for display through the X11 standard protocol interface xcb_present_pixmap.
  • Xwayland takes out the held EGLImage texture, and through the wayland protocol agent wl_display maintained in xwl_screen, submits the texture to waylandServer through wl_surface_attach, wl_surface_commit and finally displays it on the screen.
  • the information processing method is described above by taking the X11 application and the Wayland protocol as examples, those skilled in the art can understand that the present disclosure should not be limited thereto.
  • the user can flexibly set the first communication protocol and the second communication protocol according to personal preferences and/or actual application scenarios, as long as the display of the screen can be realized.
  • the information processing method can enable the communication between the application using the first communication protocol and the terminal using the second communication protocol Carry out information transmission, and realize the display function based on the transmitted information, so that when the second communication protocol has the advantage of displaying images, the application using the first communication protocol for information transmission can realize the image screen through the server based on the second communication protocol show.
  • Fig. 7 shows a structural block diagram of an information processing device according to an embodiment of the present disclosure. As shown in FIG. 7, the device is applied to a terminal using the first communication protocol for information transmission, and may include:
  • the rendering information generating module 71 is used to generate rendering information corresponding to the display storage buffer at the terminal based on the display storage buffer of the pre-applied server;
  • the submission information generating module 72 is configured to generate submission information including texture information for generating a display screen according to the rendering information and the display storage buffer through the application backend of the extended protocol based on the first communication protocol, and the submission information is provided by the application
  • the backend converts the information into information recognizable by the server process using the second communication protocol for information transmission;
  • the submission information sending module 73 is used to submit the submission information to the server process using the extension protocol of the second communication protocol, so that the server process can generate a virtual display screen in the virtual display screen of the server according to the submission information; the second communication
  • the protocol is the communication protocol used by the server to transmit information.
  • the information processing device further includes:
  • the handle module 81 is used to send the buffer handle in the application buffer to the server through the application backend; after receiving the buffer handle, the server can control the application buffer according to the buffer handle, and return the application through the server application Display storage buffer information on the server side;
  • the determination module 82 is configured to determine a pre-applied display storage buffer according to the information of the display storage buffer.
  • the submission information generation module includes:
  • a texture unit configured to generate image texture information according to the rendering information
  • the texture adding unit is used to store the image texture information into the pixel map corresponding to the display storage buffer, and generate submission information.
  • the pixel map is generated by the server according to the buffer handle.
  • the information processing device further includes:
  • the application buffer module 91 is configured to apply for a terminal buffer through the application backend process based on the extended protocol of the first communication protocol, and the terminal buffer is used to store a queue of pixel maps to be submitted.
  • An embodiment of the present disclosure also provides an information processing device, which is applied to a server using a second communication protocol for information transmission.
  • the device may include:
  • the submission information receiving module 101 is configured to receive the submission information sent by the application backend of the terminal through the server process based on the extension protocol of the second communication protocol; the terminal uses the first communication protocol for information transmission, and the application backend is based on the first communication protocol.
  • the extension protocol of the protocol is used for information transmission, and the submitted information is converted by the application backend into information that can be recognized by the server process;
  • the virtual display module 102 is used to generate a virtual display screen in the virtual display screen created by the server process, according to the texture information contained in the submission information and the display storage buffer corresponding to the submission information at the server end;
  • the display module 103 is configured to display according to the virtual display screen.
  • the information processing device further includes:
  • the handle receiving module 111 is used to receive the buffer handle in the application buffer sent by the application through the application backend through the server process, and the buffer handle is used to control the application buffer;
  • the buffer information sending module 112 is configured to send display and storage buffer information to the application through the server process according to the buffer handle, so that the application can determine the pre-applied buffer storage area through the display and storage buffer information, and based on the pre-applied buffer
  • the repository submits the aforementioned commit information.
  • the information processing device further includes:
  • a process creation module 121 configured to create a server process based on the extended protocol of the second protocol
  • the virtual display screen construction module 122 is configured to construct a virtual display screen based on the extended protocol of the second protocol through the server process.
  • Fig. 13 shows a structural block diagram of an information processing device according to an embodiment of the present disclosure.
  • the information processing device includes: a memory 1310 and a processor 1320 , and the memory 1310 stores computer programs that can run on the processor 1320 .
  • the processor 1320 executes the computer program, the information processing method in the above-mentioned embodiments is implemented.
  • the number of memory 1310 and processor 1320 may be one or more.
  • the information processing equipment also includes:
  • the communication interface 1330 is used to communicate with external devices for interactive data transmission.
  • the bus can be an Industry Standard Architecture (Industry Standard Architecture, ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (Extended Industry Standard Architecture, EISA) bus, etc.
  • ISA Industry Standard Architecture
  • PCI Peripheral Component Interconnect
  • EISA Extended Industry Standard Architecture
  • the bus can be divided into address bus, data bus, control bus and so on. For ease of representation, only one thick line is used in FIG. 13 , but it does not mean that there is only one bus or one type of bus.
  • the memory 1310, the processor 1320, and the communication interface 1330 may communicate with each other through the internal interface.
  • the embodiment of the present disclosure provides a computer-readable storage medium, which stores a computer program, and when the program is executed by a processor, the method provided in the embodiment of the present disclosure is implemented.
  • An embodiment of the present disclosure also provides a chip, the chip includes a processor, configured to call from a memory and execute instructions stored in the memory, so that a communication device installed with the chip executes the method provided by the embodiment of the present disclosure.
  • An embodiment of the present disclosure also provides a chip, including: an input interface, an output interface, a processor, and a memory, the input interface, the output interface, the processor, and the memory are connected through an internal connection path, and the processor is used to execute the code in the memory , when the code is executed, the processor is configured to execute the method provided by the embodiment of the present disclosure.
  • the embodiment of the present disclosure also provides a computer program product, including a computer program, and when the computer program is executed by a processor, the method provided in the embodiment of the present disclosure is implemented.
  • the embodiment of the present disclosure also provides a computer program, which implements the method provided in the embodiment of the present disclosure when the computer program is executed by a processor.
  • processor can be a central processing unit (Central Processing Unit, CPU), and can also be other general-purpose processors, digital signal processing (digital signal processing, DSP), application specific integrated circuit (application specific integrated circuit, ASIC), field-programmable gate array (field-programmable gate array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • a general purpose processor may be a microprocessor or any conventional processor or the like. It should be noted that the processor may be a processor supporting advanced RISC machines (ARM) architecture.
  • ARM advanced RISC machines
  • the above-mentioned memory may include a read-only memory and a random access memory, and may also include a non-volatile random access memory.
  • the memory can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory.
  • the non-volatile memory can include read-only memory (read-only memory, ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), electrically programmable Erases programmable read-only memory (electrically EPROM, EEPROM) or flash memory.
  • Volatile memory can include random access memory (RAM), which acts as external cache memory.
  • RAM random access memory
  • static random access memory static random access memory
  • dynamic random access memory dynamic random access memory
  • DRAM dynamic random access memory
  • synchronous dynamic random access memory synchronous DRAM, SDRAM
  • double data rate synchronous dynamic random access Memory double data date SDRAM, DDR SDRAM
  • enhanced synchronous dynamic random access memory enhanced SDRAM, ESDRAM
  • synchronous connection dynamic random access memory direct rambus RAM
  • direct rambus direct rambus RAM
  • all or part of them may be implemented by software, hardware, firmware or any combination thereof.
  • software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
  • a computer program product includes one or more computer instructions. When computer program instructions are loaded and executed on a computer, the processes or functions according to the present disclosure are produced in whole or in part.
  • a computer can be a general purpose computer, special purpose computer, computer network, or other programmable device. Computer instructions may be stored in, or transmitted from, one computer-readable storage medium to another computer-readable storage medium.
  • first and second are used for descriptive purposes only, and cannot be interpreted as indicating or implying relative importance or implicitly specifying the quantity of indicated technical features.
  • the features defined as “first” and “second” may explicitly or implicitly include at least one of these features.
  • “plurality” means two or more, unless otherwise specifically defined.
  • various parts of the present disclosure may be implemented in hardware, software, firmware or a combination thereof.
  • various steps or methods may be implemented by software or firmware stored in memory and executed by a suitable instruction execution system. All or part of the steps of the method in the above embodiments can be completed by instructing related hardware through a program.
  • the program can be stored in a computer-readable storage medium. When the program is executed, it includes one of the steps of the method embodiment or its combination.
  • each functional unit in each embodiment of the present disclosure may be integrated into one processing module, each unit may exist separately physically, or two or more units may be integrated into one module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or in the form of software function modules. If the above-mentioned integrated modules are implemented in the form of software function modules and sold or used as independent products, they can also be stored in a computer-readable storage medium.
  • the storage medium may be a read-only memory, a magnetic disk or an optical disk, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)
  • Digital Computer Display Output (AREA)

Abstract

本公开提出一种信息处理方法、装置、电子设备、存储介质、计算机程序产品及计算机程序。该信息处理方法,应用于使用第一通信协议进行信息传输的终端,包括:基于预先申请的服务端的显示存储缓冲区,生成显示存储缓冲区在终端对应的渲染信息;通过基于第一通信协议的扩展协议的应用后端,根据渲染信息和显示存储缓冲区,生成包含用于生成显示画面的纹理信息的提交信息,提交信息为由应用后端转换为使用第二通信协议进行信息传输的服务端进程可识别的信息;将提交信息提交至使用第二通信协议的扩展协议的服务端进程,使得服务端进程能够根据提交信息,在服务端的虚拟显示屏中生成虚拟显示画面,并将虚拟显示画面发送给服务端进行显示;第二通信协议为服务端传输信息所使用的通信协议。

Description

信息处理方法、装置、电子设备及存储介质
相关申请的交叉引用
本公开要求于2021年12月14日提交的申请号为202111519152.9、名称为“信息处理方法、装置、电子设备及存储介质”的中国专利申请的优先权,此申请的内容通过引用并入本文。
技术领域
本公开涉及一种计算机技术产品,尤其涉及一种信息处理方法、装置、电子设备及存储介质、计算机程序产品及计算机程序。
背景技术
Linux系统是一种广泛使用的计算机系统,存在于各种服务器产品、终端产品中。Wayland是一个简单的“显示服务器”(Display Server),与X Window属于同一级的事物,定义了如何与内核通讯、如何与Client(用户)通讯,Wayland没有传统的服务端/用户端的模式,需要在Linux服务器的基础上运行。但是,在图形显示方面,Wayland具有独特的优势。
如今,大部分应用为基于X11的应用,X11也叫做X Window系统,是一种位图显示的视窗系统。由于Wayland的显示功能比X11系统的显示功能更佳,如何使得X11应用也具有同样优质的显示效果,是一个X11应用需要改进的问题。
发明内容
本公开实施例提供一种信息处理方法、装置、电子设备、存储介质、计算机程序产品及计算机程序,以解决相关技术存在的问题,技术方案如下:
第一方面,本公开实施例提供了一种信息处理方法,应用于使用第一通信协议进行信息传输的终端,包括:
基于预先申请的服务端的显示存储缓冲区,生成显示存储缓冲区在终端对应的渲染信息;
通过基于第一通信协议的扩展协议的应用后端,根据渲染信息和显示存储缓冲区,生成包含用于生成显示画面的纹理信息的提交信息,提交信息为由应用后端转换为使用第二通信协议进行信息传输的服务端进程可识别的信息;
将提交信息提交至使用第二通信协议的扩展协议的服务端进程,使得服务端进程能够根据提交信息,在服务端的虚拟显示屏中生成虚拟显示画面;第二通信协议为服务端传输信息 所使用的通信协议。
在一种实施方式中,信息处理方法还包括:
将应用缓冲区中的缓冲区句柄通过应用后端发送至服务端;使得服务端在接收缓冲区句柄之后,能够根据缓冲区句柄控制应用缓冲区,通过服务端应用返回应用在服务端的显示存储缓冲区的信息;
根据显示存储缓冲区的信息,确定预先申请的显示存储缓冲区。
在一种实施方式中,根据渲染信息和显示存储缓冲区,生成包含用于生成显示画面的纹理信息的提交信息,包括:
根据渲染信息,生成图像纹理信息;
将图像纹理信息存入显示存储缓冲区对应的像素图中,生成提交信息,像素图为服务端根据缓冲区句柄生成的。
在一种实施方式中,信息处理方法还包括:
通过基于第一通信协议的扩展协议的应用后端进程,申请终端缓冲区,终端缓冲区用于存储待提交的像素图的队列。
第二方面,本公开实施例提供一种信息处理方法,应用于使用第二通信协议进行信息传输的服务器端,包括:
通过基于第二通信协议的扩展协议的服务端进程,接收终端的应用后端发送的提交信息;终端使用第一通信协议进行信息传输,应用后端基于第一通信协议的扩展协议进行信息传输,提交信息为由应用后端转换为服务端进程可识别的信息;
在服务端进程所创建的虚拟显示屏中,根据提交信息所包含的纹理信息以及提交信息在服务端对应的显示存储缓冲区,生成虚拟显示画面;
根据虚拟显示画面进行显示。
在一种实施方式中,信息处理方法还包括:
通过服务端进程,接收应用通过应用后端发送的应用缓冲区中的缓冲区句柄,缓冲区句柄用于控制应用缓冲区;
根据缓冲区句柄,通过服务端进程向应用发送显示存储缓冲区信息,使得应用能够通过显示存储缓冲区信息确定预先申请的缓冲存储区,并基于预先申请的缓冲存储区提交前述提交信息。
在一种实施方式中,信息处理方法还包括:
创建基于第二协议的扩展协议的服务端进程;
通过服务端进程,构建基于第二协议的扩展协议的虚拟显示屏。
第三方面,本公开实施例还提供一种信息处理装置,应用于使用第一通信协议进行信息传输的终端,包括:
渲染信息生成模块,用于基于预先申请的服务端的显示存储缓冲区,生成显示存储缓冲区在终端对应的渲染信息;
提交信息生成模块,用于通过基于第一通信协议的扩展协议的应用后端,根据渲染信息和显示存储缓冲区,生成包含用于生成显示画面的纹理信息的提交信息,提交信息为由应用后端转换为使用第二通信协议进行信息传输的服务端进程可识别的信息;
提交信息发送模块,用于将提交信息提交至使用第二通信协议的扩展协议的服务端进程,使得服务端进程能够根据提交信息,在服务端的虚拟显示屏中生成虚拟显示画面;第二通信协议为服务端传输信息所使用的通信协议。
在一种实施方式中,信息处理装置还包括:
句柄模块,用于将应用缓冲区中的缓冲区句柄通过应用后端发送至服务端;使得服务端在接收缓冲区句柄之后,能够根据缓冲区句柄控制应用缓冲区,通过服务端应用返回应用在服务端的显示存储缓冲区的信息;
确定模块,用于根据显示存储缓冲区的信息,确定预先申请的显示存储缓冲区。
在一种实施方式中,提交信息生成模块包括:
纹理单元,用于根据渲染信息,生成图像纹理信息;
纹理加入单元,用于将图像纹理信息存入显示存储缓冲区对应的像素图中,生成提交信息,像素图为服务端根据缓冲区句柄生成的。
在一种实施方式中,信息处理装置还包括:
应用缓冲区模块,用于通过基于第一通信协议的扩展协议的应用后端进程,申请终端缓冲区,终端缓冲区用于存储待提交的像素图的队列。
第四方面,本公开实施例还提供一种信息处理装置,应用于使用第二通信协议进行信息传输的服务器端,包括:
提交信息接收模块,用于通过基于第二通信协议的扩展协议的服务端进程,接收终端的应用后端发送的提交信息;终端使用第一通信协议进行信息传输,应用后端基于第一通信协议的扩展协议进行信息传输,提交信息为由应用后端转换为服务端进程可识别的信息;
虚拟显示模块,用于在服务端进程所创建的虚拟显示屏中,根据提交信息所包含的纹理信息以及提交信息在服务端对应的显示存储缓冲区,生成虚拟显示画面;
显示模块,用于根据虚拟显示画面进行显示。
在一种实施方式中,信息处理装置还包括:
句柄接收模块,用于通过服务端进程,接收应用通过应用后端发送的应用缓冲区中的缓冲区句柄,缓冲区句柄用于控制应用缓冲区;
缓冲区信息发送模块,用于根据缓冲区句柄,通过服务端进程向应用发送显示存储缓冲区信息,使得应用能够通过显示存储缓冲区信息确定预先申请的缓冲存储区,并基于预先申请的缓冲存储区提交前述提交信息。
在一种实施方式中,信息处理装置还包括:
进程创建模块,用于创建基于第二协议的扩展协议的服务端进程;
虚拟显示屏构建模块,用于通过服务端进程,构建基于第二协议的扩展协议的虚拟显示屏。
第五方面,本公开实施例提供了一种信息处理装置,该装置包括:存储器和处理器。其中,该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,使得该处理器执行上述各方面任一种实施方式中的方法。
第六方面,本公开实施例提供了一种计算机可读存储介质,计算机可读存储介质存储计算机程序,当计算机程序在计算机上运行时,上述各方面任一种实施方式中的方法被执行。
第七方面,本公开实施例提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现上述各方面任一种实施方式中的方法。
第八方面,本公开实施例提供了一种计算机程序,该计算机程序在被处理器执行时实现上述各方面任一种实施方式中的方法。
上述技术方案中的优点或有益效果至少包括:
根据本公开上述实施例的信息处理方法能够使得使用第一通信协议的应用和使用第二通信协议的终端之间能够进行信息的传输,并基于传输的信息实现显示功能,从而在第二通信协议更具有显示图像的优势时,使用第一通信协议进行信息传输的应用能够通过基于第二通信协议的服务器实现图像画面显示。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本公开进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本公开公开的 一些实施方式,而不应将其视为是对本公开范围的限制。
图1为本公开实施例提供的信息处理方法流程示意图一;
图2为本公开实施例提供的信息处理方法流程示意图二;
图3为本公开实施例提供的信息处理方法流程示意图三;
图4为本公开实施例提供的信息处理方法流程示意图四;
图5为本公开实施例提供的信息处理方法流程示意图五;
图6为本公开示例提供的信息处理方法所应用的服务端和终端示意图;
图7为本公开实施例提供的信息处理装置示意图一;
图8为本公开实施例提供的信息处理装置示意图二;
图9为本公开实施例提供的信息处理装置示意图三;
图10为本公开实施例提供的信息处理装置示意图四;
图11为本公开实施例提供的信息处理装置示意图五;
图12为本公开实施例提供的信息处理装置示意图六;
图13为本公开实施例提供的信息处理设备的结构框图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本公开的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
图1示出根据本公开一实施例的信息处理方法的流程图,应用于基于第一协议的终端。如图1所示,该信息处理方法可以包括:包括:
步骤S11:基于预先申请的服务端的显示存储缓冲区,生成显示存储缓冲区在终端对应的渲染信息;
步骤S12:通过基于第一通信协议的扩展协议的应用后端,根据渲染信息和显示存储缓冲区,生成包含用于生成显示画面的纹理信息的提交信息,提交信息为由应用后端转换为使用第二通信协议进行信息传输的服务端进程可识别的信息;
步骤S13:将提交信息提交至使用第二通信协议的扩展协议的服务端进程,使得服务端进程能够根据提交信息,在服务端的虚拟显示屏中生成虚拟显示画面;第二通信协议为服务端传输信息所使用的通信协议。
本实施例中,预先申请的显示存储缓冲区可以是服务器端的显示存储缓冲区,用于存储即将显示的信息。
基于预先申请的服务端的显示存储缓冲区,生成显示存储缓冲区在终端对应的渲染信息,可以是,基于终端的缓冲队列对应的预先申请的显示存储缓冲区,以及终端的应用的上下文信息,生成渲染信息。
在一种具体实施方式中,第一通信协议可以是标准窗口系统协议,负责管理显示服务器同应用端的窗口连接,输入设备事件传输,图形缓冲区操作等。
第一通信协议的扩展协议可以是基于第一通信协议之上,扩展了基于第二通信协议进行信息传输的应用所能够使用的图形缓冲区的传输协议,实现显示服务器和基于第二通信协议进行信息传输的应用共享同步图形缓冲区。
本实施例中,基于第一通信协议的扩展协议的应用后端,可以是基于第一通信协议的扩展协议进行信息传输的应用后端。
本实施例中,上述应用后端可以是基于第一通信协议的扩展协议实现的基于第二通信协议的后端的图形缓冲区队列。上述应用后端与显示服务器通信实现图形缓冲区的申请、渲染、同步提交等功能。
提交信息所包含的用于显示的纹理信息,可以是根据渲染信息生成的。
在一种可能的实现方式中,第二通信协议可以是标准窗口系统协议,负责管理基于第二通信协议进行信息传输的服务端同基于第二通信协议进行信息传输的应用端的窗口连接、输入设备事件传输以及图形缓冲区操作等。
在一种可能的实现方式中,第二通信协议的扩展协议,可以是基于第二通信协议之上实现基于第二通信协议进行信息传输的服务端同基于第二通信协议进行信息传输的应用端之间,共享同步基于第二通信协议进行信息传输的应用所能够使用的图形缓冲区。
本实施例中,基于第一通信协议的扩展协议的应用后端,可以用于将应用发送给服务器的信息,由第一通信协议的格式转换为基于第二通信协议的扩展协议的服务端进程所能够识别的格式。
信息的通信协议的格式转换,可以包括:图形缓冲区申请、释放、提交同步等操作功能以及图形缓冲区的协议转换。
本实施例中,服务端的虚拟显示屏可以是由服务端进程创建和维护的。将虚拟显示画面发送给服务端进行显示,可以是将虚拟画面发送给服务端的真实显示屏以创建显示画面。
本实施例中,通过对基于第二通信协议的应用端的图像缓冲区,实现基于第二通信协议的扩展协议的图形缓冲区队列功能,使得基于第一通信协议派生的子进程可以通过第一通信协议的扩展协议接收到基于第二通信协议的应用端的图形缓冲区申请,同步提交等功能请求,从而进一步将这些功能请求通过第一通信协议发送给显示服务器。
在一种实施方式中,如图2所示,信息处理方法还包括:
步骤S21:将应用缓冲区中的缓冲区句柄通过应用后端发送至服务端;使得服务端在接收缓冲区句柄之后,能够根据缓冲区句柄控制应用缓冲区,通过服务端应用返回应用在服务端的显示存储缓冲区的信息;
步骤S22:根据显示存储缓冲区的信息,确定预先申请的显示存储缓冲区。
本实施例中,缓冲区句柄用于对终端的应用缓冲区进行控制,比如对应用缓冲区进行申请、调用和释放。
通过服务端应用返回应用在服务端的显示存储缓冲区的信息,具体可以是通过服务端应用返回用于承载显示存储缓冲区中的纹理信息的像素图(Pixmap)。
在一种实施方式中,根据渲染信息和显示存储缓冲区,生成提交信息,如图3所示,包括:
步骤S31:根据渲染信息,生成图像纹理信息;
步骤S32:将图像纹理信息存入显示存储缓冲区对应的像素图中,生成提交信息。
本实施例中,图像纹理信息可以用于生成需要显示的图像。
在一种实施方式中,信息处理方法还包括:
通过基于第一通信协议的扩展协议的应用后端进程,申请终端缓冲区,终端缓冲区用于存储待提交的像素图的队列。
本公开实施例还提供一种信息处理方法,应用于使用第二通信协议进行信息传输的服务器端,如图4所示,包括:
步骤S41:通过基于第二通信协议的扩展协议的服务端进程,接收终端的应用后端发送的提交信息;终端使用第一通信协议进行信息传输,应用后端基于第一通信协议的扩展协议进行信息传输,提交信息为由应用后端转换为服务端进程可识别的信息;
步骤S42:在服务端进程所创建的虚拟显示屏中,根据提交信息所包含的纹理信息以及提交信息在服务端对应的显示存储缓冲区,生成虚拟显示画面;
步骤S43:根据虚拟显示画面进行显示。
在一种实施方式中,如图5所示,信息处理方法还包括:
步骤S51:通过服务端进程,接收应用通过应用后端发送的应用缓冲区中的缓冲区句柄,缓冲区句柄用于控制应用缓冲区;
步骤S52:根据缓冲区句柄,通过服务端进程向应用发送显示存储缓冲区信息,使得应用能够通过显示存储缓冲区信息确定预先申请的缓冲存储区,并基于预先申请的缓冲存储区提交前述提交信息。
在本实施例中,服务端可以在接收到缓冲区句柄之后,生成用于承载纹理信息的Pixmap,将Pixmap作为显示存储缓冲区的部分信息发送到应用。
在一种实施方式中,信息处理方法还包括:
创建基于第二协议的扩展协议的服务端进程;
通过服务端进程,构建基于第二协议的扩展协议的虚拟显示屏。
本公开一种示例中,第一通信协议为X协议,即X Window(X视窗)或X Protocol,也成为X视窗系统协议。第二通信协议可以为Wayland协议,Wayland是一种图形显示协议(Protocol),Wayland协议将一个图形系统分为图形应用客户端(client)和图形显示合成端(compositor)。图形应用客户端和图形显示合成端通过Wayland协议进行通信。如图6所示,服务端包括WaylandServer61、服务端进程(Xwayland)62,终端包括X11应用63、应用后端64。
在服务器端的Linux系统启动阶段,Linux系统的桌面系统会创建WaylandServer,即使用第二通信协议进行信息传输的服务器,监听所有Wayland协议窗口应用的连接,包括创建窗口,注册代理,监听代理的事件。
在WaylandServer启动阶段,本示例通过Fork机制(分叉机制或克隆机制)派生WaylandServer子进程Xwayland,即前述实施例中的服务端进程,用于处理X11协议的应用的所有连接。Xwayland进程在初始化阶段会构建Wayland协议虚拟屏幕xwl_screen。Wayland协议虚拟屏幕xwl_screen主要通过注册和监听Wayland实际屏幕相关协议,如wl_display、wl_register等,完成与WaylandServer间的通信连接。其中,wl_register为实际屏幕注册协议,还可以用于申请显示存储。wl_display为实际屏幕显示协议,还可以用于实现服务端进程与服务端之间的缓冲区相关信息的递交和缓冲区相关信息的同步。
xwl_screen在初始化阶段会初始化构建glamor后端。glamor主要用于为X11协议的应用提供显卡的硬件加速功能,以及提供X11的相关接口。本示例中,通过自定义后端glamor_wayland_android作为应用后端,用来为X11协议的应用提供Android(安卓)图形驱动加速功能。
glamor_wayland_android在初始化阶段会注册Wayland扩展协议代理android_wlegl,用于与WaylandServer通信,以及用于申请Android驱动相关资源。
glamor_wayland_android在注册Wayland扩展协议代理之后,初始化屏幕接口。glamor_wayland_android会为xwl_screen持有的SreenPtr接口实现创建和销毁缓冲区的功能,该ScreenPtr为标准的X11应用的协议接口,X11应用的窗口操作均会通过该接口维护窗口功能。同时glamor_wayland_android会向ScreenPtr注册X11扩展协议接口,用于构建和获取 Pixmap,Pixmap为X11标准协议接口,用于管理图形缓冲区buffer。
X11应用创建窗口时,会通过EGL(Embedded Graphic Library,嵌入图形库)标准接口eglCreateWindowSurface构建窗口缓冲区。本示例中,通过为EGL构建X11后端,在EGL创建窗口缓冲区的同时,通过Gralloc驱动模块,在X11终端为窗口申请N(例如3)块Buffer的缓冲队列。
X11应用开始渲染时会通过EGL标准接口eglMakeCurrent获取应用的当前上下文,在生成渲染信息后,EGL驱动会回调窗口缓冲区的dequeueBuffer接口申请缓存buffer,用于存储渲染信息。本示例中,可以从缓冲区队列中取出一块硬件缓冲区返回给EGL驱动,并标记为已使用状态。
当X11应用渲染完一帧数据会通过EGL标准接口eglSwapBuffer向服务端提交缓冲区数据。本示例中,通过构建的EGL X11后端,首先将用完的缓冲区buffer归还队列,并将使用标记清除。之后将缓冲区buffer中的缓冲区句柄通过扩展的X11协议传递给Xwayland进程,换取Pixmap对象。本示例中,缓冲区句柄是Windows系统的概念,在Linux下也可称之为文件描述符FD(file description)。Xwayland进程通过X扩展协议接收到远端缓冲区句柄fd后,根据句柄创建EGLClientBuffer(应用缓冲区),并生成EGLImage纹理。最终创建EGLImage纹理的持有对象Pixmap返回给应用侧。
X11应用侧拿到Pixmap后会通过X11标准协议接口xcb_present_pixmap将pixmap提交给xwayland进程显示。Xwayland接受到pixmap后取出持有的EGLImage纹理,通过xwl_screen中维护的wayland协议代理wl_display,将纹理通过wl_surface_attach,wl_surface_commit提交给waylandServer最终显示到屏幕上。
需要说明的是,尽管以X11应用、Wayland协议作为示例介绍了信息处理方法如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定第一通信协议和第二通信协议,只要能够实现画面的显示即可。
这样,通过将第一通信协议的信息和第二通信协议的信息进行转化,根据本公开上述实施例的信息处理方法能够使得使用第一通信协议的应用和使用第二通信协议的终端之间能够进行信息的传输,并基于传输的信息实现显示功能,从而在第二通信协议更具有显示图像的优势时,使用第一通信协议进行信息传输的应用能够通过基于第二通信协议的服务器实现图像画面显示。
图7示出根据本公开一实施例的信息处理装置的结构框图。如图7所示,该装置应用于使用第一通信协议进行信息传输的终端,可以包括:
渲染信息生成模块71,用于基于预先申请的服务端的显示存储缓冲区,生成显示存储缓 冲区在终端对应的渲染信息;
提交信息生成模块72,用于通过基于第一通信协议的扩展协议的应用后端,根据渲染信息和显示存储缓冲区,生成包含用于生成显示画面的纹理信息的提交信息,提交信息为由应用后端转换为使用第二通信协议进行信息传输的服务端进程可识别的信息;
提交信息发送模块73,用于将提交信息提交至使用第二通信协议的扩展协议的服务端进程,使得服务端进程能够根据提交信息,在服务端的虚拟显示屏中生成虚拟显示画面;第二通信协议为服务端传输信息所使用的通信协议。
在一种实施方式中,如图8所示,信息处理装置还包括:
句柄模块81,用于将应用缓冲区中的缓冲区句柄通过应用后端发送至服务端;使得服务端在接收缓冲区句柄之后,能够根据缓冲区句柄控制应用缓冲区,通过服务端应用返回应用在服务端的显示存储缓冲区的信息;
确定模块82,用于根据显示存储缓冲区的信息,确定预先申请的显示存储缓冲区。
在一种实施方式中,提交信息生成模块包括:
纹理单元,用于根据渲染信息,生成图像纹理信息;
纹理加入单元,用于将图像纹理信息存入显示存储缓冲区对应的像素图中,生成提交信息,像素图为服务端根据缓冲区句柄生成的。
在一种实施方式中,如图9所示,信息处理装置还包括:
应用缓冲区模块91,用于通过基于第一通信协议的扩展协议的应用后端进程,申请终端缓冲区,终端缓冲区用于存储待提交的像素图的队列。
本公开实施例还提供一种信息处理装置,应用于使用第二通信协议进行信息传输的服务器端,如图10所示,该装置可以包括:
提交信息接收模块101,用于通过基于第二通信协议的扩展协议的服务端进程,接收终端的应用后端发送的提交信息;终端使用第一通信协议进行信息传输,应用后端基于第一通信协议的扩展协议进行信息传输,提交信息为由应用后端转换为服务端进程可识别的信息;
虚拟显示模块102,用于在服务端进程所创建的虚拟显示屏中,根据提交信息所包含的纹理信息以及提交信息在服务端对应的显示存储缓冲区,生成虚拟显示画面;
显示模块103,用于根据虚拟显示画面进行显示。
在一种实施方式中,如图11所示,信息处理装置还包括:
句柄接收模块111,用于通过服务端进程,接收应用通过应用后端发送的应用缓冲区中的缓冲区句柄,缓冲区句柄用于控制应用缓冲区;
缓冲区信息发送模块112,用于根据缓冲区句柄,通过服务端进程向应用发送显示存储 缓冲区信息,使得应用能够通过显示存储缓冲区信息确定预先申请的缓冲存储区,并基于预先申请的缓冲存储区提交前述提交信息。
在一种实施方式中,如图12所示,信息处理装置还包括:
进程创建模块121,用于创建基于第二协议的扩展协议的服务端进程;
虚拟显示屏构建模块122,用于通过服务端进程,构建基于第二协议的扩展协议的虚拟显示屏。
本公开实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
图13示出根据本公开一实施例的信息处理设备的结构框图。如图13所示,该信息处理设备包括:存储器1310和处理器1320,存储器1310内存储有可在处理器1320上运行的计算机程序。处理器1320执行该计算机程序时实现上述实施例中的信息处理方法。存储器1310和处理器1320的数量可以为一个或多个。
该信息处理设备还包括:
通信接口1330,用于与外界设备进行通信,进行数据交互传输。
如果存储器1310、处理器1320和通信接口1330独立实现,则存储器1310、处理器1320和通信接口1330可以通过总线相互连接并完成相互间的通信。该总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器1310、处理器1320及通信接口1330集成在一块芯片上,则存储器1310、处理器1320及通信接口1330可以通过内部接口完成相互间的通信。
本公开实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现本公开实施例中提供的方法。
本公开实施例还提供了一种芯片,该芯片包括,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行本公开实施例提供的方法。
本公开实施例还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行本公开实施例提供的方法。
本公开实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现本公开实施例提供的方法。
本公开实施例还提供了一种计算机程序,该计算机程序在被处理器执行时实现本公开实 施例提供的方法。
应理解的是,上述处理器可以是中央处理器(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced RISC machines,ARM)架构的处理器。
进一步地,可选的,上述存储器可以包括只读存储器和随机存取存储器,还可以包括非易失性随机存取存储器。该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以包括随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用。例如,静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本公开的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本公开的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
应理解的是,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。

Claims (18)

  1. 一种信息处理方法,应用于使用第一通信协议进行信息传输的终端,其特征在于,包括:
    基于预先申请的服务端的显示存储缓冲区,生成所述显示存储缓冲区在终端对应的渲染信息;
    通过基于第一通信协议的扩展协议的应用后端,根据所述渲染信息和所述显示存储缓冲区,生成包含用于生成显示画面的纹理信息的提交信息,所述提交信息为由所述应用后端转换为使用第二通信协议进行信息传输的服务端进程可识别的信息;
    将所述提交信息提交至使用第二通信协议的扩展协议的服务端进程,使得所述服务端进程能够根据所述提交信息,在服务端的虚拟显示屏中生成虚拟显示画面;所述第二通信协议为所述服务端传输信息所使用的通信协议。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    将应用缓冲区中的缓冲区句柄通过所述应用后端发送至所述服务端;使得所述服务端在接收所述缓冲区句柄之后,能够根据所述缓冲区句柄控制所述应用缓冲区,通过所述服务端应用返回应用在服务端的所述显示存储缓冲区的信息;
    根据所述显示存储缓冲区的信息,确定所述预先申请的显示存储缓冲区。
  3. 根据权利要求1或2所述的方法,其特征在于,所述根据所述渲染信息和所述显示存储缓冲区,生成包含用于生成显示画面的纹理信息的提交信息,包括:
    根据所述渲染信息,生成图像纹理信息;
    将所述图像纹理信息存入所述显示存储缓冲区对应的像素图中,生成所述提交信息,所述像素图为所述服务端根据所述缓冲区句柄生成的。
  4. 根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:
    通过基于所述第一通信协议的扩展协议的应用后端进程,申请终端缓冲区,所述终端缓冲区用于存储待提交的像素图的队列。
  5. 一种信息处理方法,应用于使用第二通信协议进行信息传输的服务器端,其特征在于,包括:
    通过基于第二通信协议的扩展协议的服务端进程,接收终端的应用后端发送的提交信息;所述终端使用第一通信协议进行信息传输,所述应用后端基于第一通信协议的扩展协议进行信息传输,所述提交信息为由所述应用后端转换为所述服务端进程可识别的信息;
    在服务端进程所创建的虚拟显示屏中,根据所述提交信息所包含的纹理信息以及所述提交信息在服务端对应的显示存储缓冲区,生成虚拟显示画面;
    根据所述虚拟显示画面进行显示。
  6. 根据权利要求5所述的方法,其特征在于,所述方法还包括:
    通过服务端进程,接收所述应用通过所述应用后端发送的应用缓冲区中的缓冲区句柄,所述缓冲区句柄用于控制所述应用缓冲区;
    根据所述缓冲区句柄,通过所述服务端进程向所述应用发送显示存储缓冲区信息,使得所述应用能够通过所述显示存储缓冲区信息确定预先申请的缓冲存储区,并基于所述预先申请的缓冲存储区提交所述提交信息。
  7. 根据权利要求5或6所述的方法,其特征在于,所述方法还包括:
    创建所述基于第二协议的扩展协议的服务端进程;
    通过所述服务端进程,构建基于第二协议的扩展协议的虚拟显示屏。
  8. 一种信息处理装置,应用于使用第一通信协议进行信息传输的终端,其特征在于,包括:
    渲染信息生成模块,用于基于预先申请的服务端的显示存储缓冲区,生成所述显示存储缓冲区在终端对应的渲染信息;
    提交信息生成模块,用于通过基于第一通信协议的扩展协议的应用后端,根据所述渲染信息和所述显示存储缓冲区,生成包含用于生成显示画面的纹理信息的提交信息,所述提交信息为由所述应用后端转换为使用第二通信协议进行信息传输的服务端进程可识别的信息;
    提交信息发送模块,用于将所述提交信息提交至使用第二通信协议的扩展协议的服务端进程,使得所述服务端进程能够根据所述提交信息,在服务端的虚拟显示屏中生成虚拟显示画面;所述第二通信协议为所述服务端传输信息所使用的通信协议。
  9. 根据权利要求8所述的装置,其特征在于,所述装置还包括:
    句柄模块,用于将应用缓冲区中的缓冲区句柄通过所述应用后端发送至所述服务端;使得所述服务端在接收所述缓冲区句柄之后,能够根据所述缓冲区句柄控制所述应用缓冲区,通过所述服务端应用返回应用在服务端的所述显示存储缓冲区的信息;
    确定模块,用于根据所述显示存储缓冲区的信息,确定所述预先申请的显示存储缓冲区。
  10. 根据权利要求8或9所述的装置,其特征在于,所述提交信息生成模块包括:
    纹理单元,用于根据所述渲染信息,生成图像纹理信息;
    纹理加入单元,用于将所述图像纹理信息存入所述显示存储缓冲区对应的像素图中,生成所述提交信息,所述像素图为所述服务端根据所述缓冲区句柄生成的。
  11. 根据权利要求8-10中任一项所述的装置,其特征在于,所述装置还包括:
    应用缓冲区模块,用于通过基于所述第一通信协议的扩展协议的应用后端进程,申请终端缓冲区,所述终端缓冲区用于存储待提交的像素图的队列。
  12. 一种信息处理装置,应用于使用第二通信协议进行信息传输的服务器端,其特征在于,包括:
    提交信息接收模块,用于通过基于第二通信协议的扩展协议的服务端进程,接收终端的应用后端发送的提交信息;所述终端使用第一通信协议进行信息传输,所述应用后端基于第一通信协议的扩展协议进行信息传输,所述提交信息为由所述应用后端转换为所述服务端进程可识别的信息;
    虚拟显示模块,用于在服务端进程所创建的虚拟显示屏中,根据所述提交信息所包含的纹理信息以及所述提交信息在服务端对应的显示存储缓冲区,生成虚拟显示画面;
    显示模块,用于根据所述虚拟显示画面进行显示。
  13. 根据权利要求12所述的装置,其特征在于,所述装置还包括:
    句柄接收模块,用于通过服务端进程,接收所述应用通过所述应用后端发送的应用缓冲区中的缓冲区句柄,所述缓冲区句柄用于控制所述应用缓冲区;
    缓冲区信息发送模块,用于根据所述缓冲区句柄,通过所述服务端进程向所述应用发送显示存储缓冲区信息,使得所述应用能够通过所述显示存储缓冲区信息确定预先申请的缓冲存储区,并基于所述预先申请的缓冲存储区提交所述提交信息。
  14. 根据权利要求12或13所述的装置,其特征在于,所述装置还包括:
    进程创建模块,用于创建所述基于第二协议的扩展协议的服务端进程;
    虚拟显示屏构建模块,用于通过所述服务端进程,构建基于第二协议的扩展协议的虚拟显示屏。
  15. 一种信息处理设备,其特征在于,包括:处理器和存储器,所述存储器中存储指令,所述指令由处理器加载并执行,以实现如权利要求1-7中任一项所述的方法。
  16. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的方法。
  17. 一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机实现如权利要求1-7中任一项所述的方法。
  18. 一种计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的方法。
PCT/CN2022/108407 2021-12-14 2022-07-27 信息处理方法、装置、电子设备及存储介质 WO2023109140A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202111519152.9A CN113918366B (zh) 2021-12-14 2021-12-14 信息处理方法、装置、电子设备及存储介质
CN202111519152.9 2021-12-14

Publications (1)

Publication Number Publication Date
WO2023109140A1 true WO2023109140A1 (zh) 2023-06-22

Family

ID=79248830

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/108407 WO2023109140A1 (zh) 2021-12-14 2022-07-27 信息处理方法、装置、电子设备及存储介质

Country Status (2)

Country Link
CN (1) CN113918366B (zh)
WO (1) WO2023109140A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117149341A (zh) * 2023-10-31 2023-12-01 成都阿加犀智能科技有限公司 一种显示Linux GUI程序的方法、装置、设备及介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918366B (zh) * 2021-12-14 2022-04-19 北京鲸鲮信息系统技术有限公司 信息处理方法、装置、电子设备及存储介质
CN115131488B (zh) * 2022-08-31 2022-11-29 麒麟软件有限公司 wayland图形显示环境下管理显示缓存的方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120117508A1 (en) * 2010-11-08 2012-05-10 Sony Corporation Window management for an embedded system
CN107423014A (zh) * 2017-06-30 2017-12-01 百度在线网络技术(北京)有限公司 多窗口渲染方法及装置
CN113448662A (zh) * 2020-03-27 2021-09-28 海信电子科技(武汉)有限公司 窗口图像显示方法、设备及存储介质
CN113672387A (zh) * 2021-08-11 2021-11-19 上海交通大学 一种基于绘图编程接口的远程调用图形渲染方法及其系统
CN113918366A (zh) * 2021-12-14 2022-01-11 北京鲸鲮信息系统技术有限公司 信息处理方法、装置、电子设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150193904A1 (en) * 2012-10-24 2015-07-09 OpenMobile World Wide, Inc. Graphics acceleration for applications executing on mobile devices with multi-operating system environment
CN107450897B (zh) * 2016-06-01 2021-03-02 阿里巴巴集团控股有限公司 图形引擎的跨平台移植方法和装置
CN112767225A (zh) * 2021-01-14 2021-05-07 同方威视科技江苏有限公司 前端图像处理方法、装置、电子设备和可读存储介质
CN113467666B (zh) * 2021-09-06 2021-11-16 北京鲸鲮信息系统技术有限公司 一种调整应用窗口的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120117508A1 (en) * 2010-11-08 2012-05-10 Sony Corporation Window management for an embedded system
CN107423014A (zh) * 2017-06-30 2017-12-01 百度在线网络技术(北京)有限公司 多窗口渲染方法及装置
CN113448662A (zh) * 2020-03-27 2021-09-28 海信电子科技(武汉)有限公司 窗口图像显示方法、设备及存储介质
CN113672387A (zh) * 2021-08-11 2021-11-19 上海交通大学 一种基于绘图编程接口的远程调用图形渲染方法及其系统
CN113918366A (zh) * 2021-12-14 2022-01-11 北京鲸鲮信息系统技术有限公司 信息处理方法、装置、电子设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117149341A (zh) * 2023-10-31 2023-12-01 成都阿加犀智能科技有限公司 一种显示Linux GUI程序的方法、装置、设备及介质
CN117149341B (zh) * 2023-10-31 2024-01-05 成都阿加犀智能科技有限公司 一种显示Linux GUI程序的方法、装置、设备及介质

Also Published As

Publication number Publication date
CN113918366B (zh) 2022-04-19
CN113918366A (zh) 2022-01-11

Similar Documents

Publication Publication Date Title
WO2023109140A1 (zh) 信息处理方法、装置、电子设备及存储介质
WO2023087778A1 (zh) 窗口信息处理方法、装置、电子设备及存储介质
EP3698516B1 (en) Selecting and securing proof delgates for cryptographic functions
EP3685294B1 (en) Cryptlet binding key graph
WO2019218718A1 (zh) 一种区块链网络的事务处理方法、装置、设备及存储介质
WO2017167127A1 (zh) 一种图形合成方法、窗口设置方法及系统
WO2019218816A1 (zh) 基于区块链的业务数据处理方法、装置、电子设备及存储介质
JP5620506B2 (ja) アプリケーション画像の表示方法及び装置
CN108684205B (zh) 用于处理数字组件的方法及系统
CN112269603A (zh) 一种在Linux上兼容运行Android应用的图形显示方法与装置
WO2018119786A1 (zh) 一种显示数据处理方法及装置
CN113448662A (zh) 窗口图像显示方法、设备及存储介质
US20180241712A1 (en) Memory-mapped input/output (i/o) channel
TWI486787B (zh) 顯示畫面的方法及系統
JP5120125B2 (ja) 画像合成システム、表示制御方法、描画処理装置、及び制御プログラム
CN114741081B (zh) 一种基于异构缓存访问的跨运行环境显示输出共享方法
CN113051047B (zh) 识别安卓系统绘制线程的方法、装置、移动终端及存储介质
WO2018120992A1 (zh) 一种窗口渲染方法及终端
US11750749B1 (en) Method to use native scanning properties dialog to scan in scanner redirection
WO2021052100A1 (zh) 基于wayland协议的图形合成方法、装置、系统和计算机可读存储介质
WO2018103022A1 (zh) 帧缓存实现方法、装置、电子设备和计算机程序产品
CN116821040A (zh) 基于gpu直接存储器访问的显示加速方法、装置及介质
CN114257867A (zh) 视频图像显示方法和装置,计算设备和可读存储介质
CN114579255A (zh) 虚拟机的图像处理方法、装置、系统以及电子设备
EP3113015B1 (en) Method and apparatus for data communication in virtualized environment

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22905902

Country of ref document: EP

Kind code of ref document: A1