CN111381996B - Memory exception handling method and device - Google Patents

Memory exception handling method and device Download PDF

Info

Publication number
CN111381996B
CN111381996B CN202010181977.3A CN202010181977A CN111381996B CN 111381996 B CN111381996 B CN 111381996B CN 202010181977 A CN202010181977 A CN 202010181977A CN 111381996 B CN111381996 B CN 111381996B
Authority
CN
China
Prior art keywords
memory
target process
application
abnormality
electronic device
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
CN202010181977.3A
Other languages
Chinese (zh)
Other versions
CN111381996A (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.)
Oppo Chongqing Intelligent Technology Co Ltd
Original Assignee
Oppo Chongqing Intelligent 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 Oppo Chongqing Intelligent Technology Co Ltd filed Critical Oppo Chongqing Intelligent Technology Co Ltd
Priority to CN202010181977.3A priority Critical patent/CN111381996B/en
Publication of CN111381996A publication Critical patent/CN111381996A/en
Application granted granted Critical
Publication of CN111381996B publication Critical patent/CN111381996B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The application discloses a memory exception handling method and device, which are applied to electronic equipment, wherein the method comprises the following steps: if the memory abnormality is detected, determining a target process causing the memory abnormality, wherein the memory abnormality comprises a memory abnormality occurring in a kernel mode or a memory abnormality occurring in an application program framework layer; removing the target process from the run queue; restarting the target process. By adopting the embodiment of the application, the abnormal recovery time can be shortened, and the perception of the user on the abnormality is further reduced.

Description

