Patents by Inventor Michael R. Fortin
Michael R. Fortin 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: 20100199063Abstract: A proactive, resilient and self-tuning memory management system and method that result in actual and perceived performance improvements in memory management, by loading and maintaining data that is likely to be needed into memory, before the data is actually needed. The system includes mechanisms directed towards historical memory usage monitoring, memory usage analysis, refreshing memory with highly-valued (e.g., highly utilized) pages, I/O pre-fetching efficiency, and aggressive disk management. Based on the memory usage information, pages are prioritized with relative values, and mechanisms work to pre-fetch and/or maintain the more valuable pages in memory. Pages are pre-fetched and maintained in a prioritized standby page set that includes a number of subsets, by which more valuable pages remain in memory over less valuable pages. Valuable data that is paged out may be automatically brought back, in a resilient manner.Type: ApplicationFiled: April 13, 2010Publication date: August 5, 2010Applicant: MICROSOFT CORPORATIONInventors: Stuart Sechrest, Michael R. Fortin, Mehmet Iyigun, Cenk Ergan
-
Patent number: 7698513Abstract: A proactive, resilient and self-tuning memory management system and method that result in actual and perceived performance improvements in memory management, by loading and maintaining data that is likely to be needed into memory, before the data is actually needed. The system includes mechanisms directed towards historical memory usage monitoring, memory usage analysis, refreshing memory with highly-valued (e.g., highly utilized) pages, I/O pre-fetching efficiency, and aggressive disk management. Based on the memory usage information, pages are prioritized with relative values, and mechanisms work to pre-fetch and/or maintain the more valuable pages in memory. Pages are pre-fetched and maintained in a prioritized standby page set that includes a number of subsets, by which more valuable pages remain in memory over less valuable pages. Valuable data that is paged out may be automatically brought back, in a resilient manner.Type: GrantFiled: June 9, 2005Date of Patent: April 13, 2010Assignee: Microsoft CorporationInventors: Stuart Sechrest, Michael R. Fortin, Mehmet Iyigun, Cenk Ergan
-
Publication number: 20100077197Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.Type: ApplicationFiled: November 30, 2009Publication date: March 25, 2010Applicant: Microsoft CorporationInventors: Cenk Ergan, Clark D. Nicholson, Dan Teodosiu, Dean L. DeWhitt, Emily Nicole Hill, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen
-
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: 7644239Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.Type: GrantFiled: May 3, 2004Date of Patent: January 5, 2010Assignee: Microsoft CorporationInventors: Cenk Ergan, Clark D. Nicholson, Dan Teodosiu, Dean L. DeWhitt, Emily Nicole Hill, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen
-
Publication number: 20090327580Abstract: An exemplary method includes writing data to locations in non-volatile solid-state memory and deciding whether to move data written to one location in the memory to another location in the memory based on generation of the data and wear of the other location. Such a method may be used for non-volatile random access memory (NVRAM). Various other methods, devices, systems, etc., are also disclosed.Type: ApplicationFiled: June 26, 2008Publication date: December 31, 2009Applicant: Microsoft CorporationInventors: James R. Hamilton, Michael R. Fortin, Mike Neil, Burton J. Smith
-
Patent number: 7620773Abstract: A method and apparatus to improve the read/write performance of a hard drive is presented. A device having solid state, non-volatile (NV) memory is added in-line to the conventional hard drive and acts as a read/write cache. Data specified by the operating system is stored in the NV memory. The operating system provides a list of data to be put in NV memory. The data includes data to be pinned in NV memory and data that is dynamic. Pinned data persists in NV memory until the operating system commands it to be flushed. Dynamic data can be flushed by the hard drive controller. Data sent by an application for storage is temporarily stored in NV memory in data blocks until the operating system commits it to the disk.Type: GrantFiled: April 15, 2005Date of Patent: November 17, 2009Assignee: Microsoft CorporationInventors: Clark D. Nicholson, Michael R. Fortin, Shaun B. Wiley, Cenk Ergan
-
Publication number: 20090235097Abstract: An exemplary method for managing power consumption of a data center includes monitoring power consumption of a data center, assessing power consumption with respect to a billing equation for power, based on the assessment, deciding whether to implement a power policy where the power policy reduces instantaneous power consumption by the data center and increases a load factor wherein the load factor is an average power consumed by the data center divided by a peak power consumed by the data center over a period of time. Various other methods, devices, systems, etc., are also disclosed.Type: ApplicationFiled: March 14, 2008Publication date: September 17, 2009Applicant: Microsoft CorporationInventors: James R. Hamilton, James J. Freely, Mike Neil, Michael J. Manos, Michael R. Fortin
-
Publication number: 20090235021Abstract: In a method of synchronizing with a separated disk cache, the separated cache is configured to transfer cache data to a staging area of a storage device. An atomic commit operation is utilized to instruct the storage device to atomically commit the cache data to a mapping scheme of the storage device.Type: ApplicationFiled: May 28, 2009Publication date: September 17, 2009Applicant: MICROSOFT CORPORATIONInventors: Ruston Panabaker, Cenk Ergan, Michael R. Fortin
-
Publication number: 20090198883Abstract: Multiple copy sets of data are maintained on one or more storage devices. Each copy set includes at least some of the same data units as other sets. Different sets optionally have data units stored in different orders on the storage device(s). A particular one of the sets of data is selected as the set to be accessed in response to detecting a particular scenario.Type: ApplicationFiled: February 4, 2008Publication date: August 6, 2009Applicant: MICROSOFT CORPORATIONInventors: Michael R. Fortin, Cenk Ergan, Mehmet Iyigun, Yevgeniy Bak, Benjamin A. Mickle, Alexander Kirshenbaum
-
Patent number: 7558913Abstract: In a method of synchronizing with a separated disk cache, the separated cache is configured to transfer cache data to a staging area of a storage device. An atomic commit operation is utilized to instruct the storage device to atomically commit the cache data to a mapping scheme of the storage device.Type: GrantFiled: June 20, 2006Date of Patent: July 7, 2009Assignee: Microsoft CorporationInventors: Ruston Panabaker, Cenk Ergan, Michael R. Fortin
-
Publication number: 20090144495Abstract: The invention is directed towards a system and method that utilizes external memory devices to cache sectors from a rotating storage device (e.g., a hard drive) to improve system performance. When an external memory device (EMD) is plugged into the computing device or onto a network in which the computing device is connected, the system recognizes the EMD and populates the EMD with disk sectors. The system routes I/O read requests directed to the disk sector to the EMD cache instead of the actual disk sector. The use of EMDs increases performance and productivity on the computing device systems for a fraction of the cost of adding memory to the computing device.Type: ApplicationFiled: February 5, 2009Publication date: June 4, 2009Applicant: MICROSOFT CORPORATIONInventors: Alexander Kirshenbaum, Cenk Ergan, Michael R. Fortin, Robert L. Reinauer
-
Patent number: 7500091Abstract: A delay of starting up of certain applications may result in improving the overall performance of a system. The applications to be delayed may be placed in a container object or box such that they can be tracked and that other applications dependent on the delayed applications can be appropriately handled.Type: GrantFiled: November 30, 2005Date of Patent: March 3, 2009Assignee: Microsoft CorporationInventors: Cenk Ergan, Dan Li, Michael R. Fortin, Robin Giese, Robert L. Reinauer
-
Patent number: 7490197Abstract: The invention is directed towards a system and method that utilizes external memory devices to cache sectors from a rotating storage device (e.g., a hard drive) to improve system performance. When an external memory device (EMD) is plugged into the computing device or onto a network in which the computing device is connected, the system recognizes the EMD and populates the EMD with disk sectors. The system routes I/O read requests directed to the disk sector to the EMD cache instead of the actual disk sector. The use of EMDs increases performance and productivity on the computing device systems for a fraction of the cost of adding memory to the computing device.Type: GrantFiled: October 21, 2004Date of Patent: February 10, 2009Assignee: Microsoft CorporationInventors: Alexander Kirshenbaum, Cenk Ergan, Michael R. Fortin, Robert L. Reinauer
-
Patent number: 7454653Abstract: A method and apparatus is provided that provides a reliable diskless network-bootable computers using a local non-volatile memory (NVM) cache. The NVM cache is used by the computer when the network is temporarily unavailable or slow. The cache is later synchronized with a remote boot server having remote storage volumes when network conditions improve. It is determined if data is to be stored in the NVM cache or the remote storage volume. Data sent to the remote storage volume is transactionally written and the data is cached in the NVM cache if a network outage is occurring or a transaction complete message has not been received. The data stored in the NVM cache allows the user to continue operating during network outages and the computer can be cold-booted using the data in the NVM cache if the network is unavailable.Type: GrantFiled: January 10, 2006Date of Patent: November 18, 2008Assignee: Microsoft CorporationInventors: Clark D. Nicholson, William J. Westerinen, Cenk Ergan, Michael R. Fortin, Mehmet Iyigun
-
Publication number: 20080183918Abstract: In a computer-implemented method for filtering input/output operations of a flash drive, an input/output request directed toward a flash drive is received. It is determined whether the input/output request is associated with a high volume write operation. If the input/output request is associated with the high volume write operation, a flash drive input/output management action to perform is selected. If the input/output request is not associated with the high volume write operation, the input/output request is forwarded to the flash drive.Type: ApplicationFiled: January 31, 2007Publication date: July 31, 2008Applicant: Microsoft CorporationInventors: Dilesh Dhokia, Mukesh Karki, Michael R. Fortin
-
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
-
Publication number: 20070294474Abstract: In a method of synchronizing with a separated disk cache, the separated cache is configured to transfer cache data to a staging area of a storage device. An atomic commit operation is utilized to instruct the storage device to atomically commit the cache data to a mapping scheme of the storage device.Type: ApplicationFiled: June 20, 2006Publication date: December 20, 2007Applicant: Microsoft CorporationInventors: Ruston Panabaker, Cenk Ergan, Michael R. Fortin
-
Patent number: 7203830Abstract: A method and apparatus to decrease the boot time and the hibernate awaken time of a computer system is presented. Static and dynamic configuration data is stored in flash memory. The size of flash memory is selected so that the initialization time of the configuration data stored in the flash memory is approximately equal to the spin-up time of the disk drive where the operating system is stored. During power down or entry into a hibernate mode, the computer system determines the static and dynamic configuration data to be stored in flash memory based on a history of prior uses. Data is also stored in the flash memory during system operation to reduce the number of times the disk drive is spun up. When the computer system is powered up or awakened from hibernation, the configuration data in flash memory is initialized while the disk drive is spinning up.Type: GrantFiled: August 16, 2005Date of Patent: April 10, 2007Assignee: Microsoft CorporationInventors: Michael R. Fortin, Cenk Ergan
-
Patent number: 7185155Abstract: A proactive, resilient and self-tuning memory management system and method that result in actual and perceived performance improvements in memory management, by loading and maintaining data that is likely to be needed into memory, before the data is actually needed. The system includes mechanisms directed towards historical memory usage monitoring, memory usage analysis, refreshing memory with highly-valued (e.g., highly utilized) pages, I/O pre-fetching efficiency, and aggressive disk management. Based on the memory usage information, pages are prioritized with relative values, and mechanisms work to pre-fetch and/or maintain the more valuable pages in memory. Pages are pre-fetched and maintained in a prioritized standby page set that includes a number of subsets, by which more valuable pages remain in memory over less valuable pages. Valuable data that is paged out may be automatically brought back, in a resilient manner.Type: GrantFiled: June 9, 2005Date of Patent: February 27, 2007Assignee: Microsoft CorporationInventors: Stuart Sechrest, Michael R. Fortin, Mehmet Iyigun, Cenk Ergan