CN105094953A - Data access method and apparatus - Google Patents

Data access method and apparatus Download PDF

Info

Publication number
CN105094953A
CN105094953A CN201410197088.0A CN201410197088A CN105094953A CN 105094953 A CN105094953 A CN 105094953A CN 201410197088 A CN201410197088 A CN 201410197088A CN 105094953 A CN105094953 A CN 105094953A
Authority
CN
China
Prior art keywords
described request
request
cache
data
hit requests
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
Application number
CN201410197088.0A
Other languages
Chinese (zh)
Other versions
CN105094953B (en
Inventor
崔泽汉
刘垚
陈明宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Institute of Computing Technology of CAS
Original Assignee
Huawei Technologies Co Ltd
Institute of Computing Technology of CAS
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 Huawei Technologies Co Ltd, Institute of Computing Technology of CAS filed Critical Huawei Technologies Co Ltd
Priority to CN201410197088.0A priority Critical patent/CN105094953B/en
Publication of CN105094953A publication Critical patent/CN105094953A/en
Application granted granted Critical
Publication of CN105094953B publication Critical patent/CN105094953B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

Embodiments of the invention provide a data access method and apparatus. The method comprises: for a request with a Tag being a shared data area Tag in VA, determining whether the request is a potentially hit request; if yes, further determining whether the process has an access right to data in the shared data area; and if yes, returning data that the request accesses. During the process, for data in the shared data area, right detection is performed only when the request is a potentially hit request, and the process does not involve any address translation process, thereby realizing efficient data access when data is shared among different processes. Additionally, during the process, for access to data in an unshared data area and directly hit access to data in the shared data area, the data is returned or absence treatment is performed and is sent to a next-level Cache according to a data access result, no address translation process is involved too, and therefore data access efficiency is high.

Description

Data access method and device
Technical field
The embodiment of the present invention relates to computer technology, particularly relates to a kind of data access method and device.
Background technology
In existing computer system, utilize bypass conversion buffered (TranslationLookasideBuffer, TLB) by virtual address (VirtualAddress, VA) physical address (PhysicalAddress is translated as, PA), PA is used to conduct interviews to buffer memory (cache) and internal memory.Virtual page number (the VirtualPageNumber of at least one VA is preserved in TLB, and the physical page number (PhysicalPageNumber of PA VPN), PPN) corresponding relation, this corresponding relation is referred to as page table entry, TLB searches PPN according to VPN, if find PPN, then export corresponding PPN thus determine PA; Otherwise, there is TLB disappearance.The complete empty cache (VirtuallyIndexed, VirtuallyTaggedCache, V/Vcache) of general employing is reduced TLB and is lacked the impact caused.V/Vcache without the need to carrying out actual situation address translation, but directly uses VA to carry out the comparison of cacheset and cachetag.But there is synonym (Synonym) problem in V/Vcache, namely different VA may point to the problem of same PA, make same number according to multiple positions that may be present in cache.How to guarantee that process has access to data trnascription up-to-date in cache very important.
In prior art, guarantee that process has access to latest data by coarseness sharing mode.Concrete, the logical address space of process is divided into several sections (Segment), each section is identified by SegNo.The logical address space of process is translated as the virtual address space of the overall situation by operating system, by the SegmentID that <PID, SegNo> are translated as the overall situation, sets up mapping relations.For the data shared, it is made to be in the position of same offset in different Segment, after translation, be mapped to same SegmentID, shared data between so different process have just had same VA (same SegmentID, SegmentOffset, PageOffset), the appearance of synonym problem is solved from source.
But in above-mentioned coarseness sharing mode, still need primary address to translate and just can carry out data access, access efficiency is low.
Summary of the invention
The embodiment of the present invention provides a kind of data access method and device, when realizing the data sharing of different process, has access to correct data efficiently.
First aspect, the embodiment of the present invention provides a kind of data access method, comprising:
Judge whether request is potential hit requests, when described request is potential hit requests, the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request, and there is the cache entry different from the process number of described request, label is identical in accessed cache memory Cache;
If described request is potential hit requests, then whether the process judging belonging to described request has the access rights to described sharing data area data;
If the process belonging to described request has described access rights, then return the data of described request access.
In the first possible implementation in first, if described request is potential hit requests, then the process judging belonging to described request also comprises before whether having the access rights to described sharing data area data:
If described request is potential hit requests, then search the safeguard bit information of described sharing data area data;
If described described request is potential hit requests, then judge whether described request has the access rights to described sharing data area data, comprising:
If described request is potential hit requests, then judge whether process belonging to described request has the access rights to described sharing data area data according to described safeguard bit information.
In conjunction with the first possible implementation of first aspect, in the implementation that the second in first is possible, if described described request is potential hit requests, then, before searching the safeguard bit information of described sharing data area data, comprising:
If described request is potential hit requests, then judge shared region safeguard bit searches in buffer memory SPLB whether there is described safeguard bit information;
If there is not described safeguard bit information in described SPLB, then obtain described safeguard bit information and be filled in described SPLB;
If described described request is potential hit requests, then searches the safeguard bit information of described sharing data area data, comprising:
If described request is potential hit requests, then from described SPLB, search described safeguard bit information.
In conjunction with the implementation that the first or the second of first aspect, first aspect are possible, in the third the possible implementation in first, described judge whether request is potential hit requests before, also comprise:
Judge whether described request is hit requests, when described request is hit requests, in described Cache, there is the cache entry identical with the process number of described request, label is identical;
Described judge request whether be potential hit requests, comprising:
If judge, described request is not hit requests, then judge whether request is potential hit requests.
In conjunction with the third possible implementation of first aspect, in the 4th kind of possible implementation in first, the method also comprises:
If judge, described request is not potential hit requests and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then described request is sent to other cache outside current searched Cache, judges whether described request is hit requests by other cache outside current searched Cache;
If described request is hit requests, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
In conjunction with the third possible implementation of first aspect, in the 5th kind of possible implementation in first, the method also comprises:
If described request be not potential hit requests and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then search the safeguard bit information of described sharing data area data;
Judge whether described request has the access rights to described sharing data area data according to described safeguard bit information;
If described request has described access rights, then described request is sent to other cache outside current searched Cache, judges whether described request is hit requests by other cache outside current searched Cache;
If described request is hit requests, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
In conjunction with first aspect, first aspect the first to any one possible implementation in the 5th kind, in the 6th kind of possible implementation in first, if described request is potential hit requests, before then judging the access rights whether described request has described sharing data area data, also comprise:
Judge whether described request comes from this earth's core;
If described described request is potential hit requests, then judge whether described request has the access rights to described sharing data area data, comprising:
If described request comes from this earth's core, then judge whether described request has the access rights to described sharing data area data by described the earth's core; Otherwise, if described request comes from the core outside this earth's core, then the core by described request place is judged whether described request has the access rights to described sharing data area data.
In conjunction with first aspect, first aspect the first to any one possible implementation in the 6th kind, in the 7th kind of possible implementation in first, described judge whether request is potential hit requests before, also comprise:
From the virtual address space of the correspondence of described request, mark off sharing data area, in described sharing data area, store described sharing data area data;
If the process at described request place needs shared data, then to described sharing data area application virtual address space.
In conjunction with first aspect, first aspect the first to any one possible implementation in the 7th kind, in the 8th kind of possible implementation in first, if described request has described access rights, then, before returning the data of described request access, also comprise:
The process number of the cache entry different from the process number of the process belonging to described request in described Cache, label is identical is revised as the process number of described request.
Second aspect, the embodiment of the present invention provides a kind of DAA, comprising:
Potential hit requests judge module, for judging whether request is potential hit requests, when described request is potential hit requests, the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request, and there is the cache entry different from the process number of described request, label is identical in accessed cache memory Cache;
Access rights judge module, if judge that described request is potential hit requests for described potential hit requests judge module, then whether the process judging belonging to described request has the access rights to described sharing data area data;
Return module, if judge that the process belonging to described request has described access rights for described access rights judge module, then return the data of described request access.
In the first possible implementation in second, this device also comprises:
Search module, if be potential hit requests for described request, before described access rights judge module judges belonging to described request process and whether has the access rights to described sharing data area data, search the safeguard bit information of described sharing data area data;
Described access rights judge module, if be potential hit requests for described request, then according to described in search module searches to described safeguard bit information judge whether process belonging to described request has the access rights to described sharing data area data.
In conjunction with the first possible implementation of second aspect, in the implementation that the second in second is possible, safeguard bit signal judgement module, if be potential hit requests for described request, then described search the safeguard bit information of sharing data area data described in module searches before, judge shared region safeguard bit searches in buffer memory SPLB whether there is described safeguard bit information;
Acquisition module, if judge there is not described safeguard bit information in described SPLB for described safeguard bit signal judgement module, then obtains described safeguard bit information and is filled in described SPLB;
Describedly search module, if be potential hit requests specifically for described request, then from described SPLB, search described safeguard bit information.
In conjunction with the implementation that the first or the second of second aspect, second aspect are possible, in the third the possible implementation in second, this device also comprises:
Hit requests judge module, before judging whether described request is potential hit requests at described potential hit requests judge module, judge whether described request is hit requests, when described request is hit requests, in described Cache, there is the cache entry identical with the process number of described request, label is identical;
Described potential hit requests judge module, if judge that described request is not hit requests specifically for described hit requests judge module, then judges whether request is potential hit requests.
In conjunction with the third possible implementation of second aspect, in the 4th kind of possible implementation in second, this device also comprises:
Sending module, if judge that described request is not potential hit requests for described potential hit judge module and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then described request is sent to other cache outside current searched Cache, judges whether described request is hit requests by other cache outside current searched Cache;
Describedly return module, if be hit requests specifically for described request, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
In conjunction with the third possible implementation of second aspect, in the 5th kind of possible implementation in second, this device also comprises:
Search module, if be not potential hit requests for described request and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then search the safeguard bit information of described sharing data area data;
According to described safeguard bit information, described safeguard bit signal judgement module, specifically for judging whether described request has the access rights to described sharing data area data;
Sending module, if having described access rights for described request, is then sent to other cache outside current searched Cache by described request, judge whether described request is hit requests by other cache outside current searched Cache;
Describedly return module, if be hit requests specifically for described request, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
In conjunction with second aspect, second aspect the first to any one possible implementation in the 5th kind, in the 6th kind of possible implementation in second, this device also comprises:
This earth's core judge module, if judge that described request is potential hit requests for described potential hit module, before described access rights judge module judges the access rights whether described request has described sharing data area data, judge whether described request comes from this earth's core;
By described the earth's core, described access rights judge module, if come from this earth's core specifically for described request, then judges whether described request has the access rights to described sharing data area data; Otherwise, if described request comes from the core outside this earth's core, then the core by described request place is judged whether described request has the access rights to described sharing data area data.
In conjunction with second aspect, second aspect the first to any one possible implementation in the 6th kind, in the 7th kind of possible implementation in second, this device also comprises:
Divide module, before judging whether described request is potential hit requests in described potential hit module, sharing data area is marked off from the virtual address space of the correspondence of described request, described sharing data area data is stored in described sharing data area, if the process at described request place needs shared data, then to described sharing data area application virtual address space.
In conjunction with second aspect, second aspect the first to any one possible implementation in the 7th kind, in the 8th kind of possible implementation in second, this device also comprises:
Modified module, for described return module return described request access data before, the process number of the cache entry different from the process number of the process belonging to described request in described Cache, label is identical is revised as the process number of described request.
The data access method that the embodiment of the present invention provides and device, it is the request of sharing data area Tag to Tag in VA, judge whether it is potential hit requests, if, then judge whether this process has the access rights to sharing data area data further, if have access rights, then return the data of this request access.In this process, for shared region data, only asking just to carry out authority detection for during potential hit requests, do not relate to any address translation process in this process, efficient data access when achieving the data sharing of different process.In addition, in this process, for the access that the access of unshared district data and shared region data directly hit, according to data access result return data or carry out disappearance and process and be sent to next stage Cache, wherein also do not relate to any address translation process, data access efficiency is high.
Accompanying drawing explanation
Fig. 1 is the structural representation of VA in data access process of the present invention;
Fig. 2 is the division schematic diagram of virtual address space in data access process of the present invention;
Fig. 3 is the structural representation of multiple nucleus system in data access method of the present invention;
Fig. 4 is the process flow diagram of data access method embodiment one of the present invention;
Fig. 5 is the process schematic of data access of the present invention;
Fig. 6 is the processing flow chart asking to occur in local PrivateCache potential hit in data access flow process of the present invention;
Fig. 7 is the first processing flow chart asking in data access flow process of the present invention to occur to lack in local PrivateCache;
Fig. 8 is the second processing flow chart asking in data access flow process of the present invention to occur to lack in local PrivateCache;
Fig. 9 is the structural representation of DAA embodiment one of the present invention;
Figure 10 is the structural representation of DAA embodiment two of the present invention;
Figure 11 is the structural representation of DAA embodiment three of the present invention.
Embodiment
For making the object of the embodiment of the present invention, technical scheme and advantage clearly, below in conjunction with the accompanying drawing in the embodiment of the present invention, technical scheme in the embodiment of the present invention is clearly and completely described, obviously, described embodiment is the present invention's part embodiment, instead of whole embodiments.Based on the embodiment in the present invention, those of ordinary skill in the art, not making the every other embodiment obtained under creative work prerequisite, belong to the scope of protection of the invention.
In general, the virtual address of a process comprises process number (ProgressIdenity, PID), VPN, the page offset (PageOffset) etc., can be specifically the structural representation of VA in data access process of the present invention see Fig. 1, Fig. 1.In the present embodiment, can be two parts by VPN Region dividing in advance, a part be sharing data area (as shown in dash area in figure), another part is non-shared district, concrete, can be the division schematic diagram of virtual address space in data access process of the present invention see Fig. 2, Fig. 2.
The executive agent of the embodiment of the present invention is such as the multiple nucleus system with multinuclear, as polycaryon processor etc., concrete, can be the structural representation of multiple nucleus system in data access method of the present invention see Fig. 3, Fig. 3.This multiple nucleus system comprises multiple core (Core), and each core has a privately owned cache memory (PrivateCache), and all core shares a shared cache memory (SharedCache).For each Cache, it can be divided into multiple cache set (Cacheset), have multiple cache entry (Cacheline) in each Cacheset, the address of each Cacheline comprises group index (setindex) and label (Tag) two parts.Data access constantly, first indexes corresponding Cacheset according to the setindex of request, then compares with all tag in the Cacheset indexed according to the Tag part in the address of request, if having one identical, then represent that this request is hit requests; Otherwise, be miss request.In the present embodiment, reserve one section in the virtual address space of each process as sharing data area, by operating system (OperatingSystem, OS), it is managed.When carrying out needing shared data, need the virtual address space applied for OS in sharing data area, OS distributes the same VPN process shared to needs in sharing data area.Thus, share the VA of multiple processes of data except PID difference, other positions are all identical, and can realize the page is sharing of granularity.
Below, the description in conjunction with above-mentioned Fig. 1 ~ Fig. 3 elaborates to the embodiment of the present invention.Concrete, can see Fig. 4.
Fig. 4 is the process flow diagram of data access method embodiment one of the present invention.The executive agent of the present embodiment, for having multiple nucleus system, as polycaryon processor etc., is applicable to data sharing in complete empty Cache, the VA of different process is when pointing to same PA, need the scene of carrying out data access efficiently.Concrete, comprising the steps: of the present embodiment
101, judge whether request is potential hit requests, when request is for potential hit requests, the data of request access are the sharing data area data in the virtual address space of request correspondence, and the cache entry that process number is different, label is identical existing in accessed cache memory Cache and ask.
In this step, request is such as the request that Tag in VA is sharing data area Tag, and accessed Cache is such as asking the Cache of the Core at place; Or accessed Cache is such as the Cache of other Core outside the Core at request place.Please refer to Fig. 3, if the Core at request place is Core1, then accessed Cache can be Cache1, also can be CacheN, below for clarity sake, the request that the former is referred to as is from this earth's core (LocalCore), and the request that the latter is referred to as is from other Core.In data access process, whether multiple nucleus system is identical respectively by judging PID and the Tag of PID, Tag and the process in accessed Cache of asking, thus determines whether request is potential hit requests.
Concrete, the embodiment of the present invention, the data access result of request is divided into following three classes:
The first kind: hit (Hit), namely PID is identical, Tag is identical.
Concrete, in multiple nucleus system, each PrivateCache can have a Cache decision logic, the VA of the cache entry of buffer memory in the PrivateCache of the VA of request and accessed Core compares by this Cache decision logic, and the VPN by both compares.In comparison procedure, if PID and the Tag of request is identical with PID and the Tag of in the cache entry of buffer memory in the PrivateCache of accessed Core respectively, then hit.Now, the Tag no matter asked is sharing data area Tag or non-shared district Tag, and multiple nucleus system, all according to safeguard bit information, carries out scope check to this request, if this request has access rights, then and return data; Otherwise triggered interrupts, transfers to OS process.
Equations of The Second Kind, disappearance (Miss), namely Tag is different; Or in non-shared district, PID is different, Tag is identical.
Concrete, if Cache decision logic judges that the Tag asked is not identical with the Tag of any one process of buffer memory in the PrivateCache of accessed Core respectively, then lack.Now, the Tag no matter asked is sharing data area Tag or non-shared district Tag, and disappearance process is all carried out in this request by multiple nucleus system, sends it to next stage Cache or the cache with other core of one-level.
In addition, if the data of request access are the unshared district data in the virtual address space of request correspondence, and Cache decision logic judges that the PID asked is identical with the not identical Tag of PID of any one process of buffer memory in the PrivateCache of accessed Core, then lack.Such as, if Cache decision logic judges that the Tag asked is non-shared district Tag, the PID of request is not identical with the PID of a process of buffer memory in the PrivateCache of accessed Core but Tag is identical, then lack.
3rd class, potential hit (PotentialHit), namely PID is different, Tag is identical and be in shared region.
Concrete, if Cache decision logic judges that the Tag asked is sharing data area Tag, and the PID of request is identical with the PID of a process of buffer memory in the PrivateCache of accessed Core but Tag is identical, then data sharing between but the Cache item that Tag is identical or not with the PID of this request and request is described, potential hit occurs.
If 102 requests are for potential hit requests, then whether the process judging belonging to request has the access rights to sharing data area data.
Please refer to Fig. 3 again, for the request that potential hit occurs, multiple nucleus system carries out scope check by the potential hit processing logic be positioned at after PrivateCache, if this request has access rights, then and return data; Otherwise triggered interrupts, transfers to OS process.
Optionally, potential hit processing logic is also responsible for the PID PID that the cache entry of potential hit occurs in the cache entry of buffer memory in the PrivateCache of accessed Core being revised as request.Thus, during follow-up visit data again, this request becomes potential hit requests, and its data access result just becomes Hit.
If the process belonging to 103 requests has access rights, then return the data of request access.
After the request of judging has access rights, multiple nucleus system returns the data of request access according to the VA of request.
The data access method that the embodiment of the present invention provides, it is the request of sharing data area Tag to Tag in VA, judge whether it is potential hit requests, if, then judge whether this process has the access rights to sharing data area data further, if have access rights, then return the data of this request access.In this process, for shared region data, only asking just to carry out authority detection for during potential hit requests, do not relate to any address translation process in this process, efficient data access when achieving the data sharing of different process.In addition, in this process, for the access that the access of unshared district data and shared region data directly hit, according to data access result return data or carry out disappearance and process and be sent to next stage Cache, wherein also do not relate to any address translation process, data access efficiency is high.
Fig. 5 is the process schematic of data access of the present invention.As shown in Figure 5, request is such as request that Tag is sharing data area Tag, in figure, dash area is depicted as sharing data area mark, when the Tag asked is the request of sharing data area Tag, the Tag of this request is the Tag that dash area comprises, privately owned cache memories store has several cache entry, each cache entry stores PID, the information such as Tag, C represents and compares (Compare), multiple nucleus system compares the PID of each cache entry in the PID of request and accessed PrivateCache, obtain comparative result Hit1, Tag is compared and obtains Hit2.Then, carry out data access flow process according to comparative result, specifically comprise the steps:
201, judge whether Hit1 and Hit2 sets up.
In this step, the decision logic of accessed PrivateCache judges that whether whether the PID asked identical respectively with PID, the Tag of any one cache entry in the process of buffer memory, if identical, then Hit1 and Hit2 sets up, and performs step 202; Otherwise, if any one is false or is false in Hit1 and Hit2 simultaneously, then perform step 203.
202, hit process, checks access rights and return data.
203, judge whether Hit2 sets up, and whether be sharing data area data.
In this step, the decision logic of accessed PrivateCache judges that whether the Tag of request is identical with the Tag of any one cache entry in the cache entry of buffer memory and whether the Tag asked is sharing data area Tag, if the Tag of this request is identical with the Tag of any one cache entry in the cache entry of accessed PrivateCache buffer memory and this Tag is sharing data area Tag, then think that this request is potential hit requests, perform step 205; Otherwise, perform step 204.
204, disappearance process, is sent to other cache outside current searched Cache by this request.
For miss request, other Cahce outside current searched Cache can be sent it to, such as, the next stage Cahce of current searched Cache place core can be sent to, or, with the Cache of current searched Cache peer in other core.
205, judge whether this request comes from this earth's core, if come from this earth's core, then perform step 206; Otherwise, perform step 207.
206, the potential processing logic of this earth's core is sent the request to.
In this step, multiple nucleus system sends the request to the potential processing logic of this earth's core, by its scope check etc. that conducts interviews.
207, return data is to the potential processing logic of the core at request place.
In this step, the potential processing logic that multiple nucleus system will ask the data conducted interviews to be sent to the core at this request place, is conducted interviews by it and checks.
Known in conjunction with above-mentioned Fig. 3 and Fig. 5 embodiment, potential processing logic is in after PrivateCache, when request comes from this earth's core, for after there is PotentialHit in local PrivateCache, before return data, request is conducted interviews scope check etc.; When request comes from other cores, multiple nucleus system sends data to the potential processing logic of Core at request place, to be conducted interviews scope check etc. to request by this processing logic.
Optionally; in above-mentioned access authoritychecking; if request is potential hit requests; then search the safeguard bit information (ReadableWritableExecutable of sharing data area data; RWX), the access rights asking whether to have sharing data area data are judged according to this safeguard bit information.Concrete, if safeguard bit information meets certain condition, then illustrate that this request has access rights to the shared region data that potential hit occurs; Otherwise, ask the shared region data of potential hit occurring without access rights.
In order to accelerate scope check; the buffer zone of a safeguard bit can be safeguarded on potential processing logic; namely share protect searches buffer area (ShareProtectionLookasideBuffer; SPLB); this SPLB is used for buffer memory often by the safeguard bit information of sharing data area used; concrete, can see table 1, table 1 is the attribute list of SPLB in data access method of the present invention.
Table 1
PID Start Size RWX
…… …… …… ……
As shown in Table 1, this SPLB is similar to TLB, but does not store actual situation address mapping relation, a buffer memory PID, region start address (Start), area size (Size) and safeguard bit information (RWX).Be buffered in this SPLB owing to only having the safeguard bit of sharing data area to need, and the situation sharing data is fewer, therefore, only needs very little buffer.In the embodiment of the present invention, the maintenance of SPLB comprises following content:
Search: when there is PotentialHit, according to the PID of request and the address of visit data, search SPLB and obtain safeguard bit information;
Replace: when searching in SPLB less than safeguard bit information, need to take out safeguard bit from the page table (also can be the status information of protected location maintenance specially) internal memory, and from SPLB, pick out an entry deletion, the safeguard bit newly taken out and relevant information are inserted the position after deletion;
Synchronous: when in system, shared relationship changes, list item corresponding in synchronous SPLB.
Below, in conjunction with the various embodiments described above, in data access process of the present invention, the treatment scheme Tag request that is sharing data area Tag being sent to potential hit and disappearance is described in detail, concrete, can see Fig. 6, Fig. 7 and Fig. 8.
Fig. 6 is the processing flow chart asking to occur in local PrivateCache potential hit in data access flow process of the present invention, specifically comprises the steps:
301, Tag is that the request of sharing data area Tag, in local PrivateCache, potential hit occurs.
302, potential hit processing logic is sent the request to.
In this step, multiple nucleus system sends the request to the potential hit processing logic of the PrivateCache of the Core at request place.
303, inquire about SPLB and judge whether to find safeguard bit information, if find safeguard bit information, then performing step 305; Otherwise, if do not find safeguard bit information, then perform step 304.
304, from the page table of internal memory, obtain safeguard bit information and be filled in SPLB, then performing step 305.
305, the safeguard bit information in SPLB is obtained.
306, judge the access rights asking whether to have sharing data area data according to safeguard bit information, if there are access rights, then perform step 308; Otherwise, perform step 307.
307, request is unauthorized access request, and triggered interrupts, transfers to OS process.
308, the PID of the cache entry that potential hit occurs is revised as the PID of request.
In this step, the PID territory that the cache entry of potential hit occurs in amendment is the PID asked, and makes follow-up access become direct hit, no longer triggers potential hit treatment scheme.
309, the data of request access are returned.
Fig. 7 is the first processing flow chart asking in data access flow process of the present invention to occur to lack in local PrivateCache, in the present embodiment, if request is not potential hit requests, then send the request to other cache outside current searched cache, judge whether request is hit requests by other cache outside current searched cache; If request is hit requests, then return the data of request access; Otherwise, if request be hit requests, then judge to ask whether potential hit requests by other cache outside the cache at request place.Concrete, the present embodiment comprises the steps:
401, Tag is that the request of sharing data area Tag lacks in local PrivateCache.
402, according to protocol conformance, other Cache are sent the request to.
In this step, multiple nucleus system sends the request to other Cache outside current searched Cache.Such as, the next stage Cahce of current searched Cache place core can be sent to, or, with the Cache of current searched Cache peer in other core
403, whether hit in other Cache, if hit, then perform step 404; Otherwise, if hit, then perform step 405.
404, return data is to the core at request place.
Such as, incorporated by reference to Fig. 3, for example, if request comes from Core1, lack at PrivateCache1, then in step 402, this request is sent to CacheN, in step 403, this request is hit, then, in this step, the data of request access are sent to the PrivateCache1 of core1.
405, in other Cache, whether there is potential hit, if there is potential hit, then perform step 407; Otherwise, if there is not potential hit, then perform step 406.
406, send the request to Memory Controller Hub, from internal memory, take out data by Memory Controller Hub and return.
407, data and access authoritychecking request are sent to the potential processing logic of the core at request place.
Such as, incorporated by reference to Fig. 3, for example, if request comes from Core1, lack at PrivateCache1, then in step 402, this request is sent to CacheN, in step 405, there is potential hit in this request, then data and access authoritychecking request is sent to the potential processing logic of the PrivateCache1 of core1.
408, by data buffer storage in potential processing logic.
409, SPLB is inquired about.
410, judge whether to find safeguard bit information, if find safeguard bit information, then perform step 412; Otherwise, if do not find safeguard bit information, then perform step 411.
411, from the page table of internal memory, obtain safeguard bit information and be filled in SPLB, then performing step 412.
412, the safeguard bit information in SPLB is obtained.
413, judge the access rights asking whether to have sharing data area data according to RWX, if there are access rights, then perform step 415; Otherwise, perform step 414.
414, request is unauthorized access request, and triggered interrupts, transfers to OS process.
415, the data be buffered in potential processing logic are inserted in the Cache at request place.
416, the PID of the cache entry that potential hit occurs is revised as the PID of request.
In this step, the PID territory that the cache entry of potential hit occurs in amendment is the PID asked, and makes follow-up access become direct hit, no longer triggers potential hit treatment scheme.
417, the data of request access are returned.
Fig. 8 is the second processing flow chart asking in data access flow process of the present invention to occur to lack in local PrivateCache, in the present embodiment, if request is not potential hit requests, then searches the safeguard bit information of sharing data area data; The access rights asking whether to have sharing data area data are judged according to safeguard bit information; If request has access rights, then send the request to other cache outside current searched cache, judge whether request is hit requests by other cache outside current searched cache.If request is hit requests, then return the data of request access; Otherwise, if ask miss, then judge request whether potential hit requests by other cache outside current searched cache.Concrete, the present embodiment comprises the steps:
501, Tag is that the request of sharing data area Tag lacks in local PrivateCache.
502, SPLB is inquired about.
503, judge whether to find safeguard bit information, if find safeguard bit information, then perform step 505; Otherwise, if do not find safeguard bit information, then perform step 504.
504, from the page table of internal memory, obtain safeguard bit information and be filled in SPLB, then performing step 505.
505, the safeguard bit information in SPLB is obtained.
506, judge the access rights asking whether to have sharing data area data according to safeguard bit information, if there are access rights, then perform step 508; Otherwise, perform step 507.
507, request is unauthorized access request, and triggered interrupts, transfers to OS process.
508, according to protocol conformance, other Cache are sent the request to.
509, whether hit in other Cache, if hit, then perform step 510; Otherwise, if hit, then perform step 511.
510, return data is to the core at request place.
511, in other Cache, whether there is potential hit, if there is potential hit, then perform step 513; Otherwise, if there is not potential hit, then perform step 512.
512, send the request to Memory Controller Hub, from internal memory, take out data by Memory Controller Hub and return.
513, the potential processing logic of the core at request place is sent data to.
514, the data be buffered in potential processing logic are inserted in the Cache at request place.
515, the PID of the process that potential hit occurs is revised as the PID of request.
516, the data of request access are returned.
Fig. 9 is the structural representation of DAA embodiment one of the present invention.The DAA that the present embodiment provides is the device embodiment corresponding with Fig. 4 embodiment of the present invention, and specific implementation process does not repeat them here.Concrete, the DAA 100 that the present embodiment provides specifically comprises:
Potential hit requests judge module 11, for judging whether request is potential hit requests, when described request is potential hit requests, the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request, and there is the cache entry different from the process number of described request, label is identical in accessed cache memory Cache;
Access rights judge module 12, if judge that described request is potential hit requests for described potential hit requests judge module 11, then whether the process judging belonging to described request has the access rights to described sharing data area data;
Return module 13, if judge that the process belonging to described request has described access rights for described access rights judge module 12, then return the data of described request access.
The DAA that the embodiment of the present invention provides, it is the request of sharing data area Tag to Tag in VA, judge whether it is potential hit requests, if, then judge whether this process has the access rights to sharing data area data further, if have access rights, then return the data of this request access.In this process, for shared region data, only asking just to carry out authority detection for during potential hit requests, do not relate to any address translation process in this process, efficient data access when achieving the data sharing of different process.In addition, in this process, for the access that the access of unshared district data and shared region data directly hit, according to data access result return data or carry out disappearance and process and be sent to next stage Cache, wherein also do not relate to any address translation process, data access efficiency is high.
Figure 10 is the structural representation of DAA embodiment two of the present invention.As shown in Figure 10, the DAA 100 of the present embodiment is on the basis of Fig. 9 apparatus structure, optionally, also comprise: search module 14, if be potential hit requests for described request, before described access rights judge module 12 judges belonging to described request process and whether has the access rights to described sharing data area data, search the safeguard bit information of described sharing data area data; Described access rights judge module 12, if be potential hit requests for described request, then according to described in search the described safeguard bit information that module 14 finds and judge whether process belonging to described request has the access rights to described sharing data area data.
Optionally, in an embodiment of the present invention, this DAA also comprises:
Safeguard bit signal judgement module 15, if be potential hit requests for described request, then search before module 14 searches the safeguard bit information of described sharing data area data described, judge shared region safeguard bit searches in buffer memory SPLB whether there is described safeguard bit information; Acquisition module 16, if judge there is not described safeguard bit information in described SPLB for described safeguard bit signal judgement module 15, then obtains described safeguard bit information and is filled in described SPLB; Describedly search module 14, if be potential hit requests specifically for described request, then from described SPLB, search described safeguard bit information.
Optionally, in an embodiment of the present invention, this DAA also comprises: hit requests judge module 17, before judging whether described request is potential hit requests at described potential hit requests judge module 11, judge whether described request is hit requests, when described request is hit requests, in described Cache, there is the cache entry identical with the process number of described request, label is identical; Described potential hit requests judge module 11, if judge that described request is not hit requests specifically for described hit requests judge module, then judges whether request is potential hit requests.
Optionally, in an embodiment of the present invention, this DAA also comprises: sending module 18, if judge that described request is not potential hit requests for described potential hit requests judge module 11 and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then described request is sent to other cache outside current searched Cache, judges whether described request is hit requests by other cache outside current searched Cache; Describedly return module 13, if be hit requests specifically for described request, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
Optionally, in an embodiment of the present invention, search module 14, if be not potential hit requests for described request and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then search the safeguard bit information of described sharing data area data; According to described safeguard bit information, described safeguard bit signal judgement module 15, specifically for judging whether described request has the access rights to described sharing data area data; Sending module 18, if having described access rights for described request, is then sent to other cache outside current searched Cache by described request, judge whether described request is hit requests by other cache outside current searched Cache; Describedly return module 13, if be hit requests specifically for described request, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
Optionally, in an embodiment of the present invention, this DAA also comprises: this earth's core judge module 19, if judge that described request is potential hit requests for described potential hit module, before described access rights judge module 12 judges the access rights whether described request has described sharing data area data, judge whether described request comes from this earth's core; By described the earth's core, described access rights judge module 12, if come from this earth's core specifically for described request, then judges whether described request has the access rights to described sharing data area data; Otherwise, if described request comes from the core outside this earth's core, then the core by described request place is judged whether described request has the access rights to described sharing data area data.
Optionally, in an embodiment of the present invention, this DAA also comprises: divide module 20, before judging whether described request is potential hit requests in described potential hit module, sharing data area is marked off from the virtual address space of the correspondence of described request, described sharing data area data is stored, if the process at described request place needs shared data, then to described sharing data area application virtual address space in described sharing data area.
Optionally, in an embodiment of the present invention, this DAA also comprises: modified module 21, for described return module 13 return described request access data before, the process number of the cache entry different from the process number of the process belonging to described request in described Cache, label is identical is revised as the process number of described request.
Figure 11 is the structural representation of DAA embodiment three of the present invention.As shown in figure 11, the DAA 200 that the present embodiment provides, comprising: processor 21 and storer 22.DAA 200 can also comprise transmitter 23, receiver 24.Transmitter 23 can be connected with processor 21 with receiver 24.Wherein, transmitter 23 is for sending data or information, receiver 24 is for receiving data or information, storer 22 stores and performs instruction, when DAA 200 runs, communicates between processor 21 with storer 22, processor 21 calls the execution instruction in storer 22, for performing embodiment of the method shown in Fig. 4, it realizes principle and technique effect is similar, repeats no more herein.
One of ordinary skill in the art will appreciate that: all or part of step realizing above-mentioned each embodiment of the method can have been come by the hardware that programmed instruction is relevant.Aforesaid program can be stored in a computer read/write memory medium.This program, when performing, performs the step comprising above-mentioned each embodiment of the method; And aforesaid storage medium comprises: ROM, RAM, magnetic disc or CD etc. various can be program code stored medium.
Last it is noted that above each embodiment is only in order to illustrate technical scheme of the present invention, be not intended to limit; Although with reference to foregoing embodiments to invention has been detailed description, those of ordinary skill in the art is to be understood that: it still can be modified to the technical scheme described in foregoing embodiments, or carries out equivalent replacement to wherein some or all of technical characteristic; And these amendments or replacement, do not make the essence of appropriate technical solution depart from the scope of various embodiments of the present invention technical scheme.

Claims (18)

1. a data access method, is characterized in that, comprising:
Judge whether request is potential hit requests, when described request is potential hit requests, the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request, and there is the cache entry different from the process number of described request, label is identical in accessed cache memory Cache;
If described request is potential hit requests, then whether the process judging belonging to described request has the access rights to described sharing data area data;
If the process belonging to described request has described access rights, then return the data of described request access.
2. method according to claim 1, is characterized in that, if described request is potential hit requests, then the process judging belonging to described request also comprises before whether having the access rights to described sharing data area data:
If described request is potential hit requests, then search the safeguard bit information of described sharing data area data;
If described described request is potential hit requests, then judge whether described request has the access rights to described sharing data area data, comprising:
If described request is potential hit requests, then judge whether process belonging to described request has the access rights to described sharing data area data according to described safeguard bit information.
3. method according to claim 2, is characterized in that, if described described request is potential hit requests, then, before searching the safeguard bit information of described sharing data area data, comprising:
If described request is potential hit requests, then judge shared region safeguard bit searches in buffer memory SPLB whether there is described safeguard bit information;
If there is not described safeguard bit information in described SPLB, then obtain described safeguard bit information and be filled in described SPLB;
If described described request is potential hit requests, then searches the safeguard bit information of described sharing data area data, comprising:
If described request is potential hit requests, then from described SPLB, search described safeguard bit information.
4. the method according to any one of claims 1 to 3, is characterized in that, described judge request whether be potential hit requests before, also comprise:
Judge whether described request is hit requests, when described request is hit requests, in described Cache, there is the cache entry identical with the process number of described request, label is identical;
Described judge request whether be potential hit requests, comprising:
If judge, described request is not hit requests, then judge whether request is potential hit requests.
5. method according to claim 4, is characterized in that, also comprises:
If judge, described request is not potential hit requests and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then described request is sent to other cache outside current searched Cache, judges whether described request is hit requests by other cache outside current searched Cache;
If described request is hit requests, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
6. method according to claim 4, is characterized in that, also comprises:
If described request be not potential hit requests and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then search the safeguard bit information of described sharing data area data;
Judge whether described request has the access rights to described sharing data area data according to described safeguard bit information;
If described request has described access rights, then described request is sent to other cache outside current searched Cache, judges whether described request is hit requests by other cache outside current searched Cache;
If described request is hit requests, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
7. the method according to any one of claim 1 ~ 6, is characterized in that, if described request is potential hit requests, then, before judging the access rights whether described request has described sharing data area data, also comprises:
Judge whether described request comes from this earth's core;
If described described request is potential hit requests, then judge whether described request has the access rights to described sharing data area data, comprising:
If described request comes from this earth's core, then judge whether described request has the access rights to described sharing data area data by described the earth's core; Otherwise, if described request comes from the core outside this earth's core, then the core by described request place is judged whether described request has the access rights to described sharing data area data.
8. the method according to any one of claim 1 ~ 7, is characterized in that, described judge request whether be potential hit requests before, also comprise:
From the virtual address space of the correspondence of described request, mark off sharing data area, in described sharing data area, store described sharing data area data;
If the process at described request place needs shared data, then to described sharing data area application virtual address space.
9. the method according to any one of claim 1 ~ 8, is characterized in that, if described request has described access rights, then, before returning the data of described request access, also comprises:
The process number of the cache entry different from the process number of the process belonging to described request in described Cache, label is identical is revised as the process number of described request.
10. a DAA, is characterized in that, comprising:
Potential hit requests judge module, for judging whether request is potential hit requests, when described request is potential hit requests, the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request, and there is the cache entry different from the process number of described request, label is identical in accessed cache memory Cache;
Access rights judge module, if judge that described request is potential hit requests for described potential hit requests judge module, then whether the process judging belonging to described request has the access rights to described sharing data area data;
Return module, if judge that the process belonging to described request has described access rights for described access rights judge module, then return the data of described request access.
11. devices according to claim 10, is characterized in that, also comprise:
Search module, if be potential hit requests for described request, before described access rights judge module judges belonging to described request process and whether has the access rights to described sharing data area data, search the safeguard bit information of described sharing data area data;
Described access rights judge module, if be potential hit requests for described request, then according to described in search module searches to described safeguard bit information judge whether process belonging to described request has the access rights to described sharing data area data.
12. devices according to claim 11, is characterized in that, also comprise:
Safeguard bit signal judgement module, if be potential hit requests for described request, then described search the safeguard bit information of sharing data area data described in module searches before, judge shared region safeguard bit searches in buffer memory SPLB whether there is described safeguard bit information;
Acquisition module, if judge there is not described safeguard bit information in described SPLB for described safeguard bit signal judgement module, then obtains described safeguard bit information and is filled in described SPLB;
Describedly search module, if be potential hit requests specifically for described request, then from described SPLB, search described safeguard bit information.
13. devices according to any one of claim 10 ~ 12, is characterized in that, also comprise:
Hit requests judge module, before judging whether described request is potential hit requests at described potential hit requests judge module, judge whether described request is hit requests, when described request is hit requests, in described Cache, there is the cache entry identical with the process number of described request, label is identical;
Described potential hit requests judge module, if judge that described request is not hit requests specifically for described hit requests judge module, then judges whether request is potential hit requests.
14. devices according to claim 13, is characterized in that, also comprise:
Sending module, if judge that described request is not potential hit requests for described potential hit judge module and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then described request is sent to other cache outside current searched Cache, judges whether described request is hit requests by other cache outside current searched Cache;
Describedly return module, if be hit requests specifically for described request, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
15. devices according to claim 13, is characterized in that, also comprise:
Search module, if be not potential hit requests for described request and the data of described request access are the sharing data area data in the virtual address space of process corresponding to described request time, then search the safeguard bit information of described sharing data area data;
According to described safeguard bit information, described safeguard bit signal judgement module, specifically for judging whether described request has the access rights to described sharing data area data;
Sending module, if having described access rights for described request, is then sent to other cache outside current searched Cache by described request, judge whether described request is hit requests by other cache outside current searched Cache;
Describedly return module, if be hit requests specifically for described request, then return the data of described request access; Otherwise, if described request is not hit requests, then judge the whether potential hit requests of described request by other cache outside current searched Cache.
16. devices according to any one of claim 10 ~ 15, is characterized in that, also comprise:
This earth's core judge module, if judge that described request is potential hit requests for described potential hit module, before described access rights judge module judges the access rights whether described request has described sharing data area data, judge whether described request comes from this earth's core;
By described the earth's core, described access rights judge module, if come from this earth's core specifically for described request, then judges whether described request has the access rights to described sharing data area data; Otherwise, if described request comes from the core outside this earth's core, then the core by described request place is judged whether described request has the access rights to described sharing data area data.
17. devices according to any one of claim 10 ~ 16, is characterized in that, also comprise:
Divide module, before judging whether described request is potential hit requests in described potential hit module, sharing data area is marked off from the virtual address space of the correspondence of described request, described sharing data area data is stored in described sharing data area, if the process at described request place needs shared data, then to described sharing data area application virtual address space.
18. devices according to any one of claim 10 ~ 16, is characterized in that, also comprise:
Modified module, for described return module return described request access data before, the process number of the cache entry different from the process number of the process belonging to described request in described Cache, label is identical is revised as the process number of described request.
CN201410197088.0A 2014-05-09 2014-05-09 Data access method and device Active CN105094953B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410197088.0A CN105094953B (en) 2014-05-09 2014-05-09 Data access method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410197088.0A CN105094953B (en) 2014-05-09 2014-05-09 Data access method and device

Publications (2)

Publication Number Publication Date
CN105094953A true CN105094953A (en) 2015-11-25
CN105094953B CN105094953B (en) 2018-09-07

Family

ID=54575462

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410197088.0A Active CN105094953B (en) 2014-05-09 2014-05-09 Data access method and device

Country Status (1)

Country Link
CN (1) CN105094953B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112363779A (en) * 2020-11-25 2021-02-12 王志平 Safety control method for dynamic link program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727405A (en) * 2008-10-20 2010-06-09 株式会社东芝 Effective address cache memory, processor and effective address caching method
CN102270180A (en) * 2011-08-09 2011-12-07 清华大学 Multicore processor cache and management method thereof
CN102662860A (en) * 2012-03-15 2012-09-12 天津国芯科技有限公司 Translation lookaside buffer (TLB) for process switching and address matching method therein
CN102662868A (en) * 2012-05-02 2012-09-12 中国科学院计算技术研究所 Dynamic group association cache device for processor and access method thereof
US20120246408A1 (en) * 2011-03-25 2012-09-27 Fujitsu Limited Arithmetic processing device and controlling method thereof
US20120246407A1 (en) * 2011-03-21 2012-09-27 Hasenplaugh William C Method and system to improve unaligned cache memory accesses

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727405A (en) * 2008-10-20 2010-06-09 株式会社东芝 Effective address cache memory, processor and effective address caching method
US20120246407A1 (en) * 2011-03-21 2012-09-27 Hasenplaugh William C Method and system to improve unaligned cache memory accesses
US20120246408A1 (en) * 2011-03-25 2012-09-27 Fujitsu Limited Arithmetic processing device and controlling method thereof
CN102270180A (en) * 2011-08-09 2011-12-07 清华大学 Multicore processor cache and management method thereof
CN102662860A (en) * 2012-03-15 2012-09-12 天津国芯科技有限公司 Translation lookaside buffer (TLB) for process switching and address matching method therein
CN102662868A (en) * 2012-05-02 2012-09-12 中国科学院计算技术研究所 Dynamic group association cache device for processor and access method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112363779A (en) * 2020-11-25 2021-02-12 王志平 Safety control method for dynamic link program

Also Published As

Publication number Publication date
CN105094953B (en) 2018-09-07

Similar Documents

Publication Publication Date Title
CN108804350B (en) Memory access method and computer system
US9092359B2 (en) Identification and consolidation of page table entries
CN102473139B (en) I/O memory management unit including multilevel address translation for I/O and computation offload
US7917725B2 (en) Processing system implementing variable page size memory organization using a multiple page per entry translation lookaside buffer
US11853226B2 (en) Address translation cache with use of page size information to select an invalidation lookup mode, or use of leaf-and-intermediate exclusive range-specifying invalidation request, or use of invalidation request specifying single address and page size information
US9268694B2 (en) Maintenance of cache and tags in a translation lookaside buffer
US20160048551A1 (en) Relationship-based wan caching for object stores
WO2015075674A4 (en) Systems and methods for direct data access in multi-level cache memory hierarchies
US20210026771A1 (en) Cache structure using a logical directory
KR102026877B1 (en) Memory management unit and operating method thereof
CN104239237A (en) TLB (translation lookaside buffer) management method and device
CN110196757A (en) TLB filling method, device and the storage medium of virtual machine
US9984003B2 (en) Mapping processing method for a cache address in a processor to provide a color bit in a huge page technology
US10956339B2 (en) System and method for storing cache location information for cache entry transfer
US10642749B2 (en) Electronic device and method for managing memory thereof
US20140013054A1 (en) Storing data structures in cache
JP7264806B2 (en) Systems and methods for identifying the pendency of memory access requests in cache entries
CN105094953A (en) Data access method and apparatus
EP3690660B1 (en) Cache address mapping method and related device
US10162525B2 (en) Translating access requests for a multi-level page data structure
US9740628B2 (en) Page table entry consolidation
US20230103230A1 (en) Translation lookaside buffer entry allocation system and method
CN105095105A (en) Cache partitioning method and device
US20060179233A1 (en) Method, system, and computer program product for implementing a dual-addressable cache

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant