CN115587053A - Memory area determination method and device, electronic equipment and computer readable medium - Google Patents

Memory area determination method and device, electronic equipment and computer readable medium Download PDF

Info

Publication number
CN115587053A
CN115587053A CN202211085598.XA CN202211085598A CN115587053A CN 115587053 A CN115587053 A CN 115587053A CN 202211085598 A CN202211085598 A CN 202211085598A CN 115587053 A CN115587053 A CN 115587053A
Authority
CN
China
Prior art keywords
page table
virtual address
segment
target
address segment
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
CN202211085598.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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN202211085598.XA priority Critical patent/CN115587053A/en
Publication of CN115587053A publication Critical patent/CN115587053A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/109Address translation for multiple virtual address spaces, e.g. segmentation

Abstract

The application discloses a memory area determination method, a memory area determination device, electronic equipment and a computer readable medium, which are applied to the electronic equipment and comprise the following steps: the method comprises the steps that when the electronic equipment executes a process, a virtual address space of the electronic equipment is obtained, and the virtual address space comprises at least one virtual address segment; dividing the virtual address space according to the specified number of the virtual address segments to obtain at least one level page table; if at least two target virtual address segments exist in the primary page table, taking the primary page table as a target page table, wherein data stored in a physical address segment by the target virtual address segment cannot be successfully acquired; if the target virtual address segment does not have a corresponding physical address segment, a physical address segment is matched for the target virtual address again; and taking the physical address segment corresponding to each virtual address segment in the target page table as a hot zone segment. Hot zone segments in physical address segments can be found quickly and efficiently.

Description

