Patents by Inventor Andrew M. Rogers

Andrew M. Rogers 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: 11952172
    Abstract: An accessory for use with a portable container includes a jacket configured to extend around at least a portion of the sidewall of the container, the jacket including a plurality of modular sections formed separately and connected together around the at least a portion of the sidewall of the container. The modular sections include a first modular section having extending around a first portion of the sidewall of the container, a second modular section connected to the first modular section and extending around a second portion of the sidewall of the container, and at least one additional modular section extending around a third portion of the sidewall of the container. The first and second modular sections have different structural configurations. The accessory also includes a first connection member connected to the jacket and configured to support the jacket in connection with the container.
    Type: Grant
    Filed: December 5, 2022
    Date of Patent: April 9, 2024
    Assignee: YETI Coolers, LLC
    Inventors: Kyle Edward Rogers, Andrew M. Bosway, Scott Barbieri, Steve Charles Nichols, Mark Carlson Rane, Donald Edward Desroches
  • Publication number: 20240092534
    Abstract: An accessory for use with a portable container includes a jacket configured to extend around at least a portion of the sidewall of the container, the jacket including a plurality of modular sections formed separately and connected together around the at least a portion of the sidewall of the container. The modular sections include a first modular section having extending around a first portion of the sidewall of the container, a second modular section connected to the first modular section and extending around a second portion of the sidewall of the container, and at least one additional modular section extending around a third portion of the sidewall of the container. The first and second modular sections have different structural configurations. The accessory also includes a first connection member connected to the jacket and configured to support the jacket in connection with the container.
    Type: Application
    Filed: November 29, 2023
    Publication date: March 21, 2024
    Inventors: Kyle Edward Rogers, Andrew M. Bosway, Scott Barbieri, Steve Charles Nichols, Mark Carlson Rane, Donald Edward Desroches
  • Patent number: 11487551
    Abstract: In certain embodiments, a method includes starting an application as a first process within a user space of an operating system. The application instantiates a key-value store library associated with the operating system. The method also includes managing, by a block device service running within the user space, one or more first data blocks of a persistent storage device allocated to the key-value store library. In addition, the method includes receiving, by a kernel of the operating system, a system call request comprising an access request generated by the key-value store library. The method further includes granting, by the block device service, and in response to the access request, the key-value store library access to the one or more first data blocks through an inter process communication channel between the application and the block device service via the kernel.
    Type: Grant
    Filed: May 6, 2021
    Date of Patent: November 1, 2022
    Assignee: Meta Platforms Technologies, LLC
    Inventors: Andrew M. Rogers, Arthur Zwiegincew
  • Patent number: 11194706
    Abstract: In certain embodiments, a method includes starting an application as a first process within a user space of an operating system. The application instantiates a data storage system associated with the operating system. The method also includes starting a block device service as a second process within the user space of the operating system, the block device service being configured to manage a persistent storage device of the computing device. In addition, the method includes receiving, by a kernel of the operating system, a system call request from the application to communicate with the block device service, the system call request is generated by the application using the data storage system and comprises an access request to access the persistent storage device. The method further includes providing the application, in response to the system call request, access to the block device service through the IPC channel.
    Type: Grant
    Filed: September 5, 2019
    Date of Patent: December 7, 2021
    Assignee: Facebook Technologies, LLC
    Inventors: Andrew M. Rogers, Bernhard Poess, Gleb Kurtsov
  • Patent number: 11176485
    Abstract: In one embodiment, a method includes a system building a first machine-learning module and one or more secondary machine-learning modules for operating with an application. The first and second modules may be configured to utilize, in operation, particular types of processing hardware, respectively. The system may receive from a client device a request to download the application, and in response send to the device the application with the first module. The system may then receive another request to download a selected one of the secondary modules, which may be selected based on a determination by the application running on the device that the associated type of processing hardware is available. In response, the system may send the selected module to the device. The application may be configured to selectively use the first module or the selected module to perform an operation.
    Type: Grant
    Filed: September 6, 2017
    Date of Patent: November 16, 2021
    Assignee: Facebook Inc.
    Inventors: Yangqing Jia, Hsiu-Tung Alex Yu, Joel Curtis McCall, Frank James Eisenhart, III, Andrew M. Rogers
  • Patent number: 11169816
    Abstract: In certain embodiments, a method includes starting an application as a first process within a user space of an operating system. The application instantiates a key-value store and a file system associated with the operating system. The method also includes managing, by a block device service running within the user space, one or more first data blocks of a persistent storage allocated to the key value store and one or more second data blocks of the persistent storage allocated to the file system. In addition, the method includes receiving, by a kernel of the operating system, a system call request comprising an access request generated by the key-value store or the file system. The method further includes granting, by the block device service, and in response to the access request, the key value store or the file system access to the one or more first or second data blocks.
    Type: Grant
    Filed: September 5, 2019
    Date of Patent: November 9, 2021
    Assignee: Facebook Technologies, LLC
    Inventors: Andrew M. Rogers, Arthur Zwiegincew
  • Publication number: 20210279067
    Abstract: In certain embodiments, a method includes starting an application as a first process within a user space of an operating system. The application instantiates a key-value store library associated with the operating system. The method also includes managing, by a block device service running within the user space, one or more first data blocks of a persistent storage device allocated to the key-value store library. In addition, the method includes receiving, by a kernel of the operating system, a system call request comprising an access request generated by the key-value store library. The method further includes granting, by the block device service, and in response to the access request, the key-value store library access to the one or more first data blocks through an inter process communication channel between the application and the block device service via the kernel.
    Type: Application
    Filed: May 6, 2021
    Publication date: September 9, 2021
    Inventors: Andrew M. Rogers, Arthur Zwiegincew
  • Publication number: 20210073001
    Abstract: In certain embodiments, a method includes starting an application as a first process within a user space of an operating system. The application instantiates a key-value store and a file system associated with the operating system. The method also includes managing, by a block device service running within the user space, one or more first data blocks of a persistent storage allocated to the key value store and one or more second data blocks of the persistent storage allocated to the file system. In addition, the method includes receiving, by a kernel of the operating system, a system call request comprising an access request generated by the key-value store or the file system. The method further includes granting, by the block device service, and in response to the access request, the key value store or the file system access to the one or more first or second data blocks.
    Type: Application
    Filed: September 5, 2019
    Publication date: March 11, 2021
    Inventors: Andrew M. Rogers, Arthur Zwiegincew
  • Publication number: 20210073116
    Abstract: In certain embodiments, a method includes starting an application as a first process within a user space of an operating system. The application instantiates a data storage system associated with the operating system. The method also includes starting a block device service as a second process within the user space of the operating system, the block device service being configured to manage a persistent storage device of the computing device. In addition, the method includes receiving, by a kernel of the operating system, a system call request from the application to communicate with the block device service, the system call request is generated by the application using the data storage system and comprises an access request to access the persistent storage device. The method further includes providing the application, in response to the system call request, access to the block device service through the IPC channel.
    Type: Application
    Filed: September 5, 2019
    Publication date: March 11, 2021
    Inventors: Andrew M. Rogers, Bernhard Poess, Gleb Kurtsov
  • Publication number: 20190073607
    Abstract: In one embodiment, a method includes a system building a first machine-learning module and one or more secondary machine-learning modules for operating with an application. The first and second modules may be configured to utilize, in operation, particular types of processing hardware, respectively. The system may receive from a client device a request to download the application, and in response send to the device the application with the first module. The system may then receive another request to download a selected one of the secondary modules, which may be selected based on a determination by the application running on the device that the associated type of processing hardware is available. In response, the system may send the selected module to the device. The application may be configured to selectively use the first module or the selected module to perform an operation.
    Type: Application
    Filed: September 6, 2017
    Publication date: March 7, 2019
    Inventors: Yangqing Jia, Hsiu-Tung Alex Yu, Joel Curtis McCall, Frank James Eisenhart, III, Andrew M. Rogers
  • Patent number: 9418219
    Abstract: An inter-process messaging security management may be provided. A message comprising an operation to be performed may be sent from a process operating in a process chamber to a second process operating in another chamber. Before the message is allowed to be delivered, the validity of the operation contained in the message may be verified and a security policy may be examined to determine whether the message is permitted to be sent from the first process to the second process. If the security policy permits the second process to execute the operation requested by the first process, the message may be delivered to the second process. If the operation is not permitted, the message may not be delivered and an error message may be returned to the first process.
    Type: Grant
    Filed: April 11, 2008
    Date of Patent: August 16, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Avinashreddy Bathula, Jimmy Alexander, Keith C. Bentley, Neil L. Coles, Brian Hudson, Matthew G. Lyons, John Mark Miller, Andrew M. Rogers, Upender R. Sandadi, Scott R. Shell, Jon Vincent
  • Patent number: 8775737
    Abstract: A method of managing memory of a computing device includes providing a first memory that can be allocated as cache memory or that can be used by a computing device component. A first memory segment can be allocated as cache memory in response to a cache miss. Cache size can be dynamically increased by allocating additional first memory segments as cache memory in response to subsequent cache misses. Cache memory size can be dynamically decreased by reallocating first memory cache segments for use by computing device components. The cache memory can be a cache for a second memory accessible to the computing device. The computing device can be a mobile device. The first memory can be an embedded memory and the second memory can comprise embedded, removable or external memory, or any combination thereof. The maximum size of the cache memory scales with the size of the first memory.
    Type: Grant
    Filed: December 2, 2010
    Date of Patent: July 8, 2014
    Assignee: Microsoft Corporation
    Inventors: Bor-Ming Hsieh, Andrew M. Rogers
  • Publication number: 20120144092
    Abstract: A method of managing memory of a computing device includes providing a first memory that can be allocated as cache memory or that can be used by a computing device component. A first memory segment can be allocated as cache memory in response to a cache miss. Cache size can be dynamically increased by allocating additional first memory segments as cache memory in response to subsequent cache misses. Cache memory size can be dynamically decreased by reallocating first memory cache segments for use by computing device components. The cache memory can be a cache for a second memory accessible to the computing device. The computing device can be a mobile device. The first memory can be an embedded memory and the second memory can comprise embedded, removable or external memory, or any combination thereof. The maximum size of the cache memory scales with the size of the first memory.
    Type: Application
    Filed: December 2, 2010
    Publication date: June 7, 2012
    Applicant: Microsoft Corporation
    Inventors: Bor-Ming Hsieh, Andrew M. Rogers
  • Patent number: 7979626
    Abstract: A transaction log for flash recovery includes a chained sequence of blocks specifying the operations that have been performed, such as a write to a sector or an erase to a block. Checkpoints are performed writing the entire flash state to flash. Once a checkpoint is performed, all of the log entries prior to the checkpoint are deleted and the log processing on recovery begins with the latest checkpoint. If the system is able to safely shutdown, then a checkpoint may be performed before the driver unloads, and on initialization, the entire persisted flash state may be loaded into the flash memory with a minimal amount of flash scanning. If a power failure occurs during system operation, then on the next boot-up, only the sectors or blocks specified in the log entries after the latest checkpoint have to be scanned, rather than all the sectors on the part.
    Type: Grant
    Filed: May 13, 2008
    Date of Patent: July 12, 2011
    Assignee: Microsoft Corporation
    Inventors: Andrew M. Rogers, Sachin Patel
  • Patent number: 7818610
    Abstract: Recovery is expedited for crashes involving flash memory. Rather than requiring an entire flash memory to be read to reconstruct lost information, only a subset of the memory need be read thereby reducing system down time, among other things. In particular, state information such as a logical to physical mapping is captured via a checkpoint operation periodically. Moreover, a deterministic usage pattern is employed to facilitate recovery of actions performed after a checkpoint.
    Type: Grant
    Filed: September 27, 2007
    Date of Patent: October 19, 2010
    Assignee: Microsoft Corporation
    Inventors: Andrew M. Rogers, Aman Kansal, Sachin Chiman Patel
  • Patent number: 7685186
    Abstract: In-place data transformations are performed on file data by moving data blocks from a source file into a temporary file and then from the temporary file into a destination file each time in a back to front fashion enabling truncation of the source file while the temporary file is being expanded and written into. Similar read, write, and truncate operations are performed between the temporary and destination files as well resulting in optimized use of available disk and/or memory space. An initial log file with information such as source file name, size, transformation type and direction is generated for recovery from a mid-transaction interruption. Based on a state (truncation, data content) of the temporary and source files, a status of data transfer prior to interruption is determined and remaining data transferred.
    Type: Grant
    Filed: June 25, 2007
    Date of Patent: March 23, 2010
    Assignee: Microsoft Corporation
    Inventors: Ariane Jansen, Andrew M. Rogers
  • Publication number: 20090320089
    Abstract: A User Brokered Authorization (UBA) mechanism for policy decisions in a computing device is provided. The authorization mechanism interacts with an authorization layer of the computing device's operating system and enables a determination of whether an authorization decision can be made programmatically or by end user decision based on generalized device policy.
    Type: Application
    Filed: June 20, 2008
    Publication date: December 24, 2009
    Applicant: Microsoft Corporation
    Inventors: Matthew G. Lyons, Scott R. Shell, Yadhu N. Gopalan, Neil R. Coles, John S. Camilleri, Loren Kohnfelder, Andrew M. Rogers, Sha Viswanathan
  • Publication number: 20090287874
    Abstract: A transaction log for flash recovery includes a chained sequence of blocks specifying the operations that have been performed, such as a write to a sector or an erase to a block. Checkpoints are performed writing the entire flash state to flash. Once a checkpoint is performed, all of the log entries prior to the checkpoint are deleted and the log processing on recovery begins with the latest checkpoint. If the system is able to safely shutdown, then a checkpoint may be performed before the driver unloads, and on initialization, the entire persisted flash state may be loaded into the flash memory with a minimal amount of flash scanning. If a power failure occurs during system operation, then on the next boot-up, only the sectors or blocks specified in the log entries after the latest checkpoint have to be scanned, rather than all the sectors on the part.
    Type: Application
    Filed: May 13, 2008
    Publication date: November 19, 2009
    Applicant: Microsoft Corporation
    Inventors: Andrew M. Rogers, Sachin Patel
  • Patent number: 7614051
    Abstract: Described is a system and method used in manufacturing computer devices, in which a single manufacturing image file contains an internal partition and file system layout into which individual operating system component packages are written. The image file is independent of any particular storage technology. To generate the file, a disk image utility tool inputs a memory configuration file and a package-to-partition mapping file to create the partitions/file systems within the image file. The operating system components (package) are written into the partitions. To store (e.g., flash) the image file's data on a particular storage device, the image file is post-processed to customize the data for a particular storage device.
    Type: Grant
    Filed: May 1, 2004
    Date of Patent: November 3, 2009
    Assignee: Microsoft Corporation
    Inventors: Jeffrey D. Glaum, Andrew M. Rogers, Mark Scott Tonkelowitz
  • Publication number: 20090260052
    Abstract: An inter-process messaging security management may be provided. A message comprising an operation to be performed may be sent from a process operating in a process chamber to a second process operating in another chamber. Before the message is allowed to be delivered, the validity of the operation contained in the message may be verified and a security policy may be examined to determine whether the message is permitted to be sent from the first process to the second process. If the security policy permits the second process to execute the operation requested by the first process, the message may be delivered to the second process. If the operation is not permitted, the message may not be delivered and an error message may be returned to the first process.
    Type: Application
    Filed: April 11, 2008
    Publication date: October 15, 2009
    Applicant: Microsoft Corporation
    Inventors: Avinashreddy Bathula, Jimmy Alexander, Keith C. Bentley, Neil L. Coles, Brian Hudson, Matthew G. Lyons, John Mark Miller, Andrew M. Rogers, Upender R. Sandadi, Scott R. Shell, Jon Vincent