Patents by Inventor Forrest C. Foltz

Forrest C. Foltz 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).

  • Patent number: 8881163
    Abstract: Techniques for grouping individual processors into assignment entities are discussed. Statically grouping processors may permit threads to be assigned on a group basis. In this manner, the burden of scheduling threads for processing may be minimized, while the processor within the assignment entity may be selected based on the physical locality of the individual processors within the group. The groupings may permit a system to scale to meet the processing demands of various applications.
    Type: Grant
    Filed: December 7, 2007
    Date of Patent: November 4, 2014
    Assignee: Microsoft Corporation
    Inventors: Arie Van der Hoeven, Ellsworth D. Walker, Forrest C. Foltz, Zhong Deng
  • Patent number: 8024546
    Abstract: Page tables in the last level of a hierarchical page table system are scanned for candidate page tables. Candidate page tables are converted to large pages, having a page table entry in a level before the last level of the hierarchical page table system adjusted to be associated with the newly created large page. Upon receiving a notification that a large page is to be converted into a page table, a new page table is created. Each entry in the new page table is associated with a small segment of memory in the large page and an entry in a page table one level before the last level in a hierarchical page table system is adjusted to be associated with the new page table.
    Type: Grant
    Filed: October 23, 2008
    Date of Patent: September 20, 2011
    Assignee: Microsoft Corporation
    Inventors: Forrest C. Foltz, David N. Cutler
  • Publication number: 20100106930
    Abstract: Page tables in the last level of a hierarchical page table system are scanned for candidate page tables. Candidate page tables are converted to large pages, having a page table entry in a level before the last level of the hierarchical page table system adjusted to be associated with the newly created large page. Upon receiving a notification that a large page is to be converted into a page table, a new page table is created. Each entry in the new page table is associated with a small segment of memory in the large page and an entry in a page table one level before the last level in a hierarchical page table system is adjusted to be associated with the new page table.
    Type: Application
    Filed: October 23, 2008
    Publication date: April 29, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: FORREST C. FOLTZ, DAVID N. CUTLER
  • Publication number: 20090150650
    Abstract: Techniques for grouping individual processors into assignment entities are discussed. Statically grouping processors may permit threads to be assigned on a group basis. In this manner, the burden of scheduling threads for processing may be minimized, while the processor within the assignment entity may be selected based on the physical locality of the individual processors within the group. The groupings may permit a system to scale to meet the processing demands of various applications.
    Type: Application
    Filed: December 7, 2007
    Publication date: June 11, 2009
    Applicant: Microsoft Corporation
    Inventors: Arie Van der Hoeven, Ellsworth D. Walker, Forrest C. Foltz, Zhong Deng
  • Patent number: 7451450
    Abstract: Resource management architectures implemented in computer systems to manage resources are described. In one embodiment, a general architecture includes a resource manager and multiple resource providers that support one or more resource consumers such as a system component or application. Each provider is associated with a resource and acts as the manager for the resource when interfacing with the resource manager. The resource manager arbitrates access to the resources provided by the resource providers on behalf of the consumers, e.g., using a priority-based policy. A resource consumer creates an “activity” at the resource manager and builds one or more “configurations” that describe various sets of preferred resources required to perform the activity. Each resource consumer can specify one or more configurations, which may be ranked, for each activity. This allows the resource consumers to be dynamically changed from one configuration to another as operating conditions change.
    Type: Grant
    Filed: August 31, 2004
    Date of Patent: November 11, 2008
    Assignee: Microsoft Corporation
    Inventors: Mukund Sankaranarayan, Forrest C. Foltz, George Shaw, Dale A. Sather, Andy R. Raffman, Jai Srinivasan, Terje K. Backman, William G. Parry, David S. Bakin, Michael B. Jones, Sean C. McDowell, Jayachandran Raja, Robin Speed
  • Publication number: 20080184373
    Abstract: This document describes tools capable of making a portion of operating-system memory associated with a protection agent unalterable or inaccessible from an operating-system privilege mode. In some embodiments, these tools are capable of creating a protection-agent privilege mode by requesting that a virtual machine monitor protect this portion of operating-system memory. In other embodiments, these tools are capable of creating the protection-agent privilege mode by virtualizing a physical processor into multiple virtual processors, at least one of which is a protection-agent virtual processor designed to run the protection agent. By making this portion of operating-system memory unalterable or inaccessible from the operating-system privilege mode, the protection agent may be less vulnerable to attacks by entities operating within the operating-system privilege mode.
    Type: Application
    Filed: January 25, 2007
    Publication date: July 31, 2008
    Applicant: Microsoft Corporation
    Inventors: Eric Traut, Forrest C. Foltz, Andrew Thornton, Suyash Sinha
  • Patent number: 7337446
    Abstract: Resource management architectures implemented in computer systems to manage resources are described. In one embodiment, a general architecture includes a resource manager and multiple resource providers that support one or more resource consumers such as a system component or application. Each provider is associated with a resource and acts as the manager for the resource when interfacing with the resource manager. The resource manager arbitrates access to the resources provided by the resource providers on behalf of the consumers. A policy manager sets various policies that are used by the resource manager to allocate resources. One policy is a priority-based policy that distinguishes among which applications and/or users have priority over others to use the resources. A resource consumer creates an “activity” at the resource manager and builds one or more “configurations” that describe various sets of preferred resources required to perform the activity.
    Type: Grant
    Filed: August 31, 2004
    Date of Patent: February 26, 2008
    Assignee: Microsoft Corporation
    Inventors: Mukund Sankaranarayan, Forrest C. Foltz, George Shaw, Dale A. Sather, Andy R. Raffman, Jai Srinivasan, Terje K. Backman, William G. Parry, David S. Bakin, Michael B. Jones, Sean C. McDowell, Jayachandran Raja, Robin Speed
  • Patent number: 6799208
    Abstract: Resource management architectures implemented in computer systems to manage resources are described. In one embodiment, a general architecture includes a resource manager and multiple resource providers that support one or more resource consumers such as a system component or application. Each provider is associated with a resource and acts as the manager for the resource when interfacing with the resource manager. The resource manager arbitrates access to the resources provided by the resource providers on behalf of the consumers. A policy manager sets various policies that are used by the resource manager to allocate resources. One policy is a priority-based policy that distinguishes among which applications and/or users have priority over others to use the resources. A resource consumer creates an “activity” at the resource manager and builds one or more “configurations” that describe various sets of preferred resources required to perform the activity.
    Type: Grant
    Filed: May 2, 2000
    Date of Patent: September 28, 2004
    Assignee: Microsoft Corporation
    Inventors: Mukund Sankaranarayan, Forrest C. Foltz, George Shaw, Dale A. Sather, Andy R. Raffman, Jai Srinivasan, Terje K. Backman, William G. Parry, David S. Bakin, Michael B. Jones, Sean C. McDowell, Jayachandran Raja, Robin Speed
  • Patent number: 5974483
    Abstract: A ring buffer in accordance with the invention includes a plurality of registers that form a circular sequence of registers. A write pointer references one of the registers. A plurality of read pointers correspond respectively to a plurality of data consumers. Each read pointer references one of the registers. Upon receiving a new data element, the data element is written to the register that is referenced by the write pointer, and the write pointer is advanced. Upon receiving a request from a data consumer, a data element is read from the register referenced by the read pointer corresponding to the data consumer, and the read pointer is advanced.
    Type: Grant
    Filed: May 21, 1997
    Date of Patent: October 26, 1999
    Assignee: Microsoft Corporation
    Inventors: Kenneth D. Ray, Forrest C. Foltz
  • Patent number: 5701491
    Abstract: A method and system for transitioning the operating mode and networking components of a network workstation from one mode of operation to another is described herein. In a disclosed embodiment, a method and system is described for transitioning a workstation from operating under a real mode operating system (with real mode network components) to operating under a protected mode operating system (with protected mode network components). A transition program preserves the state of the workstation before the real mode network components are loaded therein and enabled. The real mode network components are then enabled and utilized to transfer to the workstation memory the protected mode operating system and protected mode network components from the network. After the transfer, the transition program disables the real mode network components, restores the pre-real mode state of the workstation, and enables the protected mode network components.
    Type: Grant
    Filed: May 31, 1995
    Date of Patent: December 23, 1997
    Assignee: Microsoft Corporation, Inc.
    Inventors: John C. Dunn, Forrest C. Foltz