Memory area determination method and device, electronic equipment and computer readable medium
Technical Field
The present disclosure relates to the field of data processing technologies, and in particular, to a method and an apparatus for determining a memory area, an electronic device, and a computer-readable medium.
Background
At present, with the development of electronic information technology, the memory configured by an electronic device is larger and larger. Although, physical address spaces often used in memory can be found, marked as hot areas. However, the conventional method for searching for the hot area in the physical address space in the memory is inefficient.
Disclosure of Invention
The application provides a memory area determination method, a memory area determination device, electronic equipment and a computer readable medium.
In a first aspect, an embodiment of the present application provides a method for determining a memory area, where the method is applied to an electronic device, and the method includes: when the electronic equipment executes a process, acquiring a virtual address space of the electronic equipment, wherein the virtual address space comprises at least one virtual address segment; dividing the virtual address space according to the virtual address segments with the specified number to obtain at least one level page table; if at least two target virtual address segments exist in the primary page table, taking the primary page table as a target page table, wherein data stored in a physical address segment by the target virtual address segment cannot be successfully acquired; if the target virtual address segment does not have a corresponding physical address segment, a physical address segment is matched for the target virtual address again; and taking the physical address segment corresponding to each virtual address segment in the target page table as a hot zone segment.
In a second aspect, an embodiment of the present application further provides a device for determining a memory area, where the device includes: the device comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring a virtual address space of the electronic equipment when the electronic equipment executes a process, and the virtual address space comprises at least one virtual address segment; the processing unit is used for dividing the virtual address space according to the specified number of the virtual address segments to obtain at least one primary page table; a first determining unit, configured to, if at least two target virtual address segments exist in the primary page table, use the primary page table as a target page table, where data stored in a physical address segment by the target virtual address segment cannot be successfully acquired; a second determining unit, configured to re-match a physical address segment for the target virtual address if the target virtual address segment does not have a corresponding physical address segment; and the determining unit is used for taking the physical address segment corresponding to each virtual address segment in the target page table as a hot zone segment.
In a third aspect, an embodiment of the present application further provides an electronic device, including: one or more processors; a memory; the one or more processors are to execute instructions; the memory is used for providing a physical address; the bus is used for providing data transmission; the one or more processors are configured to perform the above-described method.
In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium, where the readable storage medium stores program code executable by a processor, and the program code causes the processor to execute the method described above when executed by the processor.
In a fifth aspect, the present application also provides a computer program product, which includes a computer program/instruction, and when executed by a processor, the computer program/instruction implements the above method.
The application provides a memory area determining method, a memory area determining device, electronic equipment and a computer readable medium, wherein when the electronic equipment executes a process, a virtual address space of the electronic equipment can be obtained, and then the virtual address space is divided according to a specified number of virtual address segments to obtain at least one level page table; if at least two target virtual address segments exist in the primary page table, taking the primary page table as a target page table, and if the target virtual address segments do not have corresponding physical address segments, re-matching a physical address segment for the target virtual address; so that the physical address segment corresponding to each virtual address segment in the target page table can be used as a hot zone segment. If a part of the randomly selected virtual address space is randomly selected from a larger virtual address space, and then the corresponding hot zone segment is searched according to whether the selected part of the virtual address space is called or not, the hot zone segment cannot be searched for a long time if the randomly selected part of the virtual address space is not called all the time. The method provided by the application divides the virtual address space into at least one first-level page table, when at least two target virtual address segments exist in the first-level page table, the physical address segments corresponding to all the virtual address segments determined in the first-level page table can be directly determined as hot zone segments, and therefore the hot zone segments can be found quickly and effectively.
Additional features and advantages of embodiments of the present application will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of embodiments of the present application. The objectives and other advantages of the embodiments of the application may be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 shows a block diagram of an electronic device provided in an embodiment of the present application;
fig. 2 shows a flowchart of a method for determining a memory area according to an embodiment of the present application;
FIG. 3 is a schematic diagram of a one-level page table provided by an embodiment of the present application;
fig. 4 is a flowchart illustrating a method for determining a memory area according to another embodiment of the present application;
fig. 5 is a flowchart illustrating a method for determining a memory area according to yet another embodiment of the present application;
FIG. 6 illustrates one embodiment of step S340 in FIG. 5;
FIG. 7 illustrates one embodiment of step S350 of FIG. 5;
FIG. 8 is a schematic diagram of a secondary page table provided by an embodiment of the present application;
fig. 9 shows a block diagram of a unit of a memory area determination apparatus according to an embodiment of the present application;
FIG. 10 is a schematic diagram of an electronic device provided by an embodiment of the application;
FIG. 11 is a block diagram illustrating a computer-readable storage medium provided by an embodiment of the present application;
fig. 12 shows a block diagram of a computer program product provided in an embodiment of the present application.
Detailed Description
In order to make those skilled in the art better understand the technical solutions of the embodiments of the present application, 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 only a part of the embodiments of the present application, and not all the embodiments. The components of the embodiments of the present application, generally described and illustrated in the figures herein, can be arranged and designed in a wide variety of different configurations. Thus, the following detailed description of the embodiments of the present application, presented in the accompanying drawings, is not intended to limit the scope of the claimed application, but is merely representative of selected embodiments of the application. All other embodiments, which can be derived by a person skilled in the art from the embodiments of the present application without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, it need not be further defined or explained in subsequent figures. Meanwhile, in the description of the present application, the terms "first", "second", and the like are used only for distinguishing the description, and are not to be construed as indicating or implying relative importance.
At present, with the development of electronic information technology, the memory of the electronic device configuration is larger and larger. Although, physical address spaces often used in memory can be looked up, marked as hot zones. However, the conventional method for searching for the hot area in the physical address space in the memory is inefficient. How to improve the efficiency of searching for the hot area in the physical address space in the memory is an urgent problem to be solved.
At present, any part of the virtual address space may be randomly selected and determined as the first part of the virtual address space, where the virtual address space may include a plurality of virtual address segments, and thus the first part of the virtual address space may also include a plurality of virtual address segments. And then randomly selecting the virtual address segments in the first part of the virtual address space, judging whether the selected virtual address segments are called by the process, and if so, determining that the physical address segments corresponding to the virtual address segments are frequently-accessed segments, namely determining that the physical address segments are hot zone segments.
For example, if the virtual address space is 1GB in size, where GB is Gigabyte (Gigabyte), and if each virtual address segment is 4KB in size, where KB is Kilobyte (Kilobyte), it can be known that 1GB/4KB =262144 virtual address segments are included in the virtual address space through a simple division operation.
The determination of the corresponding physical address segment by the virtual address segment may be implemented by mapping. For example, if the virtual address segment includes 0x0, 0x1, 0x2, the physical address segment includes 0x8001,0x 8002, 0x8003, 0x8004, 0x8005, and 0x8006. Where the address segments 0x8002, 0x8003, and 0x8004 are already occupied by data, and the free physical address segments are 0 × 8001,0 × 8005,0 × 8006, the virtual address segments can be mapped to the free physical address segments. Specifically, the mapping relationship may be that the virtual address segment 0x0 is mapped to the physical address segment 0x8001, the virtual address segment 0x1 is mapped to the physical address segment 0x8005, and the virtual address segment 0x2 is mapped to the physical address segment 0x8006. Through the mapping relation, the corresponding physical address segment can be determined through the virtual address segment.
Any part of the physical address space may also be randomly selected and determined as the first part of the physical address space, where the physical address space may include a plurality of physical address segments, and thus the first part of the physical address space may also include a plurality of physical address segments. And then randomly selecting the physical address segment in the first part of the physical address space, judging whether the selected physical address segment is called by the process, if so, determining that the physical address segment is a frequently-accessed segment, namely determining that the physical address segment is a hot zone segment.
However, the inventor has found in research that, in the above method for searching hot zone segments based on a virtual address space, whether a process call has occurred is detected by randomly selecting a part of the virtual address space and then randomly sampling the selected part of the virtual address space. Because the virtual address space in the existing electronic equipment is large, the accuracy of searching the hot zone segments by the method is low, and the efficiency is also low. In the method for searching for the hot zone segments based on the physical address space, similar to the method for searching for the hot zone segments based on the virtual address space, the method for searching for the hot zone segments based on the physical address space also has the problems of low precision and low efficiency.
Therefore, in order to overcome the above-mentioned drawbacks, the present application provides a method, an apparatus, an electronic device, and a computer-readable medium for determining a memory area, where the method may obtain a virtual address space of the electronic device when the electronic device executes a process, and then divide the virtual address space into a specified number of virtual address segments to obtain at least one primary page table; if at least two target virtual address segments exist in the primary page table, taking the primary page table as a target page table, and if the target virtual address segments do not have corresponding physical address segments, re-matching a physical address segment for the target virtual address; so that the physical address segment corresponding to each virtual address segment in the target page table can be used as a hot zone segment. If a part of the randomly selected virtual address space is randomly selected from a larger virtual address space, and then the corresponding hot zone segment is searched according to whether the selected part of the virtual address space is called or not, the hot zone segment cannot be searched for a long time if the randomly selected part of the virtual address space is not called all the time. The method provided by the application divides the virtual address space into at least one first-level page table, when at least two target virtual address segments exist in the first-level page table, the physical address segments corresponding to all the virtual address segments determined in the first-level page table can be directly determined as hot zone segments, and therefore the hot zone segments can be found quickly and effectively.
Referring to fig. 1, fig. 1 shows a block diagram of an electronic device 100 according to an embodiment of the present disclosure, where the electronic device 100 includes a processor 110, a storage 120, and a memory 130. The processor 110 is connected to the storage 120 and the memory 130, respectively, and the storage 120 is further connected to the memory 130.
For some embodiments, the processor 110 may be configured to run a system program installed on the electronic device 100, where the system program may be of different types, for example, a system program corresponding to a mobile electronic device, such as a smartphone system program, an in-vehicle computer system program, or a smart tablet system program, and may also be a desktop computer system program or a system program of a server. Further, when the system program on the electronic device 100 runs, the electronic device 100 may also execute the application program initiated process, that is, the processor 110 in the electronic device 100 may also be used to execute the application program, and in particular, may be used to execute the application program initiated process. The application program may initiate a process request, and the processor 110 may respond to the process request initiated by the application program and execute a process corresponding to the process request. For example, an application may initiate a process request, and the processor 110 may respond to the process request by requesting a corresponding process. For another example, the application may also initiate multiple process requests, and the processor 110 may respond to the process corresponding to each process request, for example, the application a may initiate three process requests, which are a process request A1, a process request A2, and a process request A3, respectively, and the processor 110 may respond to the process request A1, the process request A2, and the process request A3, respectively, and execute the process corresponding to each process request.
Further, when the electronic device 100 executes a process, the processor 110 may be further configured to search a portion of the physical address space that is frequently used, or a portion of the physical address space that is more likely to be frequently used. The physical address space can be divided into a plurality of segments according to a certain space size, wherein each segment can be set with a mark, and the mark can be an address, that is, a specific segment position in the physical address space can be determined through the address, so that the address can also be regarded as identity information of different segments in the physical address space. For example, if the physical address space can be divided into four segments, an address of 0x01 may be set for the first segment, an address of 0x02 may be set for the second segment, 0x03 may be set for the third segment, and 0x04 may be set for the fourth segment, i.e., a plurality of physical address segments may be included in the physical address space. Therefore, when searching for a part of the physical address space with a higher frequency of use, the processor 110 may search for a physical address segment with a higher frequency of use in the physical address space, and the physical address segment with a higher frequency of use is more likely to be used in a process of a subsequent execution process. It should be noted that, if the use frequency is higher, the physical address segment may be called, for example, within a specified time range, and then the physical address segment may be determined as the hot zone segment.
Further, when the electronic device 100 executes a process, the process is generally placed in a virtual address space, and then the mapping between the virtual address space and a physical address space is implemented through a virtual physical address mapping table, so that the process can access data stored in the physical address space through the virtual address space, or store generated data in the physical address space. Specifically, when determining the hot zone segment, the processor 110 may determine the calling condition of the physical address space through the virtual address space, and refer to the description in the following embodiments for a detailed method.
Processor 110 may include one or more processing cores, among other things. The processor 110 may utilize various interfaces and lines to connect various parts in the whole electronic device 100, obtain different requests of the system program and the application program, and execute processes corresponding to the different requests. And searching hot zone segments existing in the physical address space according to the calling condition of the process to the virtual address space. Alternatively, the processor 110 may be implemented in at least one hardware form of a Micro Control Unit (MCU), a Digital Signal Processing (DSP), a Field-Programmable Gate Array (FPGA), and a Programmable Logic Array (PLA).
For some embodiments, the memory 120 may store a system program corresponding to the electronic device 100, for example, if the electronic device 100 is a smart phone, the memory 120 may store a system program of a mobile phone; if the electronic device 100 is a desktop computer, the memory 120 may store a desktop computer system program. The electronic device 100 may run a system program stored in the memory 120, and in particular may be run by the processor 110. The memory 120 may also store various application programs that may be run in a system program run by the electronic device 100. The application program may include at least one process, and specific reference may be made to the foregoing description, which is not described herein again. For some embodiments, the memory 120 may be an electronic memory such as a flash memory, an EEPROM (electrically erasable programmable read only memory), an EPROM, a hard disk, or a ROM.
For some embodiments, memory 130 may include physical memory, with memory 130 typically having a higher read speed, and memory 120 typically having a lower speed than memory 130. Therefore, the memory 130 may pre-read and store the data stored in the storage 120 in the memory 130, and the processor 110 may directly perform data interaction through the memory 130 when executing the process of the application program, so as to avoid that the processor 110 and the storage 120 directly perform data exchange as much as possible, which affects the overall operating speed of the electronic device 100. Further, since the physical memory in the memory 130 is generally small, if the processes of the application are all stored in the physical memory in the memory 130, the number of processes that can be executed at the same time will be affected, and the processes may interfere with each other. Therefore, the memory 130 may further include a virtual memory, and a process executed in the electronic device 100 may be first placed in the virtual memory in the memory 130 by the processor 110, and the virtual memory accesses the corresponding physical memory through the virtual physical address mapping table, specifically, accesses data stored in the physical memory, or writes data generated in the process into the physical memory. The virtual memory may have a larger space than the physical memory, so that the number of processes that can be executed simultaneously by placing the processes in the virtual memory is larger than the number of processes that are directly placed in the physical memory.
For some embodiments, the memory 130 may be a Synchronous Dynamic Random Access Memory (SDRAM) or a Double-Rate SDRAM (ddr SDRAM), etc.
Referring to fig. 2, fig. 2 shows a memory area determination method provided in an embodiment of the present application, where the memory area determination method can be applied to the electronic device 100 in the foregoing embodiment, and the electronic device 100 includes a processor 110, a storage 120, and a memory 130. The processor 110 is connected to the storage 120 and the memory 130, respectively, and the storage 120 is further connected to the memory 130. Specifically, the method includes steps S110 to S150.
Step S110: when the electronic equipment executes a process, a virtual address space of the electronic equipment is obtained, wherein the virtual address space comprises at least one virtual address segment.
For some embodiments, the electronic device may respond to a process request initiated by an application program, so as to execute a process corresponding to the process request; the electronic equipment can also respond to a process request initiated by a certain system process in the currently running system program, so as to execute the process corresponding to the process request; the method includes that a process request triggered based on a trigger condition can be preset in a system program currently running by the electronic device, when the process request is triggered, the system program sends the process request, and at the moment, the electronic device can respond to the process request so as to execute a process corresponding to the process request. For example, if the application is a music playing application, so that the music playing application can issue a progress request for playing music, the electronic device may execute a progress for playing music in response to the progress request for playing music.
For some embodiments, when the electronic device executes a process, since a processor of the electronic device generally performs data interaction with a memory, the process needs to be first read into the memory, and at this time, if the process is directly read into a physical memory, since the size of a space of the physical memory in the electronic device is generally not too large, if the physical memory that needs to be used by one process exceeds the limit of the size of the physical memory, a system program run by the electronic device may crash, thereby affecting the whole electronic device. Therefore, when the electronic device executes a process, a program corresponding to the process can be loaded to the virtual memory, and then the virtual memory and the physical memory are corresponding to each other in a mapping manner, so that the pointed physical memory is determined based on the virtual memory, and the data in the physical memory is read and written. The size of the virtual memory can be much larger than that of the physical memory, so that more processes can be loaded, and processes requiring larger memory space can be loaded.
The virtual memory may include a virtual address space, the virtual address space may be divided into a plurality of segments according to a certain space size, where each segment may be set with a flag, and the flag may be an address, that is, a specific segment position in the virtual address space may be determined by the address, so that the address may also be regarded as identity information of different segments in the virtual address space. For one embodiment provided herein, the virtual address space includes at least one virtual address segment. For example, if the virtual address space can be divided into four segments, an address of 0x01 may be set for the first segment, an address of 0x02 may be set for the second segment, 0x03 may be set for the third segment, and 0x04 may be set for the fourth segment, i.e., a plurality of virtual address segments may be included in the virtual address space. It should be noted that, the number of virtual address segments included in the virtual address space is generally large, and the inclusion of four virtual address segments is only an illustration and is not a limitation of the embodiment of the present application.
Similarly, the physical memory may also include a physical address space, which may refer to the description of the virtual memory described above, and details thereof are not repeated here. Furthermore, the virtual address space can have a mapping relation with the physical address space, so that the process stored in the virtual address space can access the physical address space. For example, a different virtual address segment in a virtual address space may implement mapping with a different physical address segment in a physical address space, e.g., a 0x0001 virtual space segment in a virtual address space may map to a 0x0034 physical address segment in a physical address space, and a 0x0002 virtual space segment in a virtual address space may map to a 0x0064 physical address segment in a physical address space; a 0x0003 segment of virtual space in virtual address space may map to a 0x00ea segment of physical address in physical address space. For another example, different virtual address segments in a virtual address space may map to the same physical address segment in a physical address space, e.g., a 0x0001 virtual space segment in a virtual address space may map to a 0x0034 physical address segment in a physical address space, while a 0x0002 virtual space segment in a virtual address space may map to a 0x0034 physical address segment in a physical address space; a 0x0003 virtual space segment in the virtual address space may map to a 0x0034 physical address segment in the physical address space.
Therefore, when the electronic device executes the process, the process can be loaded into the virtual address space, and then the process is mapped into the physical memory through the virtual address space, so that interaction with data stored in the physical memory is realized. Thus, to determine whether a physical address segment in physical memory is a hot zone segment, the hot zone segment may be determined by monitoring whether a virtual address segment in the virtual address space invokes data in the physical address space. It is to be understood that the hot zone segment may be a physical address segment that is likely to be used in the process of executing the process. Specifically, the hot zone segment may be determined by determining that the physical address segment is more likely to be used in a subsequent execution process by being called within a specified time or by being called multiple times within a specified time.
Step S120: and dividing the virtual address space according to the specified number of the virtual address segments to obtain at least one level page table.
For some embodiments, because the virtual address space in an electronic device is generally larger, there are generally more virtual address segments included in the virtual address space. Therefore, the virtual address space may be divided first, for example, according to a specified number of virtual address segments, and after the virtual address space is divided, at least one level page table may be obtained. The first-level page table may be configured to store each of the virtual address segments obtained by dividing the virtual address segments in the virtual address space. For example, if the virtual address space includes N virtual address segments, wherein the specified number may be N/100, then 100 primary page tables may be obtained, wherein each primary page table includes N/100 virtual address segments.
It should be noted that the specified number in the above examples is only one example, and is not a limitation on the embodiment. Thus, different one-level page tables can be obtained by setting different specified numbers.
Step S130: if at least two target virtual address segments exist in the primary page table, the primary page table is used as a target page table, and data stored in the physical address segments by the target virtual address segments cannot be successfully acquired.
For some embodiments, as can be seen from the above analysis, the virtual address space is generally larger than the physical address space, and therefore, the data stored in the physical address space cannot satisfy each virtual address segmentation call in the virtual address space. When a certain virtual address segment needs to acquire data stored in a corresponding physical address segment, if the data stored in the physical address segment cannot be acquired successfully, the virtual address segment can be used as a target virtual address segment. Therefore, the target virtual address segment, that is, the virtual address segment that initiates a call request for the data stored in the physical address segment and cannot successfully acquire the data stored in the physical address segment.
Further, the fact that the data stored in the physical address segment by the target virtual address segment cannot be successfully acquired may include that the target virtual address does not have a corresponding physical address segment, for example, a mapping relationship between the target virtual address segment and the physical address segment is not stored in the virtual physical address mapping table. The method may further include that the target virtual address segment has a corresponding physical address segment, that is, the target virtual address segment may acquire the physical address segment, but the target virtual address segment has no authority to read or write data stored in the physical address segment, so that the data stored in the physical address segment may not be successfully acquired.
The mapping table of the virtual physical address may store a mapping relationship between a target virtual address segment and a physical address segment. The physical virtual address mapping table can be updated according to the process requirement to add a new mapping relation, or update the original mapping relation, and the like.
Furthermore, for the same one-level page table, if there are multiple virtual address segments in the page table that need to acquire data stored in the corresponding physical address segment, the data stored in the physical address segment cannot be successfully acquired, that is, there are multiple target virtual address segments in the page table, it is characterized that the virtual address segment in the one-level page table is more likely to recall data in the corresponding physical address segment in the execution process of the next process, so that the one-level page table may be used as a target page table, and then the hot zone segment is determined based on the target page table. For one embodiment provided by the present application, the plurality of target virtual address segments may be two virtual address segments. That is, when there are at least two target virtual address fragments in the primary page table, the primary page table is taken as the target page table.
Step S140: and if the target virtual address segment does not have the corresponding physical address segment, a physical address segment is matched with the target virtual address again.
For some embodiments, since a target virtual address segment may not have a corresponding physical address segment, a mapping relationship may first be established for a target virtual address segment in the one-level page table that does not have a corresponding physical address segment. For example, a physical address segment may be re-matched for the target virtual address, such that the target virtual address is mapped to the re-matched physical address segment.
The reallocated physical address segment may be a physical address segment determined from a physical address space.
Step S150: and taking the physical address segment corresponding to each virtual address segment in the target page table as a hot zone segment.
Referring to fig. 3, fig. 3 is a schematic diagram of a level-determining page table. The virtual address space 210 may be divided according to a specified number of the virtual address segments to obtain a plurality of primary page tables 220, and when at least two target virtual address segments exist in the primary page tables, the primary page tables are determined as target page tables. The target page table may thus be used to determine the hot zone segment.
For some embodiments, as can be seen from the foregoing analysis, there may be multiple target virtual address segments in the target page table, and it is characterized that the virtual address segments in the target page table are more likely to call data in corresponding physical address segments again in the next process execution process, so that, for one example, the physical address segment corresponding to each virtual address segment in the target page table may be determined as a hot zone segment.
The method comprises the steps that when the electronic equipment executes a process, a virtual address space of the electronic equipment can be obtained, and then the virtual address space is divided according to the virtual address segments with the specified number to obtain at least one level page table; if at least two target virtual address segments exist in the primary page table, taking the primary page table as a target page table, and if the target virtual address segments do not have corresponding physical address segments, re-matching a physical address segment for the target virtual address; so that the physical address segment corresponding to each virtual address segment in the target page table can be used as a hot zone segment. If a part of the randomly selected virtual address space is randomly selected from a larger virtual address space, and then the corresponding hot zone segment is searched according to whether the selected part of the virtual address space is called or not, the hot zone segment cannot be searched for a long time if the randomly selected part of the virtual address space is not called all the time. The method provided by the application divides the virtual address space into at least one stage page table, and when at least two target virtual address segments exist in the stage page table, the physical address segments corresponding to all the virtual address segments in the stage page table can be directly determined as hot zone segments, so that the hot zone segments can be quickly and effectively found.
Referring to fig. 4, fig. 4 shows a memory area determining method provided in the embodiment of the present application, where the memory area determining method can be applied to the electronic device 100 in the foregoing embodiment, and the electronic device 100 includes a processor 110, a storage 120, and a memory 130. The processor 110 is connected to the storage 120 and the memory 130, respectively, and the storage 120 is further connected to the memory 130. Specifically, the method includes steps S210 to S270.
Step S210: when the electronic equipment executes a process, a virtual address space of the electronic equipment is obtained, wherein the virtual address space comprises at least one virtual address segment.
Step S220: and dividing the virtual address space according to the specified number of the virtual address segments to obtain at least one level page table.
Step S210 and step S220 have been described in detail in the foregoing embodiments, and are not described herein again.
Step S230: setting a flag bit of each of the one-level page tables to a default state.
Step S240: when detecting that at least two target virtual address segments exist in the primary page table, setting a flag bit of the primary page table to a specified state.
Step S250: and taking the one-level page table with the flag bit in the specified state as the target page table.
For some embodiments, when there are multiple primary page tables, there may be more than one primary page table with at least two target virtual address fragments. Thus, a flag bit may be set for each of the primary page tables by which it is characterized whether there are at least two target virtual address segments in the primary page table.
For example, the flag bit may be a designated location stored in a plurality of virtual address segments corresponding to the one-level page table, and different states of the flag bit may be characterized by different values. For example, the flag bit may be the first address in the first level page table, and it may be pre-agreed that "0" in the flag bit is the default state, and that "0" is not the designated state. Therefore, by detecting the data of the first address in each primary page table, when the data stored in the address is detected to be "0", the flag bit of the primary page table is characterized to be in the default state, and when the data stored in the address is detected to be not "0", for example, "0001" or "00ef", the flag bit of the primary page table is characterized to be in the designated state. Further, whether the one-level page table is the target page table can be determined according to whether the flag bit in each one-level page table is in the default state or the designated state.
For an implementation manner provided by the present application, first, the flag bit in each obtained one-level page table may be set to be in the default state, please refer to the above example, then the data corresponding to the first address in each one-level page table may be set to be "0", and at this time, the flag bit in each obtained one-level page table is set to be in the default state.
Further, when it is detected that at least two target virtual address segments exist in the primary page table, a flag bit of the primary page table is set to a specified state. With continued reference to the above example, the data of the first address in the primary page table where there are at least two target virtual address fragments may be set to be not "0", for example, "0001" or "00ec", etc., so as to complete setting the flag bit of the primary page table to the specified state.
Further, a flag bit of each of the one-level page tables may be detected, and the one-level page table with the flag bit in the designated state may be used as the target page table. At this time, the one-level page table having at least two target virtual address segments may be determined as the target page table.
Step S260: and if the target virtual address segment does not have the corresponding physical address segment, a physical address segment is matched for the target virtual address again.
Step S270: and taking the physical address segment corresponding to each virtual address segment in the target page table as a hot zone segment.
Step S260 and step S270 are already described in detail in the foregoing embodiments, and are not described here again.
Referring to fig. 5, fig. 5 illustrates a memory area determining method provided in an embodiment of the present application, where the memory area determining method can be applied to the electronic device 100 in the foregoing embodiment, and the electronic device 100 includes a processor 110, a storage 120, and a memory 130. The processor 110 is connected to the storage 120 and the memory 130, respectively, and the storage 120 is further connected to the memory 130. Specifically, the method includes steps S310 to S370.
Step S310: when the electronic equipment executes a process, a virtual address space of the electronic equipment is obtained, wherein the virtual address space comprises at least one virtual address segment.
Step S320: and dividing the virtual address space according to the specified number of the virtual address segments to obtain at least one level page table.
Step S310 and step S320 have already been described in detail in the foregoing embodiments, and are not described herein again.
Step S330: and dividing the virtual address segment corresponding to each primary page table according to the second designated number to obtain a plurality of secondary page tables.
Step S340: and if the target virtual address segment exists in the primary page table, taking the primary page table as an intermediate page table.
Step S350: if another target virtual address segment exists in a plurality of second page tables of the intermediate page table, the second page table including another target virtual address segment is used as a target page table.
For some embodiments, since there may be a greater number of virtual address segments in the primary page table, the plurality of virtual address segments in each of the primary page tables may be further divided according to a second specified number, and then a plurality of secondary page tables may be obtained. The second-level page table may be configured to store each virtual address segment obtained by dividing each virtual address segment in the first-level page table by a second specified number. For example, if each of the primary page tables includes M virtual address segments, where the second specified number may be M/100, then 100 secondary page tables may be obtained, where each of the secondary page tables includes M/100 virtual address segments.
It will be readily appreciated that since the secondary page tables are partitioned into virtual address fragments included in each of the primary page tables, the number of virtual address fragments included in each of the secondary page tables should not exceed the number of virtual address fragments included in each of the primary page tables. If the number of virtual address fragments included in each secondary page table is equal to the number of virtual address fragments included in each primary page table, there is no difference between the secondary page table and the primary page table, and therefore the number of virtual address fragments included in the secondary page table should be less than the number of virtual address fragments included in the primary page table. Furthermore, the number of the virtual address segments included in the secondary page table is a second designated number, and the number of the virtual address segments included in the primary page table is a designated number, so that it can be known that the designated number is greater than the second designated number. For example, if the specified number is N and the second specified number is M, then N is greater than M.
Further, since there are two levels of page tables, it is possible to use a one-level page table as an intermediate page table when it is detected that there is one of the target virtual address segments in the one-level page table. The target page table may then be determined from the intermediate page table. Specifically, referring to fig. 6, fig. 6 shows an implementation of step S340, which includes S341 and S342.
Step S341: and if the target virtual address segment exists in the primary page table, taking the primary page table as an intermediate page table.
Step S342: setting a flag bit of each of the secondary page tables of the intermediate page tables to a default state.
For some embodiments, upon detecting that one of the target virtual address segments is present in a primary page table, the primary page table is taken as an intermediate page table. The flag bit of each secondary page table in the intermediate page table is then set to a default state. For the flag bit of the secondary page table, similar to the flag bit of the primary page table, reference may be made to the description of the flag bit of the primary page table, and details are not described herein again. Furthermore, whether a target virtual address exists in each secondary page table corresponding to the intermediate page table can be further monitored, so that the target page table can be determined.
Since the primary page table includes a target virtual address segment in each virtual address segment, the primary page table can be used as the intermediate page table, so that it is not difficult to know that a target virtual address exists in the primary page table in each secondary page table in the intermediate page table. Thus, the target page table may also be determined by another target virtual address segment. Specifically, if there is another target virtual address segment in the plurality of secondary page tables of the intermediate page table, the secondary page table including the another target virtual address segment is used as a target page table. Wherein the other target virtual address and the virtual address segment determined when the one-level page table is the intermediate page table are different virtual address segments.
Specifically, referring to fig. 7, fig. 7 shows an implementation diagram of step S350, which includes step S351 and step S352.
Step S351: if another target virtual address segment exists in the multiple second page tables of the intermediate page table, setting a flag bit of the second page table of the another target virtual address segment to a specified state from a default state.
Step S352: and taking the secondary page table with the flag bit meeting the specified state as the target page table.
For some embodiments, if another target virtual address segment is present in the plurality of secondary page tables, a flag bit of the secondary page table in which the target virtual address segment is located is set to a specified state from a default state.
Further, a flag bit of each of the two-stage page tables in the intermediate page table may be detected, and the two-stage page table with the flag bit in the specified state may be used as the target page table.
Referring to FIG. 8, FIG. 8 is a diagram illustrating a two-level page table. The virtual address space 210 may be divided according to a specified number of the virtual address segments, so as to obtain a plurality of one-level page tables 220. The virtual addresses included in each of the primary page tables 220 are segmented according to a second designated number, and a plurality of secondary page tables 230 are obtained. When a target virtual address segment exists in the primary page table, the primary page table is determined to be an intermediate page table. The second page table 230, which identifies another target virtual address segment in the intermediate page table, is then used as the target page table to identify the hot region segment.
For some embodiments, the primary Page table may be a Page table Upper Directory (PUD), the secondary Page table may be a Page table Middle Directory (PMD), and the virtual address fragment may be a Page Table Entry (PTE).
Step S360: and if the target virtual address segment does not have the corresponding physical address segment, a physical address segment is matched for the target virtual address again.
Step S370: and taking the physical address segment corresponding to each virtual address segment in the target page table as a hot zone segment.
Step S360 and step S370 have been described in detail in the foregoing embodiments, and are not described herein again.
The method comprises the steps that when the electronic equipment executes a process, a virtual address space of the electronic equipment can be obtained, and then the virtual address space is divided according to the virtual address segments with the specified number to obtain at least one level page table; dividing the virtual address segment corresponding to each first-level page table according to the second designated number to obtain a plurality of second-level page tables; if one target virtual address segment exists in the primary page table, taking the primary page table as an intermediate page table; if another target virtual address segment exists in a plurality of the second page tables of the intermediate page table, taking the second page table including the another target virtual address segment as a target page table, and if the target virtual address segment does not have a corresponding physical address segment, re-matching a physical address segment for the target virtual address; so that the physical address segment corresponding to each of the virtual address segments in the target page table can be used as a hot zone segment. The hot zone segments are determined by subdividing each primary page table into a plurality of secondary page tables and then determining the target page tables based on the secondary page tables, so that excessive virtual address segments can be prevented from being determined as the hot zone segments, and accuracy of determining the hot zone can be improved.
Referring to fig. 9, a block diagram of a memory region determining apparatus 900 according to an embodiment of the present application is shown, which is applied to an electronic device, and the apparatus includes: an acquisition unit 910, a processing unit 920, a first determination unit 930, a second determination unit 940, and a determination unit 950.
An obtaining unit 910, configured to obtain a virtual address space of an electronic device when the electronic device executes a process, where the virtual address space includes at least one virtual address segment.
The processing unit 920 is configured to divide the virtual address space according to a specified number of the virtual address segments, and obtain at least one level page table.
A first determining unit 930, configured to, if there are at least two target virtual address segments in the primary page table, use the primary page table as a target page table, where data stored in a physical address segment of the target virtual address segment cannot be successfully acquired.
Further, the first determining unit 930 is further configured to set a flag bit of each of the one-level page tables to a default state;
when detecting that at least two target virtual address segments exist in the primary page table, setting a flag bit of the primary page table to a specified state; and taking the one-level page table with the flag bit in the specified state as the target page table.
Further, the first determining unit 930 is further configured to divide the virtual address segment corresponding to each of the primary page tables by the second specified number, so as to obtain a plurality of secondary page tables; if one target virtual address segment exists in the primary page table, taking the primary page table as an intermediate page table; if another target virtual address segment exists in a plurality of the second page tables of the intermediate page table, the second page table including another target virtual address segment is used as a target page table.
Further, the first determining unit 930 is further configured to, if it is detected that one target virtual address segment exists in the primary page table, use the primary page table as an intermediate page table; setting a flag bit of each of the secondary page tables of the intermediate page tables to a default state; if another target virtual address segment exists in the plurality of second page tables of the intermediate page table, using the second page table including the another target virtual address segment as a target page table, including: if another target virtual address segment exists in a plurality of secondary page tables of the intermediate page table, setting a flag bit of a secondary page table of another target virtual address segment to a specified state from a default state; and taking the secondary page table with the flag bit meeting the specified state as the target page table. Wherein the primary page table comprises a page table upper level directory, the secondary page table comprises a page table intermediate directory, and the virtual address segment comprises a page table entry.
A second determining unit 940, configured to re-match a physical address segment for the target virtual address if the target virtual address segment does not have a corresponding physical address segment.
A determining unit 950, configured to use a physical address segment corresponding to each virtual address segment in the target page table as a hot zone segment.
Further, the determining unit 950 is further configured to determine, based on a virtual physical address mapping table, a physical address segment corresponding to each virtual address segment in the target page table, and use the physical address segment as a hot zone segment.
It can be clearly understood by those skilled in the art that, for convenience and simplicity of description, the specific working processes of the above-described apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, the coupling between the units may be electrical, mechanical or other type of coupling.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
Referring to fig. 10, a block diagram of an electronic device 100 according to an embodiment of the present disclosure is shown. The electronic device 100 may be a smart phone, a tablet computer, an electronic book, or other electronic devices capable of running an application. The electronic device 100 in the present application may include one or more of the following components: a processor 110, a memory 120, and one or more applications, wherein the one or more applications may be stored in the memory 120 and configured to be executed by the one or more processors 110, the one or more programs configured to perform a method as described in the aforementioned method embodiments.
Processor 110 may include one or more processing cores. The processor 110 interfaces with various components throughout the electronic device 100 using various interfaces and lines to perform various functions of the electronic device 100 and process data by executing or executing instructions, programs, code sets, or instruction sets stored in the memory 120 and invoking data stored in the memory 120. Alternatively, the processor 110 may be implemented in hardware using at least one of Digital Signal Processing (DSP), field-Programmable Gate Array (FPGA), and Programmable Logic Array (PLA). The processor 110 may integrate one or more of a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), a modem, and the like. The CPU mainly processes an operating system, a user interface, an application program and the like; the GPU is used for rendering and drawing display content; the modem is used to handle wireless communications. It is understood that the modem may not be integrated into the processor 110, but may be implemented by a communication chip.
The Memory 120 may include a Random Access Memory (RAM) or a Read-Only Memory (Read-Only Memory). The memory 120 may be used to store instructions, programs, code sets, or instruction sets. The memory 120 may include a stored program area and a stored data area, wherein the stored program area may store instructions for implementing an operating system, instructions for implementing at least one function (such as a touch function, a sound playing function, an image playing function, etc.), instructions for implementing various method embodiments described below, and the like. The data storage area may also store data created by the electronic device 100 during use (e.g., phone book, audio-video data, chat log data), and the like.
Referring to fig. 11, a block diagram of a computer-readable storage medium according to an embodiment of the present application is shown. The computer readable medium 1100 has stored therein program code that can be called by a processor to perform the method described in the method embodiments above.
The computer-readable storage medium 1100 may be an electronic memory such as a flash memory, an EEPROM (electrically erasable programmable read only memory), an EPROM, a hard disk, or a ROM. Alternatively, the computer-readable storage medium 1100 includes a non-volatile computer-readable storage medium. The computer readable storage medium 1100 has storage space for program code 1110 for performing any of the method steps of the method described above. The program code can be read from or written to one or more computer program products. The program code 1110 may be compressed, for example, in a suitable form.
Referring to fig. 12, a block diagram 1200 of a computer program product according to an embodiment of the present application is shown. Included in the computer program product 1200 are computer programs/instructions 1210, which computer programs/instructions 1210, when executed by a processor, implement the steps of the above-described methods.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit the same; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art will understand that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not necessarily depart from the spirit and scope of the corresponding technical solutions in the embodiments of the present application.

