Patents by Inventor Jeremy E. Elson

Jeremy E. Elson 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: 8139872
    Abstract: The claimed subject matter provides a system and/or a method that facilitates optimally and efficiently utilizing an image file format. A server can host an image that is partitioned into two or more tiles, wherein the two or more tiles collectively represent the image in entirety and are defined in at least one image file format. A tile generator can evaluate at least one tile to identify a suitable image file format based upon at least one of a characteristic of such file format or a context of a use for the tile. A browser can utilize the tile in the identified file format in order to render a portion of the image.
    Type: Grant
    Filed: June 27, 2008
    Date of Patent: March 20, 2012
    Assignee: Microsoft Corporation
    Inventors: Jonathan R. Howell, Jeremy E. Elson, John R. Douceur
  • Patent number: 8140646
    Abstract: A speculative web browser engine may enable providing transmission of content between a server and a client prior to a user-initiated request for the content hidden in imperative code (event handlers), which may reduce user-perceived latency when the user initiates the imperative code. In some aspects, a speculative browser state may be created from an actual browser state and used to run the event handlers. The event handlers may be modified to direct actions of the event handler to update the speculative browser state. Speculative content may be transmitted between the server and the client in response to an execution of the modified code. The speculative content may be stored in a cache and made readily available for use when the user initiates the event handler and finds that the desired content has already been fetched.
    Type: Grant
    Filed: June 4, 2009
    Date of Patent: March 20, 2012
    Assignee: Microsoft Corporation
    Inventors: James W. Mickens, Jonathan R. Howell, Jacob R. Lorch, Jeremy E. Elson, Edmund B. Nightingale
  • Publication number: 20110258482
    Abstract: A system including a plurality of servers, a client, and a metadata server is described herein. The servers each store tracts of data, a plurality of the tracts comprising a byte sequence and being distributed among the plurality of servers. To locate the tracts, the metadata server generates a table that is used by the client to identify servers associated with the tracts, enabling the client to provide requests to the servers. The metadata server also enables recovery in the event of a server failure. Further, the servers construct tables of tract identifiers and locations to use in responding to the client requests.
    Type: Application
    Filed: April 19, 2010
    Publication date: October 20, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Edmund B. Nightingale, Jeremy E. Elson, Jonathan R. Howell, Galen C. Hunt
  • Publication number: 20110258488
    Abstract: A metadata server configured to maintain storage assignment mappings in non-persistent storage is described herein. The tract storage assignment mappings associate servers with storage assignments, the storage assignments representing the data stored on the servers. Responsive to a failure, the metadata server receives the storage assignments from the servers and rebuilds the storage assignment mappings from the storage assignments. The metadata server is also configured to enable clients to operate during a recovery process for a failed server by providing the storage assignment mappings to the clients during the recovery process. Also during the recovery process, the replacement server for the failed server conditionally overwrites stored data with other data received from other servers as part of the recovery process.
    Type: Application
    Filed: May 26, 2011
    Publication date: October 20, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Edmund B. Nightingale, Jeremy E. Elson
  • Publication number: 20110258297
    Abstract: A system including a plurality of servers, a client, and a metadata server is described herein. The servers each store tracts of data, a plurality of the tracts comprising a byte sequence and being distributed among the plurality of servers. To locate the tracts, the metadata server generates a table that is used by the client to identify servers associated with the tracts, enabling the client to provide requests to the servers. The metadata server also enables recovery in the event of a server failure. Further, the servers construct tables of tract identifiers and locations to use in responding to the client requests.
    Type: Application
    Filed: April 19, 2010
    Publication date: October 20, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Edmund B. Nightingale, Jeremy E. Elson, Jonathan R. Howell, Galen C. Hunt
  • Publication number: 20110258290
    Abstract: A system including at least one storage node and at least one computation node connected by a switch is described herein. Each storage node has one or more storage units and one or more network interface components, the collective bandwidths of the storage units and the network interface components being proportioned to one another to enable communication to and from other nodes at the collective bandwidth of the storage units. Each computation node has logic configured to make requests of storage nodes, an input/output bus, and one or more network interface components, the bandwidth of the bus and the collective bandwidths of the network interface components being proportioned to one another to enable communication to and from other nodes at the bandwidth of the input/output bus.
    Type: Application
    Filed: April 23, 2010
    Publication date: October 20, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Edmund B. Nightingale, Jeremy E. Elson, Jonathan R. Howell, Galen C. Hunt, David A. Maltz
  • Publication number: 20110258483
    Abstract: A Metadata server described herein is configured to generate a metadata table optimized for data durability and recovery. In generating the metadata table, the metadata server associates each possible combination of servers with one of the indices of the table, thereby ensuring that each server participates in recovery in the event of a server failure. In addition, the metadata server may also associate one or more additional servers with each index to provide added data durability. Upon generating the metadata table, the metadata server provides the metadata table to clients or servers. Alternatively, the metadata server may provide rules and parameters to clients to enable those clients to identify servers storing data items. The clients may use these parameters and an index as inputs to the rules to determine the identities of servers storing or designated to store data items corresponding to the index.
    Type: Application
    Filed: May 20, 2011
    Publication date: October 20, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Jeremy E. Elson, Edmund B. Nightingale, John R. Douceur, Stuart Schechter, Peter L. Montgomery
  • Publication number: 20100318630
    Abstract: Techniques for enabling client computing devices to leverage remote server pools for increasing the effectiveness of applications stored on the client computing device are described herein. In some instances, the server pools comprise a “cloud”, “cluster” or “data center” that comprises hundreds or thousands of servers connected together by a network that has an extremely low latency and high bandwidth relative to the network through which the client computing device connects to the server pool. The client computing device may request that the server pool perform a certain task for an application whose canonical state resides on the client. After computation of a result of the task, a server of the server pool then provides the result to the client. By doing so, the techniques dramatically increase the amount of resources working on the request of the client and, hence, dramatically increase the speed and effectiveness of the client-side application.
    Type: Application
    Filed: June 15, 2009
    Publication date: December 16, 2010
    Applicant: Microsoft Corporation
    Inventors: Jonathan R. Howell, Jeremy E. Elson, John R. Douceur, Jacob R. Lorch
  • Publication number: 20100312858
    Abstract: A speculative web browser engine may enable providing transmission of content between a server and a client prior to a user-initiated request for the content hidden in imperative code (event handlers), which may reduce user-perceived latency when the user initiates the imperative code. In some aspects, a speculative browser state may be created from an actual browser state and used to run the event handlers. The event handlers may be modified to direct actions of the event handler to update the speculative browser state. Speculative content may be transmitted between the server and the client in response to an execution of the modified code. The speculative content may be stored in a cache and made readily available for use when the user initiates the event handler and finds that the desired content has already been fetched.
    Type: Application
    Filed: June 4, 2009
    Publication date: December 9, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: James W. Mickens, Jonathan R. Howell, Jacob R. Lorch, Jeremy E. Elson, Edmund B. Nightingale
  • Publication number: 20100287618
    Abstract: Techniques for leveraging legacy code to deploy native-code desktop applications over a network (e.g., the Web) are described herein. These techniques include executing an application written in native code within a memory region that hardware of a computing device enforces. For instance, page-protection hardware (e.g., a memory management unit) or segmentation hardware may protect this region of memory in which the application executes. The techniques may also provide a narrow system call interface out of this memory region by dynamically enforcing system calls made by the application. Furthermore, these techniques may enable a browser of the computing device to function as an operating system for the native-code application. These techniques thus allow for execution of native-code applications on a browser of a computing device and, hence, over the Web in a resource-efficient manner and without sacrificing security of the computing device.
    Type: Application
    Filed: May 11, 2009
    Publication date: November 11, 2010
    Applicant: Microsoft Corporation
    Inventors: Jonathan R. Howell, Jacob R. Lorch, Jeremy E. Elson, John R. Douceur
  • Publication number: 20090324134
    Abstract: The claimed subject matter provides a system and/or a method that facilitates optimally and efficiently utilizing an image file format. A server can host an image that is partitioned into two or more tiles, wherein the two or more tiles collectively represent the image in entirety and are defined in at least one image file format. A tile generator can evaluate at least one tile to identify a suitable image file format based upon at least one of a characteristic of such file format or a context of a use for the tile. A browser can utilize the tile in the identified file format in order to render a portion of the image.
    Type: Application
    Filed: June 27, 2008
    Publication date: December 31, 2009
    Applicant: MICROSOFT CORPRATION
    Inventors: Jonathan R. Howell, Jeremy E. Elson, John R. Douceur
  • Publication number: 20090210388
    Abstract: Intent of a user is determined with respect to mapping information. A search is performed for relevant maps from a plurality of disparate sources. A subset of maps from a superset of available maps are identified that correlate to the determined intent, and the subset of maps are fused or synthesized to create a single map view that aggregates and combines relevant content from respective maps of the subset.
    Type: Application
    Filed: February 20, 2008
    Publication date: August 20, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Jeremy E. Elson, Danyel A. Fisher, Jonathan R. Howell, Miguel Elias
  • Publication number: 20080192053
    Abstract: A system is disclosed that transforms offline maps into interactive online maps. In the system, geo-coordinate relationships are determined between geo-coordinates on a source map and geo-coordinates on an online reference map. An image of the source map is transformed to form an image of a modified source map having geo-coordinates that substantially align with corresponding geo-coordinates on the reference map. Modified source tiles are formed with the image of the modified source map and displayed on a portion of the reference map.
    Type: Application
    Filed: February 8, 2007
    Publication date: August 14, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Jonathan R. Howell, Jeremy E. Elson, John R. Douceur