For Multiple Virtual Address Spaces, E.g., Segmentation, Etc. (epo) Patents (Class 711/E12.065)
  • Patent number: 12124382
    Abstract: The disclosed embodiments relate to a computer system with a cache memory that supports tagless addressing. During operation, the system receives a request to perform a memory access, wherein the request includes a virtual address. In response to the request, the system performs an address-translation operation, which translates the virtual address into both a physical address and a cache address. Next, the system uses the physical address to access one or more levels of physically addressed cache memory, wherein accessing a given level of physically addressed cache memory involves performing a tag-checking operation based on the physical address. If the access to the one or more levels of physically addressed cache memory fails to hit on a cache line for the memory access, the system uses the cache address to directly index a cache memory, wherein directly indexing the cache memory does not involve performing a tag-checking operation and eliminates the tag storage overhead.
    Type: Grant
    Filed: November 22, 2022
    Date of Patent: October 22, 2024
    Assignee: Rambus Inc.
    Inventors: Hongzhong Zheng, Trung A. Diep
  • Patent number: 10176006
    Abstract: Virtual machine purging of structures associated with address translation is delayed. A host logical processor executing on a physical processor issues a local purge request to purge entries of a structure associated with address translation. The structure associated with address translation includes one or more host entries for the host logical processor and one or more guest entries for a guest virtual processor running on the physical processor. Based on issuing the local purge request, an indicator is set to control purging of the one or more guest entries of the structure associated with address translation. Further, purging of the one or more guest entries of the guest virtual processor is delayed for consideration of purging at dispatch of the guest virtual processor.
    Type: Grant
    Filed: July 18, 2016
    Date of Patent: January 8, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Lisa Cranton Heller
  • Patent number: 9652274
    Abstract: A method and apparatus for virtual address mapping are provided. The method includes determining an offset value respective of at least a first portion of code stored on a code memory unit, generating a first virtual code respective of the first portion of code and a second virtual code respective of a second portion of code stored on the code memory unit; mapping the first virtual code to a first virtual code address and the second virtual code to a second virtual code address; generating a first virtual data respective of the first portion of data and a second virtual data respective of the second portion of data; and mapping the first virtual data to a first virtual data address and the second virtual data to a second virtual data address.
    Type: Grant
    Filed: December 8, 2014
    Date of Patent: May 16, 2017
    Assignee: Ravello Systems Ltd.
    Inventor: Leonid Shatz
  • Patent number: 8990541
    Abstract: A method, system, and computer program product for improving memory utilization of sparse pages are provided in the illustrative embodiments. A set of virtual pages is identified. Each virtual page in the set of virtual pages is a sparse virtual page. The set of virtual pages includes a first sparse virtual page and a second sparse virtual page. At least a portion of data of the first sparse virtual page in the set of virtual pages is stored in a first physical page. The first physical page belongs to a set of consolidation physical pages, and the first physical page also stores at least a portion of the data of the second sparse virtual page. The first and the second sparse pages are mapped to the first physical page.
    Type: Grant
    Filed: September 12, 2012
    Date of Patent: March 24, 2015
    Assignee: International Business Machines Corporation
    Inventors: Adekunle Bello, Douglas Griffith, Angela Astrid Jaehde, Srinivasa Muppala Rao
  • Patent number: 8966219
    Abstract: In a data processing system capable of concurrently executing multiple hardware threads of execution, an intermediate address translation unit in a processing unit translates an effective address for a memory access into an intermediate address. A cache memory is accessed utilizing the intermediate address. In response to a miss in cache memory, the intermediate address is translated into a real address by a real address translation unit that performs address translation for multiple hardware threads of execution. The system memory is accessed with the real address.
    Type: Grant
    Filed: October 30, 2007
    Date of Patent: February 24, 2015
    Assignee: International Business Machines Corporation
    Inventors: Ramakrishnan Rajamony, William E. Speight, Lixin Zhang
  • Patent number: 8677063
    Abstract: This disclosure relates to parity declustered storage device arrays having partition groups. In an exemplary embodiment, the storage system includes a storage device array, such as disk array. Each storage device is divided into partitions. Each partition includes stripe units, such as hundreds or thousands of stripe units in exemplary embodiments. The storage system also includes a physical array controller coupled to the storage device array. In an exemplary embodiment, the array controller includes a partition group lookup table and stores and retrieves data and parity in the storage devices based on the partition group lookup table. In this exemplary embodiment, the array controller also includes a stripe lookup table and/or a log. In an exemplary embodiment, the partition group lookup table and the stripe lookup table take up less memory (e.g., by an order of magnitude) than a single-level stripe map conveying the same information.
    Type: Grant
    Filed: July 30, 2010
    Date of Patent: March 18, 2014
    Assignee: International Business Machines Corporation
    Inventors: Ralph A Becker-Szendy, Veera Deenadhayalan, D. Scott Guthridge, James Christopher Wyllie
  • Patent number: 8671238
    Abstract: A method for transferring guest physical memory from a source host to a destination host during live migration of a virtual machine (VM) involves creating a file on a shared datastore, the file on the shared datastore being accessible to both the source host and the destination host. Pages of the guest physical memory are transferred from the source host to the destination host over a network connection and pages of the guest physical memory are written to the file so that the destination host can retrieve the written guest physical pages from the file.
    Type: Grant
    Filed: July 13, 2011
    Date of Patent: March 11, 2014
    Assignee: VMware, Inc.
    Inventors: Ali Mashtizadeh, Gabriel Tarasuk-Levin
  • Publication number: 20130326189
    Abstract: According to an aspect of an embodiment, a system of using an extensible language to represent storage metadata includes a computer-readable storage medium and a processing device. The computer-readable storage medium may have stored thereon storage metadata. The processing device may be configured to write the storage metadata to the computer-readable storage medium in an extensible language format. The processing device may also be configured to manipulate the storage metadata in the extensible language format. The processing device may also be configured to transfer the storage metadata in the extensible language format.
    Type: Application
    Filed: May 29, 2012
    Publication date: December 5, 2013
    Applicant: FUJITSU LIMITED
    Inventors: Rudi CILIBRASI, David L. MARVIT
  • Publication number: 20130262817
    Abstract: Embodiments of the invention relate to hybrid address translation. An aspect of the invention includes receiving a first address, the first address referencing a location in a first address space. The computer searches a segment lookaside buffer (SLB) for a SLB entry corresponding to the first address; the SLB entry comprising a type field and an address field and determines whether a value of the type field in the SLB entry indicates a hashed page table (HPT) search or a radix tree search. Based on determining that the value of the type field indicates the HPT search, a HPT is searched to determine a second address, the second address comprising a translation of the first address into a second address space; and based on determining that the value of the type field indicates the radix tree search, a radix tree is searched to determine the second address.
    Type: Application
    Filed: March 28, 2012
    Publication date: October 3, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Anthony J. Bybell, Michael K. Gschwind
  • Patent number: 8489855
    Abstract: A solid state drive that uses over-provisioning of NAND flash memory blocks as part of housekeeping functionality, including deduplication and coalescence of data for efficient usage of NAND flash memory devices and maintaining sufficient numbers of erased blocks to promote write performance.
    Type: Grant
    Filed: May 9, 2011
    Date of Patent: July 16, 2013
    Assignee: OCZ Technology Group Inc.
    Inventor: Franz Michael Schuette
  • Patent number: 8458434
    Abstract: Memory management methods and computing apparatus with memory management capabilities are disclosed. One exemplary method includes mapping an address from an address space of a physically-mapped device to a first address of a common address space so as to create a first common mapping instance, and encapsulating an existing processor mapping that maps an address from an address space of a processor to a second address of the common address space to create a second common mapping instance. In addition, a third common mapping instance between an address from an address space of a memory-management-unit (MMU) device and a third address of the common address space is created, wherein the first, second, and third addresses of the common address space may be the same address or different addresses, and the first, second, and third common mapping instances may be manipulated using the same function calls.
    Type: Grant
    Filed: July 27, 2010
    Date of Patent: June 4, 2013
    Assignee: Qualcomm Innovation Center, Inc.
    Inventors: Zachary A. Pfeffer, Larry A. Bassel
  • Patent number: 8386749
    Abstract: A processing system has one or more processors that implement a plurality of virtual machines that are managed by a hypervisor. Each virtual machine provides a secure and isolated hardware-emulation environment for execution of one or more corresponding guest operating systems (OSs). Each guest OS, as well as the hypervisor itself, has an associated address space, identified with a corresponding “WorldID.” Further, each virtual machine and the hypervisor can manage multiple lower-level address spaces, identified with a corresponding “address space identifier” or “ASID”. The address translation logic of the processing system translates the WorldID and ASID of the current address space context of the processing system to corresponding WorldID and ASID search keys, which have fewer bits than the original identifiers and thus require less complex translation lookaside buffer (TLB) hit logic.
    Type: Grant
    Filed: March 16, 2010
    Date of Patent: February 26, 2013
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Uwe Dannowski, Stephan Diestelhorst, Sebastian Biemueller
  • Patent number: 8352694
    Abstract: Provided is a method of controlling memory access. In a system including a first layer element executed in a privileged mode having a first priority of permission to access the entire region of a memory and second and third layer elements executed in an unprivileged mode having a second priority of permission to access a partial region of the memory, the method of controlling memory access determines whether the memory is accessible for each page that is an address space unit, based on which mode a layer element currently accessing the memory is executed in between the privileged mode and the unprivileged mode; and determines whether the memory is accessible based on which one of the first, second and third layer elements corresponds to a domain currently being attempted to be accessed from among a plurality of domains of the memory.
    Type: Grant
    Filed: March 27, 2008
    Date of Patent: January 8, 2013
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Sung-kwan Heo, Chan-ju Park, Sang-bum Suh, Joo-young Hwang, Jae-min Ryu
  • Publication number: 20120272036
    Abstract: An adaptive, memory system is provided. The adaptive memory system has a number of physical-memory devices and a memory controller that creates and maintains a logical address space to which the physical-memory devices and data-storage allocations are mapped, and through which mapping the memory controller matches static, dynamic, and dynamically-adjustable retention and resiliency characteristics of portions of the physical-memory devices with specified retention and resiliency characteristics specified for the data-storage allocations.
    Type: Application
    Filed: April 23, 2011
    Publication date: October 25, 2012
    Inventors: Naveen Muralimanohar, Jichuan Chang, Parthasarathy Ranganathan, Doe Hyun Yoon, Norman Paul Jouppi
  • Publication number: 20120254499
    Abstract: Provided are a program, a control method, and a control device by which an activation time can be shortened. In a computer system which is equipped with a Memory Management Unit (MMU), with respect to a table of the MMU, page table entries are rewritten so that page faults occur at each page necessary for operation of software. At the time of activating, stored memory images are read page by page for the page faults which occurred in the RAM to be accessed. By reading as described above, reading of unnecessary pages is not performed, and thus, the activation time can be shortened. The present invention can be applied to a personal computer and an electronic device provided with an embedded computer.
    Type: Application
    Filed: March 5, 2010
    Publication date: October 4, 2012
    Applicant: UBIQUITOUS CORPORATION
    Inventors: Kenichi Hashimoto, Tomohiro Masubuchi
  • Publication number: 20120210071
    Abstract: A multi-core processor with a shared physical memory is described. In an embodiment a sending core sends a memory write request to a destination core so that the request may be acted upon by the destination core as if it originated from the destination core. In an example, a data structure is configured in the shared physical memory and mapped to be accessible to the sending and destination cores. In an example, the shared data structure is used as a message channel between the sending and destination cores to carry data using the memory write request. In an embodiment a notification mechanism is enabled using the shared physical memory in order to notify the destination core of events by updating a notification data structure. In an example, the notification mechanism triggers a notification process at the destination core to inform a receiving process of a notification.
    Type: Application
    Filed: February 11, 2011
    Publication date: August 16, 2012
    Applicant: Microsoft Corporation
    Inventors: Richard John Black, Timothy Harris, Ross Cameron Mcilroy, Karin Strauss
  • Publication number: 20110231630
    Abstract: A processing system has one or more processors that implement a plurality of virtual machines that are managed by a hypervisor. Each virtual machine provides a secure and isolated hardware-emulation environment for execution of one or more corresponding guest operating systems (OSs). Each guest OS, as well as the hypervisor itself, has an associated address space, identified with a corresponding “WorldID.” Further, each virtual machine and the hypervisor can manage multiple lower-level address spaces, identified with a corresponding “address space identifier” or “ASID”. The address translation logic of the processing system translates the WorldID and ASID of the current address space context of the processing system to corresponding WorldID and ASID search keys, which have fewer bits than the original identifiers and thus require less complex translation lookaside buffer (TLB) hit logic.
    Type: Application
    Filed: March 16, 2010
    Publication date: September 22, 2011
    Applicant: ADVANCED MICRO DEVICES, INC.
    Inventors: Uwe Dannowski, Stephan Diestelhorst, Sebastian Biemueller
  • Publication number: 20110219206
    Abstract: A computer system that generates a disposition instruction and an associated access command directed to a block of data at a logical address is described. The disposition instruction and the access command are communicated to a memory system in the computer system via a communication link. Note that the memory system includes different types of memory having different performance characteristics, and the disposition instruction is generated based on the different performance characteristics. In response to the access command, the memory system accesses the block of data at the logical address in a first type of memory in the different types of memory. Furthermore, based on the disposition instruction, the memory system moves the block of data to a second type of memory in the different types of memory to facilitate subsequent accesses to the block of data.
    Type: Application
    Filed: August 11, 2010
    Publication date: September 8, 2011
    Applicant: APPLE INC.
    Inventors: Cheng P. Tan, Khalu C. Bazzani
  • Publication number: 20100228936
    Abstract: One embodiment of the present invention provides a system that accesses memory locations in an object-addressed memory system. During a memory access in the object-addressed memory system, the system receives an object identifier and an address. The system then uses the object identifier to identify a paged memory object associated with the memory access. Next, the system uses the address and a page table associated with the paged memory object to identify a memory page associated with the memory access. After determining the memory page, the system uses the address to access a memory location in the memory page.
    Type: Application
    Filed: March 5, 2009
    Publication date: September 9, 2010
    Applicant: SUN MICROSYSTEMS, INC.
    Inventors: Gregory M. Wright, Christopher A. Vick, Mario I. Wolczko
  • Patent number: 7707362
    Abstract: A method is provided for storing and retrieving data in a network-attached data storage device by a cooperatively multitasking real time operating system configured to execute datapath routines and a general purpose operating system kernel configured to communicate with the network.
    Type: Grant
    Filed: June 30, 2005
    Date of Patent: April 27, 2010
    Assignee: Seagate Technology LLC
    Inventors: Robert George Bean, Clark Edward Lubbers, Robert Brinham Trace
  • Patent number: 7702881
    Abstract: A processing device includes a first storage location configured to store a first value associated with a first address space, a second storage location configured to store a second value associated with a second address space, and a third storage location configured to store a third value associated with a third address space. The processing device further includes a memory management unit, which includes a first input configured to receive a first address value associated with a data transfer operation, a second input configured to receive an identifier associated with the data transfer operation, and an address space select module configured to identify a select value from the first value, the second value and the third value based on the identifier. The memory management module further includes an address modification module configured to generate a second address value based on the first address value and the select value.
    Type: Grant
    Filed: January 31, 2007
    Date of Patent: April 20, 2010
    Assignee: Freescale Semiconductor, Inc.
    Inventors: Becky G. Bruce, Michael D. Snyder, Gary L. Whisenhunt, Kumar Gala
  • Publication number: 20090006733
    Abstract: Embodiments include methods, apparatus, and systems for managing resources in a physical storage library behind a virtual storage library. In one embodiment, priorities are assigned to copy applications and rules determine which when applications are assigned to resources in the physical storage library.
    Type: Application
    Filed: June 27, 2007
    Publication date: January 1, 2009
    Inventors: Stephen Gold, Shannon Moyes Clark
  • Publication number: 20080155169
    Abstract: One embodiment of the present invention includes a method comprising: (a) representing at least state data of a virtual machine in a unit of network storage of a network storage system; and (b) employing data manipulation functionality of the network storage system to implement a virtual machine operation that manipulates at least the state data of the virtual machine.
    Type: Application
    Filed: December 19, 2007
    Publication date: June 26, 2008
    Inventors: Daniel K. Hiltgen, Rene W. Schmidt