CN114995978A - Rendering task processing method, device and equipment and storage medium - Google Patents

Rendering task processing method, device and equipment and storage medium Download PDF

Info

Publication number
CN114995978A
CN114995978A CN202210657610.3A CN202210657610A CN114995978A CN 114995978 A CN114995978 A CN 114995978A CN 202210657610 A CN202210657610 A CN 202210657610A CN 114995978 A CN114995978 A CN 114995978A
Authority
CN
China
Prior art keywords
rendering
application
target application
running
layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210657610.3A
Other languages
Chinese (zh)
Inventor
赵拯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ecarx Hubei Tech Co Ltd
Original Assignee
Ecarx Hubei Tech Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ecarx Hubei Tech Co Ltd filed Critical Ecarx Hubei Tech Co Ltd
Priority to CN202210657610.3A priority Critical patent/CN114995978A/en
Publication of CN114995978A publication Critical patent/CN114995978A/en
Pending legal-status Critical Current

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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Image Generation (AREA)

Abstract

The invention discloses a rendering task processing method, a device, equipment and a storage medium. The method comprises the following steps: when a rendering task generated relative to a target application is received, determining the running mode of the target application, wherein the running mode comprises foreground running and background running; if the running mode of the target application is background running, intercepting the submission of the rendering task and generating virtual rendering response information; and feeding back the virtual rendering response information to the target application so as to enable the target application to normally run in a background. The technical scheme of the embodiment of the invention solves the problem that the background of the application program runs but occupies hardware rendering resources.

Description

