CN112835580B - Instruction processing method, device, equipment and storage medium - Google Patents

Instruction processing method, device, equipment and storage medium Download PDF

Info

Publication number
CN112835580B
CN112835580B CN202110260672.6A CN202110260672A CN112835580B CN 112835580 B CN112835580 B CN 112835580B CN 202110260672 A CN202110260672 A CN 202110260672A CN 112835580 B CN112835580 B CN 112835580B
Authority
CN
China
Prior art keywords
rendering
container
module
instruction
rendered data
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.)
Active
Application number
CN202110260672.6A
Other languages
Chinese (zh)
Other versions
CN112835580A (en
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202110260672.6A priority Critical patent/CN112835580B/en
Publication of CN112835580A publication Critical patent/CN112835580A/en
Application granted granted Critical
Publication of CN112835580B publication Critical patent/CN112835580B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing 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/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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering

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)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The disclosure provides an instruction processing method, an instruction processing device and a storage medium, and relates to the technical fields of intelligent equipment, cloud service, rendering and other computer technologies. The specific implementation scheme is as follows: analyzing the rendering instruction to obtain rendered data; the rendered data is sent to obtain a container engine based on the rendered data, the container engine to construct a container view based on the rendered data and generate a display page. According to the embodiment of the disclosure, after the rendering instruction is analyzed, rendered data can be obtained, and then a container engine and the like at the equipment end are multiplexed, so that a required rendering effect is realized, the calculated amount required for rendering can be reduced, the rendering speed is improved, and the rendering effect is optimized.

Description

