Signal processing method and device, electronic equipment and storage medium

By determining the write permissions of the user stack in the operating system and establishing a virtual address mapping, multiple IPC problems caused by unmapping of the user stack are solved, improving operating system performance and reducing resource consumption.

CN119225988APending Publication Date: 2024-12-31BEIJING CO WHEELS TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310787527.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-29
Publication Date
2024-12-31

AI Technical Summary

Technical Problem

In the operating system, the user stack does not establish an address map with the kernel stack when it is created, resulting in the need to send inter-process communication (IPC) to the user to manage the process multiple times, thereby wasting time and reducing operating system performance.

Method used

By responding to the processing signal of the target task, it is determined whether the user stack has write permissions, and a mapping relationship between the virtual address and the physical address of the user program is established without the write permissions, thereby reducing the number of IPC sending times.

Benefits of technology

Reduces time consumption, improves operating system performance, and avoids on-site protection and recovery operations every time a signal processing process enters and exits.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119225988A_ABST
    Figure CN119225988A_ABST
Patent Text Reader

Abstract

The invention provides a signal processing method and device, electronic equipment and a storage medium, and relates to the technical field of data processing, and the technical scheme comprises the steps: responding to a processing signal of a target task, determining whether a user stack corresponding to the target task has a write-in permission, and when it is determined that the user stack does not have the write-in permission, executing the target task; the mapping relation between the virtual address of the user program and the physical address of the user program is established, the target task is stored in the corresponding preset storage space based on the mapping relation between the virtual address of the user program and the physical address of the user program, and the user program is used for triggering the target task. Compared with the prior art, whether the user stack has the write-in permission or not is judged through the process of preprocessing the user stack in advance, and the virtual address of the user program in the user stack area and the physical address of the user program are mapped, so that the number of times of sending the IPC to the user management process is reduced; the time consumption is reduced; meanwhile, the operation system performance is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of data processing technology, and in particular to a signal processing method and device, an electronic device, and a storage medium. Background Art

[0002] In the related art, when performing signal processing in an operating system, since the user stack does not establish an address mapping with the kernel stack when it is created, it is necessary to send interprocess communication (IPC) to the user management process multiple times so that the user management process can map the user stack and complete the signal processing. Mapping the user stack by the user management process directly leads to a waste of time and a decrease in the performance of the operating system. Summary of the invention

[0003] The present invention provides a signal processing method and device, electronic device and storage medium. Its main purpose is to solve the problem that when performing signal processing in an operating system, because the user stack is not mapped when it is created, it is necessary to send IPC to the user management process multiple times, resulting in a waste of time and a decrease in operating system performance.

[0004] According to a first aspect of the present disclosure, a signal processing method is provided, comprising:

[0005] In response to a processing signal of a target task, determining whether a user stack corresponding to the target task has write permission;

[0006] When it is determined that the user stack does not have write permission, a mapping relationship between a virtual address of the user program and a physical address of the user program is established;

[0007] Based on the mapping relationship between the virtual address of the user program and the physical address of the user program, the target task is stored in a corresponding preset storage space, wherein the user program is used to trigger the target task.

[0008] Optionally, the establishing a mapping relationship between the virtual address of the user program and the physical address of the user program includes:

[0009] The kernel triggers a request message for establishing an address mapping relationship for the user stack;

[0010] Based on the user management process responding to the request information, a mapping relationship between the virtual address of the user program and the physical address of the user program is established;

[0011] A calling page of a preset storage space is allocated to the user stack based on the user management process, and the calling page records a mapping relationship between a virtual address of the user program and a physical address of the user program.

[0012] Optionally, the method further comprises:

[0013] Query whether there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel;

[0014] Determining whether the user stack corresponding to the target task has write permission includes:

[0015] In the case where it is determined that there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, it is determined whether the user stack has the write permission.

[0016] Optionally, after querying whether there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, the method further includes:

[0017] When it is determined that there is no mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, a mapping relationship between the virtual address of the user program and the physical address of the user program is established.

[0018] Optionally, based on a mapping relationship between a virtual address of the user program and a physical address of the user program, storing the target task in a corresponding preset storage space includes:

[0019] Based on the mapping relationship between the virtual address of the user program and the physical address of the user program, storing the previous task of the target task at the storage address corresponding to the calling page of the preset storage space;

