Patents by Inventor Jack Allen Nichols
Jack Allen Nichols 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: 20220239741Abstract: Dynamic storage management in cloud storage synchronization is provided. A limit may be specified for amount of data associated with hydrated content in local storage. Upon detecting the limit being exceeded, the system may automatically begin to dehydrate files in local storage and replace them with placeholder files. Placeholders may also be specified on by default and content may initially synchronize as placeholders. As the user hydrates content, some files that were previously hydrated may be reverted to the placeholder state as the limit for amount of data in local storage is approached or exceeded. In some examples, specific limits may not be defined, but content may be heuristically dehydrated based on usage and size. In yet another example, the synchronization and local content dehydration may be performed on a per-folder basis.Type: ApplicationFiled: April 19, 2022Publication date: July 28, 2022Inventors: Jack Allen NICHOLS, Ed AVERETT
-
Patent number: 11368528Abstract: Dynamic storage management in cloud storage synchronization is provided. A limit may be specified for amount of data associated with hydrated content in local storage. Upon detecting the limit being exceeded, the system may automatically begin to dehydrate files in local storage and replace them with placeholder files. Placeholders may also be specified on by default and content may initially synchronize as placeholders. As the user hydrates content, some files that were previously hydrated may be reverted to the placeholder state as the limit for amount of data in local storage is approached or exceeded. In some examples, specific limits may not be defined, but content may be heuristically dehydrated based on usage and size. In yet another example, the synchronization and local content dehydration may be performed on a per-folder basis.Type: GrantFiled: September 20, 2016Date of Patent: June 21, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Jack Allen Nichols, Ed Averett
-
Patent number: 11080243Abstract: This disclosure generally relates to synchronizing a list of queries made against content hosted by a collaborative workspace environment, or against some other remote computing device, to a local computing device. The methods and system described herein enable a synchronization client associated with the local computing device to synchronize one or more queries (e.g., a most recently used file list on the collaborative workspace environment, a list of shared files on the collaborative workspace environment and the like), along with the content associated with the one or more queries, provided on the collaborative workspace environment to the local computing device.Type: GrantFiled: September 11, 2017Date of Patent: August 3, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Jack Allen Nichols, Jason Fergus Moore
-
Patent number: 11061775Abstract: A computing system includes at least one processor and memory storing instructions executable by the at least one processor, wherein the instructions, when executed, cause the computing system to instruct a synchronization engine to synchronize first and second versions of a file, the first version being stored on a first storage system and the second version being stored on a second storage system, receive a backoff indicator corresponding to the file, based on the backoff indicator, instruct the synchronization engine to backoff synchronizing changes to the file, and allow the changes to the file to be synchronized by a co-authoring application, maintain a first set of collaborative metadata indicative of content of the first version of the file, and maintain a second set of collaborative metadata indicative of content of the second version of the file.Type: GrantFiled: March 18, 2019Date of Patent: July 13, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Jack Allen Nichols, Benjamin M. Yim, Adam Christopher Czeisler, Amnon I. Govrin, Michal Krzysztof Piaseczny, Marcus Eduardo Markiewicz, Daniel Vincent Fiordalis, Jonathan Alexander Bockelman, Marcelo Albuquerque Fernandes Mas, Chris J. Guzak, Michael J. Novak, Juan-Lee Pang, Tyler Kien Beam
-
Patent number: 10936548Abstract: Systems, components, devices, and methods for synchronizing files between a local file system and a server are provided. In an example, synchronization of individual files is paused by placing the individual files in a hold state. A non-limiting example method accesses a file stored on the local file system for synchronization with an associated file on the server and determines whether differences between the file and the associated file prevent synchronization. When determined that differences between the file and the associated file prevent synchronization, the method places the file in a hold state. The hold state pauses synchronization of the content in the file with the content of the associated file. In some examples, the method continues to synchronize topological changes to files that have been placed in the hold state and/or resumes synchronization after it is determined that the file is no longer different than the associated file.Type: GrantFiled: June 30, 2016Date of Patent: March 2, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Yisheng Chen, Amnon Itamar Govrin, Francisco Jose Garcia-Ascanio, Jack Allen Nichols
-
Patent number: 10929350Abstract: A system to enable a user to generate copies of files at a client device and to cause a file hosting platform to generate backups of these copies in a cloud database without transferring file content data for these files between the client device and the cloud database. When a user copies a file from a first folder on a client device to a second folder on the client device, the system may determine that the file content data for this file is already present in the cloud database. Then, rather than uploading the file content data to the cloud database from the client device, the system may cause a file hosting platform to access the file content data directly from the cloud database to perform a file copy operation.Type: GrantFiled: December 4, 2017Date of Patent: February 23, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Neal Robert Christiansen, Ping Xie, Trevor Van Leeuwen, Jack Allen Nichols, Brian David Jones
-
Patent number: 10678809Abstract: This disclosure generally relates to synchronizing non-file content items from a collaborative workspace environment to a local computing device. Once the non-file content item has been synchronized to the local computing device, content or other data contained within the non-file content item may be accessed and edited. Once the edits are complete, the updated non-file content item may be provided back to the collaborative workspace environment. The changes may then be provided back to the original non-file content item such that it includes the most recent updates.Type: GrantFiled: September 11, 2017Date of Patent: June 9, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Jack Allen Nichols, Jason Fergus Moore
-
Patent number: 10616327Abstract: Policy based hydration behavior in cloud storage synchronization is provided. In some examples, user intent and defined policy or policies may be examined by a synchronization engine to determine when a synchronization should be aborted and instead redirected to viewing the requested file from the cloud, thereby avoiding the download. The synchronization engine may include a web interface with the ability to display and edit different types of files in this fashion. In addition to redirecting to the cloud, hydration may be blocked entirely in other examples. In a further example, a selective synchronization dialog may be launched to allow the user specify select action(s). A policy that dictates the hydration behavior may be persisted and updated as needed. To implement the policy, required operations on the local machine may be intercepted.Type: GrantFiled: September 20, 2016Date of Patent: April 7, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Jack Allen Nichols, Ed Averett
-
Patent number: 10592470Abstract: Variety of approaches to control file hydration behavior are described. A filter driver initiates operations to control file hydration behavior upon receiving a process identifier (PID) registration from a synchronization engine. Upon receiving a file operation request associated with a placeholder file, a PID and a process name associated with the file operation is identified. A hydration behavior is detected based on the PID or the process name. A decision associated with the file operation request is rendered based on the hydration behavior.Type: GrantFiled: December 2, 2016Date of Patent: March 17, 2020Assignee: Microsoft Technology Licensing, LLCInventor: Jack Allen Nichols
-
Publication number: 20190213082Abstract: A computing system includes at least one processor and memory storing instructions executable by the at least one processor, wherein the instructions, when executed, cause the computing system to instruct a synchronization engine to synchronize first and second versions of a file, the first version being stored on a first storage system and the second version being stored on a second storage system, receive a backoff indicator corresponding to the file, based on the backoff indicator, instruct the synchronization engine to backoff synchronizing changes to the file, and allow the changes to the file to be synchronized by a co-authoring application, maintain a first set of collaborative metadata indicative of content of the first version of the file, and maintain a second set of collaborative metadata indicative of content of the second version of the file.Type: ApplicationFiled: March 18, 2019Publication date: July 11, 2019Inventors: Jack Allen NICHOLS, Benjamin M. Yim, Adam Christopher Czeisler, Amnon I. Govrin, Michal Krzysztof Piaseczny, Marcus Eduardo Markiewicz, Daniel Vincent Fiordalis, Jonathan Alexander Bockelman, Marcelo Albuquerque Fernandes Mas, Chris J. Guzak, Michael J. Novak, Juan-Lee Pang, Tyler Kien Beam
-
Publication number: 20190171729Abstract: A system to enable a user to generate copies of files at a client device and to cause a file hosting platform to generate backups of these copies in a cloud database without transferring file content data for these files between the client device and the cloud database. When a user copies a file from a first folder on a client device to a second folder on the client device, the system may determine that the file content data for this file is already present in the cloud database. Then, rather than uploading the file content data to the cloud database from the client device, the system may cause a file hosting platform to access the file content data directly from the cloud database to perform a file copy operation.Type: ApplicationFiled: December 4, 2017Publication date: June 6, 2019Inventors: Neal Robert CHRISTIANSEN, Ping Xie, Trevor Van Leeuwen, Jack Allen Nichols, Brian David Jones
-
Patent number: 10282255Abstract: A synchronization engine detects a notification of a change to a file. It determines whether an application associated with the file has indicated that the file is to be synchronized by the application. If so, the changes to the file are synchronized between a cloud-based storage system and a local disk by the application. Collaborative metadata, associated with the synchronized file, is updated to indicate a state of a copy of the file on the local disk and a copy of the file in the cloud-based storage system. The collaborative metadata is stored by the synchronization engine.Type: GrantFiled: March 4, 2016Date of Patent: May 7, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Jack Allen Nichols, Benjamin M. Yim, Adam Christopher Czeisler, Amnon I. Govrin, Michal Krzysztof Piaseczny, Marcus Eduardo Markiewicz, Daniel Vincent Fiordalis, Jonathan Alexander Bockelman, Marcelo Albuquerque Fernandes Mas, Chris J. Guzak, Michael J. Novak, Juan-Lee Pang, Tyler Kien Beam
-
Publication number: 20190079986Abstract: This disclosure generally relates to synchronizing non-file content items from a collaborative workspace environment to a local computing device. Once the non-file content item has been synchronized to the local computing device, content or other data contained within the non-file content item may be accessed and edited. Once the edits are complete, the updated non-file content item may be provided back to the collaborative workspace environment. The changes may then be provided back to the original non-file content item such that it includes the most recent updates.Type: ApplicationFiled: September 11, 2017Publication date: March 14, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Jack Allen NICHOLS, Jason Fergus MOORE
-
Publication number: 20190079949Abstract: This disclosure generally relates to synchronizing a list of queries made against content hosted by a collaborative workspace environment, or against some other remote computing device, to a local computing device. The methods and system described herein enable a synchronization client associated with the local computing device to synchronize one or more queries (e.g., a most recently used file list on the collaborative workspace environment, a list of shared files on the collaborative workspace environment and the like), along with the content associated with the one or more queries, provided on the collaborative workspace environment to the local computing device.Type: ApplicationFiled: September 11, 2017Publication date: March 14, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Jack Allen NICHOLS, Jason Fergus MOORE
-
Patent number: 10133622Abstract: Disclosed herein are systems, methods, and software for enhancing error detection in data synchronization operations. In an implementation, log data reported by a device is received and incorporated into an event database indicating interleaved events related to data synchronization threads on the device. The event database is queried to extract a listing of events in the event database, the listing of events comprising events potentially associated with at least one error condition in the data synchronization threads. The listing of events is processed to identify one or more patterns from among the interleaved events that indicate the at least one error condition in the data synchronization threads. Responsive to identifying the one or more patterns, an indication of the at least one error condition in the data synchronization threads is communicated.Type: GrantFiled: November 24, 2014Date of Patent: November 20, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Jack Allen Nichols, Ryan Gordon Zacher, György Keresztély Schadt, Rayyan Jaber, Erik Hampton Soderberg
-
Publication number: 20180084045Abstract: Dynamic storage management in cloud storage synchronization is provided. A limit may be specified for amount of data associated with hydrated content in local storage. Upon detecting the limit being exceeded, the system may automatically begin to dehydrate files in local storage and replace them with placeholder files. Placeholders may also be specified on by default and content may initially synchronize as placeholders. As the user hydrates content, some files that were previously hydrated may be reverted to the placeholder state as the limit for amount of data in local storage is approached or exceeded. In some examples, specific limits may not be defined, but content may be heurstically dehydrated based on usage and size. In yet another example, the synchronization and local content dehydration may be performed on a per-folder basis.Type: ApplicationFiled: September 20, 2016Publication date: March 22, 2018Applicant: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Jack Allen Nichols, Ed Averett
-
Publication number: 20180084044Abstract: Policy based hydration behavior in cloud storage synchronization is provided. In some examples, user intent and defined policy or policies may be examined by a synchronization engine to determine when a synchronization should be aborted and instead redirected to viewing the requested file from the cloud, thereby avoiding the download. The synchronization engine may include a web interface with the ability to display and edit different types of files in this fashion. In addition to redirecting to the cloud, hydration may be blocked entirely in other examples. In a further example, a selective synchronization dialog may be launched to allow the user specify select action(s). A policy that dictates the hydration behavior may be persisted and updated as needed. To implement the policy, required operations on the local machine may be intercepted.Type: ApplicationFiled: September 20, 2016Publication date: March 22, 2018Applicant: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Jack Allen Nichols, Ed Averett
-
Publication number: 20180046635Abstract: Variety of approaches to control file hydration behavior are described. A filter driver initiates operations to control file hydration behavior upon receiving a process identifier (PID) registration from a synchronization engine. Upon receiving a file operation request associated with a placeholder file, a PID and a process name associated with the file operation is identified. A hydration behavior is detected based on the PID or the process name. A decision associated with the file operation request is rendered based on the hydration behavior.Type: ApplicationFiled: December 2, 2016Publication date: February 15, 2018Applicant: MICROSOFT TECHNOLOGY LICENSING, LLCInventor: Jack Allen Nichols
-
Publication number: 20180039652Abstract: Symbolic link based placeholders are used for cloud stored data synchronization. To synchronize cloud stored data, placeholders may be implemented as bidirectional symbolic links to a location that has a custom virtual file system (VFS) mounted. When a symbolic link is opened, the operating system may be directed to the custom VFS. The custom VFS may hydrate the file through a synchronization engine, and place the hydrated file at the location of the original symbolic link. The custom VFS may then redirect back to the primary file system of the operating system to allow the operation on the file to complete. Complexity and resource consumption may be reduced by passing placeholder requests instead of all requests through the custom VFS.Type: ApplicationFiled: August 2, 2016Publication date: February 8, 2018Applicant: MICROSOFT TECHNOLOGY LICENSING, LLCInventor: Jack Allen Nichols
-
Publication number: 20170270136Abstract: Systems, components, devices, and methods for synchronizing files between a local file system and a server are provided. In an example, synchronization of individual files is paused by placing the individual files in a hold state. A non-limiting example method accesses a file stored on the local file system for synchronization with an associated file on the server and determines whether differences between the file and the associated file prevent synchronization. When determined that differences between the file and the associated file prevent synchronization, the method places the file in a hold state. The hold state pauses synchronization of the content in the file with the content of the associated file. In some examples, the method continues to synchronize topological changes to files that have been placed in the hold state and/or resumes synchronization after it is determined that the file is no longer different than the associated file.Type: ApplicationFiled: June 30, 2016Publication date: September 21, 2017Applicant: Microsoft Technology Licensing, LLC.Inventors: Yisheng Chen, Amnon Itamar Govrin, Francisco Jose Garcia-Ascanio, Jack Allen Nichols