Rendering task processing method, device, equipment and storage medium
Technical Field
The present invention relates to the field of internet technologies, and in particular, to a method, an apparatus, a device, and a storage medium for processing a rendering task.
Background
With the continuous development of internet technology, rendering technology has wide application fields, such as: computer and video games, simulated reality, movie or television special effects, visual designs, and the like. The process of converting the shape stored in the memory into the corresponding shape actually drawn on the screen by the computer is called rendering.
In a traditional indirect rendering framework, an application redraws textures and updates a display according to a user event (such as a touch screen), which requires "approval" of a display service, and the application redraws the textures and submits a rendering task. Based on a DRI (Direct Rendering) framework, a display screen updating process triggered by a user event can get rid of the 'approval' dependence of display service, namely, the user event can be reported to an application program, and a Rendering task is submitted after the texture is directly redrawn. The display service only participates in the picture updating process, and the man-machine interaction efficiency is optimized.
However, the application program does not need "approval" of the display service, and can directly submit the rendering flow of the rendering task, so that the application program running in the background can still occupy the rendering resource, thereby causing waste of hardware resources.
Disclosure of Invention
The invention provides a method, a device, equipment and a storage medium for processing a rendering task, and aims to solve the problem that a background running application occupies rendering resources.
In a first aspect, an embodiment of the present invention provides a method for processing a rendering task, including:
when a rendering task generated relative to a target application is received, determining the running mode of the target application, wherein the running mode comprises foreground running and background running;
if the running mode of the target application is background running, intercepting the submission of the rendering task and generating virtual rendering response information;
and feeding back the virtual rendering response information to the target application so as to enable the target application to normally run in a background.
In a second aspect, an embodiment of the present invention provides a device for processing a rendering task, including:
the system comprises an operation mode determining module, a rendering module and a rendering module, wherein the operation mode determining module is used for determining the operation mode of a target application when a rendering task generated relative to the target application is received, and the operation mode comprises foreground operation and background operation;
the response information generation module is used for intercepting the submission of the rendering task and generating virtual rendering response information if the running mode of the target application is background running;
and the virtual rendering response information feedback module is used for feeding back virtual rendering response information to the target application so as to enable the target application to normally run in a background.
In a third aspect, an embodiment of the present invention provides an electronic device, including:
at least one processor;
and a memory communicatively coupled to the at least one processor;
wherein the memory stores a computer program executable by the at least one processor, the computer program being executable by the at least one processor to enable the at least one processor to perform the method of processing the rendering tasks of the first aspect.
In a fourth aspect, the present invention provides a computer-readable storage medium, where computer instructions are stored, and the computer instructions are used for causing a processor to implement the processing method for rendering tasks in the first aspect when executed.
According to the processing scheme of the rendering task, when the rendering task generated by the corresponding target application is received, the operation mode of the target application is determined, wherein the operation mode comprises foreground operation and background operation, if the operation mode of the target application is background operation, submission of the rendering task is intercepted, virtual rendering response information is generated, and the virtual rendering response information is fed back to the target application, so that the target application normally performs background operation. By adopting the technical scheme, firstly, the running mode of the target application is confirmed according to the received rendering task, then if the running mode is determined to be background running, the submission of the rendering task is intercepted, the virtual rendering response information is generated, and finally the virtual rendering response information is fed back to the target application, so that the problem that the application program runs in the background and occupies hardware rendering resources is solved.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present invention, nor do they necessarily limit the scope of the invention. Other features of the present invention will become apparent from the following description.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings required to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the description below are only some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a flowchart of a method for processing a rendering task according to an embodiment of the present invention;
FIG. 2 is a flowchart of a method for processing a rendering task according to a second embodiment of the present invention;
FIG. 3 is a schematic structural diagram of a processing apparatus for rendering a task according to a third embodiment of the present invention;
fig. 4 is a schematic structural diagram of an electronic device according to a fourth embodiment of the present invention.
Detailed Description
In order to make those skilled in the art better understand the technical solutions of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and claims of the present invention and in the drawings described above are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the invention described herein are capable of operation in other sequences than those illustrated or described herein. In the description of the present invention, "a plurality" means two or more unless otherwise specified. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Example one
Fig. 1 is a flowchart of a method for processing a rendering task according to an embodiment of the present invention, where this embodiment is applicable to a case of processing the rendering task, and the method may be executed by a processing device of the rendering task, where the processing device of the rendering task may be implemented in a form of hardware and/or software, and the processing device of the rendering task may be configured in an electronic device, and the electronic device may be formed by two or more physical entities or may be formed by one physical entity.
As shown in fig. 1, a method for processing a rendering task according to an embodiment of the present invention specifically includes the following steps:
s101, when a rendering task generated relative to a target application is received, determining the running mode of the target application.
The running modes comprise foreground running and background running.
In this embodiment, after the target application generates the rendering task, the rendering task may be submitted to the kernel of the operating system, and after the kernel of the control system receives the rendering task, the specific running mode of the target application may be determined. The control system can be a Linux system, foreground operation comprises set-top full-screen operation, set-top operation, full-screen operation and the like, and background operation comprises non-set-top non-full-screen operation, non-set-top operation, non-full-screen operation and the like. The target application can generate rendering tasks due to sensing touch screen events or due to running processes and the like, and the touch screen events comprise events such as clicking or double-finger zooming.
For example, taking an automobile central control system as an example, after a user successfully gets on the automobile and strikes fire, after the automobile central control system is started, the automobile central control system performs texture rendering, the user opens a game application to experience game services of the central control system, after a period of time, the user opens a navigation application to prepare for navigation to go home, the game application and the navigation application of the automobile central control system run simultaneously, and if the game application or the navigation application generates a rendering task, after receiving the rendering task, the automobile central control system can determine an application running mode corresponding to the rendering task, namely a target application running mode.
S102, if the running mode of the target application is background running, intercepting submission of a rendering task and generating virtual rendering response information.
In this embodiment, if the kernel of the control system determines that the running mode of the target application is the background running, the kernel of the control system does not sense and intercept the rendering task that should be submitted to the GPU (Graphics Processing Unit), and generates the virtual rendering response information, so that the GPU does not need to process the rendering task submitted by the program running in the background, and the occupation of the GPU resources by the background application is intercepted. The GPU is a microprocessing unit which is specially used for carrying out image and graph related operation work on personal computers, workstations, game machines and mobile equipment, and the virtual rendering response information and the conventional rendering response information have the same function and are used for indicating that the rendering task is completed to a specified application, such as a target application.
For example, taking an automobile central control system as an example, if a user navigates home, a foreground navigation application runs and a background game application runs, the foreground navigation application can fully acquire GPU rendering resources, the background game application can continuously update the game progress, but a rendering task generated by the background game application is intercepted, and the vehicle-mounted central control system generates virtual rendering response information.
S103, feeding back the virtual rendering response information to the target application so that the target application normally runs in a background.
In this embodiment, the kernel of the control system feeds back the virtual rendering response information to the target application, and after receiving the virtual rendering response information, the target application may normally perform background operation, for example, perform submission of the next rendering task.
According to the processing method of the rendering task, provided by the embodiment of the invention, when the rendering task generated relative to the target application is received, the running mode of the target application is determined, wherein the running mode comprises foreground running and background running, if the running mode of the target application is the background running, the submission of the rendering task is intercepted, virtual rendering response information is generated, and the virtual rendering response information is fed back to the target application, so that the target application normally runs in the background. According to the technical scheme of the embodiment of the invention, the operation mode of the target application is confirmed according to the received rendering task, then if the operation mode is determined to be background operation, the submission of the rendering task is intercepted, the virtual rendering response information is generated, and finally the virtual rendering response information is fed back to the target application, so that the problem that the application program occupies hardware rendering resources while running in the background is solved.
Example two
Fig. 2 is a flowchart of a rendering task processing method according to a second embodiment of the present invention, where the technical solution of the second embodiment of the present invention is further optimized based on the above optional technical solutions, and a specific manner for processing the rendering task is given.
Optionally, the determining the operation mode of the target application includes: acquiring an application identifier of the target application, and searching the application identifier from a pre-recorded application-layer association table; if the layer identifier associated with the application identifier exists in the application-layer association table, determining the running mode of the target application as foreground running; otherwise, determining the running mode of the target application as background running. The method has the advantages that the running mode of the application is accurately determined, and support is provided for solving the problem of wasting hardware rendering resources.
Optionally, the intercepting the rendering task submitted to the graphics processing unit and generating virtual rendering response information includes: and intercepting the submission of the rendering task to an image processing unit through a pre-constructed virtual rendering interaction mechanism, and generating virtual rendering response information by responding to the rendering task through a virtual graphics processing unit. The method has the advantages that the normal operation of the application is ensured while the rendering task of the application which is transported in the background is intercepted, and the purpose of intercepting the background rendering task without perception is achieved.
As shown in fig. 2, a method for processing a rendering task according to a second embodiment of the present invention specifically includes the following steps:
s201, when a rendering task generated by the corresponding target application is received, obtaining an application identifier of the target application, and searching the application identifier from a pre-recorded application-layer association table.
Specifically, when the kernel of the control system receives the rendering task, the kernel may obtain an application identifier of the target application, and search the application identifier from a pre-recorded application-layer association table. The application-layer association table may include an application identifier, a layer identifier, and the like.
An exemplary pre-recording may be understood that, whenever an application meets a recording condition, for example, when the application runs in a full screen, relevant information may be added to the application-layer association table, and when the application runs in a non-full screen, relevant information in the application-layer association table may be deleted, and relevant information of a new application running in a full screen may be added to the application-layer association table.
Optionally, the application-layer association table includes a binary relationship group formed by a target layer identifier and a target application identifier; the target layer identification is the layer identification of the layer where the current window interface is located, the layer where the current window interface is located is in a top setting state, and the interface size is the full screen size; and the target application identifier is the application identifier of the application to which the current window interface belongs.
Specifically, the application-layer association table may include: and the target layer identifier, the target application identifier and the corresponding relationship between the target layer identifier and the target application identifier, namely a binary relationship group. The target layer identifier may be understood as an identifier of a layer on top full screen display, and the target application identifier may be understood as an identifier of an application on top full screen display.
Further, the above steps further include: and updating the application layer association table when the switching operation of the display interface is received.
Specifically, if the application or the layer displayed in the top-set full screen is switched, the corresponding information in the application layer association table needs to be updated, so as to ensure the accuracy of the information in the application layer association table.
Further, the updating the application-layer association table includes: determining each window interface currently presented on a display screen, and determining a candidate window interface with an interface size of a full screen size from each window interface; determining a current window interface of the layer in the top setting state from each candidate window interface; obtaining a current layer identifier of a layer where the current window interface is located and a current application identifier of an application to which the current window interface belongs; and obtaining a binary relation group containing the current layer identifier and the current application identifier, and replacing the existing binary relation group in the application-layer association table.
Specifically, the specific process of updating the application-layer association table may be understood as that, first, an interface displayed in a full screen is determined from currently displayed window interfaces, and is determined as a candidate window interface, then, a current window interface displayed on the top and a layer corresponding to the current window interface are determined from the candidate window interfaces, then, a layer identifier of the layer, that is, a current layer identifier, and an application identifier of an application to which the layer belongs, that is, a current application identifier of the application to which the current window interface belongs are obtained, and finally, the current layer identifier and the current application identifier are added to the application-layer association table to form a new binary relationship group, so as to replace an existing binary relationship group in the application-layer association table.
S202, if the layer identifier associated with the application identifier exists in the application-layer association table, determining the running mode of the target application as foreground running; otherwise, determining the running mode of the target application as background running.
Specifically, if the layer identifier associated with the application identifier of the target application is in the application-layer association table, it may be determined that the running mode of the target application is foreground running, and otherwise, the running mode of the target application is background running.
S203, if the running mode of the target application is background running, intercepting the submission of a rendering task to the image processing unit through a pre-constructed virtual rendering interaction mechanism, and generating virtual rendering response information by the virtual image processing unit in response to the rendering task.
Specifically, if the kernel of the control system determines that the running mode of the target application is background running, a virtual rendering interaction mechanism may be triggered to intercept a rendering task to be submitted to the GPU, and in order to be compatible with a normal rendering process, the kernel of the control system may virtualize a response of the GPU to the rendering task by generating rendering response information. Wherein, the virtual rendering interaction mechanism can be understood as a virtual spring interrupt mechanism.
And S204, feeding back the virtual rendering response information to the target application so as to enable the target application to normally run in a background.
The method for processing the rendering task provided by the embodiment of the invention comprises the steps of firstly determining the running mode of the target application according to the query application-layer association table after the received rendering task, if the running mode of the target application is background running, intercepting the submission of the rendering task to the image processing unit by using a pre-established virtual rendering interaction mechanism, and feeding back the generated virtual rendering response information to the target application so as to ensure the normal running of the target application, thereby realizing the imperceptible interception of the background rendering task, ensuring the normal running of the background application while intercepting the rendering task of the application running in the background, and solving the problem of hardware rendering resource waste.
On the basis of the above embodiment, the method may further include: if the running mode of the target application is foreground running, submitting the rendering task to an image processing unit, and receiving rendering response information formed after the image processing unit finishes the rendering task; and feeding back the rendering response information to the target application so as to enable the target application to normally perform foreground operation.
Specifically, if the kernel of the control system determines that the running mode of the target application is foreground running, the kernel of the control system submits the rendering task to the GPU for processing, and after the GPU finishes processing and sends rendering response information to the kernel of the control system, the kernel of the control system feeds back the rendering response information to the target application according to the received rendering response information, so as to ensure that the target application normally runs foreground.
Illustratively, taking an automobile central control system as an example, if a user navigates home, the navigation application foreground runs and the game application background runs. And if the navigation application senses the touch screen behavior of the user, if the user performs double-finger amplification, the navigation application generates a rendering task and submits the rendering task to the vehicle-mounted central control system. And after receiving the rendering task, the vehicle-mounted central control system determines that the navigation application is operated in the foreground, and submits the rendering task to the GPU for processing. And after the GPU completes processing, rendering response information is generated and sent to the vehicle-mounted central control system. And the vehicle-mounted central control system feeds back the rendering response information to the navigation application according to the received rendering response information.
EXAMPLE III
Fig. 3 is a schematic structural diagram of a processing device for rendering tasks according to a third embodiment of the present invention. As shown in fig. 3, the apparatus includes: an operation mode determining module 301, a response information generating module 302, and a virtual rendering response information feedback module 303, wherein:
the system comprises an operation mode determining module, a rendering module and a rendering module, wherein the operation mode determining module is used for determining the operation mode of a target application when a rendering task generated relative to the target application is received, and the operation mode comprises foreground operation and background operation;
the response information generation module is used for intercepting the submission of the rendering task and generating virtual rendering response information if the running mode of the target application is background running;
and the virtual rendering response information feedback module is used for feeding back virtual rendering response information to the target application so as to enable the target application to normally run in a background.
According to the processing device of the rendering task, provided by the embodiment of the invention, the operation mode of the target application is confirmed according to the received rendering task, then if the operation mode is determined to be background operation, the submission of the rendering task is intercepted, the virtual rendering response information is generated, and finally the virtual rendering response information is fed back to the target application, so that the problem that hardware rendering resources are occupied when an application program runs in the background is solved.
Optionally, the operation mode determining module includes:
the application identifier searching unit is used for acquiring the application identifier of the target application and searching the application identifier from a pre-recorded application-layer association table;
a background operation determining unit, configured to determine, if a layer identifier associated with the application identifier exists in the application-layer association table, an operation mode of the target application as foreground operation;
and the foreground operation determining unit is used for determining the operation mode of the target application as background operation if the layer identifier associated with the application identifier does not exist in the application-layer association table.
Further, the application-layer association table includes a binary relationship group formed by a target layer identifier and a target application identifier; the target layer identification is the layer identification of the layer where the current window interface is located, the layer where the current window interface is located is in a top setting state, and the interface size is the full screen size; and the target application identification is the application identification of the application to which the current window interface belongs.
Optionally, the operation mode determining module further includes:
and the association table updating unit is used for updating the application layer association table when receiving the switching operation of the display interface.
Further, the updating the application-layer association table includes: determining each window interface currently presented on a display screen, and determining a candidate window interface with an interface size of a full screen size from each window interface; determining a current window interface of the layer in the top setting state from each candidate window interface; obtaining a current layer identifier of a layer where the current window interface is located and a current application identifier of an application to which the current window interface belongs; and obtaining a binary relation group containing the current layer identifier and the current application identifier, and replacing the existing binary relation group in the application-layer association table.
Optionally, the response information generating module includes:
and the virtual rendering response information unit is used for intercepting the submission of the rendering task to the image processing unit through a pre-constructed virtual rendering interaction mechanism, and generating virtual rendering response information through the response of the virtual image processing unit to the rendering task.
Optionally, the apparatus further comprises:
the rendering response information receiving module is used for submitting the rendering task to the image processing unit if the running mode of the target application is foreground running and receiving rendering response information formed after the image processing unit finishes the rendering task;
and the rendering response information sending module is used for feeding back the rendering response information to the target application so as to enable the target application to normally perform foreground operation.
The rendering task processing device provided by the embodiment of the invention can execute the rendering task processing method provided by any embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method.
Example four
FIG. 4 illustrates a schematic diagram of an electronic device 40 that may be used to implement an embodiment of the invention. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smart phones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein.
As shown in fig. 4, the electronic device 40 includes at least one processor 41, and a memory communicatively connected to the at least one processor 41, such as a Read Only Memory (ROM)42, a Random Access Memory (RAM)43, and the like, wherein the memory stores a computer program executable by the at least one processor, and the processor 41 may perform various suitable actions and processes according to the computer program stored in the Read Only Memory (ROM)42 or the computer program loaded from the storage unit 48 into the Random Access Memory (RAM) 43. In the RAM 43, various programs and data necessary for the operation of the electronic apparatus 40 can also be stored. The processor 41, the ROM 42, and the RAM 43 are connected to each other via a bus 44. An input/output (I/O) interface 45 is also connected to bus 44.
A number of components in the electronic device 40 are connected to the I/O interface 45, including: an input unit 46 such as a keyboard, a mouse, etc.; an output unit 47 such as various types of displays, speakers, and the like; a storage unit 48 such as a magnetic disk, an optical disk, or the like; and a communication unit 49 such as a network card, modem, wireless communication transceiver, etc. The communication unit 49 allows the electronic device 40 to exchange information/data with other devices via a computer network such as the internet and/or various telecommunication networks.
Processor 41 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of processor 41 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various processors running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, or the like. The processor 41 performs the respective methods and processes described above, such as the processing method of the rendering task.
In some embodiments, the processing method of the rendering task may be implemented as a computer program tangibly embodied in a computer-readable storage medium, such as storage unit 48. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 40 via the ROM 42 and/or the communication unit 49. When the computer program is loaded into the RAM 43 and executed by the processor 41, one or more steps of the processing method of the rendering task described above may be performed. Alternatively, in other embodiments, processor 41 may be configured by any other suitable means (e.g., by way of firmware) to perform the processing method of the rendering task.
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
A computer program for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the computer programs, when executed by the processor, cause the functions/acts specified in the flowchart and/or block diagram block or blocks to be performed. A computer program can execute entirely on a machine, partly on a machine, as a stand-alone software package partly on a machine and partly on a remote machine or entirely on a remote machine or server.
The computer device provided by the above can be used to execute the processing method of the rendering task provided by any of the above embodiments, and has corresponding functions and advantages.
EXAMPLE five
In the context of the present invention, a computer-readable storage medium may be a tangible medium, the computer-executable instructions when executed by a computer processor for performing a method of processing a rendering task, the method comprising:
when a rendering task generated relative to a target application is received, determining the running mode of the target application, wherein the running mode comprises foreground running and background running;
if the running mode of the target application is background running, intercepting the submission of the rendering task and generating virtual rendering response information;
and feeding back the virtual rendering response information to the target application so as to enable the target application to normally run in a background.
In the context of the present invention, a computer readable storage medium may be a tangible medium that can contain, or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. A computer readable storage medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. Alternatively, the computer readable storage medium may be a machine readable signal medium. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The computer device provided by the above can be used to execute the processing method of the rendering task provided by any of the above embodiments, and has corresponding functions and advantages.
It should be noted that, in the embodiment of the processing apparatus for rendering tasks, the units and modules included in the processing apparatus are only divided according to functional logic, but are not limited to the above division as long as the corresponding functions can be implemented; in addition, specific names of the functional units are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present invention.
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims (10)

