US9270732B2 - System and method for automatically uploading updates - Google Patents
System and method for automatically uploading updates Download PDFInfo
- Publication number
- US9270732B2 US9270732B2 US11/081,055 US8105505A US9270732B2 US 9270732 B2 US9270732 B2 US 9270732B2 US 8105505 A US8105505 A US 8105505A US 9270732 B2 US9270732 B2 US 9270732B2
- Authority
- US
- United States
- Prior art keywords
- parameter
- user
- software upgrade
- user device
- download priority
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related, expires
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000012544 monitoring process Methods 0.000 claims description 18
- 230000004044 response Effects 0.000 claims description 6
- 238000009434 installation Methods 0.000 claims description 5
- 230000001413 cellular effect Effects 0.000 claims description 2
- 230000003993 interaction Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 5
- 230000000977 initiatory effect Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 101100217298 Mus musculus Aspm gene Proteins 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/541—Client-server
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Definitions
- This invention generally relates to a system and method of seamlessly updating, correcting, modifying or upgrading software on an electronics device.
- Computer software is constantly updated to keep pace with new features, prevent problems from arising, or fix known or recurrent problems. Users exploit several mechanisms, each requiring a certain amount of computer resources, involvement and decision-making on the part of the user, to keep up with available updates.
- Various methods for updating software include patching and hardware and software upgrades.
- Providers are increasingly providing upgrades via a patch, a discreet portion of computer code downloaded via a network, such as the Internet, as opposed to upgrading via hardware and software upgrades.
- This is because the process of upgrading via hardware and software upgrades often requires more time than that of a patch as it requires the user to physically load the update onto their user device. The possibility of user error is also increased as greater activity is required on the part of the user to implement upgrades.
- the process of upgrading via a patch does not require any physical loading of software or hardware by the user.
- upgrading a user's system via the patch does require consideration of the network connection quality, processing capacity of the user device, and user's ability and willingness to properly download and implement the patch.
- a patch can be an upgrade, a bug fix, a new hardware driver or update to address new issues such as security, stability or other end-user problems.
- Most patches are free to download, but ultimately the provider determines which versions of their software are updated for free. In some cases, only registered users may get certain upgrades. At other times the only way to upgrade is to purchase the newer version at a discounted price, which requires reinstallation of the program.
- a patch can be installed concurrent with an existing program depending on the supplier and the nature of the patch.
- a provider may prevent a user from closing out of an application until the upgrade is downloaded.
- the provider forces downloads of upgrades the user's device typically functions more slowly or not at all until upgrades are downloaded.
- users may request, or pull, upgrades by accepting them upon notification provided by the provider that upgrades are available. The download of the upgrade is typically contemporaneous with the user's request and consumes computer resources causing delay in the device's utility to the user.
- users must conform to parameters set by the providers if they are to obtain upgrades.
- the prior art method of receiving upgrades is problematic for several reasons.
- the provider typically does not take into account that the user's device is slowed while the download takes place and that the user's experience while using their device is negatively impacted by a delay caused by downloading an upgrade.
- upgrades are pulled, users are required to make decisions about when to suffer a delay on the user device on a case-by-case basis.
- users pulling upgrades are often required to determine the correct upgrade for their system with no or little knowledge or guidance. In either case, the provider may limit the size of the upgrade to be downloaded or provide the upgrade in serial form to reduce the delay experienced by the download.
- the user In situations where the provider forces the user to accept updates, the user typically has no choice as to when or how such upgrades occur. The user experiences interruption in the functionality of the user device and, worse still, the delay may be unexpected and/or frustrate the user's use of their device. In situations where the upgrade is requested by the user, they typically have limited options to refuse a download. In the event that the user chooses to download the upgrade, the upgrade starts downloading to the user device immediately and, during the time of the upgrade, the user experiences reduced functionality of the user device. Some users have developed a habit of choosing not to upgrade due to the temporary interruption in the use of the device. The burden of upgrading to resolve problems often exacerbates the frustration of the user experiencing an underlying problem and makes finding a less intrusive means of providing upgrades to clients and users desirable. In the long term, failure to voluntarily upgrade acts as a detriment to providers, clients and users, as upgrades allow users to experience the best product the provider has to offer, resolve problems, and prevent problems from arising.
- the present invention relates to a method and apparatus for providing a user of an electronic device with an Automatic Upgrade Functionality (AUF), the ability to automatically upgrade software installations with a configurable amount of user interaction and interruption. That is, an upgrade is configured to provide full or limited notification of the upgrade to the user or is completely silent.
- APF Automatic Upgrade Functionality
- AUF provides an innocuous upgrade service to users and/or clients compared to conventional methods, where users and/or clients are forced to quit the application, download an installer program and then run it manually to upgrade their application, or are burdened by an undesirable reduction in the use of their device.
- AUF provides for a less intrusive way for providers to supply users and/or clients with upgrades, and for users and/or clients to implement those upgrades.
- the user/client pre-selects the parameters under which they prefer receiving upgrades, or the client/server determines the best time to download an upgrade.
- the AUF program can be stored on either the client or the server.
- the user's device connects to the server using an existing connection protocol.
- the server and/or client transmit AUF data.
- the user may or may not access the AUF to set personal preferences using several available parameters to control the AUF process.
- the parameters can be preset to automatically upgrade the software or to upgrade the software according to user preference.
- any upgrade downloaded according to the AUF parameters is implemented automatically at a time when the user is not otherwise using the device.
- any upgrade downloaded according to the AUF parameters is implemented automatically when the software is launched.
- AUF parameters are preset to automatically upgrade the device with upgrades that are available from secure sources at times when the client is used the least.
- the user device to download an update, connects to the download server and downloads the upgrade using an URL and priority parameters.
- the client verifies that the downloaded upgrade is unchanged and prepares the upgrade to be launched automatically, or at the next client startup. Verification uses the checksum or other security parameter returned during initiation to ensure that the downloaded update is correct. If the parameters are set to notify the user, the user is notified accordingly.
- a small launch executable can be the main entry point for users to run the application.
- the launcher when run, reads a known registry key and allows the current client executable to run. When a new version of the software is downloaded successfully, the registry key is updated accordingly.
- the launcher can be called “Client.exe” and the client executable is called “Client- ⁇ version>.dat”, where “ ⁇ version>” is the version number of the executable.
- the download request and the user notification are handled outside of the main client thread, therefore the user is free to use the client while the AUF process is completed.
- Download priority is implemented by setting a thread priority control. Therefore, by virtue of the thread scheduler, the download thread gets more or less CPU time to complete the download depending on the settings.
- the request for software updates automatically indicates the current version and any patch version used by the user device issuing the request.
- the server and/or the client responds by comparing the version information with available updates to determine whether or not to upgrade the client.
- Verification that the download is successful utilizes a checksum or similar program.
- the checksum is used to prevent corrupted downloads.
- a cryptographic hash e.g. MD5 or SHA1
- other similar security measure can be used.
- AUF is invoked multiple times for the lifetime of a client installation
- “old” computer code can collect on the user's device. To prevent this from becoming a resource leak and to prevent unnecessary use of storage space, only the most recently used version is retained. For example, a software upgrade from version 3.6 to 3.7, and then 3.7 to 3.8, results in removal of the 3.6 version from the device. When version 3.8 is upgraded to 3.9, the 3.7 version is removed. Alternatively, prior versions are deleted in accordance with a predetermined amount of time or are stored elsewhere.
- AUF can download an update obscured to prevent it from being considered a security risk.
- the executable can be packaged as a .CAB archive file or other similar file and can be given a specific name to identify the version upgrade.
- Downgrades can also be performed using the present invention. Users have the option to refuse upgrades, either in whole, or only for specific applications, thereby selectively maintaining pre-updated material. This feature is especially useful where the compatibility of a program with other programs is lost upon installation of an upgrade, or where the user has a preference for a particular version of the application.
- the server upon initiation of the AUF, notifies the user device that an upgrade is available. This is done via a defined protocol between the user device and the server.
- registry settings include an option to enable or disable the AUF and checksum verification; and indicate the current and previous versions of the client.
- hidden registry settings pertaining to AUF are also created.
- the update method includes automatically downloading an upgrade in the background so that the next time the user starts their device the software upgrade is automatically loaded and the software upgraded.
- FIG. 1 is a diagram of the present invention
- FIG. 2 is a flow chart of an embodiment of a method of the present invention.
- FIG. 3 is a diagram illustrating an embodiment of the service parameters of the present invention.
- the system and method provides a user of an electronic device with an AUF, that is, the ability to automatically upgrade software installations with a configurable amount of user interaction and interruption.
- FIG. 1 illustrates a basic system of the present invention.
- a user 100 utilizes a device 102 connected over a network 110 to a provider's 106 system, typically including one or more servers 108 .
- the user's devices 102 can include a computer 102 a , a cellular telephone 102 b , a PDA/pager/Blackberry® 102 c , an MP3 player 102 d , or entertainment device 102 e , including stereos, DVD/VHS players, game systems (e.g. PS2®, X-Box®) or any networked device both stationary or portable.
- User device 102 can, in one embodiment, run a client 104 which can be the software allowing the user 100 to access server 108 and also run software 103 .
- the user 100 can connect to the network 110 using any method known in the art, including telephone, DSL, cable, wireless and satellite.
- Network 110 can be a LAN, WAN and include the Internet.
- the provider's 106 system can include one or more servers 108 to run the service accessed by user 100 .
- the provider 106 can distribute the functionally, across multiple servers, each server handling one of more specific tasks, or each server handling all tasks.
- FIG. 2 illustrates a method for transmitting electronic information over a computer network.
- the method for providing an update to a user device 102 includes the steps of initiating the client 104 on a user device 102 (step 200 ).
- the user 100 or the client 104 can initiate the software program 103 by downloading the program from the server 108 via the network 110 , by obtaining the software program from another source, or by launching the client 104 .
- the service parameters 300 can be stored either on at least one of the client 104 and server 108 .
- the parameters 300 are understood by the client 104 and server 108 .
- the user 100 , the client 104 , the server 108 can set the parameters 300 on the client 104 and/or server 108 .
- the parameters 300 can be preset as part of the AUF upon initiating the client 104 or may be preset and later altered according to the user's 100 preferences.
- the user 100 is not involved, and the AUF functions automatically according to service parameters 300 .
- Other embodiments include some of or all of the following parameters 300 as set by one of the user 100 or the client 104 .
- a notification parameter 302 determines the amount of notification to the user 100 .
- the notification parameter 302 is set to either notify or not to notify the user 100 under various circumstance, including but not limited to those set forth below.
- the notification parameter 302 can be set to notify user 100 that the upgrade is available, to request approval before downloading an upgrade, that the upgrade download was successful, to indicate the download source and/or security, and to notify the user 100 of a need for further instruction regarding particular downloads.
- the client 104 can also be notified.
- the notification parameter 302 can be set to include notification of, among others, only certain types of upgrades, upgrades provided by particular providers, upgrades that are provided by a secure source, upgrades exceeding a certain size, or upgrades expected to require more than a certain amount of time to download. Additionally, the notification parameter 302 can be set to request notification at specific times, or a delayed summary notification of all upgrade downloads over a specified time.
- Priority parameter 304 is set to determine the priority with which downloads occur and allows user 100 , client 104 and/or server 108 to set a range of priority for downloading requested information. For example, downloads of greater priority result in faster download performance with the understanding that such downloads have the highest probability that the user 100 can be disturbed. Downloads of lower priority result in slower download performance, but are less likely to disturb the user 100 .
- Source parameter 306 provides the user 100 or instructs the client 104 of the option to download depending on the available source.
- the source parameter 306 can be set to only download from particular sources, or where download security is also available. For example, if the download is from an undesirable unsecured source, the download does not occur. In the instance that a download is selected on the basis that its source is unsecured or otherwise undesirable, the option to have the client 104 , either automatically and/or upon notice to the user 100 , locate a provider-approved or a secure source of the upgrade is available.
- Security parameter 308 provides the user 100 and/or the client 104 the option to download a checksum, indicating that a checksum is used to verify that the download was not corrupted. This option is available using methods known in the art, such as by using either MD5 or SHA hashes.
- Compatibility parameter 310 can be set to provide one or more of the user 100 , client 104 and server 108 the option determine the compatibility of available downloads with other programs located on user device 102 , and the ability to refuse to download those upgrades and/or download upgrades accordingly.
- another provider's 106 information is used to assess any conflicts between existing software on the user device 102 and the suggested download. This embodiment results in two downloads, one to upgrade for each software package, so that they are compatible.
- Costs parameter 312 can be set values for prompting certain responses from the user 100 and or the client 104 when there is a cost associated with the download and/or according to the amount of the cost.
- the user 100 and or the client 104 sets up an automatic account on the client 104 or through a third party so that payment is made and the upgrade is downloaded.
- Timing parameter 314 can be set to request that downloads only occur at specific times.
- the client 104 can be set to independently determine optimal times for download, such as when the client is used the least.
- the client 104 requests to re-initiate contact with the provider 106 and/or the server 108 in order to download upgrades at a certain time. For example, where software 103 did not upgrade so that the user's 100 use of software 103 may be less likely to be impeded in the short term, the client 104 can note the URL of the site where the upgrade download is available and return to that site in accordance with the parameters set for AUF.
- Bandwidth parameter 316 can be set to request that an upgrade be delivered using only a certain amount of available bandwidth, or not exceeding a certain amount of bandwidth. This feature is useful for devices 102 that need to keep a certain amount of bandwidth available for other uses.
- Size parameter 318 can be set to request that an upgrade be delivered according to size, or not exceeding a certain size.
- the client 104 requests information regarding the download size and requests that the upgrade be sent as one large file or multiple small files delivered one at a time.
- another step can be monitoring the status of the client 104 by at least one of the client 104 and the server 108 via the network 110 (step 204 ).
- Monitoring the status of the client 204 can occur all the time, can occur at times determined by setting the service parameters 202 , can occur automatically when the client 104 launches, when the server 108 and client 104 connect to each other via the network 110 , and anytime the server 108 and client 104 connect to the network 110 .
- Monitoring the status of the client 204 can include monitoring selected or all sources available via the network 110 for available updates and any potential use for the available updates by the client 104 .
- a request for information is sent and received by the client 104 or the server 108 (step 206 ).
- the request to obtain information can be sent from the client 104 to the server 108 via the network 110 automatically by the client 104 or can be sent under the direction of the user 100 .
- the request to obtain information is sent and/or received in accordance with the parameters 300 .
- One of the client 104 and the server 108 formulate a response to requests for information (step 208 ).
- a response is formulated according to the set service parameters 202 .
- the requested information is then delivered to the requesting client 104 or server 108 via the network 110 (step 210 ).
- the delivery of the requested information 210 is made according to the set service parameters 300 .
- the software modification is delivered in encrypted and/or compressed form.
- the delivery of the requested information 210 is accompanied by the delivery of instructions to the user for the proper installation of the update.
- Requested information is installed (step 212 ) by the client 104 , the user 100 and/or the server 108 .
- proper installation of the requested information on the client 104 is ensured by the client 104 and/or the server 108 .
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims (32)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/081,055 US9270732B2 (en) | 2005-03-14 | 2005-03-14 | System and method for automatically uploading updates |
PCT/US2006/009260 WO2006099465A2 (en) | 2005-03-14 | 2006-03-14 | System and method for automatically uploading updates |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/081,055 US9270732B2 (en) | 2005-03-14 | 2005-03-14 | System and method for automatically uploading updates |
Publications (2)
Publication Number | Publication Date |
---|---|
US20060206587A1 US20060206587A1 (en) | 2006-09-14 |
US9270732B2 true US9270732B2 (en) | 2016-02-23 |
Family
ID=36972323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/081,055 Expired - Fee Related US9270732B2 (en) | 2005-03-14 | 2005-03-14 | System and method for automatically uploading updates |
Country Status (2)
Country | Link |
---|---|
US (1) | US9270732B2 (en) |
WO (1) | WO2006099465A2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11182147B2 (en) * | 2020-04-02 | 2021-11-23 | Vmware, Inc. | Deploying virtualization software in a remote cluster |
US20220257191A1 (en) * | 2006-06-05 | 2022-08-18 | Masimo Corporation | Parameter upgrade system |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7757274B2 (en) | 2005-04-05 | 2010-07-13 | Mcafee, Inc. | Methods and systems for exchanging security information via peer-to-peer wireless networks |
US7761710B2 (en) * | 2005-04-05 | 2010-07-20 | Mcafee, Inc. | Captive portal system and method for use in peer-to-peer networks |
US7606370B2 (en) * | 2005-04-05 | 2009-10-20 | Mcafee, Inc. | System, method and computer program product for updating security criteria in wireless networks |
WO2006109998A1 (en) * | 2005-04-15 | 2006-10-19 | Ktfreetel Co., Ltd. | Method for providing contents |
US7849184B1 (en) * | 2005-10-07 | 2010-12-07 | Dp Technologies, Inc. | Method and apparatus of monitoring the status of a sensor, monitor, or device (SMD) |
US8864663B1 (en) | 2006-03-01 | 2014-10-21 | Dp Technologies, Inc. | System and method to evaluate physical condition of a user |
US8725527B1 (en) | 2006-03-03 | 2014-05-13 | Dp Technologies, Inc. | Method and apparatus to present a virtual user |
US7818740B2 (en) * | 2006-05-05 | 2010-10-19 | Microsoft Corporation | Techniques to perform gradual upgrades |
US8299924B2 (en) | 2007-06-06 | 2012-10-30 | The Boeing Company | Method and apparatus for locating objects using radio frequency identification |
US8289201B2 (en) | 2007-06-06 | 2012-10-16 | The Boeing Company | Method and apparatus for using non-linear ground penetrating radar to detect objects located in the ground |
US9679410B1 (en) | 2007-08-22 | 2017-06-13 | Trimble Inc. | Systems and methods for parametric modeling of three dimensional objects |
US8055393B2 (en) * | 2008-02-06 | 2011-11-08 | The Boeing Company | Method and apparatus for loading software aircraft parts |
US8051031B2 (en) * | 2008-02-06 | 2011-11-01 | The Boeing Company | Metadata for software aircraft parts |
WO2010002407A1 (en) * | 2008-07-02 | 2010-01-07 | Hewlett-Packard Development Company, L.P. | Performing administrative tasks associated with a network-attached storage system at a client |
US8392904B2 (en) * | 2009-03-12 | 2013-03-05 | International Business Machines Corporation | Apparatus, system, and method for efficient code update |
US8903669B1 (en) | 2009-03-27 | 2014-12-02 | The Boeing Company | Multi-band receiver using harmonic synchronous detection |
US8054212B1 (en) | 2009-03-27 | 2011-11-08 | The Boeing Company | Multi-band receiver using harmonic synchronous detection |
US8275572B2 (en) * | 2009-06-10 | 2012-09-25 | The Boeing Company | Difference frequency detection with range measurement |
KR20110000162A (en) * | 2009-06-26 | 2011-01-03 | 주식회사 넥슨 | System and method for providing online game using storage media |
US8707296B2 (en) * | 2010-04-27 | 2014-04-22 | Apple Inc. | Dynamic retrieval of installation packages when installing software |
US9110743B2 (en) * | 2010-12-21 | 2015-08-18 | Microsoft Technology Licensing, Llc | Extensible system action for sharing while remaining in context |
US9069498B2 (en) | 2011-09-12 | 2015-06-30 | Microsoft Technology Licensing, Llc | Presenting devices as applications |
US9372716B1 (en) * | 2013-09-23 | 2016-06-21 | Amazon Technologies, Inc. | Download prioritization |
US9804835B2 (en) | 2014-06-11 | 2017-10-31 | Microsoft Technology Licensing, Llc | Dynamic pacing for service upgrades |
US10623276B2 (en) * | 2015-12-29 | 2020-04-14 | International Business Machines Corporation | Monitoring and management of software as a service in micro cloud environments |
CN107817995B (en) | 2016-09-12 | 2021-03-30 | 华为技术有限公司 | Background silent application starting method and device and terminal equipment |
US11036488B2 (en) | 2019-08-12 | 2021-06-15 | International Business Machines Corporation | System and method for optimal hierarchical upgrade time prediction |
US11327747B2 (en) | 2020-09-08 | 2022-05-10 | International Business Machines Corporation | Sentiment based offline version modification |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6049671A (en) * | 1996-04-18 | 2000-04-11 | Microsoft Corporation | Method for identifying and obtaining computer software from a network computer |
US6092154A (en) * | 1994-09-14 | 2000-07-18 | Intel Corporation | Method of pre-caching or pre-fetching data utilizing thread lists and multimedia editing systems using such pre-caching |
US6199204B1 (en) * | 1998-01-28 | 2001-03-06 | International Business Machines Corporation | Distribution of software updates via a computer network |
US6327617B1 (en) * | 1995-11-27 | 2001-12-04 | Microsoft Corporation | Method and system for identifying and obtaining computer software from a remote computer |
US20020152467A1 (en) * | 2001-02-12 | 2002-10-17 | Rosario Fiallos | Automated generation of conditional access packets for IRD upgrades via radio frequency software download in satellite television systems |
US20030220983A1 (en) * | 2002-05-24 | 2003-11-27 | Waikwan Hui | Method, system, and program for requesting objects to download over a network |
US20040177353A1 (en) * | 2003-02-28 | 2004-09-09 | Rao Bindu Rama | Electronic device network having graceful denial of service |
US6802061B1 (en) * | 1996-12-12 | 2004-10-05 | Microsoft Corporation | Automatic software downloading from a computer network |
US20040215755A1 (en) | 2000-11-17 | 2004-10-28 | O'neill Patrick J. | System and method for updating and distributing information |
US20050066019A1 (en) * | 2003-09-18 | 2005-03-24 | International Business Machines Corporation | Computer application and methods for autonomic upgrade maintenance of computer hardware, operating systems and application software |
US20060048132A1 (en) * | 2004-09-01 | 2006-03-02 | Microsoft Corporation | Licensing the use of a particular feature of software |
US7016944B1 (en) * | 1999-09-30 | 2006-03-21 | Apple Computer, Inc. | System and method for passive detection and context sensitive notification of upgrade availability for computer information |
US20060074750A1 (en) * | 2004-10-01 | 2006-04-06 | E-Cast, Inc. | Prioritized content download for an entertainment device |
US20060159127A1 (en) * | 2005-01-20 | 2006-07-20 | Childress Rhonda L | Method and system of controlling software distribution or file transfer |
US20060168574A1 (en) * | 2005-01-21 | 2006-07-27 | David Giannini | Methods and systems for transferring data over a network |
US20060212865A1 (en) * | 2005-03-16 | 2006-09-21 | Microsoft Corporation | Application programming interface for identifying, downloading and installing applicable software updates |
US7373139B2 (en) * | 2000-05-11 | 2008-05-13 | Sony Corporation | Update notification system, update monitoring apparatus, mobile communication terminal, information processing apparatus, contents acquisition instructing method, contents acquiring method, and program storing medium |
US8230415B1 (en) * | 2007-03-13 | 2012-07-24 | Juniper Networks, Inc. | On-demand advertising of software packages |
-
2005
- 2005-03-14 US US11/081,055 patent/US9270732B2/en not_active Expired - Fee Related
-
2006
- 2006-03-14 WO PCT/US2006/009260 patent/WO2006099465A2/en active Application Filing
Patent Citations (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6092154A (en) * | 1994-09-14 | 2000-07-18 | Intel Corporation | Method of pre-caching or pre-fetching data utilizing thread lists and multimedia editing systems using such pre-caching |
US6327617B1 (en) * | 1995-11-27 | 2001-12-04 | Microsoft Corporation | Method and system for identifying and obtaining computer software from a remote computer |
US20020016956A1 (en) * | 1995-11-27 | 2002-02-07 | Microsoft Corporation | Method and system for identifying and obtaining computer software from a remote computer |
US20050044544A1 (en) * | 1996-04-18 | 2005-02-24 | Microsoft Corporation | Methods and systems for obtaining computer software via a network |
US6049671A (en) * | 1996-04-18 | 2000-04-11 | Microsoft Corporation | Method for identifying and obtaining computer software from a network computer |
US6802061B1 (en) * | 1996-12-12 | 2004-10-05 | Microsoft Corporation | Automatic software downloading from a computer network |
US6199204B1 (en) * | 1998-01-28 | 2001-03-06 | International Business Machines Corporation | Distribution of software updates via a computer network |
US7016944B1 (en) * | 1999-09-30 | 2006-03-21 | Apple Computer, Inc. | System and method for passive detection and context sensitive notification of upgrade availability for computer information |
US7373139B2 (en) * | 2000-05-11 | 2008-05-13 | Sony Corporation | Update notification system, update monitoring apparatus, mobile communication terminal, information processing apparatus, contents acquisition instructing method, contents acquiring method, and program storing medium |
US20040215755A1 (en) | 2000-11-17 | 2004-10-28 | O'neill Patrick J. | System and method for updating and distributing information |
US20020152467A1 (en) * | 2001-02-12 | 2002-10-17 | Rosario Fiallos | Automated generation of conditional access packets for IRD upgrades via radio frequency software download in satellite television systems |
US20030220983A1 (en) * | 2002-05-24 | 2003-11-27 | Waikwan Hui | Method, system, and program for requesting objects to download over a network |
US20040177353A1 (en) * | 2003-02-28 | 2004-09-09 | Rao Bindu Rama | Electronic device network having graceful denial of service |
US20050066019A1 (en) * | 2003-09-18 | 2005-03-24 | International Business Machines Corporation | Computer application and methods for autonomic upgrade maintenance of computer hardware, operating systems and application software |
US20060048132A1 (en) * | 2004-09-01 | 2006-03-02 | Microsoft Corporation | Licensing the use of a particular feature of software |
US20060074750A1 (en) * | 2004-10-01 | 2006-04-06 | E-Cast, Inc. | Prioritized content download for an entertainment device |
US20060159127A1 (en) * | 2005-01-20 | 2006-07-20 | Childress Rhonda L | Method and system of controlling software distribution or file transfer |
US20060168574A1 (en) * | 2005-01-21 | 2006-07-27 | David Giannini | Methods and systems for transferring data over a network |
US20060212865A1 (en) * | 2005-03-16 | 2006-09-21 | Microsoft Corporation | Application programming interface for identifying, downloading and installing applicable software updates |
US8230415B1 (en) * | 2007-03-13 | 2012-07-24 | Juniper Networks, Inc. | On-demand advertising of software packages |
Non-Patent Citations (4)
Title |
---|
Frantisek Plasil et al., SOFA/DCUP: Architecture for Component Trading and Dynamic Updating, May 1998, retrieved online on Sep. 25, 2015, pp. 1-9. Retrieved from the Internet . * |
Frantisek Plasil et al., SOFA/DCUP: Architecture for Component Trading and Dynamic Updating, May 1998, retrieved online on Sep. 25, 2015, pp. 1-9. Retrieved from the Internet <URL: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=675757>. * |
Thomas Kunz and Michiel F. H. Seuren, Fast Detection of Communication Patterns in Distributed Executions, 1997, retrieved online on Sep. 25, 2015, pp. 1-15. Retrieved from the Internet . * |
Thomas Kunz and Michiel F. H. Seuren, Fast Detection of Communication Patterns in Distributed Executions, 1997, retrieved online on Sep. 25, 2015, pp. 1-15. Retrieved from the Internet <URL:http://delivery.acm.org/10.1145/790000/782022/p12-kunz.pdf?>. * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220257191A1 (en) * | 2006-06-05 | 2022-08-18 | Masimo Corporation | Parameter upgrade system |
US11182147B2 (en) * | 2020-04-02 | 2021-11-23 | Vmware, Inc. | Deploying virtualization software in a remote cluster |
Also Published As
Publication number | Publication date |
---|---|
US20060206587A1 (en) | 2006-09-14 |
WO2006099465A2 (en) | 2006-09-21 |
WO2006099465A3 (en) | 2007-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9270732B2 (en) | System and method for automatically uploading updates | |
US20190058789A1 (en) | Method and apparatus for remote control and updating of wireless mobile devices | |
US7596610B2 (en) | Method and system for installing applications via a display page | |
US10348804B2 (en) | System to automatically process components on a device | |
US6493871B1 (en) | Method and system for downloading updates for software installation | |
US7934210B1 (en) | System and method for updating one or more programs and their environment | |
RU2367005C2 (en) | System and method for updating files through correction with compressed updates | |
US7574481B2 (en) | Method and system for enabling offline detection of software updates | |
US7558867B2 (en) | Automatic firmware upgrade for a thin client using one or more FTP servers | |
US20040010786A1 (en) | System and method for automatically upgrading a software application | |
KR100915564B1 (en) | Method, software and apparatus for application upgrade during execution | |
US20090119092A1 (en) | Ensuring product correctness in a multilingual environment | |
WO2000068836A2 (en) | Methods for managing the distribution of client bits to client computers | |
US8782636B2 (en) | Information processing apparatus, control method thereof, and program | |
CN110597545B (en) | Hot patch Ding Zhineng upgrading method and system based on OTA component | |
US11113044B2 (en) | Information processing apparatus and non-transitory computer readable medium storing program | |
CN112346765B (en) | Application program upgrading method and device, electronic equipment and readable storage medium | |
WO2004059513A1 (en) | System for registry-based automatic installation and component handling on a device | |
CN113064611B (en) | Method for realizing data analysis software upgrading aiming at wireless equipment and updating method thereof | |
KR100429903B1 (en) | Method for updating images in home gateway system | |
KR20040052305A (en) | System and method for loading operating system for embedded system | |
KR101456389B1 (en) | Server, System and Method for Providing Game Subsidiary Program | |
US20170168806A1 (en) | Method and electronic device for mobile terminal upgrade | |
CN116860275A (en) | Client updating method, terminal device and computer readable storage medium | |
JP2009211286A (en) | Transmission system and method for managing software of transmission system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: NAPSTER LLC, NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FABBROCINO, FRANK;REEL/FRAME:016393/0986 Effective date: 20050311 |
|
AS | Assignment |
Owner name: RHAPSODY INTERNATIONAL INC., WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:NAPSTER, INC.;NAPSTER, LLC;REEL/FRAME:027776/0980 Effective date: 20111130 |
|
AS | Assignment |
Owner name: WESTERN ALLIANCE BANK, CALIFORNIA Free format text: SECURITY INTEREST;ASSIGNOR:RHAPSODY INTERNATIONAL INC.;REEL/FRAME:036652/0155 Effective date: 20150923 |
|
AS | Assignment |
Owner name: HORIZON TECHNOLOGY FINANCE CORPORATION, CONNECTICU Free format text: SECURITY INTEREST;ASSIGNOR:RHAPSODY INTERNATIONAL INC.;REEL/FRAME:036700/0962 Effective date: 20150923 |
|
ZAAA | Notice of allowance and fees due |
Free format text: ORIGINAL CODE: NOA |
|
ZAAB | Notice of allowance mailed |
Free format text: ORIGINAL CODE: MN/=. |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: RHAPSODY INTERNATIONAL INC., WASHINGTON Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:HORIZON TECHNOLOGY FINANCE CORPORATION;REEL/FRAME:044512/0447 Effective date: 20170929 |
|
AS | Assignment |
Owner name: RHAPSODY INTERNATIONAL, INC., WASHINGTON Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:WESTERN ALLIANCE BANK;REEL/FRAME:043917/0613 Effective date: 20171012 |
|
AS | Assignment |
Owner name: MOON GLOW, SERIES 82 OF ALLIED SECURITY TRUST I, C Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RHAPSODY INTERNATIONAL INC.;REEL/FRAME:044078/0158 Effective date: 20171012 |
|
AS | Assignment |
Owner name: RHAPSODY INTERNATIONAL, INC., WASHINGTON Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:HORIZON TECHNOLOGY FINANCE CORPORATION;REEL/FRAME:044786/0507 Effective date: 20170929 |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.) |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FEPP | Fee payment procedure |
Free format text: SURCHARGE FOR LATE PAYMENT, LARGE ENTITY (ORIGINAL EVENT CODE: M1554); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: SECURITY INTEREST;ASSIGNOR:TWITTER, INC.;REEL/FRAME:062079/0677 Effective date: 20221027 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: SECURITY INTEREST;ASSIGNOR:TWITTER, INC.;REEL/FRAME:061804/0086 Effective date: 20221027 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., MARYLAND Free format text: SECURITY INTEREST;ASSIGNOR:TWITTER, INC.;REEL/FRAME:061804/0001 Effective date: 20221027 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20240223 |