Claims (10)

1. A memory area determination method is applied to electronic equipment and comprises the following steps:
when the electronic equipment executes a process, acquiring a virtual address space of the electronic equipment, wherein the virtual address space comprises at least one virtual address segment;
dividing the virtual address space according to the specified number of the virtual address segments to obtain at least one level page table;
if at least two target virtual address segments exist in the primary page table, taking the primary page table as a target page table, wherein data stored in a physical address segment by the target virtual address segment cannot be successfully acquired;
if the target virtual address segment does not have a corresponding physical address segment, a physical address segment is matched for the target virtual address again; and taking the physical address segment corresponding to each virtual address segment in the target page table as a hot zone segment.
2. The method of claim 1, wherein the one-level page table comprises a plurality of one-level page tables, and wherein taking the one-level page table as a target page table if there are at least two target virtual address fragments in the one-level page table comprises:
setting a flag bit of each of the one-level page tables to a default state;
when detecting that at least two target virtual address segments exist in the primary page table, setting a flag bit of the primary page table to a specified state;
and taking the one-stage page table with the flag bit in the specified state as the target page table.
3. The method of claim 1, wherein the specified number further comprises a second specified number, the specified number being less than the second specified number, and wherein taking the one stage page table as a target page table if there are at least two target virtual address fragments in the one stage page table comprises:
dividing the virtual address segment corresponding to each first-level page table according to the second designated number to obtain a plurality of second-level page tables;
if one target virtual address segment exists in the primary page table, taking the primary page table as an intermediate page table;
if another target virtual address segment exists in a plurality of the second page tables of the intermediate page table, the second page table including another target virtual address segment is used as a target page table.
4. The method of claim 3, wherein said taking said one level page table as an intermediate page table if it is monitored that one of said target virtual address segments exists in said one level page table comprises:
if the target virtual address segment exists in the primary page table, taking the primary page table as an intermediate page table;
setting a flag bit of each of the secondary page tables of the intermediate page table to a default state;
if another target virtual address segment exists in the plurality of secondary page tables of the intermediate page table, using the secondary page table including another target virtual address segment as a target page table, including:
if another target virtual address segment exists in a plurality of secondary page tables of the intermediate page table, setting a flag bit of a secondary page table of another target virtual address segment to a specified state from a default state;
and taking the secondary page table with the flag bit meeting the specified state as the target page table.
5. The method of claim 3 or 4, wherein the primary page table comprises a page table upper level directory, the secondary page table comprises a page table intermediate directory, and the virtual address fragment comprises a page table entry.
6. The method of claim 1, wherein the using the physical address segment corresponding to each of the virtual address segments in the target page table as a hot zone segment comprises:
and determining a physical address segment corresponding to each virtual address segment in the target page table based on a virtual physical address mapping table, and taking the physical address segment as a hot zone segment.
7. A memory area determination device is characterized in that a main control module applied to electronic equipment comprises:
the device comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring a virtual address space of the electronic equipment when the electronic equipment executes a process, and the virtual address space comprises at least one virtual address segment;
the processing unit is used for dividing the virtual address space according to the specified number of the virtual address segments to obtain at least one primary page table;
a first determining unit, configured to, if at least two target virtual address segments exist in the primary page table, use the primary page table as a target page table, where data stored in a physical address segment by the target virtual address segment cannot be successfully acquired;
a second determining unit, configured to re-match a physical address segment for the target virtual address if the target virtual address segment does not have a corresponding physical address segment;
a determining unit, configured to use a physical address segment corresponding to each virtual address segment in the target page table as a hot zone segment.
8. An electronic device, comprising: one or more processors;
a memory;
one or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the one or more processors, the one or more programs configured to perform the method of any of claims 1-6.
9. A computer-readable storage medium, having stored thereon program code that can be invoked by a processor to perform the method according to any one of claims 1 to 6.
10. A computer program product comprising computer programs/instructions, characterized in that the computer programs/instructions, when executed by a processor, implement the method of any of claims 1-6.
CN202211085598.XA 2022-09-06 2022-09-06 Memory area determination method and device, electronic equipment and computer readable medium Pending CN115587053A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211085598.XA CN115587053A (en) 2022-09-06 2022-09-06 Memory area determination method and device, electronic equipment and computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211085598.XA CN115587053A (en) 2022-09-06 2022-09-06 Memory area determination method and device, electronic equipment and computer readable medium

