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: 8881163Abstract: 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: GrantFiled: December 7, 2007Date of Patent: November 4, 2014Assignee: Microsoft CorporationInventors: Arie Van der Hoeven, Ellsworth D. Walker, Forrest C. Foltz, Zhong Deng
-
Patent number: 8024546Abstract: 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: GrantFiled: October 23, 2008Date of Patent: September 20, 2011Assignee: Microsoft CorporationInventors: Forrest C. Foltz, David N. Cutler
-
Publication number: 20100106930Abstract: 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: ApplicationFiled: October 23, 2008Publication date: April 29, 2010Applicant: MICROSOFT CORPORATIONInventors: FORREST C. FOLTZ, DAVID N. CUTLER
-
Publication number: 20090150650Abstract: 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: ApplicationFiled: December 7, 2007Publication date: June 11, 2009Applicant: Microsoft CorporationInventors: Arie Van der Hoeven, Ellsworth D. Walker, Forrest C. Foltz, Zhong Deng
-
Patent number: 7451450Abstract: 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: GrantFiled: August 31, 2004Date of Patent: November 11, 2008Assignee: Microsoft CorporationInventors: 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: 20080184373Abstract: 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: ApplicationFiled: January 25, 2007Publication date: July 31, 2008Applicant: Microsoft CorporationInventors: Eric Traut, Forrest C. Foltz, Andrew Thornton, Suyash Sinha
-
Patent number: 7337446Abstract: 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: GrantFiled: August 31, 2004Date of Patent: February 26, 2008Assignee: Microsoft CorporationInventors: 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: 6799208Abstract: 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: GrantFiled: May 2, 2000Date of Patent: September 28, 2004Assignee: Microsoft CorporationInventors: 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: 5974483Abstract: 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: GrantFiled: May 21, 1997Date of Patent: October 26, 1999Assignee: Microsoft CorporationInventors: Kenneth D. Ray, Forrest C. Foltz
-
Patent number: 5701491Abstract: 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: GrantFiled: May 31, 1995Date of Patent: December 23, 1997Assignee: Microsoft Corporation, Inc.Inventors: John C. Dunn, Forrest C. Foltz