1. A method for processing a rendering task, comprising:
when a rendering task generated relative to a target application is received, determining the running mode of the target application, wherein the running mode comprises foreground running and background running;
if the running mode of the target application is background running, intercepting the submission of the rendering task and generating virtual rendering response information;
and feeding back the virtual rendering response information to the target application so as to enable the target application to normally run in a background.
2. The method of claim 1, wherein the determining the operation mode of the target application comprises:
acquiring an application identifier of the target application, and searching the application identifier from a pre-recorded application-layer association table;
if the layer identifier associated with the application identifier exists in the application-layer association table, determining the running mode of the target application as foreground running; if not, then,
and determining the running mode of the target application as background running.
3. The method according to claim 1, wherein the application-layer association table includes a binary relationship group consisting of a target layer identifier and a target application identifier;
the target layer identification is the layer identification of the layer where the current window interface is located, the layer where the current window interface is located is in a top setting state, and the interface size is the full screen size;
and the target application identification is the application identification of the application to which the current window interface belongs.
4. The method of claim 2 or 3, further comprising:
and updating the application layer association table when the switching operation of the display interface is received.
5. The method according to claim 4, wherein said updating the application-layer association table comprises:
determining each window interface currently presented on a display screen, and determining a candidate window interface with an interface size of a full screen size from each window interface;
determining a current window interface of the layer in the top setting state from each candidate window interface;
obtaining a current layer identifier of a layer where the current window interface is located and a current application identifier of an application to which the current window interface belongs;
and obtaining a binary relation group containing the current layer identifier and the current application identifier, and replacing the existing binary relation group in the application-layer association table.
6. The method of claim 1, wherein intercepting the rendering tasks submitted to a graphics processing unit and generating virtual rendering response information comprises:
and intercepting the submission of the rendering task to an image processing unit through a pre-constructed virtual rendering interaction mechanism, and generating virtual rendering response information by responding to the rendering task through a virtual graphics processing unit.
7. The method of claim 1, further comprising:
if the running mode of the target application is foreground running, submitting the rendering task to an image processing unit, and receiving rendering response information formed after the image processing unit finishes the rendering task;
and feeding back the rendering response information to the target application so as to enable the target application to normally perform foreground operation.
8. A processing apparatus for rendering a task, comprising:
the system comprises an operation mode determining module, a rendering module and a rendering module, wherein the operation mode determining module is used for determining the operation mode of a target application when a rendering task generated relative to the target application is received, and the operation mode comprises foreground operation and background operation;
the response information generation module is used for intercepting the submission of the rendering task and generating virtual rendering response information if the running mode of the target application is background running;
and the virtual rendering response information feedback module is used for feeding back virtual rendering response information to the target application so as to enable the target application to normally perform background operation.
9. An electronic device, characterized in that the electronic device comprises:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,
the memory stores a computer program executable by the at least one processor, the computer program being executable by the at least one processor to enable the at least one processor to perform the processing method of the rendering task of any one of claims 1-7.
10. A computer-readable storage medium storing computer instructions for causing a processor to perform a method of processing a rendering task according to any one of claims 1 to 7 when the computer instructions are executed.
CN202210657610.3A 2022-06-10 2022-06-10 Rendering task processing method, device and equipment and storage medium Pending CN114995978A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210657610.3A CN114995978A (en) 2022-06-10 2022-06-10 Rendering task processing method, device and equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210657610.3A CN114995978A (en) 2022-06-10 2022-06-10 Rendering task processing method, device and equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114995978A true CN114995978A (en) 2022-09-02

