|
|
1. Patent 6,738,766 recognizes
InnoPath’s unique method for
providing personalized application
search results in a mobile device.
This involves receiving a search request
from a user including at least one
search keyword and a user identifier.
An application registry database is
searched for a first set of matching
applications based on the search keyword,
followed by a search of an application
selection table for a second set of
matching applications based on the
search keyword and the user identifier.
The combination yields a highly accurate
search result based on matching applications
that are ordered and sent to the user. |
| |
|
|
|
2. Patent 6,816,944 recognizes
InnoPath’s unique method for
managing information in a mobile device.
This involves downloading a set of
files and determining whether the local
cache has enough space to store the
data. If there is insufficient space
to store the files, outdated records
are removed and available local cache
space is checked again. This process
is repeated until all download files
are loaded into the local cache. |
| |
|
|
3. Patent 6,836,657 recognizes
InnoPath’s unique method for
ensuring 100 per cent accurate updates
online and over-the-air. This method
allows wireless operators to reliably
update mobile devices over the air
to new firmware releases while maintaining
the option to fall back to the original
firmware revision (prior to the update)
with 100 per cent reliability. |
| |
|
|
4. Patent 6,925,467 recognizes
InnoPath’s unique method to produce
the most compact and efficient change
files, applying a known file difference
utility to an old program and a new
program normally results in a relatively
large amount of data, even if there
are only a small number of modifications.
With InnoPath's patented and highly
innovative technology, only essential
changes appear in a delta file, typically
shrinking update packages by as much
as 97 per cent. |
| |
|
|
5. Patent 6,928,467 describes
methods where object stores are used
as building blocks to construct a system
with variable complexity on a network.
Typically, an object store comprises
information (e.g., data) stored in
object format, or objects. The objects
and object stores are managed by an
object version management mechanism
that adapts to different object store
types and optimizes resource consumption
by each object store. Various data
fields are used to indicate an object's
version within an object store. Version
information is used to compare the
states among matching object replicas
in matching object stores. Utilizing
both the object store based system
and the object version management mechanism,
a data synchronization protocol is
developed. The data synchronization
protocol is capable of adapting to
different types of object stores and
the characteristics of network connection
media to optimize data synchronization. |
| |
|
|
6. Patent 6,954,754 describes
an exemplary method for managing a
cache on a mobile device. This involves
checking existing application or data
file status to determine if they are
out-of-date or if a scheduled update
is overdue. If the files are out-of-date
or the scheduled update is overdue,
updated files are loaded. |
| |
|
|
7. Patent 6,957,212 describes
an exemplary method for intelligently
caching applications and data on a
gateway. This involves calculating
a cache benefit index for a set of
files, to determine whether to cache
the set of files on a local file system.
If so, the files are cached on the
local file system, and the cache tables
in the gateway database are updated. |
| |
|
|
8. Patent 6,959,436 describes
a method for intelligently providing
application and data in a mobile device
system. This involves collecting at
least one year of user operation history
and generating user and application
registration information. Application
or data is then selectively cached
on a mobile device and a gateway based
on the user’s operation history.
Other gateways are then synchronized
based on the user’s operation
history. |
| |
|
|
9. Patent 7,003,534 recognizes
a new method of generating different
files using module information of embedded
software components. The software component
distributor (SCD) generates a new map
file, hex file and device memory map
(DMM). The SCD compares the new DMM
and the corresponding original DMM,
after the comparison is made the SCD
inserts new data. Checking a module
by its name and version is more efficient
since modules can be many megabytes
in size. |
| |
|
|
10. Patent 7,006,512 recognizes
an exemplary method for managing requests
in a mobile device system. This involves
assigning a priority to each queue
in a set of priority queues and inputting
requests into the queues based on a
priority associated with each request.
Multiple requests in the set of priority
queues are merged and before being
sent to a request queue for a connection
in a connection pool for a destination. |
| |
|
|
11. Patent 7,007,049 recognizes
InnoPath’s unique method for
supporting device memory management
during electronic file updating. This
technology allows the creation of larger
contiguous blocks of free or unused
memory within the Flash ROM program
or coding area by moving existing blocks
to create larger ‘free memory’ areas
that can be used for larger software
updates. This function is similar to
defragging a hard drive on a personal
computer. |
| |
|
|
12. Patent 7,031,972 recognizes
InnoPath’s unique method for
a file differencing and update system.
The file differencing component, or
file differencing engine, generates
a difference file from an old and a
new version of electronic files. This
processing includes processing to reduce
the number of changes introduced by
code block swaps. During alignment
operations, the block movements are
dynamically recorded at minimal cost
and encoded to support code recovery. |
| |
|
|
13. Patent 7,089,270 recognizes
InnoPath’s unique method for
processing software images for use
in generating difference files. 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 include address changes, pointer
target address changes, and changes
in address offsets. The pre-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. |
| |
|
|
14. Patent 7,096,311 recognizes
InnoPath’s unique method for
updating electronic files using byte-level
file differencing and updating algorithms. The
upgrade client employs multiple memory
areas to apply a difference file to
the original memory image. Memory
is copied and updated in blocks by
reading the original memory image and
processing it with the difference file
to generate and apply new updated memory
blocks. |
| |
|
|
15. Patent 7,099,884 recognizes
InnoPath’s unique method for
data compression and decompression. The
compression method identifies repetitive
data of an input file and writes meta-data
representative of the repetitive data
to a first buffer. Non-repetitive
data is written to a second buffer.
The compressor concatenates the first
and second buffers along with information
of the length of the input file and
the length of the first buffer to form
a compressed file. A corresponding
decompression method parses the compressed
file and quickly computes the original
file using a pre-allocated memory area. |
| |
|
|
16. Patent 7,313,577 recognizes
InnoPath's unique method for generating
difference files using module information
of embedded software components. A
software component distributor constructs
updates only on the software components
that have actually changed, identifying
inserted, deleted or changed components.
Difference information representative
of these changed components is constructed. |
| |
|
|
|
17. Patent 7,320,010 recognizes
InnoPath's unique method for controlling
updates of electronic files. In controlling electronic file updates, an upgrade system identifies host device models that include an original electronic file upon receipt of a new file, when the new file is an updated version of the original file. Using the identified model list, the upgrade system automatically generates a target list of subscribers that use the identified models. The upgrade system filters the target list using data of pre-defined user groups and generates subgroups of the target list. The pre-defined groups can include groupings made according to any criteria. The upgrade system selects an upgrade control policy for each user according to the subgroup to which the user is a member. The upgrade control policy controls device update parameters. The upgrade system transmits upgrades and/or upgrade notifications to the appropriate host devices in accordance with the selected upgrade control policies. |
| |
|
|
|
18. Patent 7,350,205 recognizes
InnoPath's unique method for upgrading
electronic files of a mobile device
upgrade client. A portable device receives
upgrade files that repair errors in
software components and/or that upgrade
information controlling functions of
the device via a wireless coupling.
An upgrade client automatically updates
the device components, including support
to update the compoents of the upgrade
client. |
| |
|
|
|
19. Patent
7,366,824
recognizes
InnoPath's unique method for Updating
electronic files using byte-level file differencing and updating algorithms.
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.
|
| |
|
|
|
20. Patent 7,392,260 recognizes
InnoPath's unique method for achieving
code alignment of binary files. A 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. |
| |
|
|
|
21. Patent 7,516,451 recognizes
InnoPath's unique method for maintaining
mobile device electronic files including
using difference files when upgrading
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).
|
| |
|