Patents by Inventor Malcolm James Smith
Malcolm James Smith 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: 10216437Abstract: Aspects of the subject matter described herein relate to storage systems and aliased memory. In aspects, a file system driver or other component may send a request to a memory controller to create an alias between two blocks of memory. One of the blocks of memory may be used for main memory while the other of the blocks of memory may be used for a storage system. In response, the memory controller may create an alias between the blocks of memory. Until the alias is severed, when the memory controller receives a request for data from the block in main memory, the memory controller may respond with data from the memory block used for the storage system. The memory controller may also implement other actions as described herein.Type: GrantFiled: May 30, 2017Date of Patent: February 26, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: William R. Tipton, Surendra Verma, Landy Wang, Malcolm James Smith
-
Patent number: 10140461Abstract: The techniques and systems described herein reduce the amount of storage resources consumed by containers by creating placeholder files in container namespaces. The placeholder files are associated with read-only access to corresponding shared files stored in a read-only namespace. The read-only namespace can be accessible to multiple different containers. This increases the storage density for a storage unit because more containers can be executed from the same storage unit. The techniques and systems described herein further reduce the amount of storage resources consumed by containers by creating placeholder directories. The techniques and systems described herein also reduce the amount of memory storage resources consumed by containers to execute files by using a shared execution memory area.Type: GrantFiled: March 18, 2016Date of Patent: November 27, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Neal R. Christiansen, Scott Brender, Sarosh Havewala, Malcolm James Smith
-
Publication number: 20170262207Abstract: Aspects of the subject matter described herein relate to storage systems and aliased memory. In aspects, a file system driver or other component may send a request to a memory controller to create an alias between two blocks of memory. One of the blocks of memory may be used for main memory while the other of the blocks of memory may be used for a storage system. In response, the memory controller may create an alias between the blocks of memory. Until the alias is severed, when the memory controller receives a request for data from the block in main memory, the memory controller may respond with data from the memory block used for the storage system. The memory controller may also implement other actions as described herein.Type: ApplicationFiled: May 30, 2017Publication date: September 14, 2017Inventors: William R. TIPTON, Surendra VERMA, Landy WANG, Malcolm James SMITH
-
Patent number: 9678689Abstract: Aspects of the subject matter described herein relate to storage systems and aliased memory. In aspects, a file system driver or other component may send a request to a memory controller to create an alias between two blocks of memory. One of the blocks of memory may be used for main memory while the other of the blocks of memory may be used for a storage system. In response, the memory controller may create an alias between the blocks of memory. Until the alias is severed, when the memory controller receives a request for data from the block in main memory, the memory controller may respond with data from the memory block used for the storage system. The memory controller may also implement other actions as described herein.Type: GrantFiled: September 25, 2013Date of Patent: June 13, 2017Assignee: Microsoft Technology Licensing, LLCInventors: William R. Tipton, Surendra Verma, Landy Wang, Malcolm James Smith
-
Publication number: 20170124345Abstract: The techniques and systems described herein reduce the amount of storage resources consumed by containers by creating placeholder files in container namespaces. The placeholder files are associated with read-only access to corresponding shared files stored in a read-only namespace. The read-only namespace can be accessible to multiple different containers. This increases the storage density for a storage unit because more containers can be executed from the same storage unit. The techniques and systems described herein further reduce the amount of storage resources consumed by containers by creating placeholder directories. The techniques and systems described herein also reduce the amount of memory storage resources consumed by containers to execute files by using a shared execution memory area.Type: ApplicationFiled: March 18, 2016Publication date: May 4, 2017Inventors: Neal R. Christiansen, Scott Brender, Sarosh Havewala, Malcolm James Smith
-
Patent number: 9547549Abstract: Aspects of the subject matter described herein relate to file system technology. In aspects, a mechanism is described that allows a file system to handle corrupted file system metadata in a way that provides high availability. When corrupted metadata is detected, the corrupted metadata may be deleted while the file system remains online and available to service file input/output operations that involve non-corrupted metadata.Type: GrantFiled: February 27, 2013Date of Patent: January 17, 2017Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: William R. Tipton, Rajsekhar Das, Malcolm James Smith, Shao-Chuan Wang, Surendra Verma
-
Patent number: 9116904Abstract: A file system that operates on an underlying volume that has multiple tiers, each tier including a particular trait set. Upon creating or otherwise identifying a file system namespace (such as a directory or file) that is in a volume or that is to be included within the volume, a storage trait set to be applied corresponding to the file system namespace is identified. Then, the storage trait set is compared against the trait sets for the multiple tiers to identify a tier into which to store the file system namespace. The file system namespace is then caused to be stored within the identified tier. Thus, the file system is provided with a volume that has multiple tiers (each having different trait sets) to choose from in storing files.Type: GrantFiled: March 14, 2013Date of Patent: August 25, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Neal Robert Christiansen, Daniel Chan, Rajsekhar Das, Juan-Lee Pang, Malcolm James Smith, Andrew Herron
-
Patent number: 9092149Abstract: Aspects of the subject matter described herein relate to virtualization and offload reads and writes. In aspects, an offload read allows a requestor to obtain a token that represents data while an offload write allows the requestor to request that the data (or a part thereof) represented by a token be logically written. Offload reads and writes may be used to perform various actions for virtual environments.Type: GrantFiled: November 3, 2010Date of Patent: July 28, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Dustin L. Green, Neal R. Christiansen, Rajeev Nagar, Malcolm James Smith, Karan Mehra
-
Publication number: 20140359203Abstract: Aspects of the subject matter described herein relate to storage systems and aliased memory. In aspects, a file system driver or other component may send a request to a memory controller to create an alias between two blocks of memory. One of the blocks of memory may be used for main memory while the other of the blocks of memory may be used for a storage system. In response, the memory controller may create an alias between the blocks of memory. Until the alias is severed, when the memory controller receives a request for data from the block in main memory, the memory controller may respond with data from the memory block used for the storage system. The memory controller may also implement other actions as described herein.Type: ApplicationFiled: September 25, 2013Publication date: December 4, 2014Applicant: Microsoft CorporationInventors: William R. Tipton, Surendra Verma, Landy Wang, Malcolm James Smith
-
Publication number: 20140280392Abstract: A file system that operates on an underlying volume that has multiple tiers, each tier including a particular trait set. Upon creating or otherwise identifying a file system namespace (such as a directory or file) that is in a volume or that is to be included within the volume, a storage trait set to be applied corresponding to the file system namespace is identified. Then, the storage trait set is compared against the trait sets for the multiple tiers to identify a tier into which to store the file system namespace. The file system namespace is then caused to be stored within the identified tier. Thus, the file system is provided with a volume that has multiple tiers (each having different trait sets) to choose from in storing files.Type: ApplicationFiled: March 14, 2013Publication date: September 18, 2014Applicant: MICROSOFT CORPORATIONInventors: Neal Robert Christiansen, Daniel Chan, Rajsekhar Das, Juan-Lee Pang, Malcolm James Smith, Andrew Herron
-
Publication number: 20140201163Abstract: Aspects of the subject matter described herein relate to file system technology. In aspects, a mechanism is described that allows a file system to handle corrupted file system metadata in a way that provides high availability. When corrupted metadata is detected, the corrupted metadata may be deleted while the file system remains online and available to service file input/output operations that involve non-corrupted metadata.Type: ApplicationFiled: February 27, 2013Publication date: July 17, 2014Applicant: MICROSOFT CORPORATIONInventors: William R. Tipton, Rajsekhar Das, Malcolm James Smith, Shao-Chuan Wang, Surendra Verma
-
Patent number: 8234316Abstract: A processing device and a machine-implemented method may be provided for tracking file system dependencies with respect to a volume residing on a storage device and guest volumes residing on virtual storage devices nested within the volume. A shim driver may receive an indication of a virtual storage device being surfaced and may parse contents to surface partitions and volumes contained within the virtual storage device to a system. The shim driver may open a guest volume nested within a host volume and may send a register request, regarding the guest volume, to a virtual disk mini-filter associated with the host volume. The virtual disk mini-filter may save information regarding a relationship between the host volume and the guest volume. The saved information may be used to prevent file system corruption when the host volume is dismounted or unexpectedly removed.Type: GrantFiled: September 30, 2008Date of Patent: July 31, 2012Assignee: Microsoft CorporationInventors: Andrew Herron, Senthil Rajaram, Neal R. Christiansen, Malcolm James Smith
-
Publication number: 20120110281Abstract: Aspects of the subject matter described herein relate to virtualization and offload reads and writes. In aspects, an offload read allows a requestor to obtain a token that represents data while an offload write allows the requestor to request that the data (or a part thereof) represented by a token be logically written. Offload reads and writes may be used to perform various actions for virtual environments.Type: ApplicationFiled: November 3, 2010Publication date: May 3, 2012Applicant: Microsoft CorporationInventors: Dustin L. Green, Neal R. Christiansen, Rajeev Nagar, Malcolm James Smith, Karan Mehra
-
Publication number: 20120079583Abstract: Aspects of the subject matter described herein relate to offload reads and writes. In aspects, a requestor that seeks to transfer data sends a request for a representation of the data. In response, the requestor receives one or more tokens that represent the data. The requestor may then provide one or more of these tokens to a component with a request to write data represented by the one or more tokens. In some exemplary applications, the component may use the one or more tokens to identify the data and may then read the data or logically write the data without additional interaction with the requestor. Tokens may be invalidated by request or based on other factors.Type: ApplicationFiled: September 23, 2010Publication date: March 29, 2012Applicant: Microsoft CorporationInventors: Neal R. Christiansen, Rajeev Nagar, Dustin L. Green, Vladimir Sadovsky, Malcolm James Smith, Karan Mehra
-
Publication number: 20100082714Abstract: A processing device and a machine-implemented method may be provided for tracking file system dependencies with respect to a volume residing on a storage device and guest volumes residing on virtual storage devices nested within the volume. A shim driver may receive an indication of a virtual storage device being surfaced and may parse contents to surface partitions and volumes contained within the virtual storage device to a system. The shim driver may open a guest volume nested within a host volume and may send a register request, regarding the guest volume, to a virtual disk mini-filter associated with the host volume. The virtual disk mini-filter may save information regarding a relationship between the host volume and the guest volume. The saved information may be used to prevent file system corruption when the host volume is dismounted or unexpectedly removed.Type: ApplicationFiled: September 30, 2008Publication date: April 1, 2010Applicant: Microsoft CorporationInventors: Andrew Herron, Senthil Rajaram, Neal R. Christiansen, Malcolm James Smith