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: 11952172Abstract: 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: GrantFiled: December 5, 2022Date of Patent: April 9, 2024Assignee: YETI Coolers, LLCInventors: Kyle Edward Rogers, Andrew M. Bosway, Scott Barbieri, Steve Charles Nichols, Mark Carlson Rane, Donald Edward Desroches
-
Publication number: 20240092534Abstract: 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: ApplicationFiled: November 29, 2023Publication date: March 21, 2024Inventors: Kyle Edward Rogers, Andrew M. Bosway, Scott Barbieri, Steve Charles Nichols, Mark Carlson Rane, Donald Edward Desroches
-
Patent number: 11487551Abstract: 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: GrantFiled: May 6, 2021Date of Patent: November 1, 2022Assignee: Meta Platforms Technologies, LLCInventors: Andrew M. Rogers, Arthur Zwiegincew
-
Patent number: 11194706Abstract: 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: GrantFiled: September 5, 2019Date of Patent: December 7, 2021Assignee: Facebook Technologies, LLCInventors: Andrew M. Rogers, Bernhard Poess, Gleb Kurtsov
-
Patent number: 11176485Abstract: 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: GrantFiled: September 6, 2017Date of Patent: November 16, 2021Assignee: Facebook Inc.Inventors: Yangqing Jia, Hsiu-Tung Alex Yu, Joel Curtis McCall, Frank James Eisenhart, III, Andrew M. Rogers
-
Patent number: 11169816Abstract: 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: GrantFiled: September 5, 2019Date of Patent: November 9, 2021Assignee: Facebook Technologies, LLCInventors: Andrew M. Rogers, Arthur Zwiegincew
-
Publication number: 20210279067Abstract: 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: ApplicationFiled: May 6, 2021Publication date: September 9, 2021Inventors: Andrew M. Rogers, Arthur Zwiegincew
-
Publication number: 20210073001Abstract: 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: ApplicationFiled: September 5, 2019Publication date: March 11, 2021Inventors: Andrew M. Rogers, Arthur Zwiegincew
-
Publication number: 20210073116Abstract: 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: ApplicationFiled: September 5, 2019Publication date: March 11, 2021Inventors: Andrew M. Rogers, Bernhard Poess, Gleb Kurtsov
-
Publication number: 20190073607Abstract: 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: ApplicationFiled: September 6, 2017Publication date: March 7, 2019Inventors: Yangqing Jia, Hsiu-Tung Alex Yu, Joel Curtis McCall, Frank James Eisenhart, III, Andrew M. Rogers
-
Patent number: 9418219Abstract: 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: GrantFiled: April 11, 2008Date of Patent: August 16, 2016Assignee: Microsoft Technology Licensing, LLCInventors: 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: 8775737Abstract: 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: GrantFiled: December 2, 2010Date of Patent: July 8, 2014Assignee: Microsoft CorporationInventors: Bor-Ming Hsieh, Andrew M. Rogers
-
Publication number: 20120144092Abstract: 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: ApplicationFiled: December 2, 2010Publication date: June 7, 2012Applicant: Microsoft CorporationInventors: Bor-Ming Hsieh, Andrew M. Rogers
-
Patent number: 7979626Abstract: 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: GrantFiled: May 13, 2008Date of Patent: July 12, 2011Assignee: Microsoft CorporationInventors: Andrew M. Rogers, Sachin Patel
-
Patent number: 7818610Abstract: 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: GrantFiled: September 27, 2007Date of Patent: October 19, 2010Assignee: Microsoft CorporationInventors: Andrew M. Rogers, Aman Kansal, Sachin Chiman Patel
-
Patent number: 7685186Abstract: 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: GrantFiled: June 25, 2007Date of Patent: March 23, 2010Assignee: Microsoft CorporationInventors: Ariane Jansen, Andrew M. Rogers
-
Publication number: 20090320089Abstract: 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: ApplicationFiled: June 20, 2008Publication date: December 24, 2009Applicant: Microsoft CorporationInventors: Matthew G. Lyons, Scott R. Shell, Yadhu N. Gopalan, Neil R. Coles, John S. Camilleri, Loren Kohnfelder, Andrew M. Rogers, Sha Viswanathan
-
Publication number: 20090287874Abstract: 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: ApplicationFiled: May 13, 2008Publication date: November 19, 2009Applicant: Microsoft CorporationInventors: Andrew M. Rogers, Sachin Patel
-
Patent number: 7614051Abstract: 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: GrantFiled: May 1, 2004Date of Patent: November 3, 2009Assignee: Microsoft CorporationInventors: Jeffrey D. Glaum, Andrew M. Rogers, Mark Scott Tonkelowitz
-
Publication number: 20090260052Abstract: 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: ApplicationFiled: April 11, 2008Publication date: October 15, 2009Applicant: Microsoft CorporationInventors: 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