Patents by Inventor Robert P. Fitzgerald
Robert P. Fitzgerald 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: 10102102Abstract: A method and an apparatus for characterizing performance of a device based on user-perceivable latency. To characterize device performance, a value of a metric may be computed from latencies of operations performed by the device. In computing a value of a metric, latencies may be treated differently, such that some latencies perceivable by a user of the device may have a greater impact on the value of the metric than other latencies that either are not perceivable or are perceived by the user to a lesser degree. Such a performance metric based on user-perceivable latency facilitates identification of computing device that provide a desirable user experience.Type: GrantFiled: December 18, 2015Date of Patent: October 16, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Bruce L. Worthington, Jason Carl Hendrickson, Robert P. Fitzgerald, Stuart Sechrest, Changjiu Xian, Qi Zhang
-
Publication number: 20160110279Abstract: A method and an apparatus for characterizing performance of a device based on user-perceivable latency. To characterize device performance, a value of a metric may be computed from latencies of operations performed by the device. In computing a value of a metric, latencies may be treated differently, such that some latencies perceivable by a user of the device may have a greater impact on the value of the metric than other latencies that either are not perceivable or are perceived by the user to a lesser degree. Such a performance metric based on user-perceivable latency facilitates identification of computing device that provide a desirable user experience.Type: ApplicationFiled: December 18, 2015Publication date: April 21, 2016Inventors: Bruce L. Worthington, Jason Carl Hendrickson, Robert P. Fitzgerald, Stuart Sechrest, Changjiu Xian, Qi Zhang
-
Patent number: 9223675Abstract: A method and an apparatus for characterizing performance of a device based on user-perceivable latency. To characterize device performance, a value of a metric may be computed from latencies of operations performed by the device. In computing a value of a metric, latencies may be treated differently, such that some latencies perceivable by a user of the device may have a greater impact on the value of the metric than other latencies that either are not perceivable or are perceived by the user to a lesser degree. Such a performance metric based on user-perceivable latency facilitates identification of computing device that provide a desirable user experience.Type: GrantFiled: November 17, 2011Date of Patent: December 29, 2015Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Bruce L. Worthington, Jason Carl Hendrickson, Robert P. Fitzgerald, Stuart Sechrest, Changjiu Xian, Qi Zhang
-
Patent number: 8990538Abstract: A method and a memory manager for managing data storage in a plurality of types of memories. The types of memories may comprise a primary memory, such as DRAM, and a secondary memory, such as a phase change memory (PCM) or Flash memory, which may have a limited lifetime. The memory manager may be part of an operating system and may manage the memories as part of a unified address space. Characteristics of data to be stored in the memories may be used to select between the primary and secondary memories to store the data and move data between the memories. When the data is to be stored in the secondary memory, health information on the secondary memory and characteristics of the data to be stored may be used to select a location within the secondary memory to store the data.Type: GrantFiled: November 5, 2010Date of Patent: March 24, 2015Assignee: Microsoft CorporationInventors: Bruce L. Worthington, Swaroop V. Kavalanekar, Robert P. Fitzgerald, René A. Vega
-
Publication number: 20130132616Abstract: A method and an apparatus for characterizing performance of a device based on user-perceivable latency. To characterize device performance, a value of a metric may be computed from latencies of operations performed by the device. In computing a value of a metric, latencies may be treated differently, such that some latencies perceivable by a user of the device may have a greater impact on the value of the metric than other latencies that either are not perceivable or are perceived by the user to a lesser degree. Such a performance metric based on user-perceivable latency facilitates identification of computing device that provide a desirable user experience.Type: ApplicationFiled: November 17, 2011Publication date: May 23, 2013Applicant: MICROSOFT CORPORATIONInventors: Bruce L. Worthington, Jason Carl Hendrickson, Robert P. Fitzgerald, Stuart Sechrest, Changjiu Xian, Qi Zhang
-
Publication number: 20120117304Abstract: A method and a memory manager for managing data storage in a plurality of types of memories. The types of memories may comprise a primary memory, such as DRAM, and a secondary memory, such as a phase change memory (PCM) or Flash memory, which may have a limited lifetime. The memory manager may be part of an operating system and may manage the memories as part of a unified address space. Characteristics of data to be stored in the memories may be used to select between the primary and secondary memories to store the data and move data between the memories. When the data is to be stored in the secondary memory, health information on the secondary memory and characteristics of the data to be stored may be used to select a location within the secondary memory to store the data.Type: ApplicationFiled: November 5, 2010Publication date: May 10, 2012Applicant: Microsoft CorporationInventors: Bruce L. Worthington, Swaroop V. Kavalanekar, Robert P. Fitzgerald, René A. Vega
-
Patent number: 7958176Abstract: Techniques for identifying coefficients are described. A technique collects sample input values to the filter and identifies desired output values from the filter for the collected sample input values. The technique then generates a power spectrum of the collected sample input values and a power spectrum of the identified desired output values. The technique then calculates the difference between the generated power spectra. Finally, the technique identifies coefficients that yield a filter transfer function that closely approximates the calculated differences. A technique identifies coefficients for a finite impulse response filter. The technique collects sample input values for a function and identifies desired output values for the filter for the collected sample input values. The technique then approximates the output values from the input values using a linear fitting technique. Finally, the technique sets the coefficients to values obtained from the linear-fitting technique.Type: GrantFiled: April 20, 2006Date of Patent: June 7, 2011Assignee: Microsoft CorporationInventors: John R. Douceur, Robert P. Fitzgerald, John W. Miller
-
Patent number: 7668906Abstract: A wire protocol provides message formats for creating multiple network connections between a media server and a client. These multiple network connections may include a control link connection for passing control information and a data funnel connection for passing data of multiple media. The data funnel connection may be a multipoint-to-point connection that connects multiple data servers with the client. The protocol facilitates multiple requests being concurrently outstanding and asynchronous processing of requests. The protocol is designed to exist on top of a transport protocol layer.Type: GrantFiled: November 20, 2007Date of Patent: February 23, 2010Assignee: Microsoft CorporationInventors: William J. Bolosky, Craig M Dowell, Robert P. Fitzgerald, Steven P. Levi, Jan de Rie, Richard F. Rashid
-
Patent number: 7669044Abstract: Increased efficiency in booting a computer uses a process of logging physical-level disk access during a boot cycle for use in creating a boot plan for a subsequent boot. Processing the log from one or more previous boots removes unnecessary reads such as those associated with temporary files and then orders the remaining read accesses based on times of prior read accesses and and by physical location on the disk. Upon boot, data likely to be requested first orders the remaining read accesses based on times of prior read accesses and By taking advantage of disk head and platter characteristics, data is read in sweeps through the disk, reducing overall latency. Requests that are not in cache may be held if the data is already scheduled for retrieval.Type: GrantFiled: September 29, 2006Date of Patent: February 23, 2010Assignee: Microsoft CorporationInventors: Robert P. Fitzgerald, Alexander Kirshenbaum, Michael R. Fortin, Aaron Dietrich, Cenk Ergan, Charles T. Lenzmeier, Matthew Ayers
-
Patent number: 7437466Abstract: A wire protocol provides message formats for creating multiple network connections between a media server and a client. These multiple network connections may include a control link connection for passing control information and a data funnel connection for passing data of multiple media. The data funnel connection may be a multipoint-to-point connection that connects multiple data servers with the client. The protocol facilitates multiple requests being concurrently outstanding and asynchronous processing of requests. The protocol is designed to exist on top of a transport protocol layer.Type: GrantFiled: November 22, 2004Date of Patent: October 14, 2008Assignee: Microsoft CorporationInventors: William J. Bolosky, Craig Dowell, Robert P. Fitzgerald, Steven P. Levi, Jan de Rie, Richard F. Rashid
-
Patent number: 7380012Abstract: A wire protocol provides message formats for creating multiple network connections between a media server and a client. These multiple network connections may include a control link connection for passing control information and a data funnel connection for passing data of multiple media. The data funnel connection may be a multipoint-to-point connection that connects multiple data servers with the client. The protocol facilitates multiple requests being concurrently outstanding and asynchronous processing of requests. The protocol is designed to exist on top of a transport protocol layer.Type: GrantFiled: July 16, 2004Date of Patent: May 27, 2008Assignee: Microsoft CorporationInventors: William J. Bolosky, Craig Dowell, Robert P. Fitzgerald, Steven P. Levi, Jan de Rie, Richard F. Rashid
-
Patent number: 7373418Abstract: A wire protocol provides message formats for creating multiple network connections between a media server and a client. These multiple network connections may include a control link connection for passing control information and a data funnel connection for passing data of multiple media. The data funnel connection may be a multipoint-to-point connection that connects multiple data servers with the client. The protocol facilitates multiple requests being concurrently outstanding and asynchronous processing of requests. The protocol is designed to exist on top of a transport protocol layer.Type: GrantFiled: August 31, 2004Date of Patent: May 13, 2008Assignee: Microsoft CorporationInventors: William J. Bolosky, Craig M Dowell, Robert P. Fitzgerald, Steven P. Levi, Jan de Rie, Richard F. Rashid
-
Publication number: 20080082812Abstract: Increased efficiency in booting a computer uses a process of logging physical-level disk access during a boot cycle for use in creating a boot plan for a subsequent boot. Processing the log from one or more previous boots removes unnecessary reads such as those associated with temporary files and then orders the remaining read accesses based on times of prior read accesses and and by physical location on the disk. Upon boot, data likely to be requested first orders the remaining read accesses based on times of prior read accesses and By taking advantage of disk head and platter characteristics, data is read in sweeps through the disk, reducing overall latency. Requests that are not in cache may be held if the data is already scheduled for retrieval.Type: ApplicationFiled: September 29, 2006Publication date: April 3, 2008Applicant: MICROSOFT CORPORATIONInventors: Alexander Kirshenbaum, Robert P. Fitzgerald, Michael R. Fortin, Aaron Dietrich, Cenk Ergan, Charles T. Lenzmeier, Matthew Ayers
-
Patent number: 7260626Abstract: A wire protocol provides message formats for creating multiple network connections between a media server and a client. These multiple network connections may include a control link connection for passing control information and a data funnel connection for passing data of multiple media. The data funnel connection may be a multipoint-to-point connection that connects multiple data servers with the client. The protocol facilitates multiple requests being concurrently outstanding and asynchronous processing of requests. The protocol is designed to exist on top of a transport protocol layer.Type: GrantFiled: January 31, 2005Date of Patent: August 21, 2007Assignee: Microsoft CorporationInventors: William J. Bolosky, Craig Dowell, Robert P. Fitzgerald, Steven P. Levi, Jan de Rie, Richard F. Rashid
-
Patent number: 7181736Abstract: A method and system for improving the working set of a program image. The working set (WS) improvement system of the present invention employs a two-phase technique for improving the working set. In the first phase, the WS improvement system inputs the program image and outputs a program image with the locality of its references improved. In the second phase, the WS improvement system inputs the program image with its locality of references improved and outputs a program image with the placement of its basic blocks in relation to page boundaries improved so that the working set is reduced.Type: GrantFiled: September 23, 2003Date of Patent: February 20, 2007Assignee: Microsoft CorporationInventors: John R. Douceur, Robert P. Fitzgerald, John W. Miller
-
Patent number: 6865610Abstract: A wire protocol provides message formats for creating multiple network connections between a media server and a client. These multiple network connections may include a control link connection for passing control information and a data funnel connection for passing data of multiple media. The data funnel connection may be a multipoint-to-point connection that connects multiple data servers with the client. The protocol facilitates multiple requests being concurrently outstanding and asynchronous processing of requests. The protocol is designed to exist on top of a transport protocol layer.Type: GrantFiled: January 3, 2001Date of Patent: March 8, 2005Assignee: Microsoft CorporationInventors: William J. Bolosky, Craig M. Dowell, Robert P. Fitzgerald, Steven P. Levi, Jan de Rie, Richard F. Rashid
-
Publication number: 20040060042Abstract: A method and system for improving the working set of a program image. The working set (WS) improvement system of the present invention employs a two-phase technique for improving the working set. In the first phase, the WS improvement system inputs the program image and outputs a program image with the locality of its references improved. In the second phase, the WS improvement system inputs the program image with its locality of references improved and outputs a program image with the placement of its basic blocks in relation to page boundaries improved so that the working set is reduced.Type: ApplicationFiled: September 23, 2003Publication date: March 25, 2004Applicant: Microsoft CorporationInventors: John R. Douceur, Robert P. Fitzgerald, John W. Miller
-
Patent number: 6658648Abstract: A method and system for improving the working set of a program image. The working set (WS) improvement system of the present invention employs a two-phase technique for improving the working set. In the first phase, the WS improvement system inputs the program image and outputs a program image with the locality of its references improved. In the second phase, the WS improvement system inputs the program image with its locality of references improved and outputs a program image with the placement of its basic blocks in relation to page boundaries improved so that the working set is reduced.Type: GrantFiled: September 16, 1997Date of Patent: December 2, 2003Assignee: Microsoft CorporationInventors: John R. Douceur, Robert P. Fitzgerald, John W. Miller
-
Patent number: 6584489Abstract: A method and system for scheduling the use of a computer system resource using a resource planner and a resource provider are provided. In a preferred embodiment, a resource is scheduled for use by a plurality of consumer entities. Each consumer entity may request the commitment of a share of the resource. The method and system use representations of resource usage policy, present commitments of shares of the resource, and present commitments of specified amounts of the resource over a specified period of time. The method and system first receive a request from a consumer entity for the commitment of a specified share of the resource. In response, the method and system determine whether the specified share of the resource should be committed to the requesting consumer entity. This determination is based on the representations of resource usage policy and present commitments of shares of the resource.Type: GrantFiled: March 11, 1998Date of Patent: June 24, 2003Assignee: Microsoft CorporationInventors: Michael B. Jones, Paul J. Leach, Richard P. Draves, Jr., Joseph S. Barrera, III, Steven P. Levi, Richard F. Rashid, Robert P. Fitzgerald
-
Patent number: 6466987Abstract: A wire protocol provides message formats for creating multiple network connections between a media server and a client. These multiple network connections may include a control link connection for passing control information and a data funnel connection for passing data of multiple media. The data funnel connection may be a multipoint-to-point connection that connects multiple data servers with the client. The protocol facilitates multiple requests being concurrently outstanding and asynchronous processing of requests. The protocol is designed to exist on top of a transport protocol layer.Type: GrantFiled: February 23, 1999Date of Patent: October 15, 2002Assignee: Microsoft CorporationInventors: William J. Bolosky, Craig M Dowell, Robert P. Fitzgerald, Steven P Levi, Jan de Rie, Richard F. Rashid