For Multiple Virtual Address Spaces, E.g., Segmentation, Etc. (epo) Patents (Class 711/E12.065)
-
Patent number: 12124382Abstract: 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: GrantFiled: November 22, 2022Date of Patent: October 22, 2024Assignee: Rambus Inc.Inventors: Hongzhong Zheng, Trung A. Diep
-
Patent number: 10176006Abstract: 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: GrantFiled: July 18, 2016Date of Patent: January 8, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Lisa Cranton Heller
-
Patent number: 9652274Abstract: 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: GrantFiled: December 8, 2014Date of Patent: May 16, 2017Assignee: Ravello Systems Ltd.Inventor: Leonid Shatz
-
Patent number: 8990541Abstract: 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: GrantFiled: September 12, 2012Date of Patent: March 24, 2015Assignee: International Business Machines CorporationInventors: Adekunle Bello, Douglas Griffith, Angela Astrid Jaehde, Srinivasa Muppala Rao
-
Patent number: 8966219Abstract: 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: GrantFiled: October 30, 2007Date of Patent: February 24, 2015Assignee: International Business Machines CorporationInventors: Ramakrishnan Rajamony, William E. Speight, Lixin Zhang
-
Patent number: 8677063Abstract: 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: GrantFiled: July 30, 2010Date of Patent: March 18, 2014Assignee: International Business Machines CorporationInventors: Ralph A Becker-Szendy, Veera Deenadhayalan, D. Scott Guthridge, James Christopher Wyllie
-
Patent number: 8671238Abstract: 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: GrantFiled: July 13, 2011Date of Patent: March 11, 2014Assignee: VMware, Inc.Inventors: Ali Mashtizadeh, Gabriel Tarasuk-Levin
-
Publication number: 20130326189Abstract: 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: ApplicationFiled: May 29, 2012Publication date: December 5, 2013Applicant: FUJITSU LIMITEDInventors: Rudi CILIBRASI, David L. MARVIT
-
Publication number: 20130262817Abstract: 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: ApplicationFiled: March 28, 2012Publication date: October 3, 2013Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Anthony J. Bybell, Michael K. Gschwind
-
Patent number: 8489855Abstract: 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: GrantFiled: May 9, 2011Date of Patent: July 16, 2013Assignee: OCZ Technology Group Inc.Inventor: Franz Michael Schuette
-
Patent number: 8458434Abstract: 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: GrantFiled: July 27, 2010Date of Patent: June 4, 2013Assignee: Qualcomm Innovation Center, Inc.Inventors: Zachary A. Pfeffer, Larry A. Bassel
-
Patent number: 8386749Abstract: 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: GrantFiled: March 16, 2010Date of Patent: February 26, 2013Assignee: Advanced Micro Devices, Inc.Inventors: Uwe Dannowski, Stephan Diestelhorst, Sebastian Biemueller
-
Patent number: 8352694Abstract: 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: GrantFiled: March 27, 2008Date of Patent: January 8, 2013Assignee: Samsung Electronics Co., Ltd.Inventors: Sung-kwan Heo, Chan-ju Park, Sang-bum Suh, Joo-young Hwang, Jae-min Ryu
-
Publication number: 20120272036Abstract: 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: ApplicationFiled: April 23, 2011Publication date: October 25, 2012Inventors: Naveen Muralimanohar, Jichuan Chang, Parthasarathy Ranganathan, Doe Hyun Yoon, Norman Paul Jouppi
-
Publication number: 20120254499Abstract: 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: ApplicationFiled: March 5, 2010Publication date: October 4, 2012Applicant: UBIQUITOUS CORPORATIONInventors: Kenichi Hashimoto, Tomohiro Masubuchi
-
Publication number: 20120210071Abstract: 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: ApplicationFiled: February 11, 2011Publication date: August 16, 2012Applicant: Microsoft CorporationInventors: Richard John Black, Timothy Harris, Ross Cameron Mcilroy, Karin Strauss
-
Publication number: 20110231630Abstract: 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: ApplicationFiled: March 16, 2010Publication date: September 22, 2011Applicant: ADVANCED MICRO DEVICES, INC.Inventors: Uwe Dannowski, Stephan Diestelhorst, Sebastian Biemueller
-
Publication number: 20110219206Abstract: 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: ApplicationFiled: August 11, 2010Publication date: September 8, 2011Applicant: APPLE INC.Inventors: Cheng P. Tan, Khalu C. Bazzani
-
Publication number: 20100228936Abstract: 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: ApplicationFiled: March 5, 2009Publication date: September 9, 2010Applicant: SUN MICROSYSTEMS, INC.Inventors: Gregory M. Wright, Christopher A. Vick, Mario I. Wolczko
-
Patent number: 7707362Abstract: 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: GrantFiled: June 30, 2005Date of Patent: April 27, 2010Assignee: Seagate Technology LLCInventors: Robert George Bean, Clark Edward Lubbers, Robert Brinham Trace
-
Patent number: 7702881Abstract: 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: GrantFiled: January 31, 2007Date of Patent: April 20, 2010Assignee: Freescale Semiconductor, Inc.Inventors: Becky G. Bruce, Michael D. Snyder, Gary L. Whisenhunt, Kumar Gala
-
Publication number: 20090006733Abstract: 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: ApplicationFiled: June 27, 2007Publication date: January 1, 2009Inventors: Stephen Gold, Shannon Moyes Clark
-
Publication number: 20080155169Abstract: 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: ApplicationFiled: December 19, 2007Publication date: June 26, 2008Inventors: Daniel K. Hiltgen, Rene W. Schmidt