Patents by Inventor Douglas W. Dewey
Douglas W. Dewey 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: 10394482Abstract: Systems and methods for replicating a snapshot of a volume are described. In one embodiment, a storage controller of a storage system may be operable to initialize a first replication process between a first storage volume of the first storage system and a second storage volume of a second storage system, copy content from a first system snapshot of the first storage volume to a second system snapshot of the first storage volume, and copy content from a first user snapshot of the first storage volume to the first system snapshot of the first storage volume. In some cases, a system snapshot is not accessible to a user and a user snapshot is accessible to the user. In some cases, at least one of the system snapshot and the user snapshot include a point in time capture of data on the first storage volume.Type: GrantFiled: April 14, 2016Date of Patent: August 27, 2019Assignee: SEAGATE TECHNOLOGY LLCInventors: Douglas W. Dewey, Kenneth F. Day, Ian R. Davies
-
Patent number: 10055149Abstract: Systems and methods for intelligent replication of a snapshot tree are described. In one embodiment, a first storage system may include a storage controller. In some embodiments, the storage controller may be operable to replicate a first storage volume of a first storage system and a first user snapshot of the first storage volume to a second storage volume of a second storage system and capture a first tree structure block (TSB) of the first storage system. In some cases, the first user snapshot may include a point in time capture of data on the first storage volume at a first time. In some embodiments, the first TSB captures a hierarchy of each snapshot of the first storage system.Type: GrantFiled: April 14, 2016Date of Patent: August 21, 2018Assignee: SEAGATE TECHNOLOGY LLCInventors: Douglas W. Dewey, Ian R. Davies, Kenneth F. Day
-
Patent number: 9891977Abstract: A method of and system for managing spaces in memory of a storage facility is disclosed. The method and system includes storing first and second identifiers in first and second spaces in memory in response to allocating the second space for a set of data. The first identifier is stored in a first field within the first space. The first space has a pointer in a second field. The pointer in the second field indicates an address of the second space. The second identifier is stored within a portion of the second space. In response to an error event, the first and second identifiers may be captured. A determination is made as to whether the pointer is directed to the set of data. The determination is based on a comparison of the first identifier and the second identifier.Type: GrantFiled: January 30, 2014Date of Patent: February 13, 2018Assignee: International Business Machines CorporationInventors: Douglas W. Dewey, Kevin S. Goldsmith
-
Patent number: 9870278Abstract: A method of and system for managing spaces in memory of a storage facility is disclosed. The method and system includes storing first and second identifiers in first and second spaces in memory in response to allocating the second space for a set of data. The first identifier is stored in a first field within the first space. The first space has a pointer in a second field. The pointer in the second field indicates an address of the second space. The second identifier is stored within a portion of the second space. In response to an error event, the first and second identifiers may be captured. A determination is made as to whether the pointer is directed to the set of data. The determination is based on a comparison of the first identifier and the second identifier.Type: GrantFiled: November 14, 2016Date of Patent: January 16, 2018Assignee: International Business Machines CorporationInventors: Douglas W. Dewey, Kevin S. Goldsmith
-
Patent number: 9864646Abstract: A method of and system for managing spaces in memory of a storage facility is disclosed. The method and system includes storing first and second identifiers in first and second spaces in memory in response to allocating the second space for a set of data. The first identifier is stored in a first field within the first space. The first space has a pointer in a second field. The pointer in the second field indicates an address of the second space. The second identifier is stored within a portion of the second space. In response to an error event, the first and second identifiers may be captured. A determination is made as to whether the pointer is directed to the set of data. The determination is based on a comparison of the first identifier and the second identifier.Type: GrantFiled: November 14, 2016Date of Patent: January 9, 2018Assignee: International Business Machines CorporationInventors: Douglas W. Dewey, Kevin S. Goldsmith
-
Publication number: 20170300247Abstract: Systems and methods for intelligent replication of a snapshot tree are described. In one embodiment, a first storage system may include a storage controller. In some embodiments, the storage controller may be operable to replicate a first storage volume of a first storage system and a first user snapshot of the first storage volume to a second storage volume of a second storage system and capture a first tree structure block (TSB) of the first storage system. In some cases, the first user snapshot may include a point in time capture of data on the first storage volume at a first time. In some embodiments, the first TSB captures a hierarchy of each snapshot of the first storage system.Type: ApplicationFiled: April 14, 2016Publication date: October 19, 2017Applicant: SEAGATE TECHNOLOGY LLCInventors: Douglas W. Dewey, Ian R. Davies, Kenneth F. Day
-
Publication number: 20170300232Abstract: Systems and methods for replicating a snapshot of a volume are described. In one embodiment, a storage controller of a storage system may be operable to initialize a first replication process between a first storage volume of the first storage system and a second storage volume of a second storage system, copy content from a first system snapshot of the first storage volume to a second system snapshot of the first storage volume, and copy content from a first user snapshot of the first storage volume to the first system snapshot of the first storage volume. In some cases, a system snapshot is not accessible to a user and a user snapshot is accessible to the user. In some cases, at least one of the system snapshot and the user snapshot include a point in time capture of data on the first storage volume.Type: ApplicationFiled: April 14, 2016Publication date: October 19, 2017Applicant: SEAGATE TECHNOLOGY LLCInventors: Douglas W. Dewey, Kenneth F. Day, Ian R. Davies
-
Publication number: 20170075750Abstract: A method of and system for managing spaces in memory of a storage facility is disclosed. The method and system includes storing first and second identifiers in first and second spaces in memory in response to allocating the second space for a set of data. The first identifier is stored in a first field within the first space. The first space has a pointer in a second field. The pointer in the second field indicates an address of the second space. The second identifier is stored within a portion of the second space. In response to an error event, the first and second identifiers may be captured. A determination is made as to whether the pointer is directed to the set of data. The determination is based on a comparison of the first identifier and the second identifier.Type: ApplicationFiled: November 14, 2016Publication date: March 16, 2017Inventors: Douglas W. Dewey, Kevin S. Goldsmith
-
Publication number: 20170060662Abstract: A method of and system for managing spaces in memory of a storage facility is disclosed. The method and system includes storing first and second identifiers in first and second spaces in memory in response to allocating the second space for a set of data. The first identifier is stored in a first field within the first space. The first space has a pointer in a second field. The pointer in the second field indicates an address of the second space. The second identifier is stored within a portion of the second space. In response to an error event, the first and second identifiers may be captured. A determination is made as to whether the pointer is directed to the set of data. The determination is based on a comparison of the first identifier and the second identifier.Type: ApplicationFiled: November 14, 2016Publication date: March 2, 2017Inventors: Douglas W. Dewey, Kevin S. Goldsmith
-
Patent number: 9542257Abstract: A method of and system for managing spaces in memory of a storage facility is disclosed. The method and system includes storing first and second identifiers in first and second spaces in memory in response to allocating the second space for a set of data. The first identifier is stored in a first field within the first space. The first space has a pointer in a second field. The pointer in the second field indicates an address of the second space. The second identifier is stored within a portion of the second space. In response to an error event, the first and second identifiers may be captured. A determination is made as to whether the pointer is directed to the set of data. The determination is based on a comparison of the first identifier and the second identifier.Type: GrantFiled: April 8, 2016Date of Patent: January 10, 2017Assignee: International Business Machines CorporationInventors: Douglas W. Dewey, Kevin S. Goldsmith
-
Publication number: 20160210184Abstract: A method of and system for managing spaces in memory of a storage facility is disclosed. The method and system includes storing first and second identifiers in first and second spaces in memory in response to allocating the second space for a set of data. The first identifier is stored in a first field within the first space. The first space has a pointer in a second field. The pointer in the second field indicates an address of the second space. The second identifier is stored within a portion of the second space. In response to an error event, the first and second identifiers may be captured. A determination is made as to whether the pointer is directed to the set of data. The determination is based on a comparison of the first identifier and the second identifier.Type: ApplicationFiled: April 8, 2016Publication date: July 21, 2016Inventors: Douglas W. Dewey, Kevin S. Goldsmith
-
Publication number: 20150212740Abstract: A method of and system for managing spaces in memory of a storage facility is disclosed. The method and system includes storing first and second identifiers in first and second spaces in memory in response to allocating the second space for a set of data. The first identifier is stored in a first field within the first space. The first space has a pointer in a second field. The pointer in the second field indicates an address of the second space. The second identifier is stored within a portion of the second space. In response to an error event, the first and second identifiers may be captured. A determination is made as to whether the pointer is directed to the set of data. The determination is based on a comparison of the first identifier and the second identifier.Type: ApplicationFiled: January 30, 2014Publication date: July 30, 2015Applicant: International Business Machines CorporationInventors: Douglas W. Dewey, Kevin S. Goldsmith
-
Patent number: 8108880Abstract: A method of enabling state save and debug operations for co-routines for first failure data capture (FFDC) in an event-driven environment. A stack management utility allocates space for a context structure, which includes a state field, and a stack pointer in a buffer. A context management utility initializes a first context structure of a first co-routine and saves a state of the first context structure in response to an execution request for a second co-routine. The context management utility sets a second context structure as a current context. When execution of the current context is complete, the context management utility restores the first context structure of the first co-routine as the current context. If the state field is not set to a valid value, a state save function “state saves” all allocated co-routine stacks and context structures, restores the entire system to a previous valid state, and restarts operations.Type: GrantFiled: March 7, 2007Date of Patent: January 31, 2012Assignee: International Business Machines CorporationInventors: Douglas W. Dewey, Sangram Singh Ghoman, William G. Sherman, Shachar Fienblit
-
Patent number: 7958517Abstract: An apparatus, system, and method are disclosed for executing functions in an event driven environment. A bridge module stores parameters and a proxy function pointer for a proxy function in a bridge structure for a co-routine context executing in a co-routine environment. The proxy function is configured to execute in an event driven environment. The bridge module also stores a bridge pointer for the bridge structure in a bridge pointer register of an event driven context structure. A swap context module swaps to the event driven context. An execute module retrieves the proxy function pointer from the bridge structure using the bridge pointer if the bridge pointer register is not null, executes the proxy function, and stores the results of the proxy function in the bridge structure.Type: GrantFiled: January 23, 2007Date of Patent: June 7, 2011Assignee: International Business Machines CorporationInventors: Kenneth F. Day, III, Douglas W. Dewey, Eddie Lin
-
Publication number: 20100250492Abstract: A network attached storage device comprising a first file system, a first file system driver, a redirection pseudo device driver, a second file system, and a second file system driver. A method using Applicant's network attached storage device to write information to an information storage medium comprising a plurality of storage blocks.Type: ApplicationFiled: June 7, 2010Publication date: September 30, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: DOUGLAS W. DEWEY
-
Patent number: 7739462Abstract: Policy based data shredding is provided to be executed in a storage controller. A logical volume stored on media, such as magnetic disk drives, may be assigned one or more possible shredding policies. Storing and executing the policies in the controller is more efficient than performing host-based shredding and requires the use of less valuable bandwidth between the host and the controller. In addition, the controller is aware of failures, degradation and offline status of each drive in an array, and is able to thereby terminate or modify a shredding operation if necessary. Each policy includes the number of write passes to be performed on the media location in which the volume is stored and the pattern to write on the media location. The policy may also indicate whether to update a parity area during each of a plurality of write passes or only on the first.Type: GrantFiled: February 23, 2005Date of Patent: June 15, 2010Assignee: International Business Machines CorporationInventor: Douglas W Dewey
-
Method to write information to an information storage medium using a network attached storage device
Patent number: 7734701Abstract: A method to write information to an information storage medium comprising a plurality of storage blocks interconnected with a networked attached storage device comprising a first file system, a first file system driver, a second file system and a second file system driver. Using the first file system driver, the method opens a file with write permission, and provides a second file comprising the entire first file system. Using the second file system driver, the method locates an Extent Descriptor associated with the file, reads an address from that Extent Descriptor, where the address points to one or more storage blocks disposed in the information storage medium, and determines if any storage blocks have been allocated for the file. In the event no storage blocks have been allocated for the file, the method then allocates one or more storage blocks, and writes the file to those one or more storage blocks.Type: GrantFiled: November 14, 2003Date of Patent: June 8, 2010Assignee: International Business Machines CorporationInventor: Douglas W. Dewey -
Publication number: 20080222401Abstract: A method of enabling state save and debug operations for co-routines for first failure data capture (FFDC) in an event-driven environment. A stack management utility allocates space for a context structure, which includes a state field, and a stack pointer in a buffer. A context management utility initializes a first context structure of a first co-routine and saves a state of the first context structure in response to an execution request for a second co-routine. The context management utility sets a second context structure as a current context. When execution of the current context is complete, the context management utility restores the first context structure of the first co-routine as the current context. If the state field is not set to a valid value, a state save function “state saves” all allocated co-routine stacks and context structures, restores the entire system to a previous valid state, and restarts operations.Type: ApplicationFiled: March 7, 2007Publication date: September 11, 2008Inventors: DOUGLAS W. DEWEY, Sangram Singh Ghoman, William G. Sherman, Shachar Fienblit
-
Publication number: 20080178203Abstract: An apparatus, system, and method are disclosed for executing functions in an event driven environment. A bridge module stores parameters and a proxy function pointer for a proxy function in a bridge structure for a co-routine context executing in a co-routine environment. The proxy function is configured to execute in an event driven environment. The bridge module also stores a bridge pointer for the bridge structure in a bridge pointer register of an event driven context structure. A swap context module swaps to the event driven context. An execute module retrieves the proxy function pointer from the bridge structure using the bridge pointer if the bridge pointer register is not null, executes the proxy function, and stores the results of the proxy function in the bridge structure.Type: ApplicationFiled: January 23, 2007Publication date: July 24, 2008Inventors: Kenneth F. Day, Douglas W. Dewey, Eddie Lin
-
Publication number: 20080155235Abstract: An instruction capable of preventing incorrect usage of ucontext functions in a multi-process environment is disclosed. During an execution of a setcontext instruction, a determination is made whether or not a contextID of a context structure associated with a next context indicates that it is an original context of a process. If the contextID of the next context structure is an original context of a process, another determination is made whether or not the contextID of the context structure associated with the next context is the same as the original contextID of the process. If the contextID of the context structure associated with the next context is not the same as the original contextID of the process, an error recovery routine is invoked.Type: ApplicationFiled: October 2, 2006Publication date: June 26, 2008Inventors: Douglas W. Dewey, William G. Sherman