[0020] After the target task is executed, the previous task of the target task stored in the storage address corresponding to the calling page of the preset storage space is restored.

[0021] Optionally, after determining whether the user stack corresponding to the target task has write permission, the method further includes:

[0022] When it is determined that the user stack has the write permission, the target task is stored in a corresponding preset storage space based on an established mapping relationship between a virtual address of the user program and a physical address of the user program.

[0023] According to a second aspect of the present disclosure, there is provided a signal processing device, comprising:

[0024] A determination unit, configured to determine, in response to a processing signal of a target task, whether a user stack corresponding to the target task has write permission;

[0025] An establishing unit, configured to establish a mapping relationship between a virtual address of a user program and a physical address of the user program when it is determined that the user stack does not have write permission;

[0026] A storage unit is used to store the target task in a corresponding preset storage space based on a mapping relationship between the virtual address of the user program and the physical address of the user program, wherein the user program is used to trigger the target task.

[0027] Optionally, the establishing unit includes:

[0028] A trigger module, used for triggering the kernel to establish a request information for the address mapping relationship of the user stack;

[0029] An establishing module, used to respond to the request information based on the user management process, and establish a mapping relationship between the virtual address of the user program and the physical address of the user program;

[0030] An allocation module is used to allocate a call page of a preset storage space for the user stack based on the user management process, wherein the call page records a mapping relationship between a virtual address of the user program and a physical address of the user program.

[0031] Optionally, the device further comprises:

[0032] A query unit, used for querying whether there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel;

[0033] The determining unit is further configured to determine whether the user stack has the write permission when it is determined that there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel.

[0034] Optionally, the establishing unit is also used to establish a mapping relationship between the virtual address of the user program and the physical address of the user program after querying whether there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, and when it is determined that there is no mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel.

[0035] Optionally, the storage unit is further used to store the previous task of the target task at a storage address corresponding to a calling page of the preset storage space based on a mapping relationship between the virtual address of the user program and the physical address of the user program;

[0036] After the target task is executed, the previous task of the target task stored in the storage address corresponding to the calling page of the preset storage space is restored.

[0037] Optionally, after determining whether the user stack corresponding to the target task has write permission, the storage unit stores the target task in a corresponding preset storage space based on an established mapping relationship between the virtual address of the user program and the physical address of the user program if it is determined that the user stack has write permission.

[0038] According to a third aspect of the present disclosure, there is provided an electronic device, including:

[0039] at least one processor; and

[0040] a memory communicatively connected to the at least one processor; wherein,

[0041] The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method described in the first aspect.

[0042] According to a fourth aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable the computer to execute the method described in the first aspect.

[0043] According to a fifth aspect of the present disclosure, a computer program product is provided, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements the method as described in the first aspect above.

[0044] The signal processing method and device, electronic device and storage medium provided by the present disclosure, in response to the processing signal of the target task, determine whether the user stack corresponding to the target task has write permission, and when it is determined that the user stack does not have write permission, establish a mapping relationship between the virtual address of the user program and the physical address of the user program, and store the target task in the corresponding preset storage space based on the mapping relationship between the virtual address of the user program and the physical address of the user program, wherein the user program is used to trigger the target task. Compared with the related art, the embodiment of the present disclosure determines whether the user stack has write permission through a process of preprocessing the user stack in advance, and maps the virtual address of the user program in the user stack area with the physical address of the user program, thereby reducing the number of times the IPC is sent to the user management process, reducing time consumption and improving the performance of the operating system.

[0045] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present application, nor is it intended to limit the scope of the present application. Other features of the present application will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] The accompanying drawings are used to better understand the present solution and do not constitute a limitation of the present disclosure.

[0047] Figure 1 A flowchart of a signal processing method provided by an embodiment of the present disclosure;

[0048] Figure 2 A schematic diagram of the structure of a signal processing device provided by an embodiment of the present disclosure;

[0049] Figure 3 A schematic diagram of the structure of another signal processing device provided by an embodiment of the present disclosure;

[0050] Figure 4 A schematic block diagram of an electronic device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0051] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.

[0052] The signal processing method and device, electronic device, and storage medium according to the embodiments of the present disclosure are described below with reference to the accompanying drawings.