Instruction processing method, device, equipment and storage medium
Technical Field
The disclosure relates to the field of computer technology, in particular to the fields of intelligent equipment, cloud service and rendering.
Background
In the related art, the rendering process mainly includes compiling a file to be rendered and then converting the compiled file into a result visible to a user. The file can be compiled at the cloud end, and the compiled code is sent to the equipment end to display the rendering effect. In the process, a large amount of data needs to be transmitted between the cloud end and the equipment end, and factors such as network, transmission speed, data loss and the like can influence the rendering effect. The equipment end needs large calculation amount for rendering, and the rendering effect can be influenced.
Disclosure of Invention
The disclosure provides an instruction processing method, an instruction processing device and a storage medium.
According to an aspect of the present disclosure, there is provided an instruction processing method including: analyzing the rendering instruction to obtain rendered data; the rendered data is sent to obtain a container engine based on the rendered data, the container engine to construct a container view based on the rendered data and generate a display page.
According to another aspect of the present disclosure, there is provided an instruction processing apparatus including:
The analysis unit is used for analyzing the rendering instruction to obtain rendered data; and a first transmitting unit for transmitting the rendered data to acquire a container engine based on the rendered data, the container engine being used for constructing a container view based on the rendered data and generating a display page.
According to another aspect of the present disclosure, there is provided an electronic device including:
At least one processor; and
A memory communicatively coupled to the at least one processor; wherein,
The memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of the embodiments of the present disclosure.
According to another aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform the method of any of the embodiments of the present disclosure.
According to another aspect of the present disclosure, there is provided a computer program product comprising a computer program which, when executed by a processor, implements the method in any of the embodiments of the present disclosure.
According to the technology disclosed by the invention, after the rendering instruction is analyzed, rendered data can be obtained, and then a container engine and the like at the equipment end are multiplexed, so that the required rendering effect is realized, the calculated amount required for rendering can be reduced, the rendering speed is improved, and the rendering effect is optimized.
It should be understood that the description in this section is not intended to identify key or critical features of the embodiments of the disclosure, nor is it intended to be used to limit the scope of the disclosure. Other features of the present disclosure will become apparent from the following specification.
Drawings
The drawings are for a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
FIG. 1 is a flow diagram of an instruction processing method according to an embodiment of the present disclosure;
FIG. 2 is a flow diagram of an instruction processing method according to another embodiment of the present disclosure;
FIG. 3 is a block diagram of an instruction processing apparatus according to an embodiment of the present disclosure;
FIG. 4 is a block diagram of an instruction processing apparatus according to another embodiment of the present disclosure;
Fig. 5 is a schematic diagram of an ACE system provided to a smart device according to an embodiment of the present disclosure;
FIG. 6 is a schematic diagram of an instruction transceiving service according to an embodiment of the present disclosure;
FIG. 7 is another schematic diagram of an instruction transceiving service according to an embodiment of the present disclosure;
FIG. 8 is another schematic diagram of an instruction transceiving service according to an embodiment of the present disclosure;
fig. 9 is a schematic block diagram of an example electronic device used to implement embodiments of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, which include various details of the embodiments of the present disclosure to facilitate understanding, and should be considered as merely exemplary. Accordingly, one of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
FIG. 1 is a flow diagram of an instruction processing method according to an embodiment of the present disclosure. The method may include:
S101, analyzing a rendering instruction to obtain rendered data;
s102, sending the rendered data to acquire a container engine based on the rendered data, wherein the container engine is used for constructing a container view and generating a display page based on the rendered data.
Illustratively, the device side may include a smart device capable of display. For example, various voice smart devices with screens. The operating system of the device side may include a container engine system, which may include a cross-process processing module, an instruction processing module, a rendering module, a container module, and the like. The communication module of the system may be referred to as a cross-process processing module, capable of communicating with clients. The container module may obtain multiple types of container engines. Such as a Page container engine, a Dialog box (Dialog) container engine, an applet (Mini App) container engine, etc. The container engine may provide a script running environment, etc. The container engine may also be referred to as an application container engine, an application container, a container instance, an application container instance, an engine instance, a container, an engine, and the like. The client may include an application, applet, etc. The client may include a communication module, a collection of component description information, etc. The device side may include a communication module, a rendering module, a container module, and the like.
The method of the present embodiment may be used in a container engine system, for example, and may be specifically applied to an instruction processing module. The instruction processing module may parse the received rendering instructions (commands) and distribute the parsed rendered data (or pre-rendered data). For example, the instruction processing module may distribute the rendered data to the container module; or distributed to the rendering module, and transmitted to the container module through the rendering module. The container module may obtain a container engine based on the rendered data, run the rendered data with the container engine, construct a container view in which components to be displayed are loaded to generate a display page.
According to the embodiment of the disclosure, after the rendering instruction is analyzed, rendered data can be obtained, and then a container engine and the like at the equipment end are multiplexed, so that a required rendering effect is realized, the calculated amount required for rendering can be reduced, the rendering speed is improved, and the rendering effect is optimized.
Fig. 2 is a flow diagram of an instruction processing method according to another embodiment of the present disclosure. The method of this embodiment may include the steps of the above-described embodiments. In one embodiment, in S101, parsing the rendering instruction to obtain rendered data includes:
s201, determining whether a valid load is included in a rendering instruction according to the instruction type of the rendering instruction;
s202, under the condition that the effective load is included in the rendering instruction, splitting the effective load to obtain the rendered data.
For example, some types of instructions are those that include a payload. Such as RENDERSWANVIEW or RenderSwanDialog, executeSwanCode, include a payload in the instruction type that needs to be parsed. But the script (e.g., JS) of the page has the ability to dynamically subscribe to other instructions. If the instruction processing module receives an instruction that is not subscribed to, the instruction may not be parsed, nor is it concerned whether the payload is valid, such as by dropping the instruction directly.
If the rendering instruction received by the instruction processing module includes a payload (payload), the payload may be split to obtain rendered data. The payload may include specific data such as text, shape, etc. that needs to be displayed. In addition to parsing and splitting the payload, other content to be rendered can be obtained from the rendering instruction, and further rendered data including the payload and other content to be rendered is obtained. The payload in the rendering instructions may include main information required for rendering, such as container view information, layout information, component information, and the like. Splitting the payload if the received instruction has the payload, the main information required for rendering can be obtained. If the received instruction does not have a payload, no subsequent operations such as splitting are required. Therefore, main information required for rendering can be obtained rapidly and accurately based on the payload, the rendering speed is improved, and the rendering effect is optimized.
In one embodiment, in S101, the parsing of the rendering instruction to obtain rendered data further includes: s203, checking the structural integrity of the rendered data.
After the rendered data is obtained through parsing, the instruction processing module can check the structural integrity of the rendered data. If the structure of the rendered data is complete and there is no loss, the verified rendered data may be distributed to a container module or rendering module. If the structure of the rendered data is incomplete, the rendered data that fails the verification may not be distributed. This facilitates the presentation of better rendering with the complete rendered data.
In one embodiment, the parsing of the rendering instructions to obtain rendered data further includes:
S204, decoding and/or decompressing the rendered data which passes the verification.
For example, the instruction processing module may decode the rendered data that passes the integrity check, and distribute the decoded rendered data to the container module or rendering module.
For another example, the instruction processing module may decompress the rendered data that passes the integrity check, and distribute the decompressed rendered data to the container module or the rendering module.
For another example, the instruction processing module may decode the rendered data that passes the integrity check, decompress the decoded rendered data, and distribute the decompressed rendered data to the container module or the rendering module.
The rendered data may be encoded and/or compressed, and after decoding and/or decompressing the rendered data, the container engine may be enabled to quickly and accurately determine the meaning of the data, and the container engine is utilized to create a container view, thereby generating a display page that can be presented on a device screen.
In one embodiment, the method further comprises: s100, receiving a rendering instruction from a cloud or a client.
For example, the cloud end may compile the content to be rendered into various rendering instructions, and send the rendering instructions to the instruction receiving and sending service of the device end. The instruction transceiving service may communicate with a cloud end from which rendering instructions are received. The rendering instruction may include compiled code, mainly including layout-related information, etc., and has a small data size. The instruction receiving and sending service sends rendering instructions from the cloud to the instruction processing module. After receiving the rendering instruction, the instruction processing module can analyze the rendering instruction to obtain rendered data. Therefore, the rendering effect is realized between the cloud end and the equipment end through the rendering instruction, a large amount of data content is not required to be transmitted, and the required rendering effect can be realized through the rendering instruction to transmit a small amount of data. Similarly, the client can also transmit less data volume through the rendering instruction to realize the required rendering effect at the device side.
In one embodiment, transmitting the rendered data includes: and sending the rendered data to a container module and/or a rendering module.
For example, the instruction processing module sends rendered data to the container module. Or the instruction processing module sends the rendered data to the rendering module, and the rendered data is transmitted to the container module through the rendering module. The container module can acquire the corresponding container engine based on the rendering data, and the container engine is utilized to create a container view, so that a display page capable of being displayed on a device screen is generated. In this way, the container engine, the container view, the components and the like can be multiplexed, the rendering speed is improved, and the rendering effect is optimized.
In one embodiment, the method further comprises:
receiving a script to be rendered by a client through a cross-process processing module;
And sending the script to a rendering module so as to execute the script at the rendering module to obtain the rendered data.
For example, if the cross-process processing module receives a script that the client needs to render, the cross-process processing module may send the script to the instruction processing module. The instruction processing module may send the script to the rendering module. The rendering module may execute the script to obtain rendered data. Processing logic for the script may be included in the rendered data.
In the disclosed embodiments, the client may include an Application (APP), applet (Mini APP or Applet) or the like that can run in the operating system. An installation package of the client, such as APK, may be stored in the cloud. If the client needs to be operated at the equipment end, the client can be operated after being installed or directly operated after the installation package of the client is downloaded from the cloud. If the client needs to realize a certain rendering effect, the script can be generated according to certain logic by the container parameters, layout information, description information of the components to be displayed and the like. The cross-process processing module is connected with the communication module of the client, and receives scripts and/or other instructions to be executed which need to be rendered from the communication module of the client. The cross-process processing module may distribute the script to the rendering module, and the rendering module executes the script to obtain rendered data. The rendering module may send the rendered data to the container module, obtain the required container engine by the container module, construct a container view with the container engine, and generate a display page.
In particular, the container module may draw a display page using the rendered data. For example, processing logic including engine identification, container view information, component information, and scripts, etc. in the rendered data, the container module may find a corresponding container engine based on the engine identification; constructing a container view based on the container view information; and executing executable codes corresponding to the component information so as to load the graphic components corresponding to the component information in the container view and generate a display page. The container view information may include information of the size, color, location, etc. of the container view. The component information may include information of the size, color, position, text, shape, etc. of each graphic component that needs to be presented on the display page. Such as a circular button, a square input box, etc. The processing logic of the script may include a variety of components, such as display order, vanishing order, etc.
Fig. 3 is a block diagram of an instruction processing apparatus according to an embodiment of the present disclosure. The apparatus may include:
the parsing unit 301 is configured to parse the rendering instruction to obtain rendered data;
A first sending unit 302, configured to send the rendered data to obtain a container engine based on the rendered data, where the container engine is configured to construct a container view based on the rendered data and generate a display page.
Fig. 4 is a block diagram of an instruction processing apparatus according to another embodiment of the present disclosure. The apparatus of this embodiment may include the components of the apparatus embodiments described above. In one embodiment, the parsing unit 301 includes:
a determining subunit 3011, configured to determine, according to an instruction type of a rendering instruction, whether the rendering instruction includes a payload;
And the splitting unit 3012 is configured to split the payload to obtain the rendered data when the rendering instruction includes the payload.
In one embodiment, the parsing unit 301 further includes: and a verification subunit 3013, configured to verify the structural integrity of the rendered data.
In one embodiment, the parsing unit 301 further includes: a decoding subunit 3014, configured to decode and/or decompress the rendered data that passes the check.
In one embodiment, the apparatus further comprises: the first receiving unit 401 is configured to receive the rendering instruction from the cloud.
In one embodiment, the first sending unit 302 is specifically configured to send the rendered data to a container module and/or a rendering module.
In one embodiment, the apparatus further comprises:
A second receiving unit 402, configured to receive, by using a cross-process processing module, a script that needs to be rendered by a client;
And a second sending unit 403, configured to send the script to a rendering module, so that the rendered data is obtained by executing the script in the rendering module.
The functions of each unit and subunit in each device in the embodiments of the present disclosure may be referred to the corresponding descriptions in the above method embodiments, which are not repeated herein.
In one application example, a smart device with a screen such as: an application container engine (Application Container Engine, ACE) system may be included in a voice smart device such as a smart box. The ACE system may be an embedded application system. As shown in fig. 5, the system mainly comprises the following parts:
1. and the client communication management module. For example, in the on-screen voice smart device of fig. 5, the client communication management module may be a cross-process rendering management module (which may also be referred to as a client rendering management module, a client management module, a cross-process management module, etc., which is an example of a cross-process processing module in the above-described method embodiment). The cross-process rendering management module may be in communication with a client.
Optionally, the ACE system may also include clients (which may be referred to as ACE system clients, client plug-ins, client modules, etc.). ACE system clients may be located in other applications that require dynamic rendering of content. For example, an ACE system client may be integrated in an installation package of a third party accessed Application (APP), such as an APK, and the client may be installed or downloaded to a device side for operation. The client may interact with other modules through a cross-process rendering management module of the ACE system. The client may include a communication module (e.g., an instruction receiving end), a component set (a set of descriptive information of a component), an instruction execution module (e.g., an instruction executor), and so on.
2. The instruction parsing and distributing module (or referred to as an instruction parsing and distributing subsystem, a protocol parsing and distributing subsystem, etc. is an example of an instruction processing module in the above method embodiment or an example of an instruction processing device in the above device embodiment) is configured to parse and distribute instructions based on a system protocol. For example, the rendering instructions may be received from a cloud (also referred to as a cloud service, etc.) or a client through an instruction transceiving service module. The instruction analysis and distribution module analyzes the rendering instruction to obtain rendered data, and then distributes the rendered data to the container module for processing. The instruction parsing and distributing module can also transmit the rendered data to the container module through the rendering module.
For example, the cloud end may compile the content to be rendered into each rendering instruction, and send the rendering instruction to the instruction transceiver service module of the device end. The instruction receiving and transmitting service module can be communicated with the cloud end, and a rendering instruction is received from the cloud end. The rendering instruction may be compiled code, mainly including layout-related information, etc., and has a small data size. The instruction receiving and sending service module sends rendering instructions from the cloud to the instruction processing module. After receiving the rendering instruction, the instruction processing module can analyze the rendering instruction to obtain rendered data. Therefore, the rendering effect is realized between the cloud end and the equipment end through the rendering instruction, a large amount of data content is not required to be transmitted, and the required rendering effect can be realized through the rendering instruction to transmit a small amount of data. Similarly, the client can also achieve the desired rendering effect on the device side by transmitting a smaller amount of data through the rendering instruction.
3. A device-side capability module (alternatively referred to as an end-side capability module, a device-side capability subsystem, an end-side capability subsystem, etc.). Various capabilities (also referred to as skills) of the device side may need to be invoked during rendering. The terminal capability module can receive the terminal capability calling instruction from the instruction analysis distribution module and send the corresponding calling instruction to the equipment terminal system service module according to the terminal capability calling instruction. For example, an instruction to turn on a microphone, an instruction to turn on a camera, and the like. The end capabilities may include a variety of, for example, hardware capabilities, smart services, cloud services, and the like.
Further, if the service capability of the device side called by the device side capability calling instruction has a specific rendering effect, at least one of script, rendering instruction or rendered data corresponding to the called service capability of the device side may be returned to the rendering module. The rendering module can process the received information correspondingly and then send the processed information to the container module. A container engine for retrieving the invoked service capability based on the rendered data by the container module, constructing a container view of the invoked service capability using the container engine, and generating a display page of the invoked service capability. For example, the rendering effect of the call instruction to turn on the microphone includes an animation with a partial display of the microphone image, and the device-side capability module may send rendered data corresponding to the animation to the rendering module. The rendering module may obtain a container engine, such as a dialog container engine, required for the animation. In the dialog container engine, a container view may be constructed based on view information in the rendered data and executable code of the component may be run based on the component information to obtain a display page.
In addition, when the equipment-side capability module invokes the equipment-side system service, the equipment-side system service can execute corresponding operations according to the invoking instruction. The device side system service can report the state and/or event and the like which occur after the called service capability is executed corresponding operation through the device side capability module. For example, in response to a call instruction, the music player turns on and plays music. The music player can return a music playing record and the like to the equipment end capacity module, and the music playing record and the like are reported to the cloud end by the equipment end capacity module.
4. A container module (or container subsystem) for managing the various container engines. The container engine may include a page container engine, a dialog container engine, an applet container engine, and the like. The container module may obtain the required container engine based on the rendered data from the rendering module, the instruction parsing distribution module, or the cross-process rendering management module. For example, if there is an already open page container engine, the container page may be built using the page container engine. If there is no already open container engine, a new page container engine may be started, using which to build the container page. For another example, if there is an already open dialog container engine, the dialog container engine may be closed first and then a new dialog container engine may be started to build a container page based on the rendered data. If there is no dialog container engine already open, a new dialog container engine may be started directly. The new dialog container engine is used to build a container page. For another example, if there is an already open applet container engine, the container page can be built using the applet container engine. If there is no already open applet container engine, a new applet container engine can be started, using which the container page is built.
After constructing the container page by using the container engine, executable codes of components required for rendering are loaded in the container page, and a display page capable of showing rendering effects on a screen of the equipment side is generated. Further, the display page can be presented on the screen of the device side.
5. A rendering module (or rendering subsystem) for implementing screen rendering of the device.
The rendering module may execute the script to obtain the rendered data or receive the rendered data from the instruction parsing distribution module. The rendering module may then send the rendered data to the container module.
In addition, the rendering module may also parse the rendered data to determine whether calling end capabilities are needed. If the terminal capability needs to be called, a terminal capability calling instruction can be sent to the equipment terminal capability module so as to call the service capability of the equipment terminal. If the device side capability module returns rendered data corresponding to the service capability called based on the side capability call instruction to the rendering module, the device side capability module can send the rendered data to the container module for processing.
Further, a set of components may be included in an ACE system. The set of components of an ACE system may include a collection of executable code for each component. The ACE system client can also comprise a component set, and the component set of the client can comprise a set of descriptive information of a part of custom components. The script that the client needs to render may include an identification of the container engine, container component information, description information of the component, and the like. If custom components need to be registered in the ACE system, the script to be rendered by the client can comprise descriptive information of the respective definition components. For example, in addition to various components and layouts of the APP of a video website, a custom component for displaying rendering effects of "happy new year", "happy mid-autumn" may be included.
In an example, the ACE system can be applied to voice intelligent equipment with a screen, provides an efficient processing mode for content display of system application and third party application of the equipment, is used as a beneficial supplement of intelligent voice interaction, can improve expressive force of the voice intelligent equipment, and achieves better user experience.
The ACE system may provide services in a variety of communication modes: 1) Third party communication services based on client plug-ins; 2) Cloud service communication based on registration protocol; 3) Service communication based on the device-side local system. The application container engine system distributes corresponding containers with contracted communication contents, and organizes related contents in the containers through a component set and related instructions to complete the rendering of screen contents, thereby completing the service targets of all calling parties (callers). In addition, the ACE system can also manage the life cycle of the corresponding service.
The ACE system can complete rendering in the voice intelligent equipment, and reduces the data volume required to be transmitted with the outside, such as a cloud; the rendering processing speed and the display effect can be improved by multiplexing the containers.
In one example, as shown in fig. 6, the instruction transceiving service may send instructions from the cloud (or cloud service) to the instruction parsing distribution module. The instruction parsing distribution module may include an instruction transceiver adapter module (e.g., a transceiver service adapter), an instruction unpacking verification module, an instruction distribution module, and the like. The instruction parsing and distributing module may parse the rendering instruction based on a system protocol and the like, and send the rendered data obtained by parsing to the container module. The container module may utilize the rendered module to drive rendering. In addition, the container module may also pass instructions through. For example, a dynamic script (e.g., javaScript, JS for short) may subscribe to some instructions to complete business logic, and the container module may pass through the instructions to which the script subscribes into the dynamic script. In addition, the container module can report events, synchronize states and the like to the instruction analysis and distribution module. The instruction analysis and distribution module can package and upload the events, the states and the like to the cloud.
As shown in fig. 7 and 8, the instruction transceiving service DCS (DuerOS Conversation System) is a subsystem for communication between a device and DuerOS (a secret operating system) cloud service, for example. The instruction transceiving service sends rendering instructions to an instruction transceiving adaptation module, such as DCSSERVICECLIENTLMPL, via a process communication. The instruction transceiver adaptation module may determine whether a Payload (Payload) needs to be parsed according to an instruction type. If the instruction is an instruction with a payload, the unpacking verification module unpacks the payload and verifies the structural integrity of the unpacked data. If the verification passes, the verified data may be sent to an instruction dispatch module such as DIRECTIVEDISPATCHER for decoding, decompression, and the like. The instruction distribution module can perform instruction distribution and distribute rendered data required by page rendering to the container module. The rendered data may include compiled code. The container module may construct a container engine (container instance) using the received rendered data or reuse the container engine (container instance), in turn constructing a container view using the container engine. The container engines that may be used by the container module may include a page container engine, a dialog container engine, an applet container engine, and the like. For example, in an android system the page container engine may include an Activity page. The container module may also return rendering-related information to the client through the cross-process rendering management module.
The instruction analysis and distribution module protocol analysis subsystem is decoupled with the data source type through the adaptation module, only focuses on the data, and dynamically drives the container module to construct a corresponding container according to different instruction types to complete rendering. Therefore, the cloud end can finish rendering on the device without issuing rendering data and issuing rendering instructions.
According to embodiments of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.
Fig. 9 shows a schematic block diagram of an example electronic device 800 that may be used to implement embodiments of the present disclosure. 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 processing, cellular telephones, smartphones, wearable devices, 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 disclosure described and/or claimed herein.
As shown in fig. 9, the electronic device 800 includes a computing unit 801 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM) 802 or a computer program loaded from a storage unit 808 into a Random Access Memory (RAM) 803. In the RAM803, various programs and data required for the operation of the electronic device 800 can also be stored. The computing unit 801, the ROM802, and the RAM803 are connected to each other by a bus 804. An input output (I/O) interface 805 is also connected to the bus 804.
Various components in electronic device 800 are connected to I/O interface 805, including: an input unit 806 such as a keyboard, mouse, etc.; an output unit 807 such as various types of displays, speakers, and the like; a storage unit 808, such as a magnetic disk, optical disk, etc.; and a communication unit 809, such as a network card, modem, wireless communication transceiver, or the like. The communication unit 809 allows the electronic device 800 to exchange information/data with other devices through a computer network such as the internet and/or various telecommunication networks.
The computing unit 801 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of computing unit 801 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various specialized Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 801 performs the respective methods and processes described above, for example, an instruction processing method. For example, in some embodiments, the instruction processing method may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as the storage unit 808. In some embodiments, part or all of the computer program may be loaded and/or installed onto the electronic device 800 via the ROM 802 and/or the communication unit 809. When a computer program is loaded into RAM 803 and executed by computing unit 801, one or more steps of the instruction processing method described above may be performed. Alternatively, in other embodiments, the computing unit 801 may be configured to perform the instruction processing method by any other suitable means (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuit systems, field Programmable Gate Arrays (FPGAs), application Specific Integrated Circuits (ASICs), application Specific Standard Products (ASSPs), systems On 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, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for carrying out methods of the present disclosure may be written in any combination of one or more programming languages. These program code may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus such that the program code, when executed by the processor or controller, causes the functions/operations specified in the flowchart and/or block diagram to be implemented. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable 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. 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.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and pointing device (e.g., a mouse or trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), wide Area Networks (WANs), and the internet.
The computer system may include a client and a server. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps recited in the present disclosure may be performed in parallel, sequentially, or in a different order, provided that the desired results of the disclosed aspects are achieved, and are not limited herein.
The above detailed description should not be taken as limiting the scope of the present disclosure. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present disclosure are intended to be included within the scope of the present disclosure.

Claims (13)

1. An instruction processing method, wherein the method is used for a container engine system, the container engine system comprises a cross-process processing module, a rendering module and a container module, and the method comprises:
Receiving a script to be rendered by the client through the cross-process processing module;
The cross-process processing module sends the script to a rendering module so as to execute the script at the rendering module to obtain rendered data;
the rendering module sends the rendered data to the container module, wherein the rendered data comprises an engine identification, container view information and component information; the container module searches a corresponding container engine based on an engine identification, and the container engine is used for constructing a container view based on the container view information and executing executable codes corresponding to the component information so as to load an image component corresponding to the component information in the container view and generate a display page.
2. The method of claim 1, wherein parsing the rendering instructions to obtain rendered data comprises:
Determining whether a valid load is included in a rendering instruction according to the instruction type of the rendering instruction;
In the case that a payload is included in the rendering instruction, splitting the payload results in the rendered data.
3. The method of claim 1, wherein parsing the rendering instructions to obtain rendered data further comprises:
and verifying the structural integrity of the rendered data.
4. The method of claim 3, wherein parsing the rendering instructions to obtain rendered data further comprises:
and decoding and/or decompressing the rendered data which passes the verification.
5. The method according to any one of claims 1 to 4, further comprising:
And receiving the rendering instruction from the cloud or the client.
6. An instruction processing apparatus for use in a container engine system, the container engine system comprising a cross-process processing module, a rendering module, a container module, the apparatus comprising:
The analysis unit is used for analyzing the rendering instruction to obtain rendered data;
a first sending unit configured to send the rendered data to the container module to obtain a container engine based on the rendered data, the container engine being configured to construct a container view based on the rendered data and generate a display page;
The apparatus further comprises:
The second receiving unit is used for receiving the script which needs to be rendered by the client through the cross-process processing module;
The second sending unit is used for sending the script to a rendering module so as to execute the script at the rendering module to obtain the rendered data;
Wherein the rendered data includes engine identification, container view information, component information; the container module searches a corresponding container engine based on an engine identification, and the container engine is used for constructing a container view based on the container view information and executing executable codes corresponding to the component information so as to load an image component corresponding to the component information in the container view and generate a display page.
7. The apparatus of claim 6, wherein the parsing unit comprises:
a determining subunit, configured to determine, according to an instruction type of a rendering instruction, whether the rendering instruction includes a payload;
And the splitting subunit is used for splitting the payload to obtain the rendered data under the condition that the payload is included in the rendering instruction.
8. The apparatus of claim 6, wherein the parsing unit further comprises:
and the verification subunit is used for verifying the structural integrity of the rendered data.
9. The apparatus of claim 8, wherein the parsing unit further comprises:
and the decoding subunit is used for decoding and/or decompressing the rendered data which passes the verification.
10. The apparatus according to any one of claims 6 to 9, wherein the apparatus further comprises:
the first receiving unit is used for receiving the rendering instruction from the cloud.
11. An electronic device, comprising:
At least one processor; and
A memory communicatively coupled to the at least one processor; wherein,
The memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-5.
12. A non-transitory computer readable storage medium storing computer instructions for causing a computer to perform the method of any one of claims 1-5.
13. A computer program product comprising a computer program which, when executed by a processor, implements the method according to any of claims 1-5.
CN202110260672.6A 2021-03-10 2021-03-10 Instruction processing method, device, equipment and storage medium Active CN112835580B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110260672.6A CN112835580B (en) 2021-03-10 2021-03-10 Instruction processing method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110260672.6A CN112835580B (en) 2021-03-10 2021-03-10 Instruction processing method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112835580A CN112835580A (en) 2021-05-25
CN112835580B true CN112835580B (en) 2024-05-28

Family

ID=75930066

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110260672.6A Active CN112835580B (en) 2021-03-10 2021-03-10 Instruction processing method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112835580B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114780095B (en) * 2022-06-21 2022-09-27 统信软件技术有限公司 Off-screen rendering method and device, printing method, computing device and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107025124A (en) * 2015-06-24 2017-08-08 上海中信信息发展股份有限公司 Web technologies develop the system architecture of desktop
CN109697266A (en) * 2017-10-24 2019-04-30 中国电信股份有限公司 Page rendering system, page rendering method and page rendering device
CN109902255A (en) * 2019-02-27 2019-06-18 百度在线网络技术(北京)有限公司 Page mixing browsing record generation method, device, equipment and storage medium
CN110442811A (en) * 2019-08-14 2019-11-12 广州虎牙科技有限公司 A kind of processing method of the page, device, computer equipment and storage medium
US10540152B1 (en) * 2016-09-23 2020-01-21 Massachusetts Mutual Life Insurance Company Systems, devices, and methods for software coding
CN111274510A (en) * 2020-01-15 2020-06-12 平安银行股份有限公司 Page rendering method, device and equipment and readable storage medium
CN111814089A (en) * 2020-06-30 2020-10-23 广州市百果园信息技术有限公司 Page rendering method and device, rendering server and storage medium
CN111930381A (en) * 2020-09-21 2020-11-13 知学云(北京)科技有限公司 Personalized page configuration method supporting SaaS multi-tenant system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8578268B2 (en) * 2010-12-30 2013-11-05 Konica Minolta Laboratory U.S.A., Inc. Rendering electronic documents having linked textboxes

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107025124A (en) * 2015-06-24 2017-08-08 上海中信信息发展股份有限公司 Web technologies develop the system architecture of desktop
US10540152B1 (en) * 2016-09-23 2020-01-21 Massachusetts Mutual Life Insurance Company Systems, devices, and methods for software coding
CN109697266A (en) * 2017-10-24 2019-04-30 中国电信股份有限公司 Page rendering system, page rendering method and page rendering device
CN109902255A (en) * 2019-02-27 2019-06-18 百度在线网络技术(北京)有限公司 Page mixing browsing record generation method, device, equipment and storage medium
CN110442811A (en) * 2019-08-14 2019-11-12 广州虎牙科技有限公司 A kind of processing method of the page, device, computer equipment and storage medium
CN111274510A (en) * 2020-01-15 2020-06-12 平安银行股份有限公司 Page rendering method, device and equipment and readable storage medium
CN111814089A (en) * 2020-06-30 2020-10-23 广州市百果园信息技术有限公司 Page rendering method and device, rendering server and storage medium
CN111930381A (en) * 2020-09-21 2020-11-13 知学云(北京)科技有限公司 Personalized page configuration method supporting SaaS multi-tenant system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"WEB端可视化表单生成引擎的设计与实现";宋奕爽等;《软件》;20171231;153-159 *

Also Published As

Publication number Publication date
CN112835580A (en) 2021-05-25

Similar Documents

Publication Publication Date Title
CN112882709B (en) Rendering method, device, equipment and storage medium based on container engine system
CN110457143B (en) Micro-service calling method and device
CN110795195A (en) Webpage rendering method and device, electronic equipment and storage medium
CN111209065B (en) Dynamic wallpaper setting method and device, storage medium and electronic equipment
CN113794909A (en) Video streaming system, method, server, device, and storage medium
CN113568626B (en) Dynamic packaging and application package opening method and device and electronic equipment
CN114138372B (en) Front-end component loading method and device
CN113110829B (en) Multi-UI component library data processing method and device
CN113365146B (en) Method, apparatus, device, medium and article of manufacture for processing video
CN108600331A (en) Interactive interface rendering method, client, terminal and system
CN112835580B (en) Instruction processing method, device, equipment and storage medium
CN114244821B (en) Data processing method, device, equipment, electronic equipment and storage medium
CN112382294A (en) Voice recognition method and device, electronic equipment and storage medium
CN113746837B (en) Information processing method and apparatus, electronic device, and computer readable medium
CN113961289A (en) Data processing method, device, equipment and storage medium
CN112835582A (en) Container engine-based rendering method, device, equipment and storage medium
CN112882711A (en) Rendering method, device, equipment and storage medium
CN114374703B (en) Cloud mobile phone information acquisition method, device, equipment and storage medium
CN113407259B (en) Scene loading method, device, equipment and storage medium
CN112882710B (en) Rendering method, device, equipment and storage medium based on client
CN112835581A (en) Terminal capability calling method, device, equipment and storage medium
CN113722115A (en) Method, device, equipment and computer readable medium for calling interface
CN113361235B (en) HTML file generation method and device, electronic equipment and readable storage medium
CN116431108B (en) Object type processing method and device, electronic equipment and storage medium
CN114095758B (en) Cloud image intercepting method and related device

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
GR01 Patent grant
GR01 Patent grant