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: 10216437
    Abstract: 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: Grant
    Filed: May 30, 2017
    Date of Patent: February 26, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: William R. Tipton, Surendra Verma, Landy Wang, Malcolm James Smith
  • Patent number: 10140461
    Abstract: 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: Grant
    Filed: March 18, 2016
    Date of Patent: November 27, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Neal R. Christiansen, Scott Brender, Sarosh Havewala, Malcolm James Smith
  • Publication number: 20170262207
    Abstract: 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: Application
    Filed: May 30, 2017
    Publication date: September 14, 2017
    Inventors: William R. TIPTON, Surendra VERMA, Landy WANG, Malcolm James SMITH
  • Patent number: 9678689
    Abstract: 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: Grant
    Filed: September 25, 2013
    Date of Patent: June 13, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: William R. Tipton, Surendra Verma, Landy Wang, Malcolm James Smith
  • Publication number: 20170124345
    Abstract: 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: Application
    Filed: March 18, 2016
    Publication date: May 4, 2017
    Inventors: Neal R. Christiansen, Scott Brender, Sarosh Havewala, Malcolm James Smith
  • Patent number: 9547549
    Abstract: 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: Grant
    Filed: February 27, 2013
    Date of Patent: January 17, 2017
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: William R. Tipton, Rajsekhar Das, Malcolm James Smith, Shao-Chuan Wang, Surendra Verma
  • Patent number: 9116904
    Abstract: 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: Grant
    Filed: March 14, 2013
    Date of Patent: August 25, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Neal Robert Christiansen, Daniel Chan, Rajsekhar Das, Juan-Lee Pang, Malcolm James Smith, Andrew Herron
  • Patent number: 9092149
    Abstract: 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: Grant
    Filed: November 3, 2010
    Date of Patent: July 28, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Dustin L. Green, Neal R. Christiansen, Rajeev Nagar, Malcolm James Smith, Karan Mehra
  • Publication number: 20140359203
    Abstract: 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: Application
    Filed: September 25, 2013
    Publication date: December 4, 2014
    Applicant: Microsoft Corporation
    Inventors: William R. Tipton, Surendra Verma, Landy Wang, Malcolm James Smith
  • Publication number: 20140280392
    Abstract: 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: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Neal Robert Christiansen, Daniel Chan, Rajsekhar Das, Juan-Lee Pang, Malcolm James Smith, Andrew Herron
  • Publication number: 20140201163
    Abstract: 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: Application
    Filed: February 27, 2013
    Publication date: July 17, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: William R. Tipton, Rajsekhar Das, Malcolm James Smith, Shao-Chuan Wang, Surendra Verma
  • Patent number: 8234316
    Abstract: 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: Grant
    Filed: September 30, 2008
    Date of Patent: July 31, 2012
    Assignee: Microsoft Corporation
    Inventors: Andrew Herron, Senthil Rajaram, Neal R. Christiansen, Malcolm James Smith
  • Publication number: 20120110281
    Abstract: 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: Application
    Filed: November 3, 2010
    Publication date: May 3, 2012
    Applicant: Microsoft Corporation
    Inventors: Dustin L. Green, Neal R. Christiansen, Rajeev Nagar, Malcolm James Smith, Karan Mehra
  • Publication number: 20120079583
    Abstract: 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: Application
    Filed: September 23, 2010
    Publication date: March 29, 2012
    Applicant: Microsoft Corporation
    Inventors: Neal R. Christiansen, Rajeev Nagar, Dustin L. Green, Vladimir Sadovsky, Malcolm James Smith, Karan Mehra
  • Publication number: 20100082714
    Abstract: 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: Application
    Filed: September 30, 2008
    Publication date: April 1, 2010
    Applicant: Microsoft Corporation
    Inventors: Andrew Herron, Senthil Rajaram, Neal R. Christiansen, Malcolm James Smith