Patents by Inventor Peter C. Bixby

Peter C. Bixby 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: 9542401
    Abstract: Large files in a file system are mapped by extents of contiguous indirect blocks in order to reduce the time for read or write access to the large files while allowing allocation of data blocks one at a time. The inode of a file includes an indication of whether file mapping metadata of the file includes either an extent of contiguous indirect blocks or a tree of blocks. In a preferred mapping scheme, an inode contains an array of block pointer entries, and each entry includes a flag indicating whether the block pointer is pointing to either an extent of indirect blocks or a tree of blocks. For sharing of data blocks between files, the block pointer fields of the indirect blocks each contain an ownership flag indicating whether the pointed-to block is shared or not.
    Type: Grant
    Filed: March 30, 2012
    Date of Patent: January 10, 2017
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Sairam Veeraswamy, Peter C. Bixby, Peter W. Madany
  • Patent number: 9021303
    Abstract: A dataset is recovered after a server reboot while clients access the dataset. In response to the reboot, not-yet-completed transactions in a log are parsed to create, for each of the dataset blocks modified by these active transactions, a respective block replay list of the active transactions that modify the block. Once the block replay lists have been created, clients may access specified blocks of the dataset after on-demand recovery of the specified blocks. The on-demand recovery is concurrent with a background recovery task that replays the replay lists. To accelerate log space recovery, the parsing of the log inserts each replay list into a first-in first-out queue serviced by multiple replay threads. The queue can also be used as the cache writeback queue, so that the cache index is used for lookup of the replay list and the recovery state of a given block.
    Type: Grant
    Filed: January 29, 2013
    Date of Patent: April 28, 2015
    Assignee: EMC Corporation
    Inventors: Marc A. DeSouter, Pranit Sethi, Morgan Clark, Jean-Pierre Bono, Sairam Veeraswamy, Peter C. Bixby, Philippe Armangau
  • Patent number: 8977898
    Abstract: A dataset is concurrently recovered after a server crash while the dataset is actively used for servicing client requests. In response to a reboot, records of not-yet-completed transactions in a transaction log are parsed to create a graph of dependencies between the transactions. Once this graph has been created, clients may access a specified block of the dataset after on-demand recovery of the specified block. The on-demand recovery is concurrent with a background recovery task that replays the not-yet-completed transactions in time order. The on-demand recovery uses the dependency graph to replay any and all transactions that support recovery of the specified block, so that recovery of the specified block includes update of other blocks to be consistent with the recovered block in accordance with the not-yet-completed transactions.
    Type: Grant
    Filed: September 24, 2012
    Date of Patent: March 10, 2015
    Assignee: EMC Corporation
    Inventors: Sairam Veeraswamy, Peter C. Bixby
  • Patent number: 8620973
    Abstract: To preserve the contiguity of file map extents of a production file when making a series of snapshot copies, the snapshots share indirect blocks of the production file through virtual pointers. When a write to a data block of the production file is first done since the time of the most recent snapshot so that the most recent snapshot can no longer share one of the contiguous indirect blocks, a new indirect block is allocated to store the file mapping metadata for the most recent snapshot, and a virtual pointer for the snapshots is changed to point to this new indirect block. Therefore the change in the virtual pointer changes the file mapping metadata for any number of snapshots sharing the new indirect block so that the method is scalable.
    Type: Grant
    Filed: September 25, 2012
    Date of Patent: December 31, 2013
    Assignee: EMC Corporation
    Inventors: Sairam Veeraswamy, Peter C. Bixby, Peter W. Madany
  • Patent number: 8166005
    Abstract: Servers in a storage system store a nested multilayer directory structure, and a global index that is an abstract of the directory structure. The global index identifies respective portions of the directory structure that are stored in respective ones of the servers, and the global index identifies paths through the directory structure linking the respective portions. Upon performing a top-down search of the directory structure in response to a client request and finding that a portion of it is offline, the global index is searched to discover portions of the directory structure that are located below the offline portion. The global index may also identify the respective server storing each of the respective portions of the directory structure, and may indicate whether or not each of the respective portions of the directory structure is known to be offline.
    Type: Grant
    Filed: September 21, 2004
    Date of Patent: April 24, 2012
    Assignee: EMC Corporation
    Inventors: Peter C. Bixby, Xiaoye Jiang, Uday K. Gupta, Sorin Faibish
  • Patent number: 7653832
    Abstract: A cached disk array includes a disk storage array, a global cache memory, disk directors coupling the cache memory to the disk storage array, and front-end directors for linking host computers to the cache memory. The front-end directors service storage access requests from the host computers, and the disk directors stage requested data from the disk storage array to the cache memory and write new data to the disk storage. At least one of the front-end directors or disk directors is programmed for block resolution of virtual logical units of the disk storage, and for obtaining, from a storage allocation server, space allocation and mapping information for pre-allocated blocks of the disk storage, and for returning to the storage allocation server requests to commit the pre-allocated blocks of storage once data is first written to the pre-allocated blocks of storage.
    Type: Grant
    Filed: May 8, 2006
    Date of Patent: January 26, 2010
    Assignee: EMC Corporation
    Inventors: Sorin Faibish, Stephen A. Fridella, Uday K. Gupta, Xiaoye Jiang, Peter C. Bixby
  • Patent number: 6889288
    Abstract: In a network attached cached disk storage system, data is transmitted over the network in data packets having a data length that is much smaller than the logical block size for reading or writing to disk storage. To avoid copying of data from network port buffers to the cache memory, the cache blocks of the cache memory are organized as linked lists of list elements, which can be used as network port input or output buffers. For TCP data packets, for example, each list element has a data slot for storing up to 1,500 bytes, and a field indicating the number of bytes stored in the data slot.
    Type: Grant
    Filed: December 2, 2002
    Date of Patent: May 3, 2005
    Assignee: EMC Corporation
    Inventors: Jean-Pierre Bono, Jiannan Zheng, Peter C. Bixby, Xiaoye Jiang
  • Publication number: 20040107318
    Abstract: In a network attached cached disk storage system, data is transmitted over the network in data packets having a data length that is much smaller than the logical block size for reading or writing to disk storage. To avoid copying of data from network port buffers to the cache memory, the cache blocks of the cache memory are organized as linked lists of list elements, which can be used as network port input or output buffers. For TCP data packets, for example, each list element has a data slot for storing up to 1,500 bytes, and a field indicating the number of bytes stored in the data slot.
    Type: Application
    Filed: December 2, 2002
    Publication date: June 3, 2004
    Inventors: Jean-Pierre Bono, Jiannan Zheng, Peter C. Bixby, Xiaoye Jiang
  • Patent number: 5442390
    Abstract: In a system for interactively viewing videos, a selected video is transmitted as a plurality of frames of digitized video data for playback on a viewing device. The system receives the transmitted video data and includes a memory buffer for storing a segment of a selected one of the videos. The segment includes a predetermined number of frames representing a predetermined time interval of the selected video. In addition, the memory buffer including a write pointer and a read pointer. Software controlled servers are provided for witting and reading video data of the selected video to and from the memory buffer, independently, at locations indicated by the write and read pointers to transfer the selected video to the viewing device. By using a remote controller the viewer can position the read and write pointers to view any portion of the selected video interactively.
    Type: Grant
    Filed: July 7, 1993
    Date of Patent: August 15, 1995
    Assignee: Digital Equipment Corporation
    Inventors: Donald F. Hooper, Matthew S. Goldman, Peter C. Bixby, Suban Krishnamoorthy
  • Patent number: 5414455
    Abstract: In a system for distributing videos, a plurality of videos are stored on a mass storage device. Each video includes a plurality of frames of digitized video data for play-back on a viewing device. The system includes a memory buffer for storing a segment of a selected one of the videos. The segment includes a predetermined number of frames representing a predetermined time interval of the selected video. In addition, the memory buffer including a write pointer and a read pointer. Software controlled servers are provided for witting and reading video data of the selected video to and from the memory buffer, independently, at locations indicated by the write and read pointers to transfer the selected video to the viewing device.
    Type: Grant
    Filed: July 7, 1993
    Date of Patent: May 9, 1995
    Assignee: Digital Equipment Corporation
    Inventors: Donald F. Hooper, Matthew S. Goldman, Peter C. Bixby, Suban Krishnamoorthy
  • Patent number: 5287537
    Abstract: A distributed computer system having a plurality of digital computer systems interconnected by a bus. Each digital computer system runs one or more programs. When it receives a command directed to a system device or a program, it determines whether it can fulfill the command. If not, it determines which one of the other digital computer systems can fulfill the command based upon retaining information stored locally and forwards the command to the other digital computer system.
    Type: Grant
    Filed: September 21, 1992
    Date of Patent: February 15, 1994
    Assignee: Data General Corporation
    Inventors: Rona J. Newmark, Rosemarie Alicandro, Peter C. Bixby, Donald D. Burn, Eric H. Enberg, Paul K. Marino, Paul W. Woodbury
  • Patent number: 5016162
    Abstract: A method of assigning priorities and resolving bus contention in a distributed computer system is disclosed. Each system node is assigned an identifier. Priorities are reassigned at each change in bus access such that the node that most recently had access to the bus is assigned the lowest priority with the node having the next identifier in sequence being assigned the highest priority and all other nodes assigned priority in accordance with their identifier's position in the sequence. The identifiers are logically treated as organized in a circular fashion such that the lowest node identifier is considered to come next in the sequence after the highest node identifier.
    Type: Grant
    Filed: March 30, 1988
    Date of Patent: May 14, 1991
    Assignee: Data General Corp.
    Inventors: David I. Epstein, Mark D. Hummel, Jeffrey F. Hatalsky, Rona J. Newmark, Rosemarie Alicandro, Peter C. Bixby, Donald D. Burn, Eric H. Enberg, Paul K. Marino, Paul W. Woodbury, Michael A. Pogue, Morgan J. Dempsey, Shreyaunsh R. Shah, Leo C. Waible, III