Memory exception handling method and device
Technical Field
The present disclosure relates to the field of electronic technologies, and in particular, to a method and an apparatus for processing memory exception.
Background
Along with the popularization and application of electronic equipment (such as mobile phones, tablet computers and the like), the electronic equipment can support more and more applications, has more and more functions, and develops towards diversification and individuation, so that the electronic equipment becomes an indispensable electronic product in the life of users. During the use of the electronic equipment, memory abnormality may occur, so that the abnormality of the electronic equipment is caused, and the use of the electronic equipment is finally affected.
Disclosure of Invention
The embodiment of the application provides a memory exception handling method and device.
In a first aspect, an embodiment of the present application provides a memory exception handling method, applied to an electronic device, where the method includes:
if the memory abnormality is detected, determining a target process causing the memory abnormality, wherein the memory abnormality comprises a memory abnormality occurring in a kernel mode or a memory abnormality occurring in an application program framework layer;
removing the target process from the run queue;
restarting the target process.
In a second aspect, an embodiment of the present application provides a memory exception handling apparatus, applied to an electronic device, where the apparatus includes:
the process determining unit is used for determining a target process causing the memory abnormality if the memory abnormality is detected, wherein the memory abnormality comprises the memory abnormality occurring in a kernel mode or the memory abnormality occurring in an application program framework layer;
a process removing unit, configured to remove the target process from the running queue;
and the process restarting unit is used for restarting the target process.
In a third aspect, an embodiment of the present application provides an electronic device, including a processor, a memory, a communication interface, and one or more programs, where the one or more programs are stored in the memory and configured to be executed by the processor, the programs including instructions for performing steps in any of the methods of the first aspect of the embodiments of the present application.
In a fourth aspect, embodiments of the present application provide a computer-readable storage medium, where the computer-readable storage medium stores a computer program for electronic data exchange, where the computer program causes a computer to perform some or all of the steps as described in any of the methods of the first aspect of the embodiments of the present application.
In a fifth aspect, embodiments of the present application provide a computer program product, wherein the computer program product comprises a non-transitory computer readable storage medium storing a computer program operable to cause a computer to perform some or all of the steps described in any of the methods of the first aspect of embodiments of the present application. The computer program product may be a software installation package.
It can be seen that in this embodiment of the present application, if the electronic device detects a memory abnormality, the target process that causes the memory abnormality is determined, then the target process is removed from the running queue, and finally the target process is started, so that the memory abnormality is solved, in addition, the current memory abnormality occurring in the kernel mode or the memory abnormality occurring in the application framework layer is solved, and the common practice is to restart the electronic device or restart the application framework layer, and the present application is to restart the target process that causes the memory abnormality, thereby shortening the abnormality recovery time, and further reducing the user perception of the abnormality.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a schematic structural diagram of an electronic device according to an embodiment of the present application;
fig. 2 is a schematic software structure of an electronic device according to an embodiment of the present application;
fig. 3 is a schematic software structure of another electronic device according to an embodiment of the present application;
FIG. 4 is a flowchart of a memory exception handling method according to an embodiment of the present disclosure;
FIG. 5 is a schematic diagram of a conventional processing method for memory exception in a kernel state according to an embodiment of the present application;
FIG. 6 is a schematic diagram of a method for processing a memory exception in a kernel state according to an embodiment of the present application;
FIG. 7 is a schematic diagram of a conventional processing method for memory exception in an application framework layer according to an embodiment of the present application;
FIG. 8 is a schematic diagram of a method for handling memory exceptions at an application framework layer according to an embodiment of the present disclosure;
fig. 9 is a schematic diagram of a result of a memory exception handling apparatus according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be described below with reference to the accompanying drawings.
For a better understanding of aspects of embodiments of the present application, related terms and concepts that may be related to embodiments of the present application are described below.
1) The electronic device may be a portable electronic device that also contains other functions such as personal digital assistant and/or music player functions, such as a cell phone, tablet computer, wearable electronic device with wireless communication capabilities (e.g., a smart watch), etc. Exemplary embodiments of portable electronic devices include, but are not limited to, portable electronic devices that are equipped with IOS systems, android systems, microsoft systems, or other operating systems. The portable electronic device may also be other portable electronic devices such as a Laptop computer (Laptop) or the like. It should also be appreciated that in other embodiments, the electronic device described above may not be a portable electronic device, but rather a desktop computer.
2) The operating system requires two central processor (central processing unit, CPU) states, one being kernel mode: running an operating system program, the other is a user mode: and running the user program. The two operating levels of the operating system in kernel mode and user mode may be referred to as operating in user mode when the program is running at the level 3 privilege level and in kernel mode when the program is running at the level 0 privilege level.
3) The kernel address space and the user address space are address space ranges which can be used by a process in a user mode and a kernel mode respectively, are virtual spaces mapped by physical memories, can only access the user address space when the process runs in the user mode, and can only access the kernel address space when the process runs in the kernel mode.
4) A Process is a running activity of a program in an electronic device on a certain data set, and is a basic unit of resource allocation and scheduling by a system.
5) The run queues, which may be CPU run queues, are organized by processes in a ready state and an executing state.
By way of example, fig. 1 shows a schematic diagram of an electronic device 100. Electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (universal serial bus, USB) interface 130, a charge management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a compass 190, a motor 191, an indicator 192, a camera 193, a display 194, a subscriber identity module (subscriber identification module, SIM) card interface 195, and the like.
It is to be understood that the structure illustrated in the embodiments of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, electronic device 100 may include more or fewer components than shown, or certain components may be combined, or certain components may be split, or different arrangements of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
The processor 110 may include one or more processing units, such as: the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), a controller, a video codec, a digital signal processor (digital signal processor, DSP), a baseband processor, and/or a neural network processor (neural-network processing unit, NPU), etc. Wherein the different processing units may be separate components or may be integrated in one or more processors. In some embodiments, the electronic device 101 may also include one or more processors 110. The controller can generate operation control signals according to the instruction operation codes and the time sequence signals to finish the control of instruction fetching and instruction execution. In other embodiments, memory may also be provided in the processor 110 for storing instructions and data. Illustratively, the memory in the processor 110 may be a cache memory. The memory may hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to reuse the instruction or data, it can be called directly from the memory. This avoids repeated accesses and reduces the latency of the processor 110, thereby improving the efficiency of the electronic device 101 in processing data or executing instructions.
In some embodiments, the processor 110 may include one or more interfaces. The interfaces may include inter-integrated circuit (inter-integrated circuit, I2C) interfaces, inter-integrated circuit audio (inter-integrated circuit sound, I2S) interfaces, pulse code modulation (pulse code modulation, PCM) interfaces, universal asynchronous receiver transmitter (universal asynchronous receiver/transmitter, UART) interfaces, mobile industry processor interfaces (mobile industry processor interface, MIPI), general-purpose input/output (GPIO) interfaces, SIM card interfaces, and/or USB interfaces, among others. The USB interface 130 is an interface conforming to the USB standard, and may specifically be a Mini USB interface, a Micro USB interface, a USB Type C interface, or the like. The USB interface 130 may be used to connect a charger to charge the electronic device 101, or may be used to transfer data between the electronic device 101 and a peripheral device. The USB interface 130 may also be used to connect headphones through which audio is played.
It should be understood that the interfacing relationship between the modules illustrated in the embodiments of the present application is only illustrative, and does not limit the structure of the electronic device 100. In other embodiments of the present application, the electronic device 100 may also use different interfacing manners, or a combination of multiple interfacing manners in the foregoing embodiments.
The charge management module 140 is configured to receive a charge input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charge management module 140 may receive a charging input of a wired charger through the USB interface 130. In some wireless charging embodiments, the charge management module 140 may receive wireless charging input through a wireless charging coil of the electronic device 100. The charging management module 140 may also supply power to the electronic device through the power management module 141 while charging the battery 142.
The power management module 141 is used for connecting the battery 142, and the charge management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and/or the charge management module 140 and provides power to the processor 110, the internal memory 121, the external memory, the display 194, the camera 193, the wireless communication module 160, and the like. The power management module 141 may also be configured to monitor battery capacity, battery cycle times, battery health (leakage, impedance), and other parameters. In other embodiments, the power management module 141 may also be provided in the processor 110. In other embodiments, the power management module 141 and the charge management module 140 may be disposed in the same device.
The wireless communication function of the electronic device 100 may be implemented by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, a modem processor, a baseband processor, and the like.
The antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in the electronic device 100 may be used to cover a single or multiple communication bands. Different antennas may also be multiplexed to improve the utilization of the antennas. For example: the antenna 1 may be multiplexed into a diversity antenna of a wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
The mobile communication module 150 may provide a solution for wireless communication including 2G/3G/4G/5G, etc., applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (low noise amplifier, LNA), etc. The mobile communication module 150 may receive electromagnetic waves from the antenna 1, perform processes such as filtering, amplifying, and the like on the received electromagnetic waves, and transmit the processed electromagnetic waves to the modem processor for demodulation. The mobile communication module 150 can amplify the signal modulated by the modem processor, and convert the signal into electromagnetic waves through the antenna 1 to radiate. In some embodiments, at least some of the functional modules of the mobile communication module 150 may be disposed in the processor 110. In some embodiments, at least some of the functional modules of the mobile communication module 150 may be provided in the same device as at least some of the modules of the processor 110.
The wireless communication module 160 may provide solutions for wireless communication including wireless local area network (wireless local area networks, WLAN) (e.g., wireless fidelity (wireless fidelity, wi-Fi) network), bluetooth (BT), global navigation satellite system (global navigation satellite system, GNSS), frequency modulation (frequency modulation, FM), near field wireless communication technology (near field communication, NFC), infrared technology (IR), etc., applied to the electronic device 100. The wireless communication module 160 may be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, modulates the electromagnetic wave signals, filters the electromagnetic wave signals, and transmits the processed signals to the processor 110. The wireless communication module 160 may also receive a signal to be transmitted from the processor 110, frequency modulate it, amplify it, and convert it to electromagnetic waves for radiation via the antenna 2.
The electronic device 100 implements display functions through a GPU, a display screen 194, an application processor, and the like. The GPU is a microprocessor for image processing, and is connected to the display 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 110 may include one or more GPUs that execute program instructions to generate or change display information.
The display screen 194 is used to display images, videos, and the like. The display 194 includes a display panel. The display panel may employ a liquid crystal display (liquid crystal display, LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED) or an active-matrix organic light-emitting diode (matrix organic light emitting diode), a flexible light-emitting diode (FLED), a mini light-emitting diode (mini light-emitting diode), microLed, micro-OLED, a quantum dot light-emitting diode (quantum dot light emitting diodes, QLED), or the like. In some embodiments, the electronic device 100 may include 1 or more display screens 194.
The electronic device 100 may implement a photographing function through an ISP, a camera 193, a video codec, a GPU, a display screen 194, an application processor, and the like.
The ISP is used to process data fed back by the camera 193. For example, when photographing, the shutter is opened, light is transmitted to the camera photosensitive element through the lens, the optical signal is converted into an electric signal, and the camera photosensitive element transmits the electric signal to the ISP for processing and is converted into an image visible to naked eyes. ISP can also perform algorithm optimization on noise, brightness and skin color of the image. The ISP can also optimize parameters such as exposure, color temperature, etc. of the photographed scene. In some embodiments, the ISP may be provided in the camera 193.
The camera 193 is used to capture still images or video. The object generates an optical image through the lens and projects the optical image onto the photosensitive element. The photosensitive element may be a charge coupled device (charge coupled device, CCD) or a Complementary Metal Oxide Semiconductor (CMOS) phototransistor. The photosensitive element converts the optical signal into an electrical signal, which is then transferred to the ISP to be converted into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV, or the like format. In some embodiments, electronic device 100 may include 1 or more cameras 193.
The digital signal processor is used for processing digital signals, and can process other digital signals besides digital image signals. For example, when the electronic device 100 selects a frequency bin, the digital signal processor is used to fourier transform the frequency bin energy, or the like.
Video codecs are used to compress or decompress digital video. The electronic device 100 may support one or more video codecs. In this way, the electronic device 100 may play or record video in a variety of encoding formats, such as: moving picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4, etc.
The NPU is a neural-network (NN) computing processor, and can rapidly process input information by referencing a biological neural network structure, for example, referencing a transmission mode between human brain neurons, and can also continuously perform self-learning. Applications such as intelligent awareness of the electronic device 100 may be implemented through the NPU, for example: image recognition, face recognition, speech recognition, text understanding, etc.
The external memory interface 120 may be used to connect an external memory card, such as a Micro SD card, to enable expansion of the memory capabilities of the electronic device 100. The external memory card communicates with the processor 110 through an external memory interface 120 to implement data storage functions. For example, files such as music, video, etc. are stored in an external memory card.
The internal memory 121 may be used to store one or more computer programs, including instructions. The processor 110 may cause the electronic device 101 to execute the methods of displaying page elements, and various applications, data processing, and the like provided in some embodiments of the present application by executing the above-described instructions stored in the internal memory 121. The internal memory 121 may include a storage program area and a storage data area. The storage program area can store an operating system; the storage program area may also store one or more applications (such as gallery, contacts, etc.), etc. The storage data area may store data created during use of the electronic device 101 (e.g., photos, contacts, etc.), and so on. In addition, the internal memory 121 may include high-speed random access memory, and may also include nonvolatile memory, such as one or more disk storage units, flash memory units, universal flash memory (universal flash storage, UFS), and the like. In some embodiments, processor 110 may cause electronic device 101 to perform the methods of displaying page elements provided in embodiments of the present application, as well as other applications and data processing, by executing instructions stored in internal memory 121, and/or instructions stored in a memory provided in processor 110. The electronic device 100 may implement audio functions through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, an application processor, and the like. Such as music playing, recording, etc.
The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, and the like.
The pressure sensor 180A is used for sensing a pressure signal, and can convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A may be disposed on the display screen 194. The pressure sensor 180A is of various types, such as a resistive pressure sensor, an inductive pressure sensor, a capacitive pressure sensor, and the like. The capacitive pressure sensor may be a capacitive pressure sensor comprising at least two parallel plates with conductive material. The capacitance between the electrodes changes when a force is applied to the pressure sensor 180A. The electronic device 100 determines the strength of the pressure from the change in capacitance. When a touch operation is applied to the display screen 194, the electronic apparatus 100 detects the touch operation intensity according to the pressure sensor 180A. The electronic device 100 may also calculate the location of the touch based on the detection signal of the pressure sensor 180A. In some embodiments, touch operations that act on the same touch location, but at different touch operation strengths, may correspond to different operation instructions. For example: and executing an instruction for checking the short message when the touch operation with the touch operation intensity smaller than the first pressure threshold acts on the short message application icon. And executing an instruction for newly creating the short message when the touch operation with the touch operation intensity being greater than or equal to the first pressure threshold acts on the short message application icon.
The gyro sensor 180B may be used to determine a motion gesture of the electronic device 100. In some embodiments, the angular velocity of electronic device 100 about three axes (i.e., X, Y and Z axis) may be determined by gyro sensor 180B. The gyro sensor 180B may be used for photographing anti-shake. For example, when the shutter is pressed, the gyro sensor 180B detects the shake angle of the electronic device 100, calculates the distance to be compensated by the lens module according to the angle, and makes the lens counteract the shake of the electronic device 100 through the reverse motion, so as to realize anti-shake. The gyro sensor 180B may also be used for navigating, somatosensory game scenes.
The acceleration sensor 180E may detect the magnitude of acceleration of the electronic device 100 in various directions (typically three axes). The magnitude and direction of gravity may be detected when the electronic device 100 is stationary. The electronic equipment gesture recognition method can also be used for recognizing the gesture of the electronic equipment, and is applied to horizontal and vertical screen switching, pedometers and other applications.
The ambient light sensor 180L is used to sense ambient light level. The electronic device 100 may adaptively adjust the brightness of the display 194 based on the perceived ambient light level. The ambient light sensor 180L may also be used to automatically adjust white balance when taking a photograph. Ambient light sensor 180L may also cooperate with proximity light sensor 180G to detect whether electronic device 100 is in a pocket to prevent false touches.
The fingerprint sensor 180H is used to collect a fingerprint. The electronic device 100 may utilize the collected fingerprint feature to unlock the fingerprint, access the application lock, photograph the fingerprint, answer the incoming call, etc.
The temperature sensor 180J is for detecting temperature. In some embodiments, the electronic device 100 performs a temperature processing strategy using the temperature detected by the temperature sensor 180J. For example, when the temperature reported by temperature sensor 180J exceeds a threshold, electronic device 100 performs a reduction in the performance of a processor located in the vicinity of temperature sensor 180J in order to reduce power consumption to implement thermal protection. In other embodiments, when the temperature is below another threshold, the electronic device 100 heats the battery 142 to avoid the low temperature causing the electronic device 100 to be abnormally shut down. In other embodiments, when the temperature is below a further threshold, the electronic device 100 performs boosting of the output voltage of the battery 142 to avoid abnormal shutdown caused by low temperatures.
The touch sensor 180K, also referred to as a "touch panel". The touch sensor 180K may be disposed on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, which is also called a "touch screen". The touch sensor 180K is for detecting a touch operation acting thereon or thereabout. The touch sensor may communicate the detected touch operation to the application processor to determine the touch event type. Visual output related to touch operations may be provided through the display 194. In other embodiments, the touch sensor 180K may also be disposed on the surface of the electronic device 100 at a different location than the display 194.
By way of example, fig. 2 shows a block diagram of the software architecture of the electronic device 100. The layered architecture divides the software into several layers, each with distinct roles and branches. The layers communicate with each other through a software interface. In some embodiments, the Android system is divided into four layers, from top to bottom, an application layer, an application framework layer, an Zhuoyun row (Android run) and system libraries, and a kernel layer, respectively. The application layer may include a series of application packages.
As shown in fig. 2, the application package may include applications for cameras, gallery, calendar, phone calls, maps, navigation, WLAN, bluetooth, music, video, short messages, etc.
The application framework layer provides an application programming interface (application programming interface, API) and programming framework for application programs of the application layer. The application framework layer includes a number of predefined functions.
As shown in FIG. 2, the application framework layer may include a window manager, a content provider, a view system, a telephony manager, a resource manager, a notification manager, and the like.
The window manager is used for managing window programs. The window manager can acquire the size of the display screen, judge whether a status bar exists, lock the screen, intercept the screen and the like.
The content provider is used to store and retrieve data and make such data accessible to applications. The data may include video, images, audio, calls made and received, browsing history and bookmarks, phonebooks, etc.
The view system includes visual controls, such as controls to display text, controls to display pictures, and the like. The view system may be used to build applications. The display interface may be composed of one or more views. For example, a display interface including a text message notification icon may include a view displaying text and a view displaying a picture.
The telephony manager is used to provide the communication functions of the electronic device 100. Such as the management of call status (including on, hung-up, etc.).
The resource manager provides various resources for the application program, such as localization strings, icons, pictures, layout files, video files, and the like.
The notification manager allows the application to display notification information in a status bar, can be used to communicate notification type messages, can automatically disappear after a short dwell, and does not require user interaction. Such as notification manager is used to inform that the download is complete, message alerts, etc. The notification manager may also be a notification in the form of a chart or scroll bar text that appears on the system top status bar, such as a notification of a background running application, or a notification that appears on the screen in the form of a dialog window. For example, a text message is prompted in a status bar, a prompt tone is emitted, the electronic device vibrates, and an indicator light blinks, etc.
Android run time includes a core library and virtual machines. Android run time is responsible for scheduling and management of the Android system.
The core library consists of two parts: one part is a function which needs to be called by java language, and the other part is a core library of android.
The application layer and the application framework layer run in a virtual machine. The virtual machine executes java files of the application program layer and the application program framework layer as binary files. The virtual machine is used for executing the functions of object life cycle management, stack management, thread management, security and exception management, garbage collection and the like.
The system library may include a plurality of functional modules. For example: surface manager (surface manager), media library (media library), three-dimensional graphics processing library (e.g., openGL ES), 2D graphics engine (e.g., SGL), etc.
The surface manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.
Media libraries support a variety of commonly used audio, video format playback and recording, still image files, and the like. The media library may support a variety of audio video encoding formats, such as: MPEG4, h.264, MP3, AAC, AMR, JPG, PNG, etc.
The three-dimensional graphic processing library is used for realizing three-dimensional graphic drawing, image rendering, synthesis, layer processing and the like. A step of
The 2D graphics engine is a drawing engine for 2D drawing.
The kernel layer is a layer between hardware and software. The inner core layer at least comprises a display driver, a camera driver, an audio driver and a sensor driver.
By way of example, fig. 3 shows a schematic diagram of an operating system of an electronic device. As shown, the operating system has CPU states, one kernel state, another user state, in which there is an application Framework layer (Framework) and an application layer, and a kernel layer (kernel) in the kernel state. The kernel layer is used to provide the underlying drivers for the various hardware associated with the system. The application framework layer is used to provide various application program interfaces (Application Programming Interface, APIs) that may be used by the application program when running. The application layer is used for storing various application programs.
The embodiments of the present application are described in detail below.
Referring to fig. 4, fig. 4 is a flow chart illustrating a memory exception handling method, which is applied to an electronic device, and as shown in the drawing, the memory exception handling method includes the following operations.
In step 401, if a memory exception is detected, determining a target process that causes the memory exception, where the memory exception includes a memory exception that occurs in a kernel mode or a memory exception that occurs in an application framework layer.
Step 402, removing the target process from the run queue.
Step 403, restarting the target process.
The specific implementation manner of restarting the target process is as follows: and starting the target process based on the target process ID.
The specific implementation manner of determining the target process causing the memory exception is as follows: when the memory is abnormal, an abnormal log is reported, and the abnormal log has an ID of the process causing the memory abnormality, so that the abnormal log can be used for determining what the process causing the memory abnormality is.
Currently, a memory exception occurs in the kernel state, and a typical processing method is to restart the electronic device, which takes about 10s to 20s, as shown in fig. 5. In this application, a memory exception occurs in the kernel state, and it takes about 1s to restart the target process that causes the memory exception, as shown in fig. 6.
At present, a memory exception occurs in an application framework layer, and a common processing method is to restart the application framework layer, which takes about 5s to 10s, as shown in fig. 7. In this application, a memory exception occurs in the application framework layer, and it takes about 1s to restart the target process that causes the memory exception, as shown in fig. 8.
It can be seen that in the embodiment of the application, the target process causing the memory abnormality is started, so that the problem of memory abnormality can be solved, the abnormality recovery time can be shortened, and the perception of the user on the abnormality is reduced.
In an implementation manner of the present application, the memory exception includes a memory exception that occurs in a kernel mode; before the target process is removed from the run queue, the method further comprises:
determining whether an address of a user space exists in a call stack of the target process;
the removing the target process from the run queue includes: and if the address of the user space exists in the call stack of the target process, removing the target process from the running queue.
Further, the method further comprises:
and restarting the electronic equipment if the address of the user space does not exist in the call stack of the target process.
Specifically, in the kernel state, if the address of the user space exists in the call stack of the target process, it indicates that the memory exception occurred in the kernel state is caused by direct call of the user state, in this case, the problem of the memory exception can be solved by directly restarting the target process, without restarting the electronic device, so as to shorten the exception recovery time.
In an implementation manner of the present application, the memory exception includes a memory exception that occurs in a kernel mode; before the determining the target process causing the memory exception, the method further comprises:
determining whether the electronic equipment is in a screen locking state currently and whether the electronic equipment has an event which is being processed currently;
restarting the electronic equipment if the electronic equipment is in a screen locking state currently and the electronic equipment does not have an event being processed currently;
the determining the target process causing the memory exception comprises the following steps: and if the electronic equipment is not in the screen locking state currently and/or the electronic equipment has an event which is being processed currently, determining a target process which causes the memory abnormality.
Specifically, when a memory abnormality occurs in the kernel state, if the electronic device is in a screen locking state and there is no event currently being processed, it is indicated that restarting the electronic device at this time does not affect the use of the electronic device by the user, so that in this case, the memory abnormality processing precision is preferentially considered, and then the electronic device is restarted, thereby improving the memory abnormality processing precision; if the electronic equipment is not in a screen locking state and a current event is processed, the fact that the electronic equipment is restarted at the moment can influence the use of the electronic equipment by a user is indicated, so that under the condition, the perception of the user to the abnormality is preferentially considered, the process causing the memory abnormality is restarted, the memory abnormality recovery time is locked, and the perception of the user to the abnormality is reduced.
In an implementation manner of the present application, the memory exception includes a memory exception occurring at an application framework layer; before the determining the target process causing the memory exception, the method further comprises:
determining whether the electronic equipment is in a screen locking state currently and whether the electronic equipment has an event which is being processed currently;
restarting the application framework layer if the electronic equipment is in a screen locking state currently and the electronic equipment does not have an event being processed currently;
the determining the target process causing the memory exception comprises the following steps: and if the electronic equipment is not in the screen locking state currently and/or the electronic equipment has an event which is being processed currently, determining a target process which causes the memory abnormality.
Specifically, when the memory abnormality occurs in the application program frame layer, if the electronic device is in a screen locking state and no event is currently being processed, the fact that the application program frame layer is restarted at the moment does not affect the use of the electronic device by a user is indicated, so that under the condition, the memory abnormality processing precision is preferentially considered, the application program frame layer is further used, and the memory abnormality processing precision is improved; if the electronic equipment is not in a screen locking state and a current event is processed, the fact that the application program framework layer is restarted at the moment can influence the user to use the electronic equipment is indicated, so that under the condition, the user's perception of the abnormality is preferentially considered, the process causing the memory abnormality is restarted, the memory abnormality recovery time is locked, and the user's perception of the abnormality is reduced.
In an implementation manner of the present application, before the restarting the target process, the method further includes:
acquiring a plurality of operation records of the target process, wherein each operation record comprises a process operation state and operation time;
determining the abnormal operation times of the target process and the abnormal operation time of each abnormal operation based on the operation records;
the starting the target process comprises the following steps: and if the abnormal operation times are smaller than or equal to a first threshold value and the time interval of any two adjacent abnormal operation times is larger than or equal to a second threshold value, starting the target process.
Further, the method further comprises:
and restarting the first application associated with the target process if the abnormal running times are greater than the first threshold value and/or the time interval between two adjacent abnormal running times is smaller than the second threshold value.
The obtaining the multiple running records of the target process includes: and acquiring a plurality of running records of the target process in a first period, wherein the ending time of the first period is the current time, and the duration of the first period is, for example, 30min, 1h, 2h, 5h, 1 day or other values.
The first threshold is, for example, 3 times, 5 times, 7 times, 10 times, or other values.
The second threshold is, for example, 10min, 13min, 20min, 25min, or other values.
The first application may be, for example, a game application, a shopping application, a video playing application, an audio playing application, a reading application, an instant messaging application, and so on.
Specifically, if a process always frequently generates an abnormality within a period of time, the application associated with the process is highly likely to generate an abnormality, and in this case, in order to avoid that the subsequent process also generates an abnormality in the running process, the application associated with the process needs to be restarted; if a process is not always abnormal frequently within a period of time, the surface is only that the process is abnormal, in which case, in order to reduce the perception of the abnormality by the user, the process only needs to be restarted.
In an implementation manner of the present application, after the restarting the first application associated with the target process, the method further includes:
and creating an abnormality repairing program of the first application, wherein the abnormality repairing program is used for repairing the abnormality when the first application is abnormal.
Optionally, the first application is a general application. A common application refers to an application that is started more than a third threshold value, for example, 10 times, 13 times, 15 times, 20 times, 30 times, or other values, in a second period, the end time of which is the current time, and the duration of which is, for example, 30min, 1h, 2h, 5h, 13h, 20h, 1 day, 5 days, or other values. Common applications are, for example, gaming applications, instant messaging applications, video playback applications, audio playback applications, and so forth.
Optionally, after the creating the exception repair program of the first application, the method further includes:
the abnormal repairing program ID and the process ID of the first application are stored in an associated mode to an error processing module, and the error processing module is located in a bottom layer module of a kernel;
blocking the exception repairing program in a kernel mode.
Wherein, the association of the saved exception fix ID and the process ID of the first application means: the exception handler ID, the process ID of the first application, and the correspondence relationship therebetween are saved.
Optionally, after blocking the exception repairing program in the kernel mode, the method further includes:
when the first application is abnormal, suspending the process of the first application;
Waking up an exception repair procedure of the first application;
repairing the abnormality of the first application by the abnormality repairing program;
if the repair fails, saving the key data of the first application through the abnormal repair program, and closing the first application;
and if the repair is successful, recovering the suspended process through the exception repair program.
Optionally, the method further comprises:
and if the exception repairing program is successful in repairing the exception generated by the first application, blocking the exception repairing program in a kernel mode.
The method for waking up the exception repairing program of the first application comprises the following steps: acquiring a process ID of the first application; searching a corresponding abnormal repair program ID in the error processing module according to the process ID of the first application; and waking up the abnormal recovery program according to the found abnormal recovery program ID.
The specific implementation mode of the wake-up exception recovery program is as follows: the exception handler may be awakened by invoking a wake function provided by the kernel, or by soft interrupt, or by other wake methods commonly used in operating systems, which are not limited herein.
The repairing the abnormality of the first application by the abnormality repairing program includes:
obtaining memory error information sent by the error processing module through the exception repairing program, wherein the memory error information comprises one of the following components: the memory address with error and the context information with error;
and repairing the generated error according to the memory error information through the abnormal repairing program.
The repairing, by the exception repairing program, the occurred error according to the memory error information, including: positioning error service data according to the memory address with error and each address segment range in the first application by the exception repairing program, and reloading the error service data by the exception repairing program;
or positioning the error business data according to the memory address with the error and each address segment range in the first application by the exception repairing program; and reallocating the memory area for the error business data through the abnormal repair program, and migrating the error business data to the newly allocated memory area.
The memory error information is pre-stored in the error processing module.
Wherein suspending the process of the first application comprises:
judging the memory address with error, and when the memory page corresponding to the memory address with error is the read-only page of the first application, performing error repair by a read-only repair method;
if the repair fails, suspending the process of the first application;
and suspending the process of the first application when the memory page corresponding to the memory address with the transmission error is not the read-only page of the first application.
It can be seen that in the embodiment of the present application, after the application is restarted, an exception repair program of the application is created, so that when an exception occurs in the subsequent application, the exception occurred in the application can be repaired, thereby improving the reliability of the application.
It will be appreciated that the electronic device, in order to achieve the above-described functions, includes corresponding hardware and/or software modules that perform the respective functions. The steps of an algorithm for each example described in connection with the embodiments disclosed herein may be embodied in hardware or a combination of hardware and computer software. Whether a function is implemented as hardware or computer software driven hardware depends upon the particular application and design constraints imposed on the solution. Those skilled in the art may implement the described functionality using different approaches for each particular application in conjunction with the embodiments, but such implementation is not to be considered as outside the scope of this application.
The present embodiment may divide the functional modules of the electronic device according to the above method example, for example, each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The integrated modules described above may be implemented in hardware. It should be noted that, in this embodiment, the division of the modules is schematic, only one logic function is divided, and another division manner may be implemented in actual implementation.
In the case of dividing each functional module by corresponding each function, fig. 9 shows a schematic diagram of a memory exception handling apparatus, as shown in fig. 9, the memory exception handling apparatus 900 is applied to an electronic device, and the memory exception handling apparatus 900 may include: a process determination unit 901, a process removal unit 902, and a process restart unit 903.
Wherein the process determination unit 901 may be used to support the electronic device to perform the above-described steps 401, etc., and/or other processes for the techniques described herein.
The process removal unit 902 may be used to support the electronic device to perform step 402, etc. described above, and/or other processes for the techniques described herein.
The process restart unit 903 may be used to support the electronic device to perform the above-described step 403, etc., and/or other processes for the techniques described herein.
It should be noted that, all relevant contents of each step related to the above method embodiment may be cited to the functional description of the corresponding functional module, which is not described herein.
The electronic device provided in this embodiment is configured to execute the memory exception handling method, so that the same effect as that of the implementation method can be achieved.
In case an integrated unit is employed, the electronic device may comprise a processing module, a storage module and a communication module. The processing module may be configured to control and manage actions of the electronic device, for example, may be configured to support the electronic device to perform the steps performed by the process determining unit 901, the process removing unit 902, and the process restarting unit 903. The memory module may be used to support the electronic device to execute stored program code, data, etc. And the communication module can be used for supporting the communication between the electronic device and other devices.
Wherein the processing module may be a processor or a controller. Which may implement or perform the various exemplary logic blocks, modules, and circuits described in connection with this disclosure. A processor may also be a combination that performs computing functions, e.g., including one or more microprocessors, digital signal processing (digital signal processing, DSP) and microprocessor combinations, and the like. The memory module may be a memory. The communication module can be a radio frequency circuit, a Bluetooth chip, a Wi-Fi chip and other equipment which interact with other electronic equipment.
In one embodiment, when the processing module is a processor and the storage module is a memory, the electronic device according to this embodiment may be a device having the structure shown in fig. 1.
The present embodiment also provides a computer storage medium having stored therein computer instructions which, when executed on an electronic device, cause the electronic device to perform the above-described related method steps to implement the operating method in the above-described embodiments.
The present embodiment also provides a computer program product, which when run on a computer, causes the computer to perform the above-mentioned related steps to implement the memory exception handling method in the above-mentioned embodiments.
In addition, embodiments of the present application also provide an apparatus, which may be specifically a chip, a component, or a module, and may include a processor and a memory connected to each other; the memory is used for storing computer executing instructions, and when the device runs, the processor can execute the computer executing instructions stored in the memory, so that the chip executes the memory exception handling method in each method embodiment.
The electronic device, the computer storage medium, the computer program product, or the chip provided in this embodiment are used to execute the corresponding methods provided above, so that the beneficial effects thereof can be referred to the beneficial effects in the corresponding methods provided above, and will not be described herein.
It will be appreciated by those skilled in the art that, for convenience and brevity of description, only the above-described division of the functional modules is illustrated, and in practical application, the above-described functional allocation may be performed by different functional modules according to needs, i.e. the internal structure of the apparatus is divided into different functional modules to perform all or part of the functions described above.
In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of modules or units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another apparatus, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and the parts shown as units may be one physical unit or a plurality of physical units, may be located in one place, or may be distributed in a plurality of different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in each embodiment of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a readable storage medium. Based on such understanding, the technical solution of the embodiments of the present application may be essentially or a part contributing to the prior art or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium, including several instructions to cause a device (may be a single-chip microcomputer, a chip or the like) or a processor (processor) to perform all or part of the steps of the methods of the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read Only Memory (ROM), a random access memory (random access memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The foregoing is merely specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily think about changes or substitutions within the technical scope of the present application, and the changes and substitutions are intended to be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (9)

1. A memory exception handling method, characterized in that an electronic device is applied, the method comprising:
if the memory abnormality is detected, determining a target process causing the memory abnormality, wherein the memory abnormality comprises a memory abnormality occurring in a kernel mode or a memory abnormality occurring in an application program framework layer;
removing the target process from the run queue;
restarting the target process;
wherein the memory exception comprises a memory exception occurring in a kernel mode; before the target process is removed from the run queue, the method further comprises:
determining whether an address of a user space exists in a call stack of the target process;
the removing the target process from the run queue includes: and if the address of the user space exists in the call stack of the target process, removing the target process from the running queue.
2. The method according to claim 1, wherein the method further comprises:
and restarting the electronic equipment if the address of the user space does not exist in the call stack of the target process.
3. The method of claim 1 or 2, wherein prior to determining the target process that caused the memory exception, the method further comprises:
determining whether the electronic equipment is in a screen locking state currently and whether the electronic equipment has an event which is being processed currently;
restarting the electronic equipment if the electronic equipment is in a screen locking state currently and the electronic equipment does not have an event being processed currently;
the determining the target process causing the memory exception comprises the following steps: and if the electronic equipment is not in the screen locking state currently and/or the electronic equipment has an event which is being processed currently, determining a target process which causes the memory abnormality.
4. The method of claim 1 or 2, wherein prior to the restarting the target process, the method further comprises:
acquiring a plurality of operation records of the target process, wherein each operation record comprises a process operation state and operation time;
Determining the abnormal operation times of the target process and the abnormal operation time of each abnormal operation based on the operation records;
the restarting the target process includes: and restarting the target process if the abnormal operation times are smaller than or equal to a first threshold value and the time interval of any two adjacent abnormal operation times is larger than or equal to a second threshold value.
5. The method according to claim 4, wherein the method further comprises:
and restarting the first application associated with the target process if the abnormal running times are greater than the first threshold value and/or the time interval between two adjacent abnormal running times is smaller than the second threshold value.
6. The method of claim 5, wherein after the restarting the first application associated with the target process, the method further comprises:
and creating an abnormality repairing program of the first application, wherein the abnormality repairing program is used for repairing the abnormality when the first application is abnormal.
7. A memory exception handling apparatus, wherein an application electronic device, the apparatus comprising:
the process determining unit is used for determining a target process causing the memory abnormality if the memory abnormality is detected, wherein the memory abnormality comprises the memory abnormality occurring in a kernel mode or the memory abnormality occurring in an application program framework layer;
A process removing unit, configured to remove the target process from the running queue;
a process restarting unit, configured to restart the target process;
wherein the memory exception comprises a memory exception occurring in a kernel mode; before the process removing unit removes the target process from the run queue, the apparatus further includes:
an address determining unit, configured to determine whether an address of a user space exists in a call stack of the target process;
in the aspect of removing the target process from the running queue, the process removing unit is specifically configured to remove the target process from the running queue if an address of a user space exists in a call stack of the target process.
8. An electronic device comprising a processor, a memory, a communication interface, and one or more programs stored in the memory and configured to be executed by the processor, the programs comprising instructions for performing the steps in the method of any of claims 1-6.
9. A computer-readable storage medium, characterized in that a computer program for electronic data exchange is stored, wherein the computer program causes a computer to perform the method according to any one of claims 1-6.
CN202010181977.3A 2020-03-16 2020-03-16 Memory exception handling method and device Active CN111381996B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010181977.3A CN111381996B (en) 2020-03-16 2020-03-16 Memory exception handling method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010181977.3A CN111381996B (en) 2020-03-16 2020-03-16 Memory exception handling method and device

Publications (2)

Publication Number Publication Date
CN111381996A CN111381996A (en) 2020-07-07
CN111381996B true CN111381996B (en) 2023-06-06

Family

ID=71219010

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010181977.3A Active CN111381996B (en) 2020-03-16 2020-03-16 Memory exception handling method and device

Country Status (1)

Country Link
CN (1) CN111381996B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113438275B (en) * 2021-05-27 2023-04-07 众安在线财产保险股份有限公司 Data migration method and device, storage medium and data migration equipment
CN115809139A (en) * 2021-06-16 2023-03-17 荣耀终端有限公司 Memory management method and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106569904A (en) * 2015-10-09 2017-04-19 中兴通讯股份有限公司 Information storage method and device and server
CN106708616A (en) * 2016-11-29 2017-05-24 深圳天珑无线科技有限公司 Process control method and process control device
CN106959909A (en) * 2017-03-27 2017-07-18 西安电子科技大学 A kind of application software abnormal restoring method in android system
CN110673986A (en) * 2019-09-23 2020-01-10 北京字节跳动网络技术有限公司 Memory operation abnormity capturing method, device, terminal and storage medium
CN110704247A (en) * 2019-09-30 2020-01-17 珠海市魅族科技有限公司 Application memory exception processing method and device, electronic equipment and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050182582A1 (en) * 2004-02-12 2005-08-18 International Business Machines Corporation Adaptive resource monitoring and controls for a computing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106569904A (en) * 2015-10-09 2017-04-19 中兴通讯股份有限公司 Information storage method and device and server
CN106708616A (en) * 2016-11-29 2017-05-24 深圳天珑无线科技有限公司 Process control method and process control device
CN106959909A (en) * 2017-03-27 2017-07-18 西安电子科技大学 A kind of application software abnormal restoring method in android system
CN110673986A (en) * 2019-09-23 2020-01-10 北京字节跳动网络技术有限公司 Memory operation abnormity capturing method, device, terminal and storage medium
CN110704247A (en) * 2019-09-30 2020-01-17 珠海市魅族科技有限公司 Application memory exception processing method and device, electronic equipment and device

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Jean Araujo等.Experimental evaluation of software aging effects on the eucalyptus cloud computing infrastructure.《Middleware "11: Proceedings of the Middleware 2011 Industry Track Workshop》.2011,(第4期),1-7. *
Solaris下fopen函数造成的内存泄漏简析;钟国辉等;《计算机工程与应用》(第6期);128-131+5 *
基于日志分析平台的监控系统的设计与实现;王力群等;《计算机应用与软件》(第12期);164-168+207 *
基于进程热重启实现转发不间断的设计与实现;黄崇滨;《科技经济导刊》(第16期);7-9+14 *

Also Published As

Publication number Publication date
CN111381996A (en) 2020-07-07

Similar Documents

Publication Publication Date Title
EP3822835B1 (en) Method for deleting secure service, and electronic apparatus
CN113325941B (en) Method for displaying finger print under screen and electronic equipment
CN114443277A (en) Memory management method and device, electronic equipment and computer readable storage medium
EP3859576B1 (en) Application permission management method and electronic device
CN111768416B (en) Photo cropping method and device
CN111553846B (en) Super-resolution processing method and device
CN111555825B (en) Radio frequency resource allocation method and device
WO2022052897A1 (en) Method and device for adjusting memory configuration parameter
EP4209906A1 (en) Memory management method, electronic device, and computer-readable storage medium
JP2022501739A (en) Stylus pen detection method, system and related equipment
CN111882642B (en) Texture filling method and device for three-dimensional model
CN111381996B (en) Memory exception handling method and device
CN111524528B (en) Voice awakening method and device for preventing recording detection
CN111880661A (en) Gesture recognition method and device
WO2023051094A1 (en) Memory recovery method and apparatus, electronic device, and readable storage medium
CN114461589B (en) Method for reading compressed file, file system and electronic equipment
CN111581119B (en) Page recovery method and device
CN115794361A (en) Method for managing memory and electronic equipment
CN111459271B (en) Gaze offset error determination method and device
CN113542315B (en) Communication framework, business event processing method and device
CN110780929B (en) Method for calling hardware interface and electronic equipment
CN116991274B (en) Upper sliding effect exception handling method and electronic equipment
CN116048831B (en) Target signal processing method and electronic equipment
US20240069845A1 (en) Focus synchronization method and electronic device
CN116700982A (en) Multi-pressure management 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