Family

ID=83032307

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210657610.3A Pending CN114995978A (en) 2022-06-10 2022-06-10 Rendering task processing method, device and equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114995978A (en)

Similar Documents

Publication Publication Date Title
US11314568B2 (en) Message processing method and apparatus, storage medium, and computer device
US9575652B2 (en) Instantiable gesture objects
US11157302B2 (en) Idle processor management in virtualized systems via paravirtualization
CN109471626B (en) Page logic structure, page generation method, page data processing method and device
WO2018045934A1 (en) Application process management method and terminal device
EP3133481B1 (en) Terminal device display method and terminal device
CN111124668B (en) Memory release method, memory release device, storage medium and terminal
US20110219373A1 (en) Virtual machine management apparatus and virtualization method for virtualization-supporting terminal platform
US20210109644A1 (en) Display method when application is exited and terminal
CN114564435A (en) Inter-core communication method, device and medium for heterogeneous multi-core chip
CN114936173B (en) Read-write method, device, equipment and storage medium of eMMC device
US20200348840A1 (en) System and method for event driven storage management
CN114186527A (en) Method and device for realizing automatic wiring of integrated circuit independent of grid point
CN111813407A (en) Game development method, game running device and electronic equipment
CN114995978A (en) Rendering task processing method, device and equipment and storage medium
CN113032154B (en) Scheduling method and device for virtual CPU, electronic equipment and storage medium
CN102339221A (en) Method for processing application program interface based on Windows CE platform
CN113487704B (en) Dovetail arrow mark drawing method and device, storage medium and terminal equipment
US20150242330A1 (en) Guest-programmable location of advanced configuration and power interface (acpi) tables in virtualized systems
US11941055B2 (en) Method and apparatus for graph computing, electronic device and storage medium
CN110908573B (en) Algorithm model training method, device, equipment and storage medium
CN113901033A (en) Data migration method, device, equipment and medium
US10671425B2 (en) Lazy timer programming for virtual machines
US20150116208A1 (en) Terminal apparatus, information processing apparatus, and display control method
Chen et al. MSA: A Novel App Development Framework for Transparent Multiscreen Support on Android Apps

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination