WO2002099645A2 - Vorrichtung und verfahren zum ermitteln einer physikalischen adresse aus einer virtuellen adresse unter verwendung einer hierarchischen abbildungsvorschrift mit komprimierten knoten - Google Patents
Vorrichtung und verfahren zum ermitteln einer physikalischen adresse aus einer virtuellen adresse unter verwendung einer hierarchischen abbildungsvorschrift mit komprimierten knoten Download PDFInfo
- Publication number
- WO2002099645A2 WO2002099645A2 PCT/EP2002/005319 EP0205319W WO02099645A2 WO 2002099645 A2 WO2002099645 A2 WO 2002099645A2 EP 0205319 W EP0205319 W EP 0205319W WO 02099645 A2 WO02099645 A2 WO 02099645A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- list
- virtual address
- entry
- address
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/651—Multi-level translation tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/68—Details of translation look-aside buffer [TLB]
- G06F2212/681—Multi-level TLB, e.g. microTLB and main TLB
Definitions
- Virtual addresses where there is no readable / writable data or executable code are usually not mapped to a physical memory. This image is completely transparent for the application being executed.
- the virtual address space When the memory is organized in pages, the virtual address space is divided into equally large, overlap-free memory areas.
- a page in the virtual address space is assigned a page in the physical address space via the mapping rule, the page in the physical address space also being referred to as a page frame.
- the useful data memory of a page frame of the physical address space is just as large as that of a page of the virtual address space.
- TLB Translation Look Aside Buffer
- Each page table in the Alpha-AXP architecture fits into a single page, so that all page table addresses are physical addresses that do not require any further translation. Each page table for each node level is therefore exactly one physical memory page.
- the page tables ie the node lists of the nodes, contain a large number of zero entries, ie Entries that do not refer to a physical address or to a node of a lower node level. Due to the fact that each page table is exactly one physical memory page, a lot of memory space is wasted due to the well-known hierarchical addressing. The larger the virtual address space compared to the physical address space, the greater the amount of wasted storage space.
- the object of the present invention is to create a more efficient concept for determining a physical address from a virtual address and a more efficient computer system.
- the present invention is based on the finding that compression of node lists must be carried out in order to reduce the memory space which is taken up by the hierarchical mapping rule between the virtual address and the physical address.
- a compression indicator is stored together with the mapping rule which, when an entry is determined in a node list of a node, together with a corresponding one Section of the virtual address is used to read the determined entry and then find out the physical address using the determined entry.
- the hierarchical mapping rule comprises hierarchically arranged node levels, wherein a node level has at least one node. A node list with list entries is assigned to each node. Furthermore, the virtual address has sections, a section of the virtual address being assigned to a node level.
- the node list of a node comprises list entries, each list entry being identified by an index, and each list entry including a reference to a node of a hierarchically lower node level.
- the compression indicator for a node list is read before the node list entry is indexed.
- a preferred form of storing the compression indicator is to write it into a list entry of a node of a higher node level, so that when translating the address, knowledge can already be obtained when reading the list entry of a higher node level whether the node list is referenced by the read one List entry is referenced, compressed, and if the compression type is not specified by default, how it is compressed.
- the compression indicator can also be located in the compressed node list itself, for example at a default position which is always accessed before a special entry in the node list is then indexed.
- An advantage of the present invention is that the compressed node lists require less physical storage space than the uncompressed node lists, so that this storage space is available for other data.
- the node lists are no longer stored in individual physical memory pages, but as many node lists as possible are stored in one and the same physical memory page, so that the case occurs that several node lists of nodes of one and the same node level are arranged in the same physical memory page, or even several node lists of nodes of different node levels are stored in the same physical memory page.
- This has the advantage that the physical memory is "tidied up" so that not only parts of memory pages, but entire memory pages are available for other data which are not taken up by the mapping specification. This counteracts fragmentation of the physical address space.
- mapping rule at least a part of the mapping rule, and in particular only the root node itself or even only a reference to the same and a generation rule for the mapping rule are stored in a non-volatile memory using the reference, so that the computer system is also stored the addressing according to the invention can start up in virtual mode.
- the security of a computer system with virtual addressing is improved in that the computer system does not use a physical addressing mode, but instead works in the virtual addressing mode from the outset.
- the hierarchical mapping rule is stored in a non-volatile memory of the computer system, by means of which a physical address can be determined from a virtual address.
- the mapping rule is stored in the non-volatile memory so that it is present when the computer system is started up and not 4-J 1 ⁇ 1 1 ⁇
- TJ P ⁇ ⁇ TJ ⁇ CO A4 3 ⁇ TJ ⁇ ⁇ ⁇ Ei • ⁇ - ⁇ 3 ⁇ x; ⁇ 3: 3 ⁇ co - ⁇ rH - ⁇
- the lists for nodes in the hierarchical tree are compressed in order to save storage space in the non-volatile memory.
- mapping rule between the virtual and physical address it is not necessary to store the entire mapping rule in the non-volatile memory, but at least the part of the mapping rule that makes it possible to start the system startup in virtual mode. With suitable list entries in virtual mode, it is then possible to generate the remaining part of the mapping rule as soon as the required data is retrieved from the physical memory in the volatile working memory and to use it for further address translations from virtual to physical.
- the hardware state machine can therefore also access data programmed in the volatile memory at runtime after the system has been started up in virtual mode.
- page-by-page addressing is also preferred. To avoid memory fragmentation, as many combined lists as possible are stored in one and the same physical page.
- Another advantage of the present invention is that in the case of the mapping rule as a hierarchical tree structure, by implementing access rights at the node of the tree, a differentiated access rights assignment can be achieved with an adjustable granularity.
- mapping instruction in the non-volatile memory, in a form as used by the hardware state machine without the CPU being switched on • «.
- 4b shows a table for representing the node levels and the address areas addressed by a node
- mapping rule in the form of a hierarchical tree structure in which intermediate nodes can be skipped
- FIG. 6 shows a table for representing node sizes at different levels for the example of FIG. 4a
- FIG. 7 shows an example of a mapping rule in the form of an n-tree with the same sizes for additional nodes of a level
- FIG. 8 is a schematic illustration of a compression method for node lists in order to improve the ratio of entries used to the total number of entries in a list;
- Fig. 10 is a compressed representation of the tree of Fig. 7;
- FIG. 11 shows a storage space-optimized storage of the tree from FIG. 10;
- FIG. 12 is an illustration of a virtual address modified to refer to a physical address where a node list is stored.
- FIG. 13 shows a block diagram of a device according to the invention for determining a physical address from a virtual address using a hierarchical mapping rule.
- the page table can be organized in the form of a single table which has entries, each entry comprising a virtual address and the physical address assigned to it.
- a mapping rule organized in this way has the advantage of greater flexibility for managing access rights. It is also better suited to handle small page sizes, which is important if the computer system is as
- Security IC is used in a chip card.
- Small page sizes e.g. B. less than or equal to 256 bytes, also serve to avoid page table fragmentation.
- a memory page therefore has, as has been explained with reference to FIG. B. a size of 64 bytes, i. H. 512 bits. This means that the page offset must have a length of 6 bits in order to be able to address the 64 bytes starting from the start address for the page.
- Fig. 3 shows a schematic representation of an address translation using a page table.
- a virtual address 30, an AMO field 32 and a TID field 34 are used as input.
- the AMO field 32 denotes the access mode that is set by the current state of the CPU and the intended access type (read, write, execute, etc.).
- the TID field 34 is required for multitasking operation and supplies a task identifier (Task Identifier) which indicates which task the virtual address 30 is assigned to in order to be able to differentiate between different virtual address spaces of different applications.
- the so-called extended virtual address is obtained from the virtual address 30 and the TID field 34, which has the start address for the virtual page (VP 36) and an offset value (DP 38).
- the assignment rule in the form of a page table 40 comprises various entries, each entry having a column 42 for the start address of the virtual page and a column 44 for the start address of the physical page which is assigned to the virtual page in column 42.
- Page table must match field 36 of the extended virtual address. If no such entry is found in the page table, a page fault is output by a module 50. If, on the other hand, a suitable entry is found, the physical page address is read from column 44. A virtual page can be the same size as a physical page. Then the offset of the virtual address (DP 38) and the offset 52 of the physical address are the same size, so that no storage of offset values in the page table or special processing of offset values is necessary.
- the memory processing unit 18 preferably comprises a TLB in order to achieve faster addressing.
- the page table described with reference to FIG. 3 is kept in the TLB, the TLB optionally being in addition to the hardware
- the hardware state machine 18a of FIG. 1 is activated in order to convert a virtual address that was not found in the TLB into a physical address in order to combine the physical address with their virtual address in the TLB.
- the hardware state machine will access the non-volatile memory (e.g., 12 or 14 of FIG. 1) to determine the physical address using the mapping policy stored there.
- a hierarchical tree structure with physically addressed nodes is preferred as the image.
- Such a hierarchical tree structure which can also be referred to as a multilevel page table mapping rule, has the advantage that it is not necessary to keep a large page table in the non-volatile memory, but that instead of one large table, several levels or levels with smaller lists are used can. This allows more efficient management, especially with small physical memory pages.
- the hardware state machine 18a is then able to traverse the hierarchical tree structure from node to node to finally determine a physical address for a given virtual address. This process is called "page table walking”.
- FIG. 4a shows a virtual address 400 which has different sections 402 to 310.
- Section 410 is assigned to a root level, ie the highest level.
- Section 408 is assigned to the next higher level, in the example level 4.
- the virtual address section 406 400 is assigned according to level 3.
- Section 404 is assigned to level 2, while section 402 is assigned to level 1, ie the end node.
- the last section of the physical address, which can also be referred to as a section for level 0, contains the page offset, which is identified in FIG. 3 by the reference symbol 38.
- the virtual address also includes a so-called package address 412, which addresses a memory package.
- the virtual address space is divided into 256 packages of the same size, so that each package has an address space of 16 MB. This makes it possible, for example, to assign different access rights for different storage packages in the virtual address space.
- the section 410 of the virtual address 400 which comprises only 1 bit in a preferred exemplary embodiment, is assigned to a root node of the hierarchical tree structure.
- the list for the root node can be stored in the non-volatile or in registers of the memory management unit. Alternatively, the list for the root node can also be stored at a fixed location in the physical memory.
- the list for the root node is referred to as package descriptor buffer 414 and, due to the fact that section 410 of virtual address 400 has only one bit, comprises only two list entries.
- An entry in the root list 414 includes an index that is identified by the bit of the
- Section 410 of the virtual address is indexed. If the bit in section 410 has a value of one, as is the case in the example designated in FIG. 4a, the first entry in list 414 is selected. The entry also includes a pointer 416 to the physical address of the page in non-volatile memory that stores a list 418 for the first intermediate node that section 408 of FIG virtual address 400 is assigned. If, on the other hand, the bit in the section 410 of the virtual address is a zero, the second entry in the list 414 is selected, which comprises a pointer 420 to the physical address of a memory page in the non-volatile memory, in which a further list 422 for the first Intermediate node to which section 408 of virtual address 400 is assigned is stored.
- lists 418 and 422 each have 16 entries for the first intermediate node. Each entry has a length of 32 bits, so that in the exemplary embodiment shown in FIG. 4a each list takes up exactly one memory page in the non-volatile memory.
- the hardware state machine After the hardware state machine has determined the upper entry of the root list 414 based on the section 410 of the virtual address 400, the hardware state machine can use the pointer 416 to access the physical memory page in which the list 418 for the first intermediate node is stored. The hardware state machine then reads the section 408 of the virtual address 400 and, based on the fact that the section has the value "1100", selects the thirteenth entry in the list 418.
- the thirteenth entry again comprises a pointer 424 to a list 426 for a further intermediate node to which the section 406 of the virtual address 400 is assigned.
- the hardware state machine then reads the section and selects the first entry in list 426 because section 406 has the value "0000".
- the first entry in the list 426 in turn contains a pointer 428 to a list 430 which is assigned to a further intermediate node with a lower hierarchy.
- the hardware state machine now reads section 404 of the virtual
- an entry in this list can in turn address an address range of two kilobytes.
- FIG. 5 shows a section of the hierarchical page table structure from FIG. 4a, but with a different virtual address, which in sections 408 and 406 has all ones for the fourth level and for the third level.
- the mapping rule in the form of the hierarchical tree that begins with the root list 414 and ends with the physical address 440 allows skipping at least one level.
- the skipping of a level is signaled in the virtual address by a certain section, for example by the fact that there are all ones in one section, as is the case in FIG. 5.
- any other predetermined code could also be reserved for skipping a level.
- the pointer which starts from the root list 414 and is labeled 500 in FIG.
- FIG. 6 shows a table corresponding to FIG. 4a and FIG. 5 for the meaning of the bits of the virtual address and the relationship between the node size, ie the maximum number of 3 ⁇ ro 1 1 co 1 1 1 ⁇ • H ⁇ ⁇ M ⁇ 3 1 rH X 3 - ⁇ - ⁇ ⁇ 1 J ⁇ ⁇ TJ TJ ⁇ 3 ⁇ I ⁇ ⁇ rH - ⁇ ü ⁇ 1 4-> 4-J 3 ⁇ ⁇ Cn H
- FIG. 8 in order to illustrate a possible type of compression of a list 800 of an n-node.
- List 800 includes two non-zero entries that can be binary indexed by 1100 and 1110. Possible q nodes are shown next to list 800.
- three different "compressed" lists, ie q-nodes, 802, 804 and 806 can be generated in the described section-wise compression.
- the list 802 corresponds to the list 800.
- the q-node List 802 is exactly the same size as list 800 and does not require an offset bit
- list 804 is already compressed to half the storage space and contains two entries that can be indexed with 110 and 100
- the virtual offset bit corresponds to the most significant bit (sb) of both entries in the list 800. Compression is therefore possible if the msbs of the non-zero entries in list 800 are the same, since the most significant bits of the entries in the compressed list 804 are also the same achieve higher compression, as shown by the compressed list 806.
- the two non-zero entries in list 806 have most significant bits that are not the same, so no further compression is possible
- the section 404 of the virtual address would then be designed such that a bit of the same, typically the most significant bit, is interpreted as a virtual offset bit.
- the hardware state machine will compare the most significant bit of section 404 to the size bit in the non-zero entry of list 426 and continue address translation if matched, while if the bits do not match, a page fault is issued because then at least either the mapping rule or the virtual address is incorrect.
- FIG. 9 is discussed in order to show further examples of how n-nodes can be reduced to their minimum q-nodes if the compression method described with reference to FIG. 8 is used.
- the list 900 in Fig. 9 only includes a non-zero entry indexed by the bit combination "1100".
- the minimum q-node comprises only a single entry and, accordingly, 4 virtual offset bits "1100".
- a list 900 with only a single non-zero entry can thus be reduced in a simple manner with respect to its storage space requirement by 1/16 times.
- List 902 includes two non-zero entries that can be indexed with "0001" and "0011". The two entries have two equal most significant bits, so that two virtual offset bits 00 are created and the list can be reduced by a quarter.
- List 904 includes two non-zero entries, the most significant bits of which are not equal, however, so here selected compression algorithm no compression is achievable.
- the q-node is therefore exactly the same size as the n-node.
- the sample list 906 includes two entries with "0100" and
- the sample list 908 includes four non-zero entries between "1010” and "1101". All four entries have the same most significant bit, so that a compression of i ⁇ times can be achieved, which leads to a virtual offset bit of "1".
- level 1 (FIG. 4a) play a special role. Since their entries do not point to other q nodes, but directly to the physical memory pages, no additional information, such as B. a size value of a hierarchically low q-list can be stored together with the pointers. As a result, an entry in a level 1 list is used to store two pointers. Therefore, section 402 of the virtual address associated with level 1 comprises five virtual address bits. The additional bit specifies which of the pointers to use in the selected q-node entry. It should be noted that one of the two pointers can also be 0. After an entry in a level 1 list stores two pointers, the list length of a list, such as The list 434 of Fig. 4a, twice the length of a higher level list, such as. B. level 430.
- FIG. 10 illustrate how the compressed q nodes can be used to minimize the memory usage.
- the sections 1210 to 1202 basically corresponding to the sections 410 to 402 of FIG. 4a.
- the last section 1212 which had designated the offset value in FIG. 4a, is used at the virtual address 1200 to signal the q-node level, the list of which is to be modified in the NA mode.
- the NAM mode is used to manipulate virtual addresses, since for security reasons only a virtual addressing mode is to be used so that the CPU has no direct access to physical pages.
- the NAM mode is used to manipulate virtual addresses, since for security reasons only a virtual addressing mode is to be used so that the CPU has no direct access to physical pages.
- each packet descriptor included in the root list 414 i.e. H. the package descriptor buffer
- a NAM bit is stored which, when set, allows access to the q-node lists for this special memory package.
- privileged layers i.e. H. privileged modes of the operating system that can manipulate the NAM bit.
- the NAM bit is set, the last section 1212 of the virtual address is no longer interpreted as a page offset value, but is used to signal the hardware state machine whether the q-node at level 4, level 3, is at E. - Level 2 or level 1 should be addressed to access the list or entries in the corresponding list.
- the virtual address is thus interpreted differently by the hardware state machine than in the case described in FIG. 4a.
- the hardware state machine now only performs an address translation until the q node of the stop level defined by section 1212 ⁇ 1 o 3 1 3.
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP02740602A EP1393184B1 (de) | 2001-06-05 | 2002-05-14 | Vorrichtung und verfahren zum ermitteln einer physikalischen adresse aus einer virtuellen adresse unter verwendung einer hierarchischen abbildungsvorschrift mit komprimierten knoten |
US10/480,081 US7124275B2 (en) | 2001-06-05 | 2002-05-14 | Apparatus and method for determining a physical address from a virtual address by using a hierarchical mapping regulation with compressed nodes |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10127198.0 | 2001-06-05 | ||
DE10127198A DE10127198A1 (de) | 2001-06-05 | 2001-06-05 | Vorrichtung und Verfahren zum Ermitteln einer physikalischen Adresse aus einer virtuellen Adresse unter Verwendung einer hierarchischen Abbildungsvorschrift mit komprimierten Knoten |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2002099645A2 true WO2002099645A2 (de) | 2002-12-12 |
WO2002099645A3 WO2002099645A3 (de) | 2003-03-27 |
Family
ID=7687208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2002/005319 WO2002099645A2 (de) | 2001-06-05 | 2002-05-14 | Vorrichtung und verfahren zum ermitteln einer physikalischen adresse aus einer virtuellen adresse unter verwendung einer hierarchischen abbildungsvorschrift mit komprimierten knoten |
Country Status (5)
Country | Link |
---|---|
US (1) | US7124275B2 (de) |
EP (1) | EP1393184B1 (de) |
DE (1) | DE10127198A1 (de) |
TW (1) | TW591385B (de) |
WO (1) | WO2002099645A2 (de) |
Families Citing this family (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9344235B1 (en) * | 2002-06-07 | 2016-05-17 | Datacore Software Corporation | Network managed volumes |
JP2005078419A (ja) * | 2003-09-01 | 2005-03-24 | Ricoh Co Ltd | 情報処理装置及びファイル管理方法 |
US7203813B1 (en) * | 2003-11-24 | 2007-04-10 | American Megatrends, Inc. | Methods, computer systems, and computer readable media for changing module pointer values upon switches between different modes of memory addressing |
US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
US8069192B2 (en) * | 2004-03-22 | 2011-11-29 | Microsoft Corporation | Computing device with relatively limited storage space and operating / file system thereof |
US7647358B2 (en) * | 2004-03-22 | 2010-01-12 | Microsoft Corporation | Computing device with relatively limited storage space and operating/file system thereof |
US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
CA2586763C (en) | 2004-11-08 | 2013-12-17 | Cluster Resources, Inc. | System and method of providing system jobs within a compute environment |
US7886126B2 (en) | 2005-01-14 | 2011-02-08 | Intel Corporation | Extended paging tables to map guest physical memory addresses from virtual memory page tables to host physical memory addresses in a virtual machine system |
US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
EP3203374B1 (de) | 2005-04-07 | 2021-11-24 | III Holdings 12, LLC | Zugang auf anfrage zu computerressourcen |
US8369329B2 (en) * | 2005-05-16 | 2013-02-05 | Rockstar Consortium Us Lp | Dynamic hierarchical address resource management architecture, method and apparatus |
US7509474B2 (en) | 2005-06-08 | 2009-03-24 | Micron Technology, Inc. | Robust index storage for non-volatile memory |
US10140387B2 (en) | 2005-08-02 | 2018-11-27 | The Boeing Company | Model for managing variations in a product structure for a product |
US8402007B2 (en) * | 2005-08-02 | 2013-03-19 | The Boeing Company | Methods and apparatus for creating and utilizing templates in connection with information modeling |
US8275799B2 (en) * | 2005-08-02 | 2012-09-25 | The Boeing Company | Methods and apparatus for information modeling |
US9852079B2 (en) * | 2006-08-01 | 2017-12-26 | Massachusetts Institute Of Technology | EXtreme virtual memory |
US7555628B2 (en) * | 2006-08-15 | 2009-06-30 | Intel Corporation | Synchronizing a translation lookaside buffer to an extended paging table |
US8240808B2 (en) * | 2007-02-07 | 2012-08-14 | Fujifilm Corporation | Ink-jet head maintenance device, ink-jet recording device and ink-jet head maintenance method |
US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
US8549254B2 (en) * | 2007-12-31 | 2013-10-01 | Intel Corporation | Using a translation lookaside buffer in a multiple stage memory address translation structure to manage protected microcontexts |
US8560806B2 (en) * | 2007-12-31 | 2013-10-15 | Intel Corporation | Using a multiple stage memory address translation structure to manage protected micro-contexts |
US8180996B2 (en) * | 2008-05-15 | 2012-05-15 | Calxeda, Inc. | Distributed computing system with universal address system and method |
US9239799B2 (en) | 2008-06-26 | 2016-01-19 | Qualcomm Incorporated | Memory management unit directed access to system interfaces |
EP2396717A1 (de) | 2009-02-11 | 2011-12-21 | Infinidat Ltd | Virtualisiertes speichersystem und verfahren zu seinem betrieb |
US8516219B2 (en) | 2009-07-24 | 2013-08-20 | Apple Inc. | Index cache tree |
US8468293B2 (en) * | 2009-07-24 | 2013-06-18 | Apple Inc. | Restore index page |
US20130107444A1 (en) | 2011-10-28 | 2013-05-02 | Calxeda, Inc. | System and method for flexible storage and networking provisioning in large scalable processor installations |
US9465771B2 (en) | 2009-09-24 | 2016-10-11 | Iii Holdings 2, Llc | Server on a chip and node cards comprising one or more of same |
US9876735B2 (en) | 2009-10-30 | 2018-01-23 | Iii Holdings 2, Llc | Performance and power optimized computer system architectures and methods leveraging power optimized tree fabric interconnect |
US8599863B2 (en) | 2009-10-30 | 2013-12-03 | Calxeda, Inc. | System and method for using a multi-protocol fabric module across a distributed server interconnect fabric |
US9069929B2 (en) | 2011-10-31 | 2015-06-30 | Iii Holdings 2, Llc | Arbitrating usage of serial port in node card of scalable and modular servers |
US9077654B2 (en) | 2009-10-30 | 2015-07-07 | Iii Holdings 2, Llc | System and method for data center security enhancements leveraging managed server SOCs |
US20110103391A1 (en) | 2009-10-30 | 2011-05-05 | Smooth-Stone, Inc. C/O Barry Evans | System and method for high-performance, low-power data center interconnect fabric |
US9054990B2 (en) | 2009-10-30 | 2015-06-09 | Iii Holdings 2, Llc | System and method for data center security enhancements leveraging server SOCs or server fabrics |
US8918619B2 (en) * | 2009-10-04 | 2014-12-23 | Infinidat Ltd. | Virtualized storage system and method of operating thereof |
US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US9680770B2 (en) | 2009-10-30 | 2017-06-13 | Iii Holdings 2, Llc | System and method for using a multi-protocol fabric module across a distributed server interconnect fabric |
US9311269B2 (en) | 2009-10-30 | 2016-04-12 | Iii Holdings 2, Llc | Network proxy for high-performance, low-power data center interconnect fabric |
US9648102B1 (en) | 2012-12-27 | 2017-05-09 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
GB2478727B (en) * | 2010-03-15 | 2013-07-17 | Advanced Risc Mach Ltd | Translation table control |
US20110283048A1 (en) * | 2010-05-11 | 2011-11-17 | Seagate Technology Llc | Structured mapping system for a memory device |
US9218135B2 (en) | 2010-06-16 | 2015-12-22 | Microsoft Technology Licensing, Llc | Hierarchical allocation for file system storage device |
US8543648B1 (en) * | 2010-12-13 | 2013-09-24 | Imdb.Com, Inc. | Efficiently finding collaborations on a network |
US8521948B2 (en) * | 2011-01-03 | 2013-08-27 | Apple Inc. | Handling dynamic and static data for a system having non-volatile memory |
WO2012114338A1 (en) * | 2011-02-22 | 2012-08-30 | Infinidat Ltd. | Cloud storage arrangement and method of operating thereof |
US8577836B2 (en) | 2011-03-07 | 2013-11-05 | Infinidat Ltd. | Method of migrating stored data and system thereof |
US9378560B2 (en) * | 2011-06-17 | 2016-06-28 | Advanced Micro Devices, Inc. | Real time on-chip texture decompression using shader processors |
US20120331265A1 (en) * | 2011-06-24 | 2012-12-27 | Mips Technologies, Inc. | Apparatus and Method for Accelerated Hardware Page Table Walk |
WO2014003707A2 (en) * | 2012-06-25 | 2014-01-03 | Empire Technology Development Llc | Hardware-based accelerator for managing copy-on-write |
WO2014051544A2 (en) | 2012-09-25 | 2014-04-03 | Empire Technology Development Llc | Improved performance and energy efficiency while using large pages |
KR20140065196A (ko) * | 2012-11-21 | 2014-05-29 | 삼성전자주식회사 | 메모리 시스템 및 그 구동 방법 |
TWI497292B (zh) * | 2013-01-09 | 2015-08-21 | Memoright Corp | A Method of Finding System Data Based on Index Block |
JP5754458B2 (ja) * | 2013-03-22 | 2015-07-29 | カシオ計算機株式会社 | 動画像抽出装置、動画像抽出方法及びプログラム |
KR20150079236A (ko) * | 2013-12-31 | 2015-07-08 | 한국전자통신연구원 | 가상 사설망 게이트웨이 및 그의 보안 통신 방법 |
US9734083B2 (en) | 2014-03-31 | 2017-08-15 | International Business Machines Corporation | Separate memory address translations for instruction fetches and data accesses |
US9715449B2 (en) * | 2014-03-31 | 2017-07-25 | International Business Machines Corporation | Hierarchical translation structures providing separate translations for instruction fetches and data accesses |
US9824021B2 (en) | 2014-03-31 | 2017-11-21 | International Business Machines Corporation | Address translation structures to provide separate translations for instruction fetches and data accesses |
CN109376123B (zh) * | 2014-08-12 | 2022-08-19 | 华为技术有限公司 | 管理文件的方法、分布式存储系统和管理节点 |
US9946462B1 (en) * | 2016-02-15 | 2018-04-17 | Seagate Technology Llc | Address mapping table compression |
US10599582B2 (en) * | 2016-09-26 | 2020-03-24 | Intel Corporation | Using a virtual to virtual address table for memory compression |
US11853179B1 (en) * | 2018-12-28 | 2023-12-26 | Teledyne Lecroy, Inc. | Detection of a DMA (direct memory access) memory address violation when testing PCIE devices |
US11386028B2 (en) * | 2019-03-29 | 2022-07-12 | Teledyne Lecroy, Inc. | Method to test direct memory access (DMA) address capabilities at high address values |
TWI761748B (zh) * | 2020-01-06 | 2022-04-21 | 慧榮科技股份有限公司 | 多階層映射資訊管理之資料儲存裝置以及非揮發式記憶體控制方法 |
CN117494587B (zh) * | 2023-12-29 | 2024-04-09 | 杭州行芯科技有限公司 | 芯片封装结构的空间关系管理方法、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4758946A (en) | 1986-04-09 | 1988-07-19 | Elxsi | Page mapping system |
DE4405845A1 (de) | 1993-05-10 | 1994-11-17 | Mathematik Und Datenverarbeitu | Verfahren zum Abbilden eines ersten Bitstrings mit einer ersten Länge auf einen zweiten Bitstring mit einer zweiten Länge, insbesondere zum Umsetzen einer virtuellen Speicheradresse eines virtuellen Speichers in eine Realadresse eines Realspeichers |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5790979A (en) * | 1993-05-10 | 1998-08-04 | Liedtke; Jochen | Translation method in which page-table progression is dynamically determined by guard-bit sequences |
US5845331A (en) * | 1994-09-28 | 1998-12-01 | Massachusetts Institute Of Technology | Memory system including guarded pointers |
US5696927A (en) * | 1995-12-21 | 1997-12-09 | Advanced Micro Devices, Inc. | Memory paging system and method including compressed page mapping hierarchy |
US5949911A (en) * | 1997-05-16 | 1999-09-07 | Teralogic, Inc. | System and method for scalable coding of sparse data sets |
US6112286A (en) * | 1997-09-19 | 2000-08-29 | Silicon Graphics, Inc. | Reverse mapping page frame data structures to page table entries |
US6067574A (en) * | 1998-05-18 | 2000-05-23 | Lucent Technologies Inc | High speed routing using compressed tree process |
-
2001
- 2001-06-05 DE DE10127198A patent/DE10127198A1/de not_active Withdrawn
-
2002
- 2002-05-14 EP EP02740602A patent/EP1393184B1/de not_active Expired - Lifetime
- 2002-05-14 WO PCT/EP2002/005319 patent/WO2002099645A2/de not_active Application Discontinuation
- 2002-05-14 US US10/480,081 patent/US7124275B2/en not_active Expired - Lifetime
- 2002-06-05 TW TW091112126A patent/TW591385B/zh not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4758946A (en) | 1986-04-09 | 1988-07-19 | Elxsi | Page mapping system |
DE4405845A1 (de) | 1993-05-10 | 1994-11-17 | Mathematik Und Datenverarbeitu | Verfahren zum Abbilden eines ersten Bitstrings mit einer ersten Länge auf einen zweiten Bitstring mit einer zweiten Länge, insbesondere zum Umsetzen einer virtuellen Speicheradresse eines virtuellen Speichers in eine Realadresse eines Realspeichers |
Also Published As
Publication number | Publication date |
---|---|
DE10127198A1 (de) | 2002-12-19 |
US20050015378A1 (en) | 2005-01-20 |
US7124275B2 (en) | 2006-10-17 |
EP1393184A2 (de) | 2004-03-03 |
EP1393184B1 (de) | 2012-10-17 |
WO2002099645A3 (de) | 2003-03-27 |
TW591385B (en) | 2004-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2002099645A2 (de) | Vorrichtung und verfahren zum ermitteln einer physikalischen adresse aus einer virtuellen adresse unter verwendung einer hierarchischen abbildungsvorschrift mit komprimierten knoten | |
WO1994027222A1 (de) | Verfahren zum umsetzen einer virtuellen speicheradresse mit einer ersten länge in eine realadresse mit einer zweiten länge | |
DE102005022893B3 (de) | Verfahren zum Zugreifen auf Speicherbereiche einer Speicherkarte durch eine anfordernde Anwendung und Speicherkarte | |
DE102009051339A1 (de) | Speichersystem und Speicherverfahren | |
DE2459006A1 (de) | Verfahren und einrichtung zur entwicklung absoluter adressen bei segmentadressierung | |
DE10002120A1 (de) | Logikstruktur eines Adressumsetzpuffers | |
DE69936257T2 (de) | Erzeugen und uberprüfen von referenz-adresszeigern | |
DE102009059939A1 (de) | Verfahren zum Komprimieren von Bezeichnern | |
DE4234695C2 (de) | Computer-Speichersystem und Verfahren zur Aufrechterhaltung der Cache-Kohärenz zwischen einem Daten-Cache und einem Segmentdeskriptor-Cache | |
WO2000014631A2 (de) | Verfahren zum linken von in einen arbeitsspeicher eines prozessors nachgeladenen programmodulen auf einer chipkarte | |
EP1639475A2 (de) | Prozessorarchitektur für exakte zeigeridentifizierung | |
EP1352318B1 (de) | Mikroprozessorschaltung für tragbare datenträger | |
DE10120615B4 (de) | Dynamische Speicherverwaltung für Objekte unterschiedlicher Größe | |
DE60029270T2 (de) | Dynamische Rekonfiguration des Cache-Speichers eines Mikrokontrollers | |
DE102014006998A1 (de) | Korrektur eines programmierbaren Speichers | |
DE10339212A1 (de) | Datenübertragungssystem und Verfahren zum Betreiben eines Datenübertragungssystems | |
DE10127194B4 (de) | Verfahren und Vorrichtung zum Ausblenden von nicht funktionstüchtigen Speicherzellen | |
DE102011055097A1 (de) | Speichersystem und damit verbundenes Betriebsverfahren | |
EP1204917A1 (de) | Operandenstapelspeicher und verfahren zum betreiben eines operandenstapelspeichers | |
WO2002099653A1 (de) | Rechnersystem mit virtueller adressierung und verfahren zum ermitteln einer physikalischen adresse aus einer virtuellen adresse | |
EP2284710A1 (de) | Verfahren zum Verwalten von Speicherressourcen in einem portablen Datenträger | |
EP1559111A1 (de) | Verfahren zum betreiben einer speicheranordnung | |
DE10260606B4 (de) | Vorrichtung zur Übersetzung mehrerer virtueller Adressen auf eine einzige physikalische Adresse | |
EP1639466B1 (de) | Verfahren und vorrichtung zur fehlererkennung für einen cachespeicher und entsprechender cachespeicher | |
DE4405845C2 (de) | Verfahren zum Umsetzen einer virtuellen Speicheradresse eines virtuellen Speichers in eine Realadresse eines Realspeichers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2002740602 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 2002740602 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 10480081 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: JP |
|
WWW | Wipo information: withdrawn in national office |
Country of ref document: JP |