Patents by Inventor Michael Malcolm

Michael Malcolm 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: 7103794
    Abstract: The invention provides a method and system for caching information objects transmitted using a computer network. A cache engine determines directly when and where to store those objects in a memory (such as RAM) and mass storage (such as one or more disk drives), so as to optimally write those objects to mass storage and later read them from mass storage, without having to maintain them persistently. The cache engine actively allocates those objects to memory or to disk, determines where on disk to store those objects, retrieves those objects in response to their network identifiers (such as their URLs), and determines which objects to remove from the cache so as to maintain sufficient operating space. The cache engine collects information to be written to disk in write episodes, so as to maximize efficiency when writing information to disk and so as to maximize efficiency when later reading that information from disk.
    Type: Grant
    Filed: June 8, 1998
    Date of Patent: September 5, 2006
    Assignee: Cacheflow, Inc.
    Inventors: Michael Malcolm, Robert Zarnke
  • Publication number: 20060072786
    Abstract: A method of embedding information in digital content representing media streams. The method includes (1) selecting a set of locations within that digital content reprensenting the media stream to embed information, (2) selecting a set of possible alterations to make at those locations, and (3) making a subset of the possible alterations. The set of locations and possible alterations is herein sometimes called a “watermark.” The subset of actual alterations that are made is herein sometimes called a “fingerprint.” The method determines a set of locations at which there are alternative versions of digital content representing the same media stream, such as one being the original and one being an alternative version of the same digital content, herein sometimes called the “original movie” and the “alt-movie,” or herein sometimes called the “original block” and the “alt-block” for a particular block in the digital content representing the media stream.
    Type: Application
    Filed: October 28, 2005
    Publication date: April 6, 2006
    Inventors: Stephen Watson, Daniel Collens, Kevin Hui, Michael Malcolm
  • Patent number: 7003131
    Abstract: A method of embedding information in digital content representing media streams. The method includes (1) selecting a set of locations within that digital content reprensenting the media stream to embed information, (2) selecting a set of possible alterations to make at those locations, and (3) making a subset of the possible alterations. The set of locations and possible alterations is herein sometimes called a “watermark.” The subset of actual alterations that are made is herein sometimes called a “fingerprint.” The method determines a set of locations at which there are alternative versions of digital content representing the same media stream, such as one being the original and one being an alternative version of the same digital content, herein sometimes called the “original movie” and the “alt-movie,” or herein sometimes called the “original block” and the “alt-block” for a particular block in the digital content representing the media stream.
    Type: Grant
    Filed: January 31, 2003
    Date of Patent: February 21, 2006
    Assignee: Kaleidescape, Inc.
    Inventors: Stephen Watson, Daniel A. Collens, Kevin Hui, Michael A. Malcolm
  • Patent number: 6988219
    Abstract: The present invention is a method for providing error correction for an array of disks using non-volatile random access memory (NV-RAM). Non-volatile RAM is used to increase the speed of RAID recovery from a disk error(s). This is accomplished by keeping a list of all disk blocks for which the parity is possibly inconsistent. Such a list of disk blocks is much smaller than the total number of parity blocks in the RAID subsystem. The total number of parity blocks in the RAID subsystem is typically in the range of hundreds of thousands of parity blocks. Knowledge of the number of parity blocks that are possibly inconsistent makes it possible to fix only those few blocks, identified in the list, in a significantly smaller amount of time than is possible in the prior art. The technique for safely writing to a RAID array with a broken disk is complicated. In this technique, data that can become corrupted is copied into NV-RAM before the potentially corrupting operation is performed.
    Type: Grant
    Filed: August 28, 2002
    Date of Patent: January 17, 2006
    Assignee: Network Appliance, Inc.
    Inventors: David Hitz, Michael Malcolm, James Lau, Byron Rakitzis
  • Publication number: 20050201726
    Abstract: A system including: (a) a media reader including a read element for physical media, the physical media including digital content representing at least one media stream, the digital content being maintained in a protected form; (b) a storage element coupled to the media reader, the storage element using a storage mechanism different from the physical media, the storage element non-evanescently storing the digital content in the protected form; and (c) a playback device coupled to the storage element, the playback device receiving the digital content and outputting analog, digital, or analog and digital audiovisual content for presentation. The digital content is stored in the storage element in the protected form, sent from the media reader to the storage element in the protected form, sent from the storage element to the playback device in the protected form, and output by the playback device in a second protected form.
    Type: Application
    Filed: March 15, 2004
    Publication date: September 15, 2005
    Applicant: Kaleidescape
    Inventors: Michael Malcolm, Daniel Collens, Stephen Watson
  • Publication number: 20050192434
    Abstract: This invention provides cellulose ester interpolymers, and methods of oxidizing cellulose interpolymers and cellulose ester interpolymers. The invention also provides routes to access carboxylated cellulose ester derivatives with high acid numbers wherein the carboxyl group is attached directly to the cellulose backbone by a carbon-carbon bond. Through functionalization of an intermediate aldehyde, the corresponding cationic or zwitterionic cellulose ester derivatives can also be accessed. The interpolymers of the present invention have a number of end-use applications, for example, as binder resins in various types of coating compositions and as drug delivery agents.
    Type: Application
    Filed: November 23, 2004
    Publication date: September 1, 2005
    Inventors: Charles Buchanan, Norma Buchanan, Susan Carty, Chung-Ming Kuo, Juanelle Lambert, Jessica Posey-Dowty, Thelma Watterson, Matthew Wood, Michael Malcolm, Margaretha Lindblad
  • Publication number: 20050182989
    Abstract: Integrating content into a storage system with substantially immediate access to that content. Providing high reliability and relatively easy operation with a storage system using redundant information for error correction. Having the storage system perform a “virtual write,” including substantially all steps associated with writing to the media to be integrated, except for the step of actually writing data to that media, including rewriting information relating to used disk blocks, and including rewriting any redundant information maintained by the storage system. Integrating the new physical media into the storage system, including accessing content already present on that media, free space already present on that media, and reading and writing that media. Recovering from errors during integration.
    Type: Application
    Filed: February 13, 2004
    Publication date: August 18, 2005
    Applicant: Kaleidescape
    Inventors: Robert Zarnke, Michael Malcolm
  • Publication number: 20050148766
    Abstract: The present invention provides disaccharide and trisaccharide C6 to C12 mixed fatty acid esters having a high alpha content. Yet still further, the invention provides chemical processes for the preparation of the materials disclosed herein.
    Type: Application
    Filed: February 9, 2005
    Publication date: July 7, 2005
    Inventors: John Debenham, Charles Buchanan, Matthew Wood, Michael Malcolm, Mary Moore
  • Publication number: 20050125405
    Abstract: The invention provides a method and system capable of interacting with a server device, with the effect of being able to conveniently present, in a distinct way, those objects not already owned by the user. Multiple views of collections of objects are presented to the user. The portion of the view that reflects objects not owned by the user is degraded in such a way that the user is able to quickly surmise the objects not yet owned. The view may include fractionally degraded and completely degraded views such that fractionally degraded views indicate another aspect of an object. For example, an object may be local to the user but the user may not have licensed the use the object, or the degraded view may indicate that the object is not yet available but it will be available shortly. Users can decide whether to take action based on the presentation.
    Type: Application
    Filed: October 12, 2004
    Publication date: June 9, 2005
    Applicant: Kaleidescape, Inc.
    Inventors: Stephen Watson, Michael Malcolm
  • Patent number: 6892211
    Abstract: The present invention provides a method for keeping a file system in a consistent state and for creating read-only copies of a file system. Changes to the file system are tightly controlled. The file system progresses from one self-consistent state to another self-consistent state. The set of self-consistent blocks on disk that is rooted by the root inode is referred to as a consistency point. To implement consistency points, new data is written to unallocated blocks on disk. A new consistency point occurs when the fsinfo block is updated by writing a new root inode for the inode file into it. Thus, as long as the root inode is not updated, the state of the file system represented on disk does not change. The present invention also creates snapshots that are read-only copies of the file system. A snapshot uses no disk space when it is initially created. It is designed so that many different snapshots can be created for the same file system.
    Type: Grant
    Filed: April 12, 2004
    Date of Patent: May 10, 2005
    Assignee: Network Appliance, Inc.
    Inventors: David Hitz, Michael Malcolm, James Lau, Byron Rakitzis
  • Publication number: 20050050103
    Abstract: Associating multiple content chunks with multiple DVD packages or media objects; conveniently viewing or resuming these content chunks without knowing their disposition. Associating content chunks with media objects and positions therein, associating requests by a user for play or resumption of play with appropriate behaviors, including a database. Media objects have unique media hash values, to associate content chunks with hash values, and positions within media objects maintained by bookmarks and watchpoints. Selecting a content chunk might cause its metadata to be presented, or might cause selectable content chunks within that content chunk to become selectable. Users requesting play or resumption of play of content chunks, might cause those content chunks, or might cause smaller content chunks, such as movies, to be presented. Content chunks might span more than one media object, or might switch back and forth among multiple media objects, each without the viewer needing to know.
    Type: Application
    Filed: August 31, 2004
    Publication date: March 3, 2005
    Applicant: Kaleidescape
    Inventors: Lawrence Kesteloot, Paul Rechsteiner, Michael Malcolm, Stephen Watson
  • Publication number: 20040260673
    Abstract: The present invention provides a method for keeping a file system in a consistent state and for creating read-only copies of a file system. Changes to the file system are tightly controlled. The file system progresses from one self-consistent state to another self-consistent state. The set of self-consistent blocks on disk that is rooted by the root inode is referred to as a consistency point. To implement consistency points, new data is written to unallocated blocks on disk. A new consistency point occurs when the fsinfo block is updated by writing a new root inode for the inode file into it. Thus, as long as the root inode is not updated, the state of the file system represented on disk does not change. The present invention also creates snapshots that are read-only copies of the file system. A snapshot uses no disk space when it is initially created. It is designed so that many different snapshots can be created for the same file system.
    Type: Application
    Filed: April 12, 2004
    Publication date: December 23, 2004
    Inventors: David Hitz, Michael Malcolm, James Lau, Byron Rakitzis
  • Publication number: 20040254943
    Abstract: The invention provides a method and system for operating multiple communicating caches. Between caches, unnecessary transmission of repeated information is substantially reduced. Each cache maintains information to improve the collective operation of the system of multiple communicating caches. This can include information about the likely contents of each other cache, or about the behavior of client devices or server devices coupled to other caches in the system. Pairs of communicating caches substantially compress transmitted information. This includes both reliable compression, in which the receiving cache can reliably identify the compressed information in response to the message, and unreliable compression, in which the receiving cache will sometimes be unable to identify the compressed information. A first cache refrains from unnecessarily transmitting the same information to a second cache when each already has a copy.
    Type: Application
    Filed: March 30, 2004
    Publication date: December 16, 2004
    Applicant: Blue Coat Systems, Inc., a Delaware corporation
    Inventor: Michael A. Malcolm
  • Publication number: 20040139047
    Abstract: Selection and presentation of media streams, in which presentation is not limited by order imposed by the digital content representative of those media streams, in response to bookmarks and watchpoints settable and usable by a user. Bookmarks reference a location within the media stream, not necessarily pre-selected and possibly dynamically selected, in which a presentation can be started or restarted therefrom. Watchpoints reference a location within the media stream, or a presentation state for the media stream, in which an action can be triggered thereby. Bookmarks and watchpoints provide a general technique for presenting selections from media streams in response to metadata.
    Type: Application
    Filed: September 3, 2003
    Publication date: July 15, 2004
    Applicant: Kaleidescape
    Inventors: Paul Rechsteiner, Shawn R. Neely, Lawrence Kesteloot, Michael A. Malcolm, Stephen Watson
  • Patent number: 6751637
    Abstract: A is a method is disclosed for integrating a file system with a RAID array that exports precise information about the arrangement of data blocks in the RAID subsystem. The file system examines this information and uses it to optimize the location of blocks as they are written to the RAID system. Thus, the system uses explicit knowledge of the underlying RAID disk layout to schedule disk allocation. The method uses separate current-write location (CWL) pointers for each disk in the disk array where the pointers simply advance through the disks as writes occur. The algorithm used has two primary goals. The first goal is to keep the CWL pointers as close together as possible, thereby improving RAID efficiency by writing to multiple blocks in the stripe simultaneously. The second goal is to allocate adjacent blocks in a file on the same disk, thereby improving read back performance. The method satisfies the first goal by always writing on the disk with the lowest CWL pointer.
    Type: Grant
    Filed: July 24, 2000
    Date of Patent: June 15, 2004
    Assignee: Network Appliance, Inc.
    Inventors: David Hitz, Michael Malcolm, James Lau, Byron Rakitzis
  • Publication number: 20040088557
    Abstract: Secure presentation of media streams includes encoding the media streams into digital content, encrypting a portion of that digital content, the portion being required for presentation, in which the encrypted version is substantially unchanged in formatting parameters from the clear version of the digital content. Selecting those portions for encryption so there is no change in distribution of the media stream: packetization of the digital data, or synchronization of audio with video portions of the media stream. When encoding the media stream into MPEG-2, refraining from encrypting information by which the video block data is described, packet formatting information, and encrypting the video block data using a block-substitution cipher. A block-substitution cipher can be used to encrypt each sequence of 16 bytes of video data in each packet, possibly leaving as many as 15 bytes of video data in each packet in the clear.
    Type: Application
    Filed: July 9, 2003
    Publication date: May 6, 2004
    Applicant: Kaleidescape, a corporation
    Inventors: Michael A. Malcolm, Daniel A. Collens, Stephen Watson, Paul Rechsteiner, Kevin Hui
  • Publication number: 20040083487
    Abstract: A technique of distributing digital content representing media streams, and keys for unlocking that content, to a user. Content is deliverable to the user separately from licenses to that content. Content is delivered encrypted. Licenses are delivered designating selected presentation devices owned by the user. The presentation devices include a secure portion, relatively resistant to tampering by the user, in which each presentation device maintains a unique presentation device key. The user owns one or more such presentation devices, coupled using a local communication link to a local library, which maintains a copy of the content in an encrypted form. The user can search the library for information generally available about the media stream.
    Type: Application
    Filed: July 9, 2003
    Publication date: April 29, 2004
    Applicant: Kaleidescape, a corporation
    Inventors: Daniel A. Collens, Stephen Watson, Michael A. Malcolm
  • Patent number: 6721764
    Abstract: The present invention provides a method for keeping a file system in a consistent state and for creating read-only copies of a file system. Changes to the file system are tightly controlled. The file system progresses from one self-consistent state to another self-consistent state. The set of self-consistent blocks on disk that is rooted by the root inode is referred to as a consistency point. To implement consistency points, new data is written to unallocated blocks on disk. A new consistency point occurs when the fsinfo block is updated by writing a new root inode for the inode file into it. Thus, as long as the root inode is not updated, the state of the file system represented on disk does not change. The present invention also creates snapshots that are read-only copies of the file system. A snapshot uses no disk space when it is initially created. It is designed so that many different snapshots can be created for the same file system.
    Type: Grant
    Filed: September 11, 2001
    Date of Patent: April 13, 2004
    Assignee: Network Appliance, Inc.
    Inventors: David Hitz, Michael Malcolm, James Lau, Byron Rakitzis
  • Publication number: 20040064474
    Abstract: The present invention is a method for integrating a file system with a RAID array that exports precise information about the arrangement of data blocks in the RAID subsystem. The file system examines this information and uses it to optimize the location of blocks as they are written to the RAID system. Thus, the system uses explicit knowledge of the underlying RAID disk layout to schedule disk allocation. The present invention uses separate current-write location (CWL) pointers for each disk in the disk array where the pointers simply advance through the disks as writes occur. The algorithm used has two primary goals. The first goal is to keep the CWL pointers as close together as possible, thereby improving RAID efficiency by writing to multiple blocks in the stripe simultaneously. The second goal is to allocate adjacent blocks in a file on the same disk, thereby improving read back performance. The present invention satisfies the first goal by always writing on the disk with the lowest CWL pointer.
    Type: Application
    Filed: August 8, 2003
    Publication date: April 1, 2004
    Inventors: David Hitz, Michael Malcolm, James Lau, Byron Rakitzis
  • Patent number: 6715037
    Abstract: A method and system for operating multiple communicating caches. Between caches, unnecessary transmission of repeated information is reduced. Pairs of communicating caches compress transmitted information, including noncacheable objects. A first cache refrains from unnecessarily transmitting the same information to a second cache when each already has a copy. This includes both maintaining a record at a first cache of information likely to be stored at a second cache, and transmitting a relatively short identifier for that information in place of the information itself. Caches are disposed in a graph structure, including a set of root caches and a set of leaf caches. Both root and leaf caches maintain noncacheable objects beyond their initial use, along with a digest of the non-cacheable objects. When a server devices returns identical information to a root cache, root caches can transmit only a digest to leaf caches, avoiding re-transmitting the entire noncacheable object.
    Type: Grant
    Filed: July 26, 2002
    Date of Patent: March 30, 2004
    Assignee: Blue Coat Systems, Inc.
    Inventor: Michael A. Malcolm