Patents Assigned to InnoPath Software, Inc.
  • Patent number: 8863107
    Abstract: Embodiments of a workflow-based user interface for defining and managing functions implemented on mobile devices are described. A method under an embodiment utilizes a workflow-based mobile device management user interface. The method utilizes a pluggable workflow framework to achieve mobile device management externalization. The mobile device management platform is required to implement a set of basic action blocks that are used as primitives for further management policy composition. The method provides a development environment integrated with a mobile device management platform that allows assembling management (monitoring) primitives into meaningful management policies without changes to a core management platform infrastructure. The method claims addition of new primitives deployed as add-on products to enable new and advanced management policies, best integration practices with a carrier operational support system.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: October 14, 2014
    Assignee: Innopath Software, Inc.
    Inventor: Eugene Krivopaltsev
  • Patent number: 8713137
    Abstract: A portable communication device is provided that receives upgrade files via at least one wireless coupling. The contents of the upgrade file include information to repair errors in software components of the portable communication device and/or information to upgrade functions of the portable communication device. The portable communication device automatically upgrades the software components using the upgrade file contents. The portable communication device automatically recovers to an operational state when detecting an error or failure during the automatic upgrade. Further, the portable communication device resumes or reinitiates the automatic upgrade following the error or failure.
    Type: Grant
    Filed: November 15, 2004
    Date of Patent: April 29, 2014
    Assignee: Innopath Software, Inc.
    Inventors: De Ji, Luosheng Peng
  • Patent number: 8375136
    Abstract: Embodiments of a system configured to manage policies, including decision policies and active policies, on an Open Mobile Alliance Device Management (OMA DM) enabled mobile client devices is described. The system is configured to manage policies, including decision policies and active policies, on mobile devices. The system includes a device policy repository, a policy decision point, a decision policy enforcer, and an active policy enforcer. The system includes a server-side process configured to allow creation, modification and transmission of defined policies to the mobile client device, and a client-side process executed on the mobile client device and configured store the defined policies in an OMA DM management tree in the mobile client device as management objects, wherein each policy of the defined policies is represented as a subnode of the management tree.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: February 12, 2013
    Assignee: Innopath Software, Inc.
    Inventors: Manuel Roman, Gregory D. Buzzard, Shahid Shoaib, Eugene Krivopaltsev, Michael Diener
  • Patent number: 8156071
    Abstract: A method for performing differencing and updating between electronic files is provided. A byte-level file differencing algorithm receives two byte streams corresponding to an original file and a new file. The new file includes updated and revised versions of the original file. The file differencing algorithm determines a longest common sub-string (LCS) between the two byte streams and divides each of the two byte streams into sub-streams. The sub-streams include the LCS along with prefix and suffix sub-streams to the LCS. The file differencing algorithm then recursively determines an LCS and divides each sub-stream until a size of the sub-streams is less than a pre-specified size. Byte-level differences are then identified between each of the corresponding sub-streams. Further, the file differencing algorithm defines a protocol for structuring a delta file by using a set of operation codes and a variable length integer format to eliminate redundant information in the delta file.
    Type: Grant
    Filed: June 15, 2005
    Date of Patent: April 10, 2012
    Assignee: Innopath Software, Inc.
    Inventors: Jinsheng Gu, Luosheng Peng
  • Patent number: 8139509
    Abstract: Embodiments of a method and system for managing configurations on mobile devices are described. A method under an embodiment utilizes one or more advanced commands defined by the OMA DM protocol. One such command is the “Get” command, which can be used recursively to traverse a management tree to access the necessary nodes. A variation of this command is the “Get[Struct Data]” command, which traverses a tree or subtree in a single execution instance. The “Get” command is used to get a snapshot from a management tree starting from a specified URI. For this embodiment, it is presumed that a “golden” copy of device exists. The golden copy can be initially configured either manually or by using a mobile device management platform. The method uses a golden device to make a configuration snapshot to be used later for a distribution to multiple targets.
    Type: Grant
    Filed: August 8, 2008
    Date of Patent: March 20, 2012
    Assignee: Innopath Software, Inc.
    Inventor: Eugene Krivopaltsev
  • Patent number: 8010842
    Abstract: Embodiments of an intelligent agent for an OMA DM enabled mobile client device are described. The intelligent agent includes modules for storing management property values in one or more nodes of an OMA DM management tree of the mobile client device. At least some of the management values are analyzed and set in a server computer coupled to the mobile client device over a wireless network. The intelligent mobile client is configured to manage itself based on initial instructions and policies provided by a server that are transferred to the client by the OMA DM protocol. For example, a client might notice that the battery is nearly empty and so it automatically decreases its own backlight illumination level.
    Type: Grant
    Filed: September 3, 2008
    Date of Patent: August 30, 2011
    Assignee: Innopath Software, Inc.
    Inventors: Eugene Krivopaltsev, Gregory D. Buzzard, Manuel Roman, Shahid Shoaib, Michael Diener
  • Patent number: 7890464
    Abstract: Systems and methods are provided for pre-processing and post-processing original and new versions of files as part of difference file generation between the original and new file versions, for example byte-level file differencing. Software/executable changes between file versions include primary changes/logical changes, which are defined to be the source code changes, and secondary changes. The secondary changes generally result from the primary changes and are generated by the software compiler/linker utilities. The secondary changes include address changes, pointer target address changes, and changes in address offsets. The pre-processing and/or post-processing systems and methods provided use approximation rules between file versions to remove/reduce the secondary changes and encode information relating to the removal of these changes in information of the corresponding difference file.
    Type: Grant
    Filed: May 12, 2006
    Date of Patent: February 15, 2011
    Assignee: Innopath Software, Inc.
    Inventor: Matthias Reinsch
  • Patent number: 7865479
    Abstract: Systems and methods for CRAMFS file system differencing and updating are provided that include portion-level differencing and block-level updating of blocks of an original image. The differencing and updating split CRAMFS images into portions using CRAMFS file system structure information and block information and perform dependency analysis using hint/list files from the CRAMFS split module. A delta file is generated for each portion (portion-level differencing) of the new CRAMFS image; the delta file includes information of differences between the portion of the new CRAMFS image and the portion of the original CRAMFS image to which the new CRAMFS image portion corresponds. The delta files are transferred to a device where the device target CRAMFS image is updated block-by-block using information of the delta files. The update reconstructs all portions of the new CRAMFS image in a block in host device RAM and writes the reconstructed block into host device ROM.
    Type: Grant
    Filed: November 8, 2005
    Date of Patent: January 4, 2011
    Assignee: Innopath Software, Inc.
    Inventors: Jinsheng Gu, Premjith Manapetty
  • Patent number: 7844734
    Abstract: Dynamic Addressing (DA) is provided that uses a Centralized DA Manager to manage function calls, global variable, and constant variable references among components of software code. The DA Manager is generated during the process of linking the components and is loaded along with the code into client device memory. References from one component to another are stored in the DA Manager along with the address of each component. In an embodiment, the DA Manager includes linker-defined symbols stored in fixed addresses, such that the linker-defined symbols consistently provide the current address for data requested from another component. Changes to a component during file upgrades that result in location changes of the component in memory are recorded by the DA Manager, thereby maintaining the integrity of references to the component present in the code.
    Type: Grant
    Filed: February 1, 2005
    Date of Patent: November 30, 2010
    Assignee: InnoPath Software, Inc.
    Inventors: James Jiang, De Ji, Anumele Raja
  • Patent number: 7779055
    Abstract: In performing memory management, an upgrade client of a host device identifies and reserves memory blocks large enough to accommodate new software components by performing sequential searches of first and second memory areas. The new software components are updated versions of components of original software files. When the new component size exceeds that of available blocks of the first and second memory areas, the upgrade client rewrites the first memory area to eliminate unused memory blocks, reapportions the first and second memory areas, writes the new component to the second memory area, and updates a vector table. To access host device software components, the upgrade client receives a function call from the main program of the host device including identification information of corresponding software files, reads a start address of the corresponding software files from the vector table, and generates a call for the corresponding software files.
    Type: Grant
    Filed: July 22, 2005
    Date of Patent: August 17, 2010
    Assignee: Innopath Software, Inc.
    Inventor: Luosheng Peng
  • Patent number: 7711706
    Abstract: Systems and methods are provided for reorganizing static file system (SFS) images for efficient differencing, updating and to reduce the update time. The systems and methods are for updating compressed read-only memory file system (CRAMFS) format images as an example. The reorganizing receives an image that includes one or more SFS components such as CRAMFS components and determines any changed sections within the SFS images. Reorganized CRAMFS components are generated using information of the CRAMFS components by moving any of the changed sections from a first position to a second position in the component. The second position can follow all unchanged data sections of the image. A modified image is generated that includes the reorganized CRAMFS component. The modified image is used in SFS differencing and updating.
    Type: Grant
    Filed: November 8, 2005
    Date of Patent: May 4, 2010
    Assignee: Innopath Software, Inc.
    Inventors: Premjith Manapetty, Jinsheng Gu
  • Patent number: 7676506
    Abstract: Embodiments include systems and methods for pre-processing and post-processing original and new versions of files as part of difference file generation between the original and new file versions. The systems and methods of an embodiment include a set of algorithms that reduce the difference file size by preprocessing a variety of regions in software images for embedded computing devices, an example of which is the compressed read-only memory (ROM) file system (CRAMFS) image. The algorithms treat a variety of types of data regions that are created by the compiler. Embodiments operate on the server side and the client side. On the server side, the preprocessing generates Compact Functional Differences (CFD) hint data directly from a pair of CRAMFS images, without the use of symbol files or log files generated by compiler/linker utilities.
    Type: Grant
    Filed: May 9, 2007
    Date of Patent: March 9, 2010
    Assignee: Innopath Software, Inc.
    Inventor: Matthias Reinsch
  • Publication number: 20100037088
    Abstract: Embodiments of an intelligent agent for an OMA DM enabled mobile client device are described. The intelligent agent includes modules for storing management property values in one or more nodes of an OMA DM management tree of the mobile client device. At least some of the management values are analyzed and set in a server computer coupled to the mobile client device over a wireless network. The intelligent mobile client is configured to manage itself based on initial instructions and policies provided by a server that are transferred to the client by the OMA DM protocol. For example, a client might notice that the battery is nearly empty and so it automatically decreases its own backlight illumination level.
    Type: Application
    Filed: September 3, 2008
    Publication date: February 11, 2010
    Applicant: INNOPATH SOFTWARE, INC.
    Inventors: Eugene Krivopaltsev, Gregory D. Buzzard, Manuel Roman, Shahid Shoaib, Michael Diener
  • Patent number: 7516451
    Abstract: A mobile device is provided that includes a first processor coupled among at least one additional processor and a communication device for use in maintaining electronic files of the device. The mobile device can, for example, be a cellular telephone. The mobile device further includes an upgrade engine coupled to the first processor. The upgrade engine receives maintenance files from remote servers via the communication device, where the maintenance files include difference files. The upgrade engine uses information of the difference files to update software of the first processor. In addition to the upgrade engine, the mobile device includes an emulator that is coupled to the upgrade engine. The emulator transfers pre-specified ones of the difference files to the additional processor(s) where a rewrite engine uses the difference files to upgrade software of the additional processor(s).
    Type: Grant
    Filed: August 31, 2004
    Date of Patent: April 7, 2009
    Assignee: InnoPath Software, Inc.
    Inventor: Luosheng Peng
  • Publication number: 20090049166
    Abstract: Embodiments of a system configured to manage policies, including decision policies and active policies, on an Open Mobile Alliance Device Management (OMA DM) enabled mobile client devices is described. The system is configured to manage policies, including decision policies and active policies, on mobile devices is described that includes a device policy repository, a policy decision point, a decision policy enforcer, and an active policy enforcer. The system includes a server-side process configured to allow creation, modification and transmission of defined policies to the mobile client device, and a client-side process executed on the mobile client device and configured store the defined policies in an OMA DM management tree in the mobile client device as management objects, wherein each policy of the defined policies is represented as a subnode of the management tree.
    Type: Application
    Filed: August 8, 2008
    Publication date: February 19, 2009
    Applicant: INNOPATH SOFTWARE, INC.
    Inventors: Manuel Roman, Gregory D. Buzzard, Shahid Shoaib, Eugene Krivopaltsev, Michael Diener
  • Publication number: 20090049518
    Abstract: Embodiments of a system configured to manage policies, including decision policies and active policies, on mobile devices is described. The system is configured to manage policies, including decision policies and active policies, on mobile devices is described that includes a device policy repository, a policy decision point, a decision policy enforcer, and an active policy enforcer. The system includes a method for enforcing policies on mobile devices that proactively monitors the execution environment and automatically triggers active policies. The method further exports an interface and provides functionality to evaluate and enforce decision policies. The system can combine policies from different sources, including detecting and avoiding policy conflicts.
    Type: Application
    Filed: August 8, 2008
    Publication date: February 19, 2009
    Applicant: INNOPATH SOFTWARE, INC.
    Inventors: Manuel Roman, Gregory D. Buzzard, Shahid Shoaib, Eugene Krivopaltsev, Michael Diener
  • Publication number: 20090040947
    Abstract: Embodiments of a method and system for managing configurations on mobile devices are described. A method under an embodiment utilizes one or more advanced commands defined by the OMA DM protocol. One such command is the “Get” command, which can be used recursively to traverse a management tree to access the necessary nodes. A variation of this command is the “Get[Struct Data]” command, which traverses a tree or subtree in a single execution instance. The “Get” command is used to get a snapshot from a management tree starting from a specified URI. For this embodiment, it is presumed that a “golden” copy of device exists. The golden copy can be initially configured either manually or by using a mobile device management platform. The method uses a golden device to make a configuration snapshot to be used later for a distribution to multiple targets.
    Type: Application
    Filed: August 8, 2008
    Publication date: February 12, 2009
    Applicant: InnoPath Software, Inc.
    Inventor: Eugene Krivopaltsev
  • Publication number: 20090044185
    Abstract: Embodiments of a workflow-based user interface for defining and managing functions implemented on mobile devices are described. A method under an embodiment utilizes a workflow-based mobile device management user interface. The method utilizes a pluggable workflow framework to achieve mobile device management externalization. The mobile device management platform is required to implement a set of basic action blocks that are used as primitives for further management policy composition. The method provides a development environment integrated with a mobile device management platform that allows assembling management (monitoring) primitives into meaningful management policies without changes to a core management platform infrastructure. The method claims addition of new primitives deployed as add-on products to enable new and advanced management policies, best integration practices with a carrier operational support system.
    Type: Application
    Filed: August 8, 2008
    Publication date: February 12, 2009
    Applicant: INNOPATH SOFTWARE, INC.
    Inventor: Eugene Krivopaltsev
  • Patent number: 7392260
    Abstract: A file differencing and updating system is provided that includes a file differencing component and a file updating component. The file differencing component, or file differencing engine, generates a difference file in a first processor-based or computer system from an original or old version and a new version of an electronic file. Generation of the difference files includes processing to reduce the number of file changes introduced by code block swaps. The processing uses an alignment algorithm, which includes a sorting algorithm, to align the code blocks of the original version in the same order as those of the new version, thereby eliminating the increase in the number of byte-level file differences due to code block swaps. During the alignment operations, the block movements are dynamically recorded at a minimum cost level and encoded for transmission to the file updating component for use in code recovery.
    Type: Grant
    Filed: December 21, 2005
    Date of Patent: June 24, 2008
    Assignee: InnoPath Software, Inc.
    Inventors: Liwei Ren, Jinsheng Gu, Luosheng Peng
  • Patent number: 7366824
    Abstract: A system and method for updating electronic files and file components are provided. An upgrade client of a remote device receives a delta file block that codes differences between an original and a new version of a file. The upgrade client stores the delta file block in a first memory area. The upgrade client writes an original file block corresponding to the delta file block from an original memory area to a second memory area. A file updating algorithm generates an updated file block in the host device using the received delta file block and the original file block. This updated file block corresponds to the original file block, and is stored in a third memory area. The upgrade client updates the original file block of the remote device by writing the updated file block over the original file block in the original memory area of the remote device.
    Type: Grant
    Filed: May 8, 2006
    Date of Patent: April 29, 2008
    Assignee: InnoPath Software, Inc.
    Inventor: Ying-Hsin Robert Chiang