[0053] Figure 1 A flowchart of a signal processing method provided by an embodiment of the present disclosure.

[0054] like Figure 1 As shown, the method comprises the following steps:

[0055] Step 101 , in response to a processing signal of a target task, determining whether a user stack corresponding to the processing signal of the target task has write permission.

[0056] The embodiments of the present disclosure may be used for signal processing in an operating system, and the embodiments of the present disclosure are not limited to the types of operating systems and signals.

[0057] In the disclosed embodiment, the system kernel responds to the processing signal of the target task. After identifying the processing signal of the target task, the system kernel determines whether the user stack corresponding to the processing signal of the target task has write permission. Among them, the determination of whether the user stack has write permission is made through address mapping. When the user stack has an address mapping, it is determined that the user stack has write permission. When the user stack does not have an address mapping, it is determined that the user stack does not have write permission. It should be noted here that the address mapping refers to the conversion from memory to hardware, that is, the address mapping relationship between virtual addresses and physical addresses.

[0058] Regarding the judgment of whether the user stack has an address mapping, the mapping relationship table stored in the kernel can be used to query whether the user stack has an address mapping. Regarding the mapping relationship table, for details, please refer to the detailed description in the relevant technology, so it will not be repeated here.

[0059] Step 102: When it is determined that the user stack does not have write permission, a mapping relationship between the virtual address of the user program and the physical address of the user program is established.

[0060] In the disclosed embodiment, after judging whether the user stack has the write permission, when it is determined that the user stack has the write permission, the signal processing process is directly entered to process the processing signal of the target task; when it is determined that the user stack does not have the write permission, the kernel triggers the establishment of request information for the address mapping relationship for the user stack, so as to establish the mapping relationship between the virtual address of the user program and the physical address of the user program, so as to have the write permission for the user stack.

[0061] The system kernel establishes a mapping relationship between the virtual address of the user program and the physical address of the user program. For details about the mapping relationship between the virtual address of the user program and the physical address of the user program, please refer to the detailed description in the relevant technology, so it will not be repeated here.

[0062] Step 103: based on the mapping relationship between the virtual address of the user program and the physical address of the user program, store the target task in a corresponding preset storage space, wherein the user program is used to trigger the target task.

[0063] When the kernel executes the target task, it needs to save the previous task of the target task on the spot, that is, store the mapping relationship between the virtual address of the user program and the physical address of the user program in the corresponding preset storage space in the user stack. When the target task is completed, restore the scene from the preset storage space and continue to execute the previous task of the target task, and so on.

[0064] The signal processing method provided by the present disclosure determines, in response to the processing signal of the target task, whether the user stack corresponding to the target task has write permission, and when it is determined that the user stack does not have write permission, establishes a mapping relationship between the virtual address of the user program and the physical address of the user program, and stores the target task in the corresponding preset storage space based on the mapping relationship between the virtual address of the user program and the physical address of the user program, wherein the user program is used to trigger the target task. The embodiment of the present disclosure determines whether the user stack has write permission through a process of preprocessing the user stack in advance, and maps the virtual address of the user program in the user stack area with the physical address of the user program, thereby reducing the number of times the IPC is sent to the user management process, reducing time consumption and improving operating system performance.

[0065] In one implementable manner of the disclosed embodiment, as a refinement of the above-mentioned step 102, when establishing a mapping relationship between the virtual address of the user program and the physical address of the user program, it can be implemented in but not limited to the following manner: the kernel triggers request information for establishing an address mapping relationship for the user stack, and based on the user management process, responds to the request information to establish a mapping relationship between the virtual address of the user program and the physical address of the user program; based on the management process, a page of a preset storage space is allocated to the user stack.

[0066] In one possible implementation of the disclosed embodiment, as a refinement of the request information triggered by the kernel to establish the address mapping relationship for the user stack, the request information triggered by the kernel to establish the address mapping relationship for the user stack can be implemented in, but not limited to, the following manner: in the case where it is determined that there is no mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, the request information for establishing the address mapping relationship for the user stack is triggered. Wherein, when it is determined that the user stack does not have the write permission, it is determined that there is no mapping relationship between the user stack and the physical address of the kernel.