Publications (1)

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

Family

ID=84771457

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211085598.XA Pending CN115587053A (en) 2022-09-06 2022-09-06 Memory area determination method and device, electronic equipment and computer readable medium

Country Status (1)

Country Link
CN (1) CN115587053A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116185902A (en) * 2023-04-13 2023-05-30 阿里云计算有限公司 Table segmentation method, system, electronic equipment and readable medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116185902A (en) * 2023-04-13 2023-05-30 阿里云计算有限公司 Table segmentation method, system, electronic equipment and readable medium

Similar Documents

Publication Publication Date Title
TWI644216B (en) Priority-based access of compressed memory lines in memory in a processor-based system
CN110008692B (en) Information processing method and device and storage medium
JP2013536505A (en) Secure readable memory area support for pre-boot and secure mode operations
US20150301917A1 (en) Memory Monitoring Method and Related Apparatus
CN115587053A (en) Memory area determination method and device, electronic equipment and computer readable medium
CN111078410A (en) Memory allocation method and device, storage medium and electronic equipment
US8751724B2 (en) Dynamic memory reconfiguration to delay performance overhead
CN113485791B (en) Configuration method, access method, device, virtualization system and storage medium
CN114064524A (en) Server, method and device for improving performance of server and medium
EP3462321B1 (en) Techniques to perform memory indirection for memory architectures
US10664594B2 (en) Accelerated code injection detection using operating system controlled memory attributes
WO2014190700A1 (en) Method of memory access, buffer scheduler and memory module
WO2019047142A1 (en) Method for program patching, device, micro control unit, and terminal device
CN115151902A (en) Cluster capacity expansion method and device, storage medium and electronic equipment
CN111427887A (en) Method, device and system for rapidly scanning HBase partition table
CN107861890B (en) Memory access processing method and device and electronic equipment
WO2020029619A1 (en) Data processing method and device, and server
US11307999B2 (en) Data cache segregation for spectre mitigation
CN115328405A (en) Data processing method and device and electronic equipment
CN114385552A (en) Page integration method and device for file pages in memory
CN114116656A (en) Data processing method and related device
CN108846141B (en) Offline cache loading method and device
CN107679093B (en) Data query method and device
EP3048541A1 (en) File access method and device
CN108733678B (en) Data searching method, device and related 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