Patents by Inventor Benjamin R. Harrison

Benjamin R. Harrison 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: 7281017
    Abstract: Views for software atomization provide runtime transformations of existing atoms in atom databases to create new or virtual atom databases. Views provide for sharing of code and data atoms that are stored in an atom database, as well as providing sharing of code and data atoms that are loaded into memory. A view is a set of transformation operations, including insert a new atom, modify an existing atom, or delete an existing atom, which can be applied to an atom database. The transformation operations can be applied, either literally, to create a new atom database on disk, or virtually, to create, at runtime, a virtual atom database, without actually having to create an actual atom database on disk. Modifying an existing atom can be done in a variety of ways, including changing the atom bytes, or the atom references, or an attribute of the atom.
    Type: Grant
    Filed: June 21, 2002
    Date of Patent: October 9, 2007
    Assignee: Sumisho Computer Systems Corporation
    Inventors: Mathew J. Hostetter, Benjamin R. Harrison
  • Patent number: 7117507
    Abstract: Software atomization provides a method of loading atomized computer program code and data on demand by loading, from an atom database, into a memory, an atom defining code or data in a fine-grained, individually addressable manner. Atoms comprise an atom identifier, computer program code or data information and computer program code or data reference information. The computer program code or data information is modified by transforming the reference information into memory addresses. The present invention provides for the lazy loading of data both implicitly and explicitly. Data is lazily loaded implicitly when it is referenced from code that is lazily loaded. Data is lazily loaded explicitly by encoding a referencing atom identifier such that the referenced data atom is not loaded until actually accessed at runtime.
    Type: Grant
    Filed: June 3, 2002
    Date of Patent: October 3, 2006
    Assignee: Sumisho Computer Systems Corporation
    Inventors: Mathew J. Hostetter, Benjamin R. Harrison
  • Patent number: 6691113
    Abstract: Persistent data storage for client computer software programs is provided using a repository that enables client computer software programs to store data securely on a client computer system, subsequently retrieve that data, and optionally share the data in a controlled fashion with authorized client computer software programs. The present invention can be used by both trusted and untrusted client computer software programs that either reside locally on the client computer system or are downloaded from a server computer system. A benefit of the present invention is that it allows untrusted applets to have access to persistent storage without compromising the integrity of the client computer system. Since the present invention controls persistent storage space, not the programmer of the client computer software program, the burden of insuring storage integrity and security is removed from the programmer.
    Type: Grant
    Filed: September 28, 2000
    Date of Patent: February 10, 2004
    Assignee: Curl Corporation
    Inventors: Benjamin R. Harrison, David A. Kranz, Murray S. Mazer, Spiro Michaylov, Carl A. Soeder
  • Publication number: 20030236794
    Abstract: Views for software atomization provide runtime transformations of existing atoms in atom databases to create new or virtual atom databases. Views provide for sharing of code and data atoms that are stored in an atom database, as well as providing sharing of code and data atoms that are loaded into memory. A view is a set of transformation operations, including insert a new atom, modify an existing atom, or delete an existing atom, which can be applied to an atom database. The transformation operations can be applied, either literally, to create a new atom database on disk, or virtually, to create, at runtime, a virtual atom database, without actually having to create an actual atom database on disk. Modifying an existing atom can be done in a variety of ways, including changing the atom bytes, or the atom references, or an attribute of the atom.
    Type: Application
    Filed: June 21, 2002
    Publication date: December 25, 2003
    Applicant: Curl Corporation
    Inventors: Mathew J. Hostetter, Benjamin R. Harrison
  • Publication number: 20030225921
    Abstract: Software atomization provides a method of loading atomized computer program code and data on demand by loading, from an atom database, into a memory, an atom defining code or data in a fine-grained, individually addressable manner. Atoms comprise an atom identifier, computer program code or data information and computer program code or data reference information. The computer program code or data information is modified by transforming the reference information into memory addresses. The present invention provides for the lazy loading of data both implicitly and explicitly. Data is lazily loaded implicitly when it is referenced from code that is lazily loaded. Data is lazily loaded explicitly by encoding a referencing atom identifier such that the referenced data atom is not loaded until actually accessed at runtime.
    Type: Application
    Filed: June 3, 2002
    Publication date: December 4, 2003
    Applicant: Curl Corporation
    Inventors: Mathew J. Hostetter, Benjamin R. Harrison
  • Publication number: 20020078262
    Abstract: A system and methods that provide compatibility across multiple versions of a software system, such as an execution engine or run-time system, are disclosed. The software system is structured so that it includes a master module, and one or more helper modules, each helper module being capable of processing applets (i.e., programs or content) that require a particular version of the software system. Each time an applet is to be processed by the software system, the master module determines which helper module should be used to process the applet, and starts the selected helper module if necessary. Compatibility with additional versions can be provided by providing additional helper modules. Because numerous helper modules may be executed simultaneously, applets that require different versions of the software system may be processed simultaneously.
    Type: Application
    Filed: December 14, 2000
    Publication date: June 20, 2002
    Applicant: Curl Corporation
    Inventors: Benjamin R. Harrison, Daniel S. Nussbaum, David A. Kranz