[0067] In the embodiment of the present disclosure, it is determined that the user stack does not have write permission, and it is determined that there is no address mapping in the user stack. At this time, the system kernel will actively simulate a data abnormal process, that is, send an IPC to the user management process. After the user management process receives this IPC, it will establish a mapping relationship between the virtual address of the user program and the physical address of the user program. It should be noted here that when establishing the mapping relationship, the user management process needs to allocate a call page of the preset storage space for the user stack, wherein the size of the page of the preset storage space is a custom setting, and the size of the page of the preset storage space can be set according to actual tests and actual application conditions. For example: in some tests, mapping 2 pages (size of 8KB bytes) is more appropriate, that is, it does not waste user memory, and it can also meet the user's requirement of not sending IPC multiple times during signal processing. Specifically, the size of the page of the preset storage space is determined according to actual tests and actual applications, and the embodiment of the present disclosure does not limit it.

[0068] In one implementable manner of the disclosed embodiment, it is queried whether there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, and if it is determined that there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, it is determined whether the user stack has the write permission. The system kernel queries the address mapping between the virtual address of the user program and the physical address of the user program of the kernel, and determines whether there is a corresponding physical address of the user program of the kernel for the virtual address of the user program through address mapping, and if it is determined that there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, it is determined whether the user stack has the write permission; if it is determined that there is no mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel is established.

[0069] Whether the user stack has the write permission is associated with whether the user stack has the address mapping. When the user stack does not have the write permission, the user stack can be enabled to have the write permission by establishing the address mapping of the user stack. When it is determined that the user stack has the write permission, based on the established mapping relationship between the virtual address of the user program and the physical address of the user program, the target task is stored in the corresponding preset storage space.

[0070] In the related art, when signal processing is performed in the operating system, IPC is sent to the user management process only when data is abnormal. At the same time, when sending IPC to the user management process, it is necessary to exit the signal processing process. After completing the sending of IPC, it is necessary to enter the signal processing process again. Each time the signal processing process is entered and exited, on-site protection and recovery are required, which increases the resource consumption of the operating system. Therefore, in an implementable manner of the embodiment of the present disclosure, the target task is stored in a corresponding preset storage space based on the mapping relationship between the virtual address of the user program and the physical address of the user program. The following method may also be used but is not limited to: based on the mapping relationship between the virtual address of the user program and the physical address of the user program, the previous task of the target task is stored in the storage address corresponding to the calling page of the preset storage space for on-site protection; after the target task is executed, the previous task of the target task stored in the storage address corresponding to the calling page of the preset storage space is restored on-site. By protecting and restoring the storage address corresponding to the calling page of the previous task stored in the preset storage space, it is avoided that an on-site protection and restoration is required every time the signal processing process is entered and exited, thereby reducing the resource consumption of the operating system.

[0071] In summary, the embodiments of the present disclosure can achieve the following effects:

[0072] 1. Through the process of pre-processing the user stack in advance, it is determined whether the user stack has write permission, and the user stack area is mapped, which reduces the number of times IPC is sent to the user management process, reduces time consumption and improves operating system performance.

[0073] 2. By protecting and restoring the storage address corresponding to the page stored in the preset storage space of the previous task, it is avoided that an on-site protection and restoration is required every time the signal processing process is entered and exited, thereby reducing the resource consumption of the operating system.

[0074] Corresponding to the above-mentioned signal processing method, the present invention also provides a signal processing device. Since the device embodiment of the present invention corresponds to the above-mentioned method embodiment, details not disclosed in the device embodiment can be referred to the above-mentioned method embodiment, and will not be repeated in the present invention.

[0075] Figure 2 A schematic diagram of a signal processing device provided by an embodiment of the present disclosure is shown in FIG. Figure 2 As shown, including:

[0076] A determination unit 21, configured to determine, in response to a processing signal of a target task, whether a user stack corresponding to the target task has write permission;

[0077] An establishing unit 22, configured to establish a mapping relationship between a virtual address of a user program and a physical address of the user program when it is determined that the user stack does not have write permission;

[0078] The storage unit 23 is used to store the target task in a corresponding preset storage space based on a mapping relationship between the virtual address of the user program and the physical address of the user program, wherein the user program is used to trigger the target task.

