CN115586960A - Memory distributor determination method and device, electronic equipment and storage medium - Google Patents

Memory distributor determination method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN115586960A
CN115586960A CN202211190505.XA CN202211190505A CN115586960A CN 115586960 A CN115586960 A CN 115586960A CN 202211190505 A CN202211190505 A CN 202211190505A CN 115586960 A CN115586960 A CN 115586960A
Authority
CN
China
Prior art keywords
memory
target
allocator
electronic device
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211190505.XA
Other languages
Chinese (zh)
Inventor
祝志锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vivo Mobile Communication Co Ltd
Original Assignee
Vivo Mobile Communication 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 Vivo Mobile Communication Co Ltd filed Critical Vivo Mobile Communication Co Ltd
Priority to CN202211190505.XA priority Critical patent/CN115586960A/en
Publication of CN115586960A publication Critical patent/CN115586960A/en
Priority to PCT/CN2023/120413 priority patent/WO2024067348A2/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Hardware Redundancy (AREA)

Abstract

The application discloses a memory allocator determining method and device, electronic equipment and a storage medium, which can solve the problem that the flexibility of using the memory allocator by the electronic equipment is low. The method comprises the following steps: acquiring information of a first process running in the electronic equipment; determining a target memory distributor from at least two memory distributors compatible with the electronic equipment according to the information of the first process; the target memory allocator is configured to manage a memory of the first process, and the target memory allocator is matched with the first process.

Description

