Patents by Inventor Henri van Riel

Henri van Riel has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20150248361
    Abstract: A system, methods, and apparatus for determining memory distribution across multiple non-uniform memory access processing nodes are disclosed. An apparatus includes processing nodes, each including processing units and main memory serving as local memory. A bus connects the processing units of each processing node to different main memory of a different processing node as shared memory. Access to local memory has lower memory access latency than access to shared memory. The processing nodes execute threads distributed across the processing nodes, and detect memory accesses made from each processing node for each thread. The processing nodes determine locality values for the thread that represent the fraction of memory accesses made from the processing nodes, and determine processing time values for the threads for a sampling period. The processing nodes determine weighted locality values for the threads, and determine a memory distribution across the processing nodes based on the weighted locality values.
    Type: Application
    Filed: February 28, 2014
    Publication date: September 3, 2015
    Applicant: Red Hat, Inc.
    Inventor: Henri van Riel
  • Publication number: 20070208954
    Abstract: Embodiments of the present invention provide methods and systems for designating and handling confidential memory allocations of virtual memory. In particular, the operating system provides a memory allocation flag that applications may use to indicate any arbitrary area of physical memory marked with this flag may contain confidential data and should be handled accordingly. The operating system also ensures that memory allocated with this flag can be placed in physical memory. When freeing up memory, the operating system protects any data in the memory allocated with this flag. For example, the operating system may prevent the confidential memory from being swapped out to storage or from being accessible to other applications, such as a debuggers. Alternatively, the operating system may encrypt any data in the confidential memory before it is swapped out to storage.
    Type: Application
    Filed: February 28, 2006
    Publication date: September 6, 2007
    Inventors: Henri Van Riel, Alan Cox
  • Publication number: 20070204117
    Abstract: Embodiments of the present invention provide a mechanism for an operating system and applications to cooperate in memory management. Applications register with the operating system for cooperative memory management. The operating system monitors the memory and determines a memory “pressure” related to the amount of demand for the memory. As the memory pressure increases, the operating system provides a memory pressure signal as feedback to the registered applications. The operating system may send this signal to indicate it is about to commence evicting pages from the memory or when it has commenced swapping out application data. In response to the signal, the registered applications may evaluate the memory pressure, determine which data should be freed, if any, and provide this information back to the operating system. The operating system may then free those portions of memory relinquished by the applications. By releasing data the system may thus avoid swapping and increase its performance.
    Type: Application
    Filed: February 28, 2006
    Publication date: August 30, 2007
    Inventors: Henri Van Riel, Matthias Clasen
  • Publication number: 20070124540
    Abstract: Embodiments of the present invention provide methods and systems for tuning the size of the cache. In particular, when a page fault occurs, non-resident page data is checked to determine if that page was previously accessed. If the page is found in the non-resident page data, an inter-reference distance for the faulted page is determined and the distance of the oldest resident page is determined. The size of the cache may then be tuned based on comparing the inter-reference distance of the newly faulted page relative to the distance of the oldest resident page.
    Type: Application
    Filed: November 30, 2005
    Publication date: May 31, 2007
    Inventor: Henri van Riel
  • Publication number: 20070124560
    Abstract: Embodiments of the present invention provide methods and systems for efficiently tracking evicted or non-resident pages. For each non-resident page, a first hash value is generated from the page's metadata, such as the page's mapping and offset parameters. This first hash value is then used as an index to point one of a plurality of circular buffers. Each circular buffer comprises an entry for a clock pointer and entries that uniquely represent non-resident pages. The clock pointer points to the next page that is suitable for replacement and moves through the circular buffer as pages are evicted. In some embodiments, the entries that uniquely represent non-resident pages are a hash value that is generated from the page's inode data.
    Type: Application
    Filed: November 30, 2005
    Publication date: May 31, 2007
    Inventor: Henri van Riel
  • Publication number: 20070118712
    Abstract: System, method and computer program product for allocating physical memory to processes. The method includes enabling a kernel to free memory in a physical memory space corresponding to arbitrarily sized memory allocations released by processes or applications in a virtual memory space. After freeing the memory, the system determines whether freed physical memory in the physical memory space spans one or more fixed size memory units (e.g., page frames). The method further includes designating a status of the one or more page frames as available for reuse; the freed page frames marked as available for reuse being available for backing a new process without requiring the kernel to delete data included in the freed memory released by the process.
    Type: Application
    Filed: November 21, 2005
    Publication date: May 24, 2007
    Applicant: RED HAT, INC.
    Inventors: Henri van Riel, Adriaan van de Ven
  • Publication number: 20070061492
    Abstract: Techniques for virtualized computer system environments running one or more virtual machines that obviate the extra host operating system (O/S) copying steps required for sending and receiving packets of data over a network connection, thus eliminating major performance problems in virtualized environment. Such techniques include methods for emulating network I/O hardware device acceleration-assist technology providing zero-copy I/O sending and receiving optimizations. Implementation of these techniques require a host O/S to perform actions including, but not limited to: checking of the address translations (ensuring availability and data residency in physical memory), checking whether the destination of a network packet is local (to another virtual machine within the computing system), or across an external network; and, if local, checking whether either the sending destination VM, receiving VM process, or both, supports emulated hardware accelerated-assist on the same physical system.
    Type: Application
    Filed: August 5, 2005
    Publication date: March 15, 2007
    Applicant: RED HAT, INC.
    Inventor: Henri van Riel
  • Publication number: 20070005919
    Abstract: Embodiments of the present invention provide a virtualization protection system (VPS) that leverages virtual machine monitor (VMM) technology. In some embodiments, a computer system contains a host operating system and one or more virtual machines that run on “guest” operating systems. The VPS makes certain areas of memory of the computer system read-only, making it essentially impossible for the virtual machines or other component to compromise the system.
    Type: Application
    Filed: July 1, 2005
    Publication date: January 4, 2007
    Inventor: Henri van Riel
  • Publication number: 20060184653
    Abstract: A method of creating and managing virtual servers utilizes separate master copies of information such as operating systems, configuration files, and application programs. When a virtual server is created, it loads an appropriate operating system and configuration information. During the boot process, the virtual server is configured to provide a predetermined service. Appropriate application programs are subsequently loaded to support the service configuration. Multiple virtual servers can be created and configured using the master copies of information, thus reducing the amount of customization required by each virtual server. Virtual servers can be easily restarted from failures with minimal loss of data.
    Type: Application
    Filed: February 16, 2005
    Publication date: August 17, 2006
    Applicant: Red Hat, Inc.
    Inventor: Henri van Riel
  • Publication number: 20060075030
    Abstract: A system is provided for detecting unsolicited bulk email (spam). A list server receives email from various senders as well as queries regarding the senders. A database is used for storing information corresponding to the amount of unsolicited bulk email received at the spamtrap addresses. The list server dynamically makes a determination as to which senders are transmitting a disproportionate amount of email and should be labeled as spammers. The determinations made by the list server are based on the amount of unsolicited bulk email received from senders relative to the total amount of email transmitted by senders.
    Type: Application
    Filed: September 16, 2004
    Publication date: April 6, 2006
    Applicant: Red Hat, Inc.
    Inventor: Henri van Riel