[0079] The signal processing device provided by the present disclosure determines, in response to the processing signal of the target task, whether the user stack corresponding to the target task has write permission, and in the case of determining that the user stack does not have write permission, establishes a mapping relationship between the virtual address of the user program and the physical address of the user program, and stores the target task in the corresponding preset storage space based on the mapping relationship between the virtual address of the user program and the physical address of the user program, wherein the user program is used to trigger the target task. The embodiment of the present disclosure determines whether the user stack has write permission through a process of preprocessing the user stack in advance, and maps the virtual address of the user program in the user stack area with the physical address of the user program, thereby reducing the number of times the IPC is sent to the user management process, reducing time consumption and improving the performance of the operating system.

[0080] Furthermore, in a possible implementation of this embodiment, Figure 3 As shown, the establishing unit 22 includes:

[0081] A trigger module 221, configured to trigger, by the kernel, request information for establishing an address mapping relationship for the user stack;

[0082] An establishing module 222, used to respond to the request information based on the user management process and establish a mapping relationship between the virtual address of the user program and the physical address of the user program;

[0083] The allocation module 223 is used to allocate a call page of a preset storage space for the user stack based on the user management process, and the call page records the mapping relationship between the virtual address of the user program and the physical address of the user program.

[0084] Furthermore, in a possible implementation of this embodiment, Figure 3 As shown, the device also includes:

[0085] A query unit 24, used for querying whether there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel;

[0086] The determining unit 21 is further configured to determine whether the user stack has the write permission when it is determined that there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel.

[0087] Furthermore, in a possible implementation of this embodiment, Figure 3 As shown, the establishing unit 22 is also used to establish a mapping relationship between the virtual address of the user program and the physical address of the user program after querying whether there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, and when it is determined that there is no mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel.

[0088] Furthermore, in a possible implementation of this embodiment, Figure 3 As shown, the storage unit 23 is further used to store the previous task of the target task at the storage address corresponding to the calling page of the preset storage space based on the mapping relationship between the virtual address of the user program and the physical address of the user program;

[0089] After the target task is executed, the previous task of the target task stored in the storage address corresponding to the calling page of the preset storage space is restored.

[0090] Optionally, after determining whether the user stack corresponding to the target task has write permission, the storage unit 23 stores the target task in a corresponding preset storage space based on an established mapping relationship between the virtual address of the user program and the physical address of the user program if it is determined that the user stack has write permission.

[0091] It should be noted that the above explanation of the method embodiment is also applicable to the device of the embodiment of the present disclosure, and the principle is the same, which is no longer limited in the embodiment of the present disclosure.

[0092] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.

[0093] Figure 4A schematic block diagram of an example electronic device 400 that can be used to implement an embodiment of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein.

[0094] like Figure 4 As shown, the device 400 includes a computing unit 401, which can perform various appropriate actions and processes according to a computer program stored in a ROM (Read-Only Memory) 402 or a computer program loaded from a storage unit 408 to a RAM (Random Access Memory) 403. In the RAM 403, various programs and data required for the operation of the device 400 can also be stored. The computing unit 401, the ROM 402, and the RAM 403 are connected to each other via a bus 404. An I / O (Input / Output) interface 405 is also connected to the bus 404.

[0095] A number of components in the device 400 are connected to the I / O interface 405, including: an input unit 406, such as a keyboard, a mouse, etc.; an output unit 407, such as various types of displays, speakers, etc.; a storage unit 408, such as a disk, an optical disk, etc.; and a communication unit 409, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 409 allows the device 400 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0096] The computing unit 401 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 401 include, but are not limited to, a CPU (Central Processing Unit), a GPU (Graphic Processing Units), various dedicated AI (Artificial Intelligence) computing chips, various computing units running machine learning model algorithms, a DSP (Digital Signal Processor), and any appropriate processor, controller, microcontroller, etc. The computing unit 401 performs the various methods and processes described above, such as a signal processing method. For example, in some embodiments, the signal processing method may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 408. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 400 via the ROM 402 and / or the communication unit 409. When the computer program is loaded into the RAM 403 and executed by the computing unit 401, one or more steps of the method described above may be performed. Alternatively, in other embodiments, the computing unit 401 may be configured to execute the aforementioned signal processing method in any other appropriate manner (for example, by means of firmware).