Memory distributor determination method and device, electronic equipment and storage medium
Technical Field
The application belongs to the technical field of communication, and particularly relates to a memory allocator determination method, a memory allocator determination device, electronic equipment and a storage medium.
Background
Currently, an operating system (e.g., an Android system) of an electronic device can only include one memory allocator (e.g., the memory allocator 1) to be responsible for allocating and managing a memory of the electronic device, so that processes running on the electronic device all use the memory allocator 1.
However, due to the differences in the mechanisms of different memory allocators, a part of the processes running on the electronic device is not suitable for using the memory allocator 1. For example: when the process 1 uses the memory distributor 1, the memory occupation is less and the process performance is poorer; however, since the application program corresponding to the process 1 is an important application program in the electronic device, the requirement on the performance of the process is high, and the requirement on the memory usage is low, the process 1 is not suitable for using the memory allocator 1; thus, the electronic device has low flexibility in using the memory allocator.
Disclosure of Invention
An embodiment of the present application provides a method and an apparatus for determining a memory allocator, an electronic device, and a storage medium, which can solve the problem of low flexibility of using the memory allocator by the electronic device.
In order to solve the technical problem, the present application is implemented as follows:
in a first aspect, an embodiment of the present application provides a method for determining a memory allocator, where the method for determining a memory allocator includes: acquiring information of a first process running in electronic equipment; determining a target memory distributor from at least two memory distributors compatible with the electronic equipment according to the information of the first process; the target memory allocator is configured to manage a memory of the first process, and the target memory allocator is matched with the first process.
In a second aspect, an embodiment of the present application provides a memory allocator determining apparatus, where the memory allocator determining apparatus includes: the device comprises an acquisition module and a determination module. The acquisition module is used for acquiring information of a first process running in the electronic equipment. The determining module is used for determining a target memory distributor from at least two memory distributors compatible with the electronic equipment according to the information of the first process acquired by the acquiring module; the target memory allocator is configured to manage a memory of the first process, and the target memory allocator is matched with the first process.
In a third aspect, embodiments of the present application provide an electronic device, which includes a processor and a memory, where the memory stores a program or instructions executable on the processor, and the program or instructions, when executed by the processor, implement the steps of the method according to the first aspect.
In a fourth aspect, embodiments of the present application provide a readable storage medium, on which a program or instructions are stored, which when executed by a processor implement the steps of the method according to the first aspect.
In a fifth aspect, an embodiment of the present application provides a chip, where the chip includes a processor and a communication interface, where the communication interface is coupled to the processor, and the processor is configured to execute a program or instructions to implement the method according to the first aspect.
In a sixth aspect, embodiments of the present application provide a computer program product, stored on a storage medium, for execution by at least one processor to implement the method according to the first aspect.
In the embodiment of the application, the electronic device may acquire information of a first process running in the electronic device; determining a target memory distributor from at least two memory distributors compatible with the electronic equipment according to the information of the first process; the target memory allocator is used for managing the memory of the first process, and the target memory allocator is matched with the first process. Because the electronic device can acquire the information of the first process running in the electronic device, the electronic device can determine a target content distributor matched with the first process from the at least two compatible content distributors according to the acquired information of the first process, that is, the electronic device can select one memory distributor suitable for the first process to be used as a target memory distributor to manage the memory of the first process, thereby improving the flexibility of the electronic device in using the memory distributor.
Drawings
Fig. 1 is a schematic diagram of a memory allocator determination method according to an embodiment of the present application;
fig. 2 is a schematic structural diagram of a memory allocator determination apparatus according to an embodiment of the present application;
fig. 3 is a schematic hardware structure diagram of an electronic device according to an embodiment of the present disclosure;
fig. 4 is a second schematic diagram of a hardware structure of an electronic device according to an embodiment of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some, but not all, embodiments of the present application. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The terms first, second and the like in the description and in the claims of the present application are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It will be appreciated that the data so used may be interchanged under appropriate circumstances such that embodiments of the application may be practiced in sequences other than those illustrated or described herein, and that the terms "first," "second," and the like are generally used herein in a generic sense and do not limit the number of terms, e.g., the first term can be one or more than one. In addition, "and/or" in the specification and claims means at least one of connected objects, a character "/" generally means that a preceding and succeeding related objects are in an "or" relationship.
The memory allocator determination method provided in the embodiment of the present application is described in detail below with reference to the accompanying drawings through specific embodiments and application scenarios thereof.
The memory allocator determining method in the embodiment of the application can be applied to a scenario where the memory allocator is used by the electronic device.
At present, in order to better manage a memory application of a user process, an operating system (e.g., an Android system) of an electronic device may manage a memory application of a user mode through a memory distributor, where the memory distributor brokers the user process to apply for and release a memory function through a malloc function, a calloc function, a free function, and the like, in recent years, the memory distributor used by the electronic device is mainly a Jemalloc memory distributor or a Scudo memory distributor, that is, the operating system of the electronic device may only include one memory distributor (e.g., a Jemalloc memory distributor) to be responsible for memory distribution and management of the electronic device, and therefore processes running on the electronic device are also processed by the jeloc memory distributor.
On one hand, however, the implementation mechanisms of different memory distributors have great difference, and the performance and memory occupation performance of the memory distributors also have certain difference; on the other hand, the operating system has a plurality of running processes, and the memory using modes of the plurality of processes are different; among the many processes run by the electronic device, some of the processes may be better suited to use the Jemalloc memory allocator, and some of the processes may be better suited to use the Scudo memory allocator. Therefore, in the prior art, the selection of the memory allocator cannot be realized by taking into account that all processes can use the allocator which is more suitable for the processes. The application provides a method for supporting multiple memory distributors by an operating system, and aims to provide a memory distributor which is more suitable for the service logic of a process and can be used by most processes running on the operating system.
In the scheme provided by the embodiment of the application, the electronic equipment can acquire information of a first process running in the electronic equipment; determining a target memory distributor from at least two memory distributors compatible with the electronic equipment according to the information of the first process; the target memory allocator is used for managing the memory of the first process, and the target memory allocator is matched with the first process. Because the electronic device can acquire the information of the first process running in the electronic device, the electronic device can determine a target content distributor matched with the first process from the at least two compatible content distributors according to the acquired information of the first process, that is, the electronic device can select one memory distributor suitable for the first process to be used as a target memory distributor to manage the memory of the first process, thereby improving the flexibility of the electronic device in using the memory distributor.
An embodiment of the present application provides a method for determining a memory allocator, and fig. 1 shows a flowchart of the method for determining a memory allocator provided in the embodiment of the present application. As shown in fig. 1, the memory allocator determination method provided in the embodiment of the present application may include steps 201 and 202 described below.
Step 201, the electronic device obtains information of a first process running in the electronic device.
Optionally, in this embodiment of the application, the first process may be a process corresponding to any application program in the electronic device.
Optionally, in this embodiment of the application, the information of the first process may be an identifier of the first process, and the identifier of the first process may be understood as an identifier of an application program corresponding to the first process.
Step 202, the electronic device determines a target memory allocator from at least two memory allocators compatible with the electronic device according to the information of the first process.
The target memory allocator is used for managing the memory of the first process, and the target memory allocator is matched with the first process.
In this embodiment, the electronic device may search, according to the information of the first process, a target memory allocator matched with the first process from at least two memory allocators compatible with the electronic device, so as to manage the memory of the first process by using the target memory allocator after determining the target memory allocator.
It will be appreciated that the target memory allocator is the memory allocator that performs the best in running the first process.
Optionally, in this embodiment, before the step 202, the method for determining a memory allocator provided in this embodiment further includes the following step 301.
Step 301, the electronic device modifies the original compiling condition to obtain a target compiling condition.
Wherein, under the original compiling condition, the electronic device supports a memory distributor; under the condition of target compiling, the electronic equipment is compatible with at least two memory allocators.
Optionally, in this embodiment of the application, the modification of the original compiling condition is a modification of a Makefile script file, and the Makefile script file is used to control compiling content.
Optionally, in this embodiment of the present application, the electronic device may be compatible with at least two memory allocators through a standard function library (Libc) or another function library capable of storing memory allocators.
Optionally, in this embodiment of the present application, the memory allocator with which the electronic device is compatible may be at least two of the following: a Scudo memory distributor, a Jemalloc-4.1.0 memory distributor and a Jemalloc-5.1.0 memory distributor.
Alternatively, in this embodiment of the application, the step 202 may be specifically implemented by the following steps 202a to 202 c.
Step 202a, the electronic device calls a first interface according to the information of the first process.
In this embodiment, the first interface is implemented by a function related to memory allocation.
Optionally, in this embodiment of the present application, the first interface may be a memory allocation interface or a memory release interface.
Optionally, in this embodiment of the present application, the memory allocation interface may include: the function may be implemented by a malloc function, a calloc function, or a realloc function, or may be implemented by other functions responsible for memory allocation, which may be determined specifically according to actual use requirements, and the embodiment of the present invention is not limited.
Optionally, in this embodiment of the present invention, the memory release interface may be implemented by a free function, or may be implemented by other functions responsible for memory release, which may be specifically determined according to actual usage requirements, and the embodiment of the present invention is not limited.
Optionally, in this embodiment of the application, the first interface is a common interface, or may be understood as an interface that a process can directly call.
Step 202b, the electronic device calls a second interface through the first interface.
In this embodiment of the present application, the second interface is implemented by a function for searching the memory allocator.
Optionally, in this embodiment of the application, the second interface is an intermediate layer interface added between the first interface and the memory allocator interface, and the second interface is an interface corresponding to an operating system of the electronic device.
Optionally, in this embodiment of the present application, the second interface may be implemented by a vendor _ malloc function, a vendor _ calloc function, a vendor _ realloc function, or a vendor _ free function, or may also be implemented by another function having a function of looking up a memory allocator, which may be specifically determined according to actual use requirements, and the embodiment of the present invention is not limited.
Optionally, in this embodiment of the application, invoking the second interface by the electronic device through the first interface may be understood as: when the electronic device calls the first interface, the electronic device redirects or interfaces to the second interface to select the memory allocator for the first process through the second interface.
Optionally, in this embodiment of the application, the second interface is an interface corresponding to the first interface.
It can be understood that, when the first interface called by the electronic device is a memory allocation interface (for example, an interface realized by a calloc function), the second interface called by the first interface is an interface corresponding to the first interface (for example, an interface realized by a vendor _ calloc function); or, when the first interface called by the electronic device is a memory release interface (for example, an interface implemented by a free function), the second interface called by the first interface is an interface corresponding to the first interface (for example, an interface implemented by a vendor _ free function).
Step 202c, the electronic device determines a target memory allocator from the at least two memory allocators compatible with the electronic device through the second interface.
It is to be understood that, in the case that the electronic device is compatible with multiple memory allocators, the electronic device may determine, through the second interface, a memory allocator suitable for use by the first process from among the multiple memory allocators, so as to manage the memory of the first process.
Optionally, in this embodiment of the present application, the first interface is a memory allocation interface, and the target memory allocator is configured to allocate a memory for the first process. Or, the first interface is a memory release interface, and the target memory allocator is configured to release the memory of the first process.
Specifically, when the first interface is a memory allocation interface, the electronic device calls a second interface corresponding to the memory allocation interface through the first interface, and then after the second interface determines a target memory allocator corresponding to the first process, the electronic device allocates a memory to the first process through a target memory allocator interface corresponding to the first interface and responsible for allocating a memory.
For example: under the condition that a first interface called by the electronic equipment is realized by a malloc function, a second interface called by the electronic equipment through the first interface is an interface realized by a vendor _ malloc function, and then after the second interface determines that the target memory distributor is the Scud memory distributor, the memory can be distributed for the first process through the interface realized by the Scud-malloc function.
Specifically, when the first interface is a memory release interface, the electronic device calls a second interface corresponding to the memory release interface through the first interface, and then after the second interface determines a target memory allocator corresponding to the first process, the electronic device releases the memory for the first process through a target memory allocator interface corresponding to the first interface and responsible for releasing the memory.
For example: under the condition that a first interface called by the electronic equipment is realized by a free function, a second interface called by the electronic equipment through the first interface is an interface realized by a vendor _ free function, and then after the second interface determines that the target memory distributor is the Jemalloc memory distributor, the memory can be released for the first process through the interface realized by the Jemalloc-free function.
The embodiment of the application provides a memory allocator determining method, wherein electronic equipment can acquire information of a first process running in the electronic equipment; determining a target memory distributor from at least two memory distributors compatible with the electronic equipment according to the information of the first process; the target memory allocator is used for managing the memory of the first process, and the target memory allocator is matched with the first process. Because the electronic device can acquire the information of the first process running in the electronic device, the electronic device can determine a target content distributor matched with the first process from the at least two compatible content distributors according to the acquired information of the first process, that is, the electronic device can select one memory distributor suitable for the first process to be used as a target memory distributor to manage the memory of the first process, thereby improving the flexibility of the electronic device in using the memory distributor.
Optionally, in this embodiment of the application, the step 202 of determining, by the electronic device, the target memory allocator from the at least two memory allocators compatible with the electronic device may specifically be implemented by the following step 401 and step 402.
Step 401, the electronic device obtains a target result table.
In this embodiment of the present application, the target result table is used to indicate a corresponding relationship between a process and a memory allocator.
In the embodiment of the present application, the target result table includes at least one corresponding relationship, and each corresponding relationship is a corresponding relationship between one process and one memory allocator.
Step 402, in the case that the information of the first process exists in the target result table, the electronic device determines the memory allocator corresponding to the information of the first process in the target result table as the target memory allocator.
It can be understood that the electronic device may test the first process through at least two memory allocators to determine a memory allocator corresponding to the first process, and add the memory allocator to the target result table, so that the information of the first process exists in the target result table. That is, the target result table stores the corresponding relationship between each process and the most suitable memory allocator.
It should be noted that, for the specific implementation manner that the electronic device may test the first process through at least two memory distributors to determine the memory distributor corresponding to the first process and add the memory distributor to the target result table, the following embodiments are described, and details are not described here.
In this embodiment, the electronic device may obtain the target result table, and search the memory allocator corresponding to the first process in the target result table according to the information of the first process, so as to determine the target memory allocator.
Specifically, the electronic device may search the first process in the target result table through the second interface according to the information of the first process, and determine the memory allocator corresponding to the first process as the target memory allocator.
Exemplarily, as shown in table 1, the table includes identifiers of processes 1 to 5 and a memory allocator corresponding to each process, that is, includes 5 corresponding relationships; the electronic device may search, according to the information of the first process (e.g., process 3), the process 3 in the target result table through the second interface, and determine the memory allocator corresponding to the process 3 (e.g., memory allocator 2 corresponding to process 3) as the target memory allocator, so as to manage the memory of the process 3 through the memory allocator 2.
TABLE 1 (target results table)
Process Memory distributor
1 Process 1 Memory distributor 1
2 Process 2 Memory distributor 1
3 Process 3 Memory distributor 2
4 Process 4 Memory distributor 3
5 Process 5 Memory distributor 2
Therefore, when the electronic device runs the first process and calls the first interface realized by the function related to the memory allocation, the second interface realized by the function of the memory allocator can be called through the first interface, so that the target memory allocator corresponding to the first process can be searched in the target result table through the second interface, and the memory of the first process is managed through the target memory allocator, thereby improving the flexibility of the electronic device in using the memory allocator.
Optionally, in this embodiment of the application, the step 202 of determining, by the electronic device, the target memory allocator from the at least two memory allocators compatible with the electronic device may specifically be implemented by the following step 501.
Step 501, in the case that the first process is determined to be not initially operated according to the information of the first process, the electronic device obtains a numerical value of a global variable of the first process, and determines a memory allocator corresponding to the numerical value of the global variable of the first process as a target memory allocator.
In the embodiment of the application, the value of one global variable corresponds to one memory allocator.
In the embodiment of the application, each process corresponds to a global variable (flag).
Optionally, in this embodiment of the present application, the electronic device may set, in advance, a correspondence between each memory allocator and a numerical value of the global variable according to at least two memory allocators with which the electronic device is compatible.
For example: the value of the global variable corresponding to the memory allocator 1 is 1; the value of the global variable corresponding to the memory allocator 2 is 2; the value of the global variable corresponding to memory allocator 3 is 3. That is, when the flag value is 1, the memory allocator 1 is indicated, when the flag value is 2, the memory allocator 2 is indicated, and when the flag value is 3, the memory allocator 3 is indicated.
It can be understood that the electronic device may read, according to the information of the first process, the value of the global variable of the first process from the values of the at least one global variable through the second interface, so as to determine the memory allocator corresponding to the value of the global variable of the first process as the target memory allocator.
Exemplarily, as shown in table 2, the table includes identifiers of processes 1 to 5 and values of global variables corresponding to each process, that is, includes 5 corresponding relationships; the electronic device may search, according to the information of the first process (e.g., process 3), a value of a global variable of the first process (e.g., process 3) through the second interface, and determine a memory allocator (e.g., memory allocator 2) corresponding to the value of the global variable of the process 3 (e.g., flag = 2) as a target memory allocator, so as to manage the memory of the process 3 through the memory allocator 2.
TABLE 2
Process Global variable values
1 Process 1 Flag=1
2 Process 2 Flag=1
3 Process 3 Flag=2
4 Process 4 Flag=3
5 Process 5 Flag=2
Therefore, the electronic device can acquire the numerical value of the global variable of the first process through the second interface, and determine the memory allocator corresponding to the numerical value of the global variable of the first process as the target memory allocator to manage the memory of the first process, so that the flexibility of the electronic device in using the memory allocator is improved.
Optionally, in this embodiment, before the step 401, the method for determining a memory allocator provided in this embodiment further includes the following step 601.
Step 601, the electronic device updates the value of the global variable corresponding to each process in the target result table according to the target result table.
The target result table is used for indicating the corresponding relation between the process and the memory allocator.
Optionally, in this embodiment of the application, for a process in the target result table (that is, a process of the determined corresponding memory allocator), the electronic device may update, according to a correspondence between the memory allocator and the value of the global variable, the value of the global variable corresponding to each process in the target result table.
It can be understood that, after the electronic device initially runs the first process and determines the target memory allocator corresponding to the first process through the target result table, the value of the global variable corresponding to the first process may be updated according to the correspondence between the memory allocator and the value of the global variable; when the electronic device runs the first process again, the value of the global variable of the first process can be directly obtained, so that the memory allocator corresponding to the value of the global variable of the first process is determined as the target memory allocator.
Therefore, the memory allocator corresponding to the first process can be determined without the electronic device searching for the target result table every time, and time consumption of the electronic device is reduced.
Optionally, in this embodiment of the application, the electronic device updates the value of the global variable corresponding to each process in the target result table, which may be understood as initializing the value of the global variable of each process, and when the value of the global variable of each process is not initialized, the value is 0.
Optionally, in this embodiment, before the step 201, the method for determining a memory allocator further includes the following steps 701 to 703.
Step 701, in the case that the test data related to the first process does not exist in the electronic device, the electronic device tests the first process in the electronic device through at least two memory distributors, and respectively obtains a score when the first process uses each memory distributor.
Optionally, in this embodiment of the present application, the electronic device may test a first process in the electronic device through at least two memory distributors, so as to obtain a performance score and a memory score when the first process uses each memory distributor.
Specifically, the electronic device may test, through the process training model, a process starting time, a process critical process time consumption, and the like when the first process uses at least two memory allocators, so as to obtain a performance score when the first process uses each memory allocator.
Specifically, in this embodiment, the electronic device may test, through the process training model, the process start memory occupancy when the first process uses at least two memory distributors, the process memory occupancy peak value, the process memory occupancy when the process resides on the background, and the like, so as to obtain the memory score when the first process uses each memory distributor.
Optionally, in this embodiment of the application, the electronic device may determine, according to the performance score and the memory score of the first process when using each memory allocator, the process performance weight of the first process, and the system memory weight of the electronic device, the score of the first process when using each memory allocator.
Optionally, in this embodiment of the application, the process performance weight of the first process may be set by a user according to the importance degree of the process.
Optionally, in this embodiment of the application, the system memory weight of the electronic device may be determined according to a memory of the electronic device.
For example, for an electronic device with a small memory (e.g., the memory is smaller than a threshold), the electronic device may set a higher system memory weight, so as to ensure that the memory of the electronic device is sufficient; for an electronic device with a large memory (e.g., a memory greater than a threshold), since the memory allocated to the process is sufficient, the electronic device may set a lower system memory weight to improve the performance of the electronic device.
Exemplarily, a process 1 and an electronic device are compatible with two memory distributors, the process 1 can test the performance score and the memory score when the process 1 uses the memory distributor 1 through a process training model, and then determine the score when the process 1 uses the memory distributor 1 according to the performance score and the memory score when the process 1 uses the memory distributor 1, and the process performance weight of the process 1 and the system memory weight of the electronic device, which are set by a user; the performance score and the memory score of the process 1 when the memory distributor 2 is used can be tested through the process training model, and then the score of the process 1 when the memory distributor 2 is used is determined according to the performance score and the memory score of the process 1 when the memory distributor 2 is used, the process performance weight of the process 1 set by a user and the system memory weight of the electronic equipment; and testing the performance score and the memory score when the process 1 uses the memory distributor 3 through the process training model, and then determining the score when the process 1 uses the memory distributor 3 according to the performance score and the memory score when the process 1 uses the memory distributor 3, and the process performance weight of the process 1 and the system memory weight of the electronic equipment, which are set by a user, so as to obtain a plurality of scores when the process 1 uses a plurality of memory distributors.
Optionally, in this embodiment of the application, for the score when each memory allocator is used in the first process, the electronic device may calculate by using the following formula:
total score (total _ score) = process performance weight (process _ perf _ weight _ coeffient) × performance score (perf _ score) + system memory weight (sys _ mem _ weight _ coeffient) × memory score (mem _ score).
For example: when the process 1 uses the memory allocator 1, the performance score is 6, the memory score is 8, the process performance weight of the process 1 is 1, and the system memory weight of the electronic device is 2, then the score when the process 1 uses the memory allocator 1 is: 1 × 6+2 × 8=22 minutes.
Step 702, the electronic device determines a memory allocator corresponding to a maximum score among the plurality of scores as a target memory allocator corresponding to the first process.
It can be understood that after the first process uses the plurality of memory distributors to perform the test, a plurality of different scores can be obtained, and then the electronic device can determine the memory distributor corresponding to the largest score among the plurality of scores as the target memory distributor corresponding to the first process.
Step 703, the electronic device associates the first process with the target memory allocator corresponding to the first process, and adds the first process to the target result table.
Therefore, when the subsequent electronic equipment runs the first process, the target memory distributor corresponding to the first process can be determined according to the target result table, and the memory of the first process is managed through the target memory distributor, so that the accuracy of the electronic equipment in using the memory distributor is improved.
Optionally, in this embodiment of the application, the target result table includes an identifier of at least one process and an identifier of at least one memory allocator, and each memory allocator corresponds to one process.
Optionally, in this embodiment of the present application, a part of processes (for example, processes corresponding to a computer application) in an electronic device are non-critical processes, and when different distributors are used, differences between performance and memory usage are not large, so that the electronic device may not participate in a test, and a default distributor of the electronic device is used to manage a memory, where the default distributor may be any one of at least two memory distributors compatible with the electronic device.
Optionally, in this embodiment of the application, the target result table may be updated following a system version update of the electronic device. It can be understood that, when the system of the electronic device is updated, the electronic device may retest the processes in the electronic device through the at least two memory distributors, so as to update the target result table according to the test result.
Optionally, in this embodiment of the present application, the method for determining a memory allocator provided in this embodiment of the present application may further include the following steps 801 to 803.
Step 801, displaying a target setting interface by the electronic equipment.
In this embodiment, the target setting interface includes an identifier of at least one process and an identifier of at least one memory allocator, and each memory allocator corresponds to one process.
Optionally, in this embodiment of the application, the electronic device may provide a function of setting the process memory allocator in the setting interface or the housekeeping application program, and the user may perform input to trigger the electronic device to display an interface (i.e., a target setting interface) for setting the process memory allocator.
Step 802, an electronic device receives a first input of a user.
In an embodiment of the present application, the first input is an input used to modify a memory allocator corresponding to the target process.
Optionally, in this embodiment of the present application, the target process may be a process that is already trained or a process that is not trained.
It can be understood that, a user may download some new applications through the application store application, processes corresponding to the applications are not trained through the process training model, and the electronic device defaults to use the default memory allocator for the processes, so that the user may trigger the electronic device to train the processes to obtain the memory allocators corresponding to the processes.
It should be noted that, for the description of the process of training the processes by the electronic device, reference may be made to the description of the process of testing the first process in the foregoing embodiment, which is not described herein again.
Optionally, in this embodiment of the application, the target setting interface may include a first control, where the first control is used to trigger an electronic device to train a target process.
Optionally, in this embodiment of the application, the first input may be a touch input (for example, a click input, a drag input, a slide input, or the like) or other feasible input performed by the user on the first control, so as to trigger the electronic device to modify the memory allocator corresponding to the target process, and update the identifier of the memory allocator corresponding to the target process in the target setting interface, which is not limited in this embodiment of the application.
Step 803, the electronic device responds to the first input, modifies the memory allocator corresponding to the target process, and updates the identifier of the memory allocator corresponding to the target process in the target setting interface.
Optionally, in this embodiment of the application, after the electronic device trains the target process, the memory allocator corresponding to the target process in the target result table may be updated at the same time.
Therefore, the flexibility of the memory allocator used by the target process determined by the electronic equipment is improved.
It should be noted that, in the memory allocator determination method provided in the embodiment of the present application, the execution subject may be an electronic device, or a memory allocator determination device, or a control module in the memory allocator determination device. The memory allocator determining apparatus provided in the embodiment of the present application is described with an example in which an electronic device executes a memory allocator determining method.
Fig. 2 shows a schematic diagram of a possible structure of the memory allocator determination apparatus according to the embodiment of the present application. As shown in fig. 2, the memory allocator determining means 70 may include: an acquisition module 71 and a determination module 72.
The obtaining module 71 is configured to obtain information of a first process running in the electronic device. A determining module, configured to determine, according to the information of the first process acquired by the acquiring module 71, a target memory allocator from at least two memory allocators compatible with the electronic device; the target memory allocator is used for managing the memory of the first process, and the target memory allocator is matched with the first process.
The embodiment of the present application provides a memory allocator determination apparatus, where an electronic device may obtain information of a first process running in the electronic device, and therefore the electronic device may determine, according to the obtained information of the first process, a target content allocator matched with the first process from among at least two compatible content allocators, that is, the electronic device may select a memory allocator suitable for the first process to be used as the target memory allocator, so as to manage a memory of the first process, so that flexibility of using the memory allocator by the electronic device is improved.
In a possible implementation manner, the memory allocator determining apparatus 70 provided in the embodiment of the present application further includes: and a processing module. The processing module is used for calling a first interface according to the information of the first process, and the first interface is realized by a function related to memory allocation; and calling a second interface through the first interface, wherein the second interface is realized by a function for searching the memory distributor. The determining module 72 is specifically configured to determine, through the second interface, a target memory allocator from at least two memory allocators compatible with the electronic device.
In a possible implementation manner, the obtaining module 71 is further configured to obtain a target result table, where the target result table is used to indicate a correspondence relationship between a process and a memory allocator. And the determining module is specifically configured to determine, as the target memory allocator, the memory allocator in the target result table corresponding to the information of the first process, when the information of the first process exists in the target result table.
In a possible implementation manner, the obtaining module 71 is further configured to obtain the value of the global variable of the first process when it is determined that the first process is not initially run according to the information of the first process. The determining module is specifically configured to determine a memory allocator corresponding to the value of the global variable of the first process as a target memory allocator, and the value of one global variable corresponds to one memory allocator.
In a possible implementation manner, the memory allocator determining apparatus 70 provided in the embodiment of the present application further includes: and updating the module. An updating module, configured to update, before the obtaining module 71 obtains the numerical values of the global variables of the first process, the numerical value of the global variable corresponding to each process in the target result table according to the target result table, where the different numerical values of the global variables correspond to different memory allocator, and the target result table is used to indicate a correspondence between the processes and the memory allocator.
In a possible implementation manner, the memory allocator determining apparatus 70 provided in the embodiment of the present application further includes: and a processing module. The processing module is configured to test the first process in the electronic device through at least two memory distributors under the condition that test data related to the first process does not exist in the electronic device before the obtaining module 71 obtains the information of the first process running in the electronic device, and obtain scores when each memory distributor is used by the first process respectively. The determining module 72 is further configured to determine a memory allocator corresponding to a maximum score in the multiple scores as a target memory allocator corresponding to the first process. And the processing module is also used for associating the first process with the target memory allocator corresponding to the first process and adding the first process to the target result table.
In a possible implementation manner, the memory allocator determining apparatus 70 provided in the embodiment of the present application further includes: and a processing module. A processing module, configured to modify an original compiling condition to obtain a target compiling condition before determining, by the determining module 72, a target memory allocator from at least two memory allocators compatible with the electronic device according to the information of the first process; wherein, under the original compiling condition, the electronic device supports a memory distributor; under the target compiling condition, the electronic equipment is compatible with at least two memory distributors.
In one possible implementation, the first interface is a memory allocation interface, and the target memory allocator is configured to allocate a memory for the first process; or, the first interface is a memory release interface, and the target memory allocator is configured to release the memory of the first process.
The memory allocator determination apparatus in the embodiment of the present application may be an apparatus, and may also be a component, an integrated circuit, or a chip in an electronic device. The device can be mobile electronic equipment or non-mobile electronic equipment. The Mobile electronic Device may be, for example, a Mobile phone, a tablet computer, a notebook computer, a palm computer, a vehicle-mounted electronic Device, a Mobile Internet Device (MID), an Augmented Reality (AR)/Virtual Reality (VR) Device, a robot, a wearable Device, an ultra-Mobile personal computer (UMPC), a netbook or a Personal Digital Assistant (PDA), and the like, and may also be a server, a Network Attached Storage (Storage), a personal computer (NAS), a Television (TV), a teller machine, a self-service machine, and the like, and the embodiments of the present application are not limited in particular.
The memory allocator determination device in the embodiment of the present application may be a device having an operating system. The operating system may be an Android (Android) operating system, an ios operating system, or other possible operating systems, and embodiments of the present application are not limited specifically.
The memory allocator determination device provided in the embodiment of the present application can implement each process implemented by the foregoing method embodiment, and is not described here again to avoid repetition.
Optionally, as shown in fig. 3, an electronic device 900 is further provided in an embodiment of the present application, and includes a processor 901 and a memory 902, where the memory 902 stores a program or an instruction that can be executed on the processor 901, and when the program or the instruction is executed by the processor 901, the steps of the foregoing method embodiment are implemented, and the same technical effect can be achieved, and in order to avoid repetition, details are not described here again.
It should be noted that the electronic device in the embodiment of the present application includes the mobile electronic device and the non-mobile electronic device described above.
Fig. 4 is a schematic diagram of a hardware structure of an electronic device implementing an embodiment of the present application.
The electronic device 100 includes, but is not limited to: a radio frequency unit 101, a network module 102, an audio output unit 103, an input unit 104, a sensor 105, a display unit 106, a user input unit 107, an interface unit 108, a memory 109, and a processor 110.
Those skilled in the art will appreciate that the electronic device 100 may further comprise a power source (e.g., a battery) for supplying power to various components, and the power source may be logically connected to the processor 110 through a power management system, so as to implement functions of managing charging, discharging, and power consumption through the power management system. The electronic device structure shown in fig. 4 does not constitute a limitation of the electronic device, and the electronic device may include more or less components than those shown, or combine some components, or arrange different components, and thus, the description is omitted here.
The processor 110 is configured to obtain information of a first process running in the electronic device; determining a target memory distributor from at least two memory distributors compatible with the electronic equipment according to the information of the first process; the target memory distributor is used for managing the memory of the first process, and the target memory distributor is matched with the first process.
The embodiment of the application provides an electronic device, and because the electronic device can acquire information of a first process running in the electronic device, the electronic device can determine a target content distributor matched with the first process from at least two compatible content distributors according to the acquired information of the first process, that is, the electronic device can select a memory distributor suitable for the first process as a target memory distributor to manage a memory of the first process, so that flexibility of using the memory distributor by the electronic device is improved.
Optionally, the processor 110 is further configured to call a first interface according to the information of the first process, where the first interface is implemented by a function related to memory allocation; and calling a second interface through the first interface, wherein the second interface is realized by a function for searching the memory distributor.
The processor 110 is specifically configured to determine, through the second interface, a target memory allocator from at least two memory allocators compatible with the electronic device.
Optionally, the processor 110 is further configured to obtain a target result table, where the target result table is used to indicate a correspondence between the process and the memory allocator.
The processor 110 is specifically configured to determine, as the target memory allocator, the memory allocator in the target result table corresponding to the information of the first process, when the information of the first process exists in the target result table.
Optionally, the processor 110 is further configured to obtain a value of a global variable of the first process when it is determined that the first process is not initially run according to the information of the first process.
The processor 110 is specifically configured to determine a memory allocator corresponding to the value of the global variable of the first process as a target memory allocator, where the value of one global variable corresponds to one memory allocator.
Optionally, the processor 110 is further configured to, before obtaining the numerical value of the global variable of the first process, update the numerical value of the global variable corresponding to each process in the target result table according to the target result table, where the numerical values of different global variables correspond to different memory allocator, and the target result table is used to indicate a correspondence between the process and the memory allocator.
Optionally, the processor 110 is further configured to, before obtaining information of a first process running in the electronic device, test the first process in the electronic device through at least two memory distributors under the condition that there is no test data related to the first process in the electronic device, and obtain scores when the first process uses each memory distributor respectively; determining a memory distributor corresponding to the maximum score in the scores as a target memory distributor corresponding to the first process; and associating the first process with a target memory allocator corresponding to the first process, and adding the first process to the target result table.
Optionally, the processor 110 is further configured to modify the original compiling condition to obtain a target compiling condition before determining the target memory allocator from the at least two memory allocators compatible with the electronic device according to the information of the first process; wherein, under the original compiling condition, the electronic device supports a memory distributor; under the target compiling condition, the electronic equipment is compatible with at least two memory distributors.
The electronic device provided by the embodiment of the application can realize each process realized by the method embodiment, and can achieve the same technical effect, and for avoiding repetition, the details are not repeated here.
The beneficial effects of the various implementation manners in this embodiment may specifically refer to the beneficial effects of the corresponding implementation manners in the above method embodiments, and are not described herein again to avoid repetition.
It should be understood that, in the embodiment of the present application, the input Unit 104 may include a Graphics Processing Unit (GPU) 1041 and a microphone 1042, and the Graphics Processing Unit 1041 processes image data of a still picture or a video obtained by an image capturing device (such as a camera) in a video capturing mode or an image capturing mode. The display unit 106 may include a display panel 1061, and the display panel 1061 may be configured in the form of a liquid crystal display, an organic light emitting diode, or the like. The user input unit 107 includes at least one of a touch panel 1071 and other input devices 1072. The touch panel 1071 is also referred to as a touch screen. The touch panel 1071 may include two parts of a touch detection device and a touch controller. Other input devices 1072 may include, but are not limited to, a physical keyboard, function keys (e.g., volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick, which are not described in detail herein.
The memory 109 may be used to store software programs as well as various data. The memory 109 may mainly include a first storage area storing a program or an instruction and a second storage area storing data, wherein the first storage area may store an operating system, an application program or an instruction (such as a sound playing function, an image playing function, etc.) required for at least one function, and the like. Further, memory 109 may include volatile memory or non-volatile memory, or memory 109 may include both volatile and non-volatile memory. The non-volatile Memory may be a Read-Only Memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an Electrically Erasable PROM (EEPROM), or a flash Memory. The volatile Memory may be a Random Access Memory (RAM), a Static Random Access Memory (Static RAM, SRAM), a Dynamic Random Access Memory (Dynamic RAM, DRAM), a Synchronous Dynamic Random Access Memory (Synchronous DRAM, SDRAM), a Double Data Rate Synchronous Dynamic Random Access Memory (Double Data Rate SDRAM, ddr SDRAM), an Enhanced Synchronous SDRAM (ESDRAM), a Synchronous Link DRAM (SLDRAM), and a Direct Memory bus RAM (DRRAM). Memory 109 in the embodiments of the subject application includes, but is not limited to, these and any other suitable types of memory.
Processor 110 may include one or more processing units; optionally, the processor 110 integrates an application processor, which mainly handles operations related to the operating system, user interface, application programs, etc., and a modem processor, which mainly handles wireless communication signals, such as a baseband processor. It will be appreciated that the modem processor described above may not be integrated into the processor 110.
The embodiment of the present application further provides a readable storage medium, where a program or an instruction is stored on the readable storage medium, and when the program or the instruction is executed by a processor, the program or the instruction implements the processes of the foregoing method embodiments, and can achieve the same technical effects, and in order to avoid repetition, details are not repeated here.
The processor is the processor in the electronic device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read only memory ROM, a random access memory RAM, a magnetic or optical disk, and the like.
The embodiment of the present application further provides a chip, where the chip includes a processor and a communication interface, the communication interface is coupled to the processor, and the processor is configured to execute a program or an instruction to implement each process of the foregoing method embodiments, and can achieve the same technical effect, and in order to avoid repetition, the details are not repeated here.
It should be understood that the chips mentioned in the embodiments of the present application may also be referred to as a system-on-chip, or a system-on-chip.
Embodiments of the present application provide a computer program product, where the program product is stored in a storage medium, and the program product is executed by at least one processor to implement the processes of the foregoing method embodiments, and can achieve the same technical effects, and in order to avoid repetition, details are not described here again.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising a … …" does not exclude the presence of another identical element in a process, method, article, or apparatus that comprises the element. Further, it should be noted that the scope of the methods and apparatus of the embodiments of the present application is not limited to performing the functions in the order illustrated or discussed, but may include performing the functions in a substantially simultaneous manner or in a reverse order based on the functions involved, e.g., the methods described may be performed in an order different than that described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solutions of the present application may be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal (such as a mobile phone, a computer, a server, or a network device) to execute the method according to the embodiments of the present application.
While the present embodiments have been described with reference to the accompanying drawings, it is to be understood that the present embodiments are not limited to those precise embodiments, which are intended to be illustrative rather than restrictive, and that various changes and modifications may be effected therein by one skilled in the art without departing from the scope of the appended claims.

Claims (18)

1. A method for memory allocator determination, the method comprising:
acquiring information of a first process running in the electronic equipment;
determining a target memory distributor from at least two memory distributors compatible with the electronic equipment according to the information of the first process;
the target memory allocator is configured to manage a memory of the first process, and the target memory allocator is matched with the first process.
2. The method of claim 1, wherein determining a target memory allocator from the at least two memory allocators with which the electronic device is compatible according to the information of the first process comprises:
calling a first interface according to the information of the first process, wherein the first interface is realized by a function related to memory allocation;
calling a second interface through the first interface, wherein the second interface is realized by a function for searching the memory distributor;
determining a target memory allocator from the at least two memory allocators with which the electronic device is compatible, via the second interface.
3. The method of claim 1 or 2, wherein the determining a target memory allocator from the at least two memory allocators that are compatible with the electronic device comprises:
acquiring a target result table, wherein the target result table is used for indicating the corresponding relation between a process and a memory distributor;
and under the condition that the information of the first process exists in the target result table, determining a memory allocator corresponding to the information of the first process in the target result table as the target memory allocator.
4. The method of claim 1 or 2, wherein the determining a target memory allocator from the at least two memory allocators that are compatible with the electronic device comprises:
and under the condition that the first process is determined to be not operated for the first time according to the information of the first process, acquiring the numerical value of the global variable of the first process, determining the memory allocator corresponding to the numerical value of the global variable of the first process as the target memory allocator, and determining the numerical value of one global variable corresponding to one memory allocator.
5. The method of claim 4, wherein prior to obtaining the value of the global variable of the first process, the method further comprises:
and updating the numerical value of the global variable corresponding to each process in the target result table according to the target result table, wherein the numerical values of different global variables correspond to different memory distributors, and the target result table is used for indicating the corresponding relation between the processes and the memory distributors.
6. The method of claim 1, wherein prior to obtaining information for a first process running in an electronic device, the method further comprises:
under the condition that the test data related to the first process does not exist in the electronic equipment, testing the first process in the electronic equipment through the at least two memory distributors to respectively obtain the score of the first process when each memory distributor is used;
determining a memory distributor corresponding to the maximum score in the scores as a target memory distributor corresponding to the first process;
and associating the first process with a target memory distributor corresponding to the first process, and adding the first process to a target result table.
7. The method of claim 1, wherein before determining a target memory allocator from the at least two memory allocators with which the electronic device is compatible based on the information of the first process, the method further comprises:
modifying the original compiling condition to obtain a target compiling condition;
wherein, under the original compiling condition, the electronic device supports a memory allocator; under the target compiling condition, the electronic equipment is compatible with the at least two memory allocators.
8. The method of claim 2,
the first interface is a memory allocation interface, and the target memory allocator is used for allocating memory for the first process;
alternatively, the first and second electrodes may be,
the first interface is a memory release interface, and the target memory allocator is configured to release the memory of the first process.
9. A memory allocator determination apparatus, said memory allocator determination apparatus comprising: the device comprises an acquisition module and a determination module;
the acquisition module is used for acquiring information of a first process running in the electronic equipment;
the determining module is configured to determine a target memory allocator from the at least two memory allocators compatible with the electronic device according to the information of the first process acquired by the acquiring module;
the target memory allocator is configured to manage a memory of the first process, and the target memory allocator is matched with the first process.
10. The apparatus of claim 9, wherein the memory allocator means for determining further comprises: a processing module;
the processing module is used for calling a first interface according to the information of the first process, and the first interface is realized by a function related to memory allocation; calling a second interface through the first interface, wherein the second interface is realized by a function for searching the memory distributor;
the determining module is specifically configured to determine, through the second interface, a target memory allocator from the at least two memory allocators compatible with the electronic device.
11. The apparatus of claim 9 or 10,
the acquisition module is further configured to acquire a target result table, where the target result table is used to indicate a correspondence between a process and a memory allocator;
the determining module is specifically configured to determine, as the target memory allocator, the memory allocator in the target result table corresponding to the information of the first process, when the information of the first process exists in the target result table.
12. The apparatus of claim 9 or 10,
the obtaining module is further configured to obtain a numerical value of a global variable of the first process when it is determined that the first process is not initially operated according to the information of the first process;
the determining module is specifically configured to determine a memory allocator corresponding to the numerical value of the global variable of the first process as the target memory allocator, and a numerical value of one global variable corresponds to one memory allocator.
13. The apparatus of claim 12, wherein the memory allocator means for determining further comprises: updating the module;
the updating module is configured to update the value of the global variable corresponding to each process in the target result table according to a target result table before the obtaining module obtains the value of the global variable of the first process, where different values of the global variable correspond to different memory allocator, and the target result table is used to indicate a correspondence between processes and memory allocator.
14. The apparatus of claim 9, wherein the memory allocator means for determining further comprises: a processing module;
the processing module is configured to test the first process in the electronic device through the at least two memory distributors under the condition that test data related to the first process does not exist in the electronic device before the obtaining module obtains information of the first process running in the electronic device, and obtain scores of the first process when each memory distributor is used by the first process respectively;
the determining module is further configured to determine, as a target memory allocator corresponding to the first process, a memory allocator corresponding to a maximum score among the plurality of scores;
the processing module is further configured to associate the first process with a target memory allocator corresponding to the first process, and add the first process to a target result table.
15. The apparatus of claim 9, wherein the memory allocator means for determining further comprises: a processing module;
the processing module is configured to modify an original compiling condition to obtain a target compiling condition before the determining module determines a target memory allocator from at least two memory allocators compatible with the electronic device according to the information of the first process;
wherein, under the original compiling condition, the electronic device supports a memory allocator; under the target compiling condition, the electronic equipment is compatible with the at least two memory allocators.
16. The apparatus of claim 10,
the first interface is a memory allocation interface, and the target memory allocator is used for allocating memory for the first process;
alternatively, the first and second electrodes may be,
the first interface is a memory release interface, and the target memory allocator is configured to release the memory of the first process.
17. An electronic device comprising a processor, a memory and a program or instructions stored on the memory and executable on the processor, which program or instructions, when executed by the processor, carry out the steps of the memory allocator determination method according to any of claims 1 to 8.
18. A readable storage medium, on which a program or instructions are stored, which program or instructions, when executed by a processor, carry out the steps of the memory allocator determination method according to any of claims 1 to 8.
CN202211190505.XA 2022-09-28 2022-09-28 Memory distributor determination method and device, electronic equipment and storage medium Pending CN115586960A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211190505.XA CN115586960A (en) 2022-09-28 2022-09-28 Memory distributor determination method and device, electronic equipment and storage medium
PCT/CN2023/120413 WO2024067348A2 (en) 2022-09-28 2023-09-21 Memory allocator determination method and apparatus, and electronic device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211190505.XA CN115586960A (en) 2022-09-28 2022-09-28 Memory distributor determination method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115586960A true CN115586960A (en) 2023-01-10

Family

ID=84772774

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211190505.XA Pending CN115586960A (en) 2022-09-28 2022-09-28 Memory distributor determination method and device, electronic equipment and storage medium

Country Status (2)

Country Link
CN (1) CN115586960A (en)
WO (1) WO2024067348A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024067348A3 (en) * 2022-09-28 2024-05-16 维沃移动通信有限公司 Memory allocator determination method and apparatus, and electronic device and storage medium

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5420972B2 (en) * 2009-05-25 2014-02-19 株式会社東芝 Memory management device
US8225065B2 (en) * 2010-06-03 2012-07-17 Microsoft Corporation Hierarchical scalable memory allocator
CN104102590A (en) * 2014-07-22 2014-10-15 浪潮(北京)电子信息产业有限公司 Heterogeneous memory management method and device
CN114153615A (en) * 2021-12-09 2022-03-08 腾讯科技(深圳)有限公司 Memory management method, device, equipment, computer program and storage medium
CN115586960A (en) * 2022-09-28 2023-01-10 维沃移动通信有限公司 Memory distributor determination method and device, electronic equipment and storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024067348A3 (en) * 2022-09-28 2024-05-16 维沃移动通信有限公司 Memory allocator determination method and apparatus, and electronic device and storage medium

Also Published As

Publication number Publication date
WO2024067348A2 (en) 2024-04-04
WO2024067348A3 (en) 2024-05-16

Similar Documents

Publication Publication Date Title
US9529692B2 (en) Memory management tools
TWI529524B (en) Recognition application scenarios, power management method, apparatus and terminal equipment
CN110830234B (en) User traffic distribution method and device
CN103577207A (en) Loading method and loading device for interface components in custom interface system
CN111831410A (en) Task processing method and device, storage medium and electronic equipment
CN111124668B (en) Memory release method, memory release device, storage medium and terminal
CN112783761A (en) Method, device and system for testing cold start duration of application program
US10241895B2 (en) Memory stack trace management tool
WO2024067348A2 (en) Memory allocator determination method and apparatus, and electronic device and storage medium
CN111258680A (en) Resource loading method and device, storage medium and electronic device
CN113377614A (en) Generation method and device of call chain information, electronic equipment and storage medium
CN111104178A (en) Dynamic library loading method, terminal device and storage medium
CN111831411A (en) Task processing method and device, storage medium and electronic equipment
CN112989740B (en) Simulation method and device, computer equipment and storage medium
CN112650692A (en) Heap memory allocation method, device and storage medium
CN111385661B (en) Method, device, terminal and storage medium for voice control of full screen playing
CN115941098A (en) Method and system for adjusting vehicle-mounted radio station parameters, electronic equipment and storage medium
CN112073505B (en) Method for unloading on cloud server, control device and storage medium
CN114691496A (en) Unit testing method, unit testing device, computing equipment and medium
US9483241B2 (en) Method ranking based on code invocation
CN113687942A (en) Detection method and device and electronic equipment
US8484628B2 (en) System and method for providing global variables within a human capital management system
CN114513736B (en) Acoustic testing method, equipment, terminal and storage medium for earphone
CN111427550A (en) Object creating method, terminal device and storage medium
CN110825477A (en) Method, device and equipment for loading graphical interface and storage medium

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