CN110008020A - EMS memory management process, device, electronic equipment and computer readable storage medium - Google Patents
EMS memory management process, device, electronic equipment and computer readable storage medium Download PDFInfo
- Publication number
- CN110008020A CN110008020A CN201910163110.2A CN201910163110A CN110008020A CN 110008020 A CN110008020 A CN 110008020A CN 201910163110 A CN201910163110 A CN 201910163110A CN 110008020 A CN110008020 A CN 110008020A
- Authority
- CN
- China
- Prior art keywords
- memory block
- memory
- target
- target identification
- address
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 318
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000003068 static effect Effects 0.000 claims abstract description 42
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000005611 electricity Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation 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/5016—Allocation 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
The embodiment of the present application provides a kind of EMS memory management process, device, electronic equipment and computer readable storage medium, wherein, this method comprises: determining target identification from the idle array of the mark for recording the memory block being currently not used by the static memory pond when detecting business object is application event of the target object from the static memory pond of building application memory;The business object includes application program or service;The target object is the data of memory to be allocated;The target identification is to be in last N of mark in the idle array;Wherein, N is greater than or equal to 1 integer;The target identification is taken out from the idle array to distribute to the target object;The address that obtains the address of the corresponding memory block of the target identification, and will acquire returns to the business object, so that the target object uses the corresponding memory block of the target identification.Using the application, Memory Allocation efficiency can be improved.
Description
Technical field
This application involves field of computer technology more particularly to a kind of EMS memory management process, device, electronic equipment and calculating
Machine readable storage medium storing program for executing.
Background technique
In general, the business object in electronic equipment, such as application program or service need to apply the object of memory, can
Some functional objects for needing committed memory are thought, to operating system application memory in a manner of calling general-purpose interface.For example, electric
Application program A in brain can be the functional objects such as database connection, to operating system application in a manner of calling general-purpose interface
Memory.However, when the business object on electronic equipment needs frequently to apply for memory for some functional objects, Memory Allocation
Efficiency is extremely low.
Summary of the invention
The embodiment of the present application provides a kind of EMS memory management process, device, electronic equipment and computer readable storage medium,
Memory Allocation efficiency can be improved.
In a first aspect, the embodiment of the present application provides a kind of EMS memory management process, includes:
When detect business object be target object from the static memory pond of building apply memory application event when, from
Target identification is determined in the idle array of mark for recording the memory block being currently not used by the static memory pond;Institute
Stating business object includes application program or service;The target object is the data of memory to be allocated;The target identification is institute
It states in idle array in last N of mark;Wherein, N is the integer more than or equal to 1;
The target identification is taken out from the idle array to distribute to the target object;
The address that obtains the address of the corresponding memory block of the target identification, and will acquire returns to the business pair
As so that the target object uses the corresponding memory block of the target identification.
Optionally, the method also includes:
It is corresponding interior according to the target identification when the corresponding memory block of the business object release target identification
The address calculation of counterfoil obtains the target identification;
The target identification is recorded in the idle array.
Optionally, the target identification is recorded in the idle array, comprising:
Last N using the target identification as the idle array are recorded in the idle array.
Optionally, the method also includes:
It is object class belonging to target object or the target object from the memory block of operating system application preset quantity
To construct static memory pond;
Each memory block allocation identification in memory block for the preset quantity, and the mark of each memory block is remembered
It records in idle array.
Optionally, the quantity of the target identification is one, and the data volume of the corresponding memory block of the target identification is greater than
Or the data volume equal to the target object;The data volume of the corresponding memory block of the target identification is according to the target object
Data volume setting, or according to the data volume of the corresponding class of the target object setting.
Optionally, the quantity of the target identification is multiple, each memory block in the corresponding memory block of the target identification
Data volume is less than the target object;The address of each memory block is continuous dispensing, the corresponding memory of the target identification
The address of block is located at the address of first memory block for sequence in each memory block.
Optionally, the initial address in the static memory pond is arranged according to the data volume of operating system paging.
Second aspect, the embodiment of the present application provide a kind of memory management device, comprising:
Determination unit, for when detect business object be target object from the static memory pond of building apply memory Shen
Please event when, from the idle array of the mark for recording the memory block being currently not used by the static memory pond determine
Target identification out;The business object includes application program or service;The target object is the data of memory to be allocated;It is described
Target identification is to be in last N of mark in the idle array;Wherein, N is the integer more than or equal to 1;
Allocation unit, for taking out the target identification from the idle array to distribute to the target object;
Acquiring unit, for obtaining the address of the corresponding memory block of the target identification, and the address that will acquire returns
To the business object, so that the target object uses the corresponding memory block of the target identification.
The third aspect, the embodiment of the present application provide a kind of electronic equipment, including processor and memory, the processor
It is connected with each other with memory, wherein for the memory for storing computer program, the computer program includes that program refers to
It enables, the processor is configured for calling described program instruction, executes method as described in relation to the first aspect.
Fourth aspect, the embodiment of the present application provide a kind of computer readable storage medium, the computer-readable storage
Media storage has computer program, and the computer program includes program instruction, and described program instructs when being executed by a processor
Make the method for the processor execution as described in relation to the first aspect.
In conclusion electronic equipment can be applied for target object from the static memory pond of building when detecting business object
When the application event of memory, from the idle array of the mark for recording the memory block being currently not used by the static memory pond
In determine target identification, and the target identification is taken out from the free time array to distribute to the target object, to obtain
The address of the corresponding memory block of the target identification, and the address that will acquire returns to the business object, so as to the target object
Using the corresponding memory block of the target identification, Memory Allocation efficiency is improved.
Detailed description of the invention
In order to illustrate the technical solutions in the embodiments of the present application or in the prior art more clearly, to embodiment or will show below
There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this
Some embodiments of application for those of ordinary skill in the art without creative efforts, can be with
It obtains other drawings based on these drawings.
Fig. 1 is a kind of flow diagram of EMS memory management process provided by the embodiments of the present application;
Fig. 2 is the flow diagram of another EMS memory management process provided by the embodiments of the present application;
Fig. 3 is a kind of structural schematic diagram of memory management device provided by the embodiments of the present application;
Fig. 4 is the structural schematic diagram of a kind of electronic equipment provided by the embodiments of the present application.
Specific embodiment
Below in conjunction with the attached drawing in the embodiment of the present application, technical solutions in the embodiments of the present application is described.
Referring to Fig. 1, being a kind of flow diagram of EMS memory management process provided by the embodiments of the present application.This method can be with
Applied to electronic equipment.The electronic equipment can be terminal or server.Specifically, this method may comprise steps of:
S101, when detect business object be target object from the static memory pond of building apply memory application event
When, target is determined from the idle array of the mark for recording the memory block being currently not used by the static memory pond
Mark.
Wherein, business object may include the object that application program or service etc. need to apply memory.The target object can
Think the data of memory to be allocated.The data can be the functional object for needing committed memory.For example, which can
Think the data for belonging to int type, or to belong to the data of char type, or the data being composed for different basic data types
(data that such as int, char, string are composed), or can also be the functional objects such as database connection.
Wherein, which is that last N of mark is in the free time array;N be more than or equal to integer;?
It is above-mentioned to detect that business object is the application thing that target object applies for memory from the static memory pond of building in one embodiment
Part can refer to and detect that Memory Allocation interface of the target object in the static memory pond is called by the business object.
In one embodiment, page management memory is pressed in order to facilitate the operating system of electronic equipment, the static memory pond
Initial address can be according to the setting of the data volume of operating system paging.Specifically, can the static memory pond starting point
Location can be the integral multiple of the data volume of the operating system paging.For example, it is assumed that the data volume of operating system paging is 4k, then should
The initial address in static memory pond can be the integral multiple of 4k.
In one embodiment, electronic equipment can be object class belonging to target object or the target object from behaviour
Make the memory block of system application preset quantity to construct static memory pond, and is each memory in the memory block of the preset quantity
Block allocation identification, and by the identification record of each memory block into idle array.Wherein, object belonging to the target object
Class refers to classification belonging to the target object.The category can be arranged according to actual needs.At just creation static memory pond, by
It is all not used by the memory block of the preset quantity, therefore can be by memory block each in the memory block of the preset quantity
Mark is all recorded in idle array.Below, with the change of the use state of each memory block in the memory block of the preset quantity
Change, the mark recorded in the free time array will also change correspondingly.
It may include any one following data volume according to the difference of practical application scene, in the memory block of the preset quantity
Memory block: data volume is greater than the memory block of target object, data volume is equal to the memory block of target object, data volume is less than target
The memory block of the data volume of object.
In an application scenarios, the data volume of each memory block be can be identical in the memory block of the preset quantity.
For example, electronic equipment application 1024 memory blocks, the data volume of 1024 memory blocks are all 8bits.
It may include multiple groups memory block in the memory block of the preset quantity in another application scenarios.Wherein, every group of memory
Block includes at least one memory block, and the data volume of each memory block is identical in every group of memory block.The multiple groups include at least the
One group and second group, this first group is any group in the multiple groups, this second group is the group in addition to first group.In this first group
The data volume of target memory block is different from the data volume of target memory block in this second group.Target memory block in this first group
For the either memory block in this first group, the target memory block in this second group is the either memory block in this second group.For example,
1024 memory blocks of electronic equipment application, may include 3 groups of memory blocks in 1024 memory blocks, each in one group of memory block
The data volume of memory block is 2bits, and the data volume of each memory block is 8bits in one group of memory block, each in one group of memory block
The data volume of memory block is 16bits.
The corresponding application scenarios, the target identification is in addition to that can be in last N of mark in idle array, or, should
Target identification can also be the mark for the satisfactory memory block of data volume chosen from the memory block being currently not used by, should
The mark of the satisfactory memory block of the data volume of selection is not necessarily in last N of mark.
Wherein, the satisfactory memory block of the data volume of the selection can be greater than or equal to the mesh for the data volume chosen
Mark the memory block of object.The data volume of the selection is greater than or equal to the memory block of the target object, is not used by from currently
The data volume that memory block includes be greater than or equal to the target object memory block in, it is determining with target object difference most
Small memory block;Or, the data volume of the selection is greater than or equal to the memory block of the target object, for out of currently be not used by
The data volume that counterfoil includes is greater than or equal in the memory block of the target object, the maximum memory block in the address determined;Or, should
The data volume of selection is greater than or equal to the memory block of the target object, for the data volume for including from the memory block being currently not used by
More than or equal in the memory block of the target object, the smallest memory block in the address determined.
Or, the satisfactory memory block of the data volume of the selection, can also be less than the mesh for the multiple data volumes chosen
Mark the memory block of object.Total data volume that multiple data volumes of the selection are less than the memory block of the target object is greater than or equal to
The target object.Wherein, multiple data volumes of the selection are less than the target object.In one embodiment, the selection is more
A data volume is less than total data volume of the memory block of the target object and the data volume difference minimum of the target object.
In one embodiment, it is assumed that the quantity of preceding aim mark is one, then the corresponding memory block of the target identification
Data volume be greater than or equal to the target object.It is used that is, distributing a memory block at this time and just reaching target object.
Wherein, the data volume of the corresponding memory block of the target identification can be is arranged according to the data volume of the target object
's.The data volume of the corresponding memory block of the target identification can be equal to the data volume of the target object or the target identification corresponds to
Memory block data volume can also be greater than the target object data volume.For example, the target object is the data A of int type, then
The data volume of the corresponding memory block of the target identification can be equal to the data volume of int type data A, or be greater than int type data A
Data volume.
Or, the data volume of the corresponding memory block of the target identification can also be the data according to the corresponding class of the target object
Amount setting.Wherein, the corresponding class of the target object can refer to the corresponding classification of the target object.Specifically, the mesh
The data volume that mark identifies corresponding memory block can be greater than or equal to the data volume of the corresponding class of the target object.For example, the mesh
The data A that object is int type is marked, the corresponding class of the target object is the data of int type, then the corresponding memory block of the target identification
Data volume can be equal to the int type data data volume.
In one embodiment, when under the corresponding class of the target object including multiple objects, the target object is corresponding
The data volume of class can be the data volume of the maximum object of data volume under the corresponding class of the target object determined.By true
The data volume of the maximum object of data volume is made, the data volume of memory block is arranged, is conducive to subsequent for the target object point
With enough memories.
In one embodiment, the quantity of the target identification is multiple, each memory in the corresponding memory block of the target identification
The data volume of block is less than the target object.It is used that is, needing to distribute multiple memory blocks at this time and just reaching target object.Implement at one
In example, the data volume of each memory block be can be according to 2nIt is arranged.Such as, which is the data A, data A of int type
Size be 16bits, then each memory block can be the memory block of 4 4bits or the memory block of 2 8bits.
Wherein, the address of each memory block is continuous dispensing.The address of the corresponding memory block of the target identification, it is each for this
Sequence is located at the address of first memory block in memory block.Address is continuous, can be in order to which business object is effectively according to target mark
The address for knowing corresponding memory block uses corresponding memory block.In one embodiment, which can positioned at first memory block
With the corresponding memory block in address the smallest in the address of each memory block referred to.Or, the sequence positioned at first memory block also
The corresponding memory block of designated identification in the mark for each memory block that can refer to.The designated identification is that the smallest address is corresponding
Mark.It in one embodiment, can be by the corresponding relationship of the address of the mark and memory block of the memory block pre-established, really
Make designated identification, wherein aforementioned sequence is positioned at the memory block that the address of first memory block can be that sequence is located at first
Initial address.The embodiment of the present application is by being set in each memory block position of sorting for the address of the corresponding memory block of the target identification
In the address of first memory block, currently available address can be rapidly and accurately obtained in order to business object.
In one embodiment, in the aforementioned memory block for preset quantity the mark of each memory block distribution can be according to
Preset mark computation rule is obtained according to the address calculation of memory block each in the memory block of the preset quantity.
S102, the target identification is taken out from the idle array to distribute to the target object;
S103, the address for obtaining the corresponding memory block of the target identification, and the address that will acquire returns to the industry
Business object, so that the target object uses the corresponding memory block of the target identification.
In the embodiment of the present application, electronic equipment can be taken out the target identification from the free time array to distribute to target
Object, and the address of the corresponding memory block of the available target identification, the address that this is got returns to the business pair
As so that the corresponding memory block of the target identification can be used in the target object.Wherein, it is taken out from idle array, it can
To include: to be deleted from idle data.
In one embodiment, electronic equipment can establish the corresponding relationship of the mark of memory block and the address of memory block,
To inquire the address of the corresponding memory block of the target identification according to the corresponding relationship, so that it is corresponding to obtain the target identification
The address of memory block.Wherein, the address of the memory block is the initial address of the memory block.
As it can be seen that in embodiment shown in FIG. 1, electronic equipment can be when detecting that business object is target object from building
When the application event of memory is applied in static memory pond, from for recording the memory block being currently not used by the static memory pond
Target identification is determined in the idle array of mark, and the target identification is taken out from the free time array to distribute to the target
Object, so that the address that obtains the address of the corresponding memory block of the target identification, and will acquire returns to the business object, with
Just the target object uses the corresponding memory block of the target identification, improves Memory Allocation efficiency.
Referring to Fig. 2, for the flow diagram of another EMS memory management process provided by the embodiments of the present application.This method can
To be applied to electronic equipment, which can be terminal or server.Specifically, this method may comprise steps of:
S201, when detect business object be target object from the static memory pond of building apply memory application event
When, target is determined from the idle array of the mark for recording the memory block being currently not used by the static memory pond
Mark;
S202, the target identification is taken out from the idle array to distribute to the target object;
S203, the address for obtaining the corresponding memory block of the target identification, and the address that will acquire returns to the industry
Business object, so that the target object uses the corresponding memory block of the target identification.
Wherein, step S201-S203 may refer to the step S101-S103 in Fig. 1 embodiment, and the embodiment of the present application is herein
It does not repeat them here.
S204, when the business object discharges the corresponding memory block of the target identification, according to the target identification pair
The address calculation for the memory block answered obtains the target identification.
In the embodiment of the present application, electronic equipment can be corresponding according to the target identification according to preset mark computation rule
The address calculation of memory block obtain the target identification.
In one embodiment, the preset mark computation rule can positional shift is determined according to rule, electricity
Sub- equipment obtains the mesh according to preset mark computation rule, according to the address calculation of the corresponding memory block of the target identification
Mark mark, may include: the positional shift for calculating the address of the corresponding memory block of target identification in the static memory pond, and root
Target identification is calculated according to the positional shift being calculated.
S205, the target identification is recorded in the idle array.
In the embodiment of the present application, electronic equipment the target identification can be recorded in the idle data.
It is described that target identification is recorded in the idle array, comprising: by the target identification in the embodiment of the present application
Last N as the idle array are recorded in the idle array.
For example, last mark 10 has been taken out from idle array, then when putting back to, so that it may by the mark
Knowledge 10 is recorded in idle array as last position of the free time array.Since the mark in idle array is dynamically to become
Change, therefore identifies 10 positions put back to and be not necessarily position when it is removed.
In one embodiment, the target identification is recorded in the idle array, comprising: determine the target identification
Position where when being taken out from idle array, and the position where when the target identification is put back to the taking-up.Wherein, electronic equipment
It can recorde the position when target identification takes out from the idle data.
As it can be seen that in embodiment shown in Fig. 2, electronic equipment can be when detecting that business object is target object from building
When the application event of memory is applied in static memory pond, from for recording the memory block being currently not used by the static memory pond
Target identification is determined in the idle array of mark, and the target identification is taken out from the free time array to distribute to the target
Object, so that the address that obtains the address of the corresponding memory block of the target identification, and will acquire returns to the business object, with
Just the target object uses the corresponding memory block of the target identification;Also, electronic equipment can also need to discharge in business object
When memory, target identification is obtained according to the address calculation of the corresponding memory block of target identification, idle number is recorded in target identification
In group, to mention memory management efficiency.
Referring to Fig. 3, being a kind of structural schematic diagram of memory management device provided by the embodiments of the present application.Wherein, the dress
It sets and can be applied to terminal or server.Specifically, device may include:
Determination unit 31 detects that business object applies for memory from the static memory pond of building for target object for working as
When application event, from the idle array of the mark for recording the memory block being currently not used by the static memory pond really
Make target identification;The business object includes application program or service;The target object is the data of memory to be allocated;Institute
Stating target identification is in the idle array in last N of mark;Wherein, N is the integer more than or equal to 1;
Allocation unit 32, for taking out the target identification from the idle array to distribute to the target pair
As;
Acquiring unit 33, for obtaining the address of the corresponding memory block of the target identification, and the address that will acquire is returned
Back to the business object, so that the target object uses the corresponding memory block of the target identification.
In a kind of optional embodiment, processing unit 34, for discharging the target identification when the business object
When corresponding memory block, the target identification is obtained according to the address calculation of the corresponding memory block of the target identification, and by institute
Target identification is stated to be recorded in the idle array.
In a kind of optional embodiment, processing unit 34 is specifically used for using the target identification as the free time
Last N of array are recorded in the idle array.
In a kind of optional embodiment, processing unit 34 is also used to as target object or target object institute
The object class of category is from the memory block of operating system application preset quantity to construct static memory pond;For the memory of the preset quantity
Each memory block allocation identification in block, and by the identification record of each memory block into idle array.
In a kind of optional embodiment, the quantity of the target identification is one, and the target identification is corresponding interior
The data volume of counterfoil is greater than or equal to the data volume of the target object;The data volume of the corresponding memory block of the target identification is
According to the setting of the data volume of the target object, or according to the setting of the data volume of the corresponding class of the target object.
In a kind of optional embodiment, the quantity of the target identification be it is multiple, in the target identification is corresponding
The data volume of each memory block is less than the target object in counterfoil;The address of each memory block is continuous dispensing, the mesh
Mark identifies the address of corresponding memory block, and the address of first memory block is located at for sequence in each memory block.
In a kind of optional embodiment, the initial address in the static memory pond is the number according to operating system paging
According to amount setting.
As it can be seen that in embodiment shown in Fig. 3, electronic equipment can be when detecting that business object is target object from building
When the application event of memory is applied in static memory pond, from for recording the memory block being currently not used by the static memory pond
Target identification is determined in the idle array of mark, and the target identification is taken out from the free time array to distribute to the target
Object, so that the address that obtains the address of the corresponding memory block of the target identification, and will acquire returns to the business object, with
Just the target object uses the corresponding memory block of the target identification, improves Memory Allocation efficiency.
Referring to Fig. 4, being the structural schematic diagram of a kind of electronic equipment provided by the embodiments of the present application.Wherein, which sets
Standby can be terminal or server.Wherein, electronic equipment as described in this embodiment may include: one or more processors
1000 and memory 2000, processor 1000 can be connected by bus with memory 2000.Optionally, which may be used also
To include one or more input equipments 3000, one or more output equipments 4000, processor 1000, memory 2000, one
It can be connected by bus between a or multiple input equipments 3000, one or more output equipments 4000.Input equipment 3000,
Output equipment 4000 may include the wired or wireless communication interface of standard.
Processor 1000 can be central processing module (Central Processing Unit, CPU), and the processor is also
It can be other general processors, digital signal processor (Digital Signal Processor, DSP), dedicated integrated electricity
Road (Application Specific Integrated Circuit, ASIC), ready-made programmable gate array (Field-
Programmable Gate Array, FPGA) either other programmable logic device, discrete gate or transistor logic,
Discrete hardware components etc..General processor can be microprocessor or the processor is also possible to any conventional processor
Deng.
Memory 2000 can be high speed RAM memory, can also be non-labile memory (non-volatile
), such as magnetic disk storage memory.Memory 2000 is used to store a set of program code, input equipment 3000, output equipment
4000 and processor 1000 can call the program code stored in memory 2000.Specifically:
Processor 1000 detects that business object applies for memory from the static memory pond of building for target object for working as
When application event, from the idle array of the mark for recording the memory block being currently not used by the static memory pond really
Make target identification;The business object includes application program or service;The target object is the data of memory to be allocated;Institute
Stating target identification is in the idle array in last N of mark;Wherein, N is the integer more than or equal to 1;It will be described
Target identification takes out from the idle array to distribute to the target object;Obtain the corresponding memory block of the target identification
Address, and the address that will acquire returns to the business object, so that the target object uses the target identification pair
The memory block answered.
Optionally, processor 1000 are also used to when the corresponding memory block of the business object release target identification,
The target identification is obtained according to the address calculation of the corresponding memory block of the target identification;Institute is recorded in the target identification
It states in idle array.
Optionally, the target identification is recorded in the idle array processor 1000, specially by the target
It identifies and is recorded in the idle array as last N of the idle array.
Optionally, processor 1000 are also used to as object class belonging to target object or the target object from operation
The memory block of system application preset quantity is to construct static memory pond;Each memory block point in memory block for the preset quantity
With mark, and by the identification record of each memory block into idle array.
Optionally, the quantity of the target identification is one, and the data volume of the corresponding memory block of the target identification is greater than
Or the data volume equal to the target object;The data volume of the corresponding memory block of the target identification is according to the target object
Data volume setting, or according to the data volume of the corresponding class of the target object setting.
Optionally, the quantity of the target identification is multiple, each memory block in the corresponding memory block of the target identification
Data volume is less than the target object;The address of each memory block is continuous dispensing, the corresponding memory of the target identification
The address of block is located at the address of first memory block for sequence in each memory block.
Optionally, the initial address in the static memory pond is arranged according to the data volume of operating system paging.
In the specific implementation, processor 1000, input equipment 3000 described in the embodiment of the present application, output equipment 4000
Implementation described in executable Fig. 1-Fig. 2 embodiment, also can be performed implementation described in the embodiment of the present application, herein
It repeats no more.
It can integrate in a processing module, be also possible to each in each functional module in each embodiment of the application
Module physically exists alone, and is also possible to two or more modules and is integrated in a module.Above-mentioned integrated module was both
It can be realized, can also be realized in the form of sampling software functional module in the form of sampling hardware.
Those of ordinary skill in the art will appreciate that realizing all or part of the process in above-described embodiment method, being can be with
Relevant hardware is instructed to complete by computer program, the program can be stored in a computer-readable storage medium
In, the program is when being executed, it may include such as the process of the embodiment of above-mentioned each method.Wherein, the medium is that computer can
Read storage medium, the computer readable storage medium can for magnetic disk, CD, read-only memory (Read-Only Memory,
) or random access memory (Random Access Memory, RAM) etc. ROM.
Above disclosed is only a kind of preferred embodiment of the application, cannot limit the power of the application with this certainly
Sharp range, those skilled in the art can understand all or part of the processes for realizing the above embodiment, and weighs according to the application
Benefit requires made equivalent variations, still belongs to the scope covered by the invention.
Claims (10)
1. a kind of EMS memory management process characterized by comprising
When detecting business object is application event of the target object from the static memory pond of building application memory, from for remembering
It records in the idle array of the mark for the memory block being currently not used by the static memory pond and determines target identification;The industry
Business object includes application program or service;The target object is the data of memory to be allocated;The target identification is the sky
Last N of mark is in not busy array;Wherein, N is the integer more than or equal to 1;
The target identification is taken out from the idle array to distribute to the target object;
The address that obtains the address of the corresponding memory block of the target identification, and will acquire returns to the business object, with
Toilet states target object and uses the corresponding memory block of the target identification.
2. the method according to claim 1, wherein the method also includes:
When the corresponding memory block of the business object release target identification, according to the corresponding memory block of the target identification
Address calculation obtain the target identification;
The target identification is recorded in the idle array.
3. according to the method described in claim 2, it is characterized in that, the target identification is recorded in the idle array,
Include:
Last N using the target identification as the idle array are recorded in the idle array.
4. the method according to claim 1, wherein the method also includes:
For object class belonging to target object or the target object from the memory block of operating system application preset quantity with structure
Build static memory pond;
Each memory block allocation identification in memory block for the preset quantity, and the identification record of each memory block is arrived
In idle array.
5. method according to any of claims 1-4, which is characterized in that the quantity of the target identification is one,
The data volume of the corresponding memory block of the target identification is greater than or equal to the data volume of the target object;The target identification pair
The data volume for the memory block answered is arranged according to the data volume of the target object, or corresponding according to the target object
The data volume setting of class.
6. method according to any of claims 1-4, which is characterized in that the quantity of the target identification be it is multiple,
The data volume of each memory block is less than the target object in the corresponding memory block of the target identification;The address of each memory block
Continuous dispensing, the address of the corresponding memory block of the target identification, be in each memory block sequence positioned at first it is interior
The address of counterfoil.
7. the method according to claim 1, wherein the initial address in the static memory pond is to be according to operation
The data volume setting of system paging.
8. a kind of memory management device characterized by comprising
Determination unit detects that business object is application thing of the target object from the static memory pond of building application memory for working as
When part, mesh is determined from the idle array of the mark for recording the memory block being currently not used by the static memory pond
Mark mark;The business object includes application program or service;The target object is the data of memory to be allocated;The target
It is identified as in the idle array in last N of mark;Wherein, N is the integer more than or equal to 1;
Allocation unit, for taking out the target identification from the idle array to distribute to the target object;
Acquiring unit, for obtaining the address of the corresponding memory block of the target identification, and the address that will acquire returns to institute
Business object is stated, so that the target object uses the corresponding memory block of the target identification.
9. a kind of electronic equipment, which is characterized in that including processor and memory, the processor and memory are connected with each other,
Wherein, the memory is for storing computer program, and the computer program includes program instruction, and the processor is configured
For calling described program to instruct, the method according to claim 1 to 7 is executed.
10. a kind of computer readable storage medium, which is characterized in that the computer-readable recording medium storage has computer journey
Sequence, the computer program include program instruction, and described program instruction executes the processor such as
The described in any item methods of claim 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910163110.2A CN110008020B (en) | 2019-03-05 | 2019-03-05 | Memory management method, memory management device, electronic equipment and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910163110.2A CN110008020B (en) | 2019-03-05 | 2019-03-05 | Memory management method, memory management device, electronic equipment and computer readable storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110008020A true CN110008020A (en) | 2019-07-12 |
CN110008020B CN110008020B (en) | 2024-04-09 |
Family
ID=67166349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910163110.2A Active CN110008020B (en) | 2019-03-05 | 2019-03-05 | Memory management method, memory management device, electronic equipment and computer readable storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110008020B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111708641A (en) * | 2020-07-14 | 2020-09-25 | 腾讯科技(深圳)有限公司 | Memory management method, device and equipment and computer readable storage medium |
CN113742056A (en) * | 2020-11-19 | 2021-12-03 | 北京沃东天骏信息技术有限公司 | Data storage method, device and equipment and computer readable storage medium |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1556475A (en) * | 2004-01-02 | 2004-12-22 | 中兴通讯股份有限公司 | Method of internal storage releasing in embedded type real time operation system |
US20050013462A1 (en) * | 1994-11-16 | 2005-01-20 | Rhoads Geoffrey B. | Paper products and physical objects as means to access and control a computer or to navigate over or act as a portal on a network |
CN101110043A (en) * | 2007-09-04 | 2008-01-23 | 杭州华三通信技术有限公司 | Resource management method of multiple nucleus system and its controlling nucleus |
CN101853215A (en) * | 2010-06-01 | 2010-10-06 | 恒生电子股份有限公司 | Memory allocation method and device |
CN105373484A (en) * | 2014-08-20 | 2016-03-02 | 西安慧泽知识产权运营管理有限公司 | Memory distribution, storage and management method in network communication chip |
CN109164990A (en) * | 2018-09-13 | 2019-01-08 | 东信和平科技股份有限公司 | A kind of memory data update method, device, equipment and storage medium |
-
2019
- 2019-03-05 CN CN201910163110.2A patent/CN110008020B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050013462A1 (en) * | 1994-11-16 | 2005-01-20 | Rhoads Geoffrey B. | Paper products and physical objects as means to access and control a computer or to navigate over or act as a portal on a network |
CN1556475A (en) * | 2004-01-02 | 2004-12-22 | 中兴通讯股份有限公司 | Method of internal storage releasing in embedded type real time operation system |
CN101110043A (en) * | 2007-09-04 | 2008-01-23 | 杭州华三通信技术有限公司 | Resource management method of multiple nucleus system and its controlling nucleus |
CN101853215A (en) * | 2010-06-01 | 2010-10-06 | 恒生电子股份有限公司 | Memory allocation method and device |
CN105373484A (en) * | 2014-08-20 | 2016-03-02 | 西安慧泽知识产权运营管理有限公司 | Memory distribution, storage and management method in network communication chip |
CN109164990A (en) * | 2018-09-13 | 2019-01-08 | 东信和平科技股份有限公司 | A kind of memory data update method, device, equipment and storage medium |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111708641A (en) * | 2020-07-14 | 2020-09-25 | 腾讯科技(深圳)有限公司 | Memory management method, device and equipment and computer readable storage medium |
CN111708641B (en) * | 2020-07-14 | 2024-03-19 | 腾讯科技(深圳)有限公司 | Memory management method, device, equipment and computer readable storage medium |
CN113742056A (en) * | 2020-11-19 | 2021-12-03 | 北京沃东天骏信息技术有限公司 | Data storage method, device and equipment and computer readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN110008020B (en) | 2024-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110008021B (en) | Memory management method, memory management device, electronic equipment and computer readable storage medium | |
CN107241281B (en) | Data processing method and device | |
CN107506145B (en) | Physical storage scheduling method and cloud host creation method | |
CN110008020A (en) | EMS memory management process, device, electronic equipment and computer readable storage medium | |
EP3171274A1 (en) | Resource leak detecting method, device, and system | |
CN108491122A (en) | A kind of click event response method, computer readable storage medium and terminal device | |
CN110555014B (en) | Data migration method and system, electronic device and storage medium | |
CN103763126A (en) | System and method for monitoring database and database monitoring device | |
CN109634524B (en) | Data partition configuration method, device and equipment of data processing daemon | |
CN114640707A (en) | Message asynchronous processing method and device, electronic equipment and storage medium | |
CN112860412B (en) | Service data processing method and device, electronic equipment and storage medium | |
CN116204311A (en) | Pod cluster capacity expansion and contraction method and device, computer equipment and storage medium | |
CN104281587A (en) | Connection establishing method and device | |
CN109445863A (en) | A kind of data processing method based on FPGA, device, equipment and medium | |
CN111131512B (en) | Equipment information processing method and device, storage medium and processor | |
CN114675931A (en) | Resource monitoring method and monitoring device for integrated platform instance | |
CN113392131A (en) | Data processing method and device and computer equipment | |
CN111079390B (en) | Method and device for determining selection state of check box list | |
CN112162951A (en) | Information retrieval method, server and storage medium | |
CN105279239A (en) | Metadata processing delay statistic method for distributed file system | |
CN104426916A (en) | Activation code processing method and system | |
CN112732664B (en) | Evidence extraction method, device, electronic equipment and storage medium | |
CN113703685B (en) | Data storage method, device, equipment and medium | |
CN111243250B (en) | Maintenance early warning method, device and equipment based on alarm data | |
CN114443319B (en) | Message deduplication processing method and device, storage medium and electronic equipment |
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 |