[0097] Various embodiments of the systems and techniques described above herein may be implemented in digital electronic circuit systems, integrated circuit systems, FPGAs (Field Programmable Gate Arrays), ASICs (Application-Specific Integrated Circuits), ASSPs (Application Specific Standard Products), SOCs (System On Chips), CPLDs (Complex Programmable Logic Devices), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include: being implemented in one or more computer programs that may be executed and / or interpreted on a programmable system including at least one programmable processor that may be a dedicated or general-purpose programmable processor that may receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0098] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0099] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any suitable combination of the foregoing. More specific examples of machine-readable storage media may include electrical connections based on one or more lines, portable computer disks, hard disks, RAM, ROM, EPROM (Electrically Programmable Read-Only-Memory) or flash memory, optical fiber, CD-ROM (Compact Disc Read-Only Memory), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0100] To provide interaction with a user, the systems and techniques described herein 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 the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0101] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: LAN (Local Area Network), WAN (Wide Area Network), the Internet, and blockchain networks.

[0102] A computer system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The relationship between the client and the server is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services ("Virtual Private Server", or "VPS" for short). The server may also be a server of a distributed system, or a server combined with a blockchain.

[0103] It should be noted that artificial intelligence is a discipline that studies how computers can simulate certain human thought processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.), and includes both hardware-level and software-level technologies. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, and big data processing; artificial intelligence software technologies mainly include computer vision technology, speech recognition technology, natural language processing technology, as well as machine learning / deep learning, big data processing technology, knowledge graph technology, and other major directions.

[0104] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this document does not limit this.

[0105] The above specific implementations do not constitute a limitation on the protection scope of the present disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present disclosure shall be included in the protection scope of the present disclosure.

Claims

1. A signal processing method, characterized in that: include: In response to a processing signal of a target task, determining whether a user stack corresponding to the target task has write permission; When it is determined that the user stack does not have write permission, a mapping relationship between a virtual address of the user program and a physical address of the user program is established; Based on the mapping relationship between the virtual address of the user program and the physical address of the user program, the target task is stored in a corresponding preset storage space, wherein the user program is used to trigger the target task.

2. The method according to claim 1, characterized in that The step of establishing a mapping relationship between a virtual address of a user program and a physical address of the user program includes: The kernel triggers a request message for establishing an address mapping relationship for the user stack; Based on the user management process responding to the request information, a mapping relationship between the virtual address of the user program and the physical address of the user program is established; A calling page of a preset storage space is allocated to the user stack based on the user management process, and the calling page records a mapping relationship between a virtual address of the user program and a physical address of the user program.

3. The method according to claim 1, characterized in that The method further comprises: Query whether there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel; Determining whether the user stack corresponding to the target task has write permission includes: In the case where it is determined that there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, it is determined whether the user stack has the write permission.

4. The method according to claim 3, characterized in that: After querying whether there is a mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, the method further includes: When it is determined that there is no mapping relationship between the virtual address of the user program and the physical address of the user program of the kernel, a mapping relationship between the virtual address of the user program and the physical address of the user program is established.

5. The method according to claim 2, characterized in that: Based on the mapping relationship between the virtual address of the user program and the physical address of the user program, storing the target task in the corresponding preset storage space includes: Based on the mapping relationship between the virtual address of the user program and the physical address of the user program, storing the previous task of the target task at the storage address corresponding to the calling page of the preset storage space; After the target task is executed, the previous task of the target task stored in the storage address corresponding to the calling page of the preset storage space is restored.

6. The method according to any one of claims 1 to 5, characterized in that After determining whether the user stack corresponding to the target task has write permission, the method further includes: When it is determined that the user stack has the write permission, the target task is stored in a corresponding preset storage space based on an established mapping relationship between a virtual address of the user program and a physical address of the user program.

7. A signal processing device, characterized in that: include: A determination unit, configured to determine, in response to a processing signal of a target task, whether a user stack corresponding to the target task has write permission; An establishing unit, configured to establish a mapping relationship between a virtual address of a user program and a physical address of the user program when it is determined that the user stack does not have write permission; A storage unit is used to store the target task in a corresponding preset storage space based on a mapping relationship between the virtual address of the user program and the physical address of the user program, wherein the user program is used to trigger the target task.

8. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 6.

9. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-6.

10. A computer program product, characterized in that The invention comprises a computer program which, when executed by a processor, implements the method according to any one of claims 1 to 6.