US20030028899A1 - Multicast downloading of software and data modules and their compatibility requirements - Google Patents
Multicast downloading of software and data modules and their compatibility requirements Download PDFInfo
- Publication number
- US20030028899A1 US20030028899A1 US10/253,377 US25337702A US2003028899A1 US 20030028899 A1 US20030028899 A1 US 20030028899A1 US 25337702 A US25337702 A US 25337702A US 2003028899 A1 US2003028899 A1 US 2003028899A1
- Authority
- US
- United States
- Prior art keywords
- terminal
- module
- terminals
- version
- downloading
- 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.)
- Abandoned
Links
- 238000004891 communication Methods 0.000 claims abstract description 13
- 239000000284 extract Substances 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 2
- 230000001459 mortal effect Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008672 reprogramming Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/10—Adaptations for transmission by electrical cable
-
- A63F13/12—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
-
- 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
- G06F8/64—Retargetable
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- 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/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2355—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
- H04N21/2358—Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages for generating different versions, e.g. for different recipient devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4432—Powering on the client, e.g. bootstrap loading using setup parameters being stored locally or received from the server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/4508—Management of client data or end-user data
- H04N21/4516—Management of client data or end-user data involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/454—Content or additional data filtering, e.g. blocking advertisements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/654—Transmission by server directed to the client
- H04N21/6547—Transmission by server directed to the client comprising parameters, e.g. for client setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
- H04N21/8173—End-user applications, e.g. Web browser, game
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
- H04N21/8402—Generation or processing of descriptive data, e.g. content descriptors involving a version number, e.g. version number of EPG data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/162—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
- H04N7/165—Centralised control of user terminal ; Registering at central
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17345—Control of the passage of the selected programme
- H04N7/17354—Control of the passage of the selected programme in an intermediate station common to a plurality of user terminals
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/40—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
- A63F2300/409—Data transfer via television network
Definitions
- This invention relates generally to systems for downloading software and data modules into terminals over a network, such as home communication terminals (HCTs) in a cable television network. More specifically, the invention provides an apparatus and method for selectively downloading different versions of software modules and data modules to a variety of potentially different terminal types, where the differences may be due to variations in hardware, operating system versions, or other parameters.
- HCTs home communication terminals
- HCTs For example, in a cable television network, some subscribers may have the newest HCT model with fast processors, special peripherals and extra memory, while other subscribers may have older HCTs which do not have such interfaces or capabilities. Additionally, some HCTs may be loaded with the latest version of an operating system, while others may be compatible only with older versions of the operating system. Similarly, HCTs from different suppliers with different designs generally require different versions of software. In such systems, multiple versions of software and data must be downloaded. Thus arises a problem in determining which versions of particular modules should be downloaded into each terminal, and providing an efficient scheme for doing so.
- the present invention solves the aforementioned problems by providing a system and method for selectively downloading software and data modules to terminals in a network without requiring communication between the terminal and the downloading source.
- modules as used herein includes application programs, subparts of programs, operating systems, “patches”, data tables, groups of interpretable instructions, and the like.
- an authoring source generates a plurality of module versions according to different terminal configurations, operating system versions, or other hardware parameters such as memory size.
- Each different module version has accompanying descriptor information which identifies the compatibility requirements and/or interfaces needed to support the module.
- a transmitting (downloading) source such as a headend facility transmits, to a plurality of terminals, descriptors which correlate each module version with its required interfaces.
- Each terminal receives the. transmitted descriptors and, by comparing the descriptors with an internal configuration table, selects the “best” module version for that terminal.
- the actual module may be downloaded in a “carousel” channel which continuously broadcasts all the various versions of modules in a loop, or it may be downloaded by other means such as an in-band channel.
- each terminal may automatically extract the descriptors upon boot-up to automatically find the most recent version of the operating system to be downloaded for the terminal.
- each terminal may extract the descriptors after a user selects an application program.
- FIG. 1 shows one possible configuration for a home communication terminal (HCT) on which various principles of the present invention may be practiced.
- HCT home communication terminal
- FIG. 2 depicts a system employing various principles of the invention including an authoring source 201 , a transmitting source 202 , and a plurality of terminals 203 and 204 for receiving module descriptors.
- FIG. 3 shows in more detail how information regarding different module versions may be maintained in a table T and transmitted to a plurality of terminals, each of which maintains an internal table describing its compatibility requirements.
- FIG. 4 shows various steps which may be carried out in each terminal to download the latest version of an operating system into a terminal upon boot-up.
- FIG. 5 shows various steps which may be carried out in each terminal to download a compatible module into the terminal using the transmitted descriptors.
- FIG. 1 shows a block diagram of a home communication terminal (HCT) which may be used to practice various principles of the present invention.
- the HCT may include a CPU card 100 , graphics card 101 , decoder card 102 , display panel and key pad 103 , main processing board 104 , front end 105 , tuning section 106 , and audio section 107 . It is contemplated that the inventive principles may be practiced using any suitable CPU 100 a such as a PowerPC or Motorola 68000 series, with suitable EPROM 100 c and RAM 100 b.
- any particular HCT may comprise a variety of hardware components, but different HCTs may be equipped with different compatibility requirements such as memory sizes, processor types, audio capabilities, operating system versions, interfaces, and the like.
- FIG. 2 shows a system for downloading different module versions to diverse HCTs in accordance with various aspects of the invention.
- the system 200 includes an authoring source 201 , a transmitting source 202 such as a headend, a network N such as a cable television network, and a plurality of terminals 203 and 204 such as HCTs which are coupled to the network.
- authoring source 201 may comprise one or more compilers, assemblers, loaders, debuggers and so forth represented by 201 c. Using these tools, a plurality of modules indicated generally by 201 a and 201 b may be generated, corresponding to different application programs, different versions of the same application program, tuning tables, program guides, other data tables, and the like.
- module 201 a may comprise an executable video game program compatible with HCTs which include at least 500 kilobytes of memory, while module 201 b may comprise a more elaborate version of the same program which requires at least 1 megabyte of memory (for example, it may include more sophisticated graphics or provided additional colors). While it is apparent that module 201 a may operate in HCTs configured to contain either 500 kilobytes or 1 megabyte, it is also apparent that module 201 b can only operate properly in HCTs configured to contain at least 1 megabyte of memory.
- each module 201 a and 201 b may be provided to transmitting source 202 and associated with a module identifier.
- module 202 a is associated with a module identifier A which identifies it
- module 202 b is associated with a module identifier B which identifies it.
- a compatibility requirement table T comprises entries each including a module identifier M and a list of compatibility requirements C which identify compatibility interfaces and/or capabilities required in a terminal in order for that terminal to download that module.
- module 202 a is a video game which requires 500 kilobytes of memory in an HCT
- module 202 b is another version of the same video game which requires 1 megabyte of memory to operate (e.g., suppose it has enhanced graphics as compared to module 202 a ).
- module 202 a may have a module identifier such as “Video Game X” (represented by A in table T) while module 202 b may have the same or a similar module identifier such as “Video Game X” (represented by B in table T).
- Each module identifier preferably includes location information which allows the module to be located in a data stream, for example. Alternatively, the location information may be separately stored in table T as shown in FIG. 3 and described below.
- each module identifier in table T is a list of compatibility requirements C which identifies the requirements needed to download and execute (or use) the specified module.
- the entry for module A would include a field indicating that the module requires 500 kilobytes of memory to execute, while the entry for module B would indicate 1 megabyte in this field.
- portions of table T are transmitted continuously from transmitting source 202 over network N to terminals 203 and 204 .
- each terminal receives a list of all modules, their compatibility interface requirements, and the location where each module may be found (e.g., an address in a data stream such as an MPEG transport stream, or a combination of data stream ID and identification number such as packet and table identifiers within the stream).
- Each terminal also has its own internal table which identifies its own capabilities and/or compatibility interfaces. By matching the downloadable module requirements with its own internal capabilities, each terminal can determine what version of the video game application to download and where to find it, such as the location within a data carousel or other structure.
- the actual downloading procedure may be accomplished by selectively extracting the module from a separate channel on which transmitting source 202 continuously broadcasts all versions of all the modules in a loop, or by other means.
- each terminal may download the correct version of software and/or data from transmitting source 202 without making a request to source 202 .
- each terminal may include an internal table such as table 203 a in terminal 203 .
- Table 203 may identify the manufacturer's model number of the terminal, the version number of the currently executing operating system, the amount of memory currently installed, and the current hardware configuration (for example, interface type such as Ethernet, etc.).
- CPU RAM indicating the amount of optional CPU memory installed
- CPU flash indicating the amount of optional CPU flash memory installed
- MPEG RAM indicating the amount of MPEG video decoder memory installed
- graphics RAM indicating the amount of graphics RAM installed
- available CPU RAM the amount of available CPU memory installed, or largest loadable block
- FIG. 3 shows in additional detail how entries in compatibility requirements table T may be configured to describe the terminal capabilities required to download each module from downloading source 302 .
- module descriptors refers to the group of compatibility requirements associated with a particular version of a module. Compatibility requirements table T thus correlates module identifiers (and their addresses) with capabilities required to download the module. Each of the actual modules is preferably associated with a module identifier in table T, which is in turn associated with module descriptors. Other arrangements are of course possible, and the table configuration shown in FIG. 3 is not intended to be limiting. Entries could of course be combined or associated in ways other than that specifically illustrated.
- each module can have associated therewith descriptors for a hardware manufacturer 306 , hardware model number 307 , operating system manufacturer 308 , operating system version 309 , memory capacity 310 , audio or other type of card manufacturer 311 , and audio or other type of card model number 312 .
- location information 320 may be associated with each module to indicate the location from which the module may be downloaded (for example, a channel number with other associated parameters, an MPEG stream number, or the like).
- the descriptors shown in FIG. 3 are intended to be exemplary and in no way limiting. More or fewer descriptors could of course be included, such as network subsystems, encoding/decoding options, encryption/decryption options, modulation techniques, data formats, and the like.
- FIG. 3 for example, two versions of a video game application known as “Mortal Combat” are shown, each having different module descriptors.
- a terminal In order to download the first version of “Mortal Combat”, a terminal must be compatible with hardware manufacturer A, model number greater than or equal to 1.0, must be executing an operating system manufactured by company X having a version number of 2.0 or greater, must have at least 500 kilobytes of memory, and must have an audio card manufactured by manufacturer C with a model number of 2.2 or greater. If a terminal in the system meets all these requirements, it is assured that the indicated version of the application is compatible with the terminal. If, however, any one of the capabilities in the list fails to match the terminal's capabilities, the application is presumed to be not compatible with the terminal.
- the second entry also indicated as “Mortal Combat”, has similar compatibility requirements, but requires a higher hardware model number (2.0 or greater), a higher operating system version (3.1 or greater), at least 1 megabyte of memory, and an audio card within a range of audio cards manufactured by C (e.g., models 2.2 through 3.0).
- table T three versions of a video game entitled “Asteroids” are described in table T, including versions which can operate across different terminal hardware manufacturers, operating system manufacturers, and audio cards. Two versions of a chess video game are also shown, neither of which requires an audio card (note “Don't Care” entries). The final entry depicts a data table which can be downloaded by any terminal which includes an operating system manufactured by X; no other capabilities or interfaces are required.
- One or more fields may be included in table T which specify how the comparison between module descriptors and terminal capabilities is to be carried out.
- a field can be included which, when set to a first value, indicates that the model and version number of the terminal must exactly match the model number and version number of the module; when set to a second value, indicates that the model numbers must match exactly but that the module operating system version number must be equal to or greater than the version number of the terminal; when set to a third value, indicates that both the model number and operating system version numbers of the terminal must be equal to or greater than the model number and version number of the module.
- the comparison qualifiers are illustrated as being combined with the compatibility requirement values in each field.
- a plurality of modules may be concatenated into a data stream 305 which is continuously transmitted on a “carousel” type channel, such as an out-of-band channel or an in-band channel (indeed, the same transmission channel could be used to transmit the descriptor table T).
- a “carousel” type channel such as an out-of-band channel or an in-band channel (indeed, the same transmission channel could be used to transmit the descriptor table T).
- Other techniques of transmitting data containing the downloadable modules are of course possible, and the invention is not intended to be limited in this respect.
- each terminal includes an internal table such as table 313 a including entries which at least overlap with entries in table T.
- a computer program or other mechanism 313 b receives table T from the transmitting source 302 and compares entries in table T with the entry in the internal table for that terminal in order to select a compatible software module to be downloaded.
- Each terminal may extract information from table T at boot-up time, or upon initiation of a particular program, or at any other time. For example, each terminal may operate mechanism 313 b upon boot-up to determine whether a newer version of the operating system is available for downloading. (In such a case, the operating system version entry in table T would not be compared, since the module to be downloaded is the operating system itself, and, as such, it does not require the previously loaded operating system for compatibility with the terminal).
- terminal 313 includes an internal table 313 a which indicates that the terminal is presently configured as being manufactured by hardware manufacturer A, model 1.0, and executing an operating system manufactured by X, version 2.0. Additionally, terminal 313 includes 1 megabyte of memory and audio card model 2.2 manufactured by manufacturer C. Terminals 314 through 316 include similar tables. Note that terminal 316 does not have an audio card.
- download mechanism 313 b extracts descriptor table T from the network and locates the two versions of the requested “Mortal Combat” video game in the table. By comparing the two version descriptors with the compatibility requirements of terminal 313 , terminal 313 determines that only the first version of the game can be downloaded, because the second version requires a hardware model number of 2.0 or greater, which is not compatible with the entries in table 313 a.
- the terminal entry in table 313 a satisfies the criteria described in the first entry of table T, it can and does download that version of “Mortal Combat” from module data stream 305 , without requiring any requests to downloading source 302 .
- Terminal 313 can extract the proper version of “Mortal Combat” by virtue of an association between its module name in table T with an address in data stream 305 .
- terminal 315 needs to download the video game “Asteroids”.
- the first version cannot be downloaded by terminal 315 because it is only compatible with terminals manufactured by manufacturer A.
- either of the second two versions would be compatible with the requirements included in table 315 a, the only difference being that the second version requires only 500 kilobytes to be downloaded, while the third version requires 1 megabyte.
- terminal mechanism 315 b may select the “best” version, which would presumably correspond to the 1 megabyte version (i.e., it is the version having the highest degree of match).
- any of terminals 313 , 314 and 315 may download the data table (last entry in table T), but that terminal 316 , which executes an operating system manufactured by manufacturer Z, is not compatible with the data table.
- each terminal can select for itself—without communicating to downloading source 302 —which of several versions of a software or data module can be downloaded into that terminal.
- FIG. 4 shows steps which may be executed by each terminal in order to automatically upgrade the operating system to the latest version upon boot-up or other initialization sequence.
- the terminal boots up or otherwise commences an initialization sequence. This could occur upon power-up, for example, or upon receiving a command from the network.
- step 402 the terminal receives the module descriptor table from the network from a known channel and location.
- step 403 the terminal compares all the operating system modules in the received descriptor table which are compatible with the particular hardware configuration of the terminal (e.g., it matches terminal manufacturer, model, operating system manufacturer, and memory). Based on the comparison between the operating system modules in the received table and the hardware parameters in its internal configuration table, the terminal finds the highest operating system version number which is compatible with the terminal's hardware parameters.
- step 404 a comparison is made between the highest compatible operating system version number available in the received descriptor table and the currently executing operating system version number in the terminal. If the highest available operating system version is less than or equal to the version currently executing in the terminal, then in step 405 the terminal continues its normal processing. However, if a newer (higher) version of the operating system is available, in step 406 the terminal downloads the newer version from the download data stream, and reboots the terminal in step 407 to install the newer version.
- the downloading in step 406 can be accomplished by tuning to a “carousel” channel and locating the newest operating system version according to its address in the data channel (the module address can be extracted from the descriptor table).
- step 404 instead of determining whether a newer version of the operating system is available, the terminal could instead make a determination that the currently loaded operating system is corrupted or otherwise not suitable. In such a circumstance, the terminal could automatically obtain the latest version of the operating system by locating and downloading it from the data stream. Instructions to execute the steps shown in FIG. 4 could be installed into ROM to prevent erasure or corruption.
- FIG. 5 shows how a terminal may download an application module or data module in response to selecting an application, whether by user input or other means (e.g., the operating system may select a program or data table for a purpose).
- an application module such as a video game, a stock market tool, a billing program, or the like
- a data module such as a tuning table, operating system parameter table, screen icon or the like
- the terminal extracts the module descriptor table from the network at a known channel and location.
- the terminal finds the “best” version of the selected application or data module in the received descriptor table which is compatible with the terminal's capabilities and interfaces. This may include checking all of the fields shown in FIG. 3, a subset of these fields, or additional fields.
- step 504 a comparison is (optionally) made between the “best” located version of the selected module and any currently loaded version (if any) of the module in the terminal. If a currently loaded version of the module is already the “best” version for the terminal, then in step 505 the currently loaded version is executed. However, if a newer version (or a version not currently loaded) is available, then in step 506 the specified version of the module is downloaded from the network. Thereafter, in step 507 , the application is executed or the downloaded data module is accessed.
- step 501 instead of an application or data module being “selected”, the terminal may perform an equivalent step by terminating an existing application.
- the terminal may perform an equivalent step by terminating an existing application.
- the terminal could automatically execute the steps shown in FIG. 5 to determine if a newer version of the navigator program were available. Such a case might occur where new features were added to a main menu, for example.
- the terminal could free up memory areas if needed before downloading newer modules.
- the module descriptors and download data stream could be transmitted periodically, continuously, or aperiodically, using either in-band techniques, out-of-band techniques, or over a combination of channels.
- Either the module descriptor table, the downloaded modules, or both, could be compressed, encoded, encrypted, or otherwise manipulated prior to transmission.
- different modules to be downloaded could be transmitted over different channels, and the descriptor table could include an identifier indicating where the downloadable module could be found.
- An authentication function can be provided in each terminal to ensure that only authenticated modules are downloaded into the terminal.
- the term “network” is intended to include satellite transmission networks, radio transmission means, and other communication media. It is, therefore, to be understood that within the scope of the appended claims the invention may be practiced otherwise than as specifically described.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Stored Programmes (AREA)
Abstract
Description
- 1. Technical Field
- This invention relates generally to systems for downloading software and data modules into terminals over a network, such as home communication terminals (HCTs) in a cable television network. More specifically, the invention provides an apparatus and method for selectively downloading different versions of software modules and data modules to a variety of potentially different terminal types, where the differences may be due to variations in hardware, operating system versions, or other parameters.
- 2. Related Information
- Systems capable of downloading computer software into terminals such as HCTs in a subscription television system are well known. For example, U.S. Pat. No. 5,440,632, entitled “Reprogrammable Subscriber Terminal”, describes a system including means for reprogramming subscriber terminals by downloading code in a series of transactions. Such systems can be used to add new applications, or to replace outdated or faulty software. Difficulties and inefficiencies may arise, however, in networks having different types of terminals which require different versions of software.
- For example, in a cable television network, some subscribers may have the newest HCT model with fast processors, special peripherals and extra memory, while other subscribers may have older HCTs which do not have such interfaces or capabilities. Additionally, some HCTs may be loaded with the latest version of an operating system, while others may be compatible only with older versions of the operating system. Similarly, HCTs from different suppliers with different designs generally require different versions of software. In such systems, multiple versions of software and data must be downloaded. Thus arises a problem in determining which versions of particular modules should be downloaded into each terminal, and providing an efficient scheme for doing so.
- One possible method for solving the aforementioned problem is to provide each terminal with means for requesting only a particular version of a module from the headend. Unfortunately, such a scheme requires two-way communication between the terminals and the headend, which may be expensive and inefficient to provide, particularly since each terminal would require, at least temporarily, a dedicated channel for transmitting the requested version of the software or data.
- Other downloading schemes involving client-server paradigms in a network environment are also known. For example, in a network comprising a server and a plurality of clients, any particular client on the network requiring a new or updated software module can download such software by making a request to the server, which provides the requested version over the network. However, as noted above, in networks such as subscription television systems, such two-way communication may be expensive and difficult to provide, and may result in increased complexity and reduced download performance. Furthermore, it may be difficult to coordinate version numbers among different software applications, complicating the task of determining which versions of complementary software should be downloaded into a particular terminal.
- Finally, systems which require communication between the downloading source and each terminal impose additional processing requirements upon the downloading source and on the terminal. In a network comprising hundreds of thousands of terminals and a single downloading source, such added processing can slow down the system unacceptably.
- The above-described problems will likely worsen as the variety of HCTs expands to provide consumers with a wider range of terminals of varying capabilities and prices, and from multiple suppliers with different designs.
- Accordingly, in order to overcome the above and other difficulties, a means of selectively downloading software and data modules without requiring two-way client-server communication is desirable. To date, no such suitable approach has been developed.
- The present invention solves the aforementioned problems by providing a system and method for selectively downloading software and data modules to terminals in a network without requiring communication between the terminal and the downloading source. The term “modules” as used herein includes application programs, subparts of programs, operating systems, “patches”, data tables, groups of interpretable instructions, and the like.
- According to various aspects of the invention, an authoring source generates a plurality of module versions according to different terminal configurations, operating system versions, or other hardware parameters such as memory size. Each different module version has accompanying descriptor information which identifies the compatibility requirements and/or interfaces needed to support the module. A transmitting (downloading) source such as a headend facility transmits, to a plurality of terminals, descriptors which correlate each module version with its required interfaces. Each terminal receives the. transmitted descriptors and, by comparing the descriptors with an internal configuration table, selects the “best” module version for that terminal. The actual module may be downloaded in a “carousel” channel which continuously broadcasts all the various versions of modules in a loop, or it may be downloaded by other means such as an in-band channel.
- According to another aspect of the invention, each terminal may automatically extract the descriptors upon boot-up to automatically find the most recent version of the operating system to be downloaded for the terminal.
- According to yet another aspect of the invention, each terminal may extract the descriptors after a user selects an application program.
- Other features and advantages will become apparent through the following detailed description, the drawings, and the appended claims.
- FIG. 1 shows one possible configuration for a home communication terminal (HCT) on which various principles of the present invention may be practiced.
- FIG. 2 depicts a system employing various principles of the invention including an
authoring source 201, a transmittingsource 202, and a plurality ofterminals - FIG. 3 shows in more detail how information regarding different module versions may be maintained in a table T and transmitted to a plurality of terminals, each of which maintains an internal table describing its compatibility requirements.
- FIG. 4 shows various steps which may be carried out in each terminal to download the latest version of an operating system into a terminal upon boot-up.
- FIG. 5 shows various steps which may be carried out in each terminal to download a compatible module into the terminal using the transmitted descriptors.
- FIG. 1 shows a block diagram of a home communication terminal (HCT) which may be used to practice various principles of the present invention. The HCT may include a
CPU card 100,graphics card 101,decoder card 102, display panel andkey pad 103,main processing board 104,front end 105,tuning section 106, andaudio section 107. It is contemplated that the inventive principles may be practiced using anysuitable CPU 100 a such as a PowerPC or Motorola 68000 series, with suitable EPROM 100 c andRAM 100 b. It is also contemplated that application programs executing onCPU 100 a can interact with various peripherals such as a mouse, game controllers, keypads, network interfaces, and the like, as is well known in the art. In summary, any particular HCT may comprise a variety of hardware components, but different HCTs may be equipped with different compatibility requirements such as memory sizes, processor types, audio capabilities, operating system versions, interfaces, and the like. - FIG. 2 shows a system for downloading different module versions to diverse HCTs in accordance with various aspects of the invention. In FIG. 2, the
system 200 includes anauthoring source 201, a transmittingsource 202 such as a headend, a network N such as a cable television network, and a plurality ofterminals authoring source 201 may comprise one or more compilers, assemblers, loaders, debuggers and so forth represented by 201 c. Using these tools, a plurality of modules indicated generally by 201 a and 201 b may be generated, corresponding to different application programs, different versions of the same application program, tuning tables, program guides, other data tables, and the like. - As one example,
module 201 a may comprise an executable video game program compatible with HCTs which include at least 500 kilobytes of memory, whilemodule 201 b may comprise a more elaborate version of the same program which requires at least 1 megabyte of memory (for example, it may include more sophisticated graphics or provided additional colors). While it is apparent thatmodule 201 a may operate in HCTs configured to contain either 500 kilobytes or 1 megabyte, it is also apparent thatmodule 201 b can only operate properly in HCTs configured to contain at least 1 megabyte of memory. - In accordance with various embodiments of the invention, each
module source 202 and associated with a module identifier. For example,module 202 a is associated with a module identifier A which identifies it, whilemodule 202 b is associated with a module identifier B which identifies it. A compatibility requirement table T comprises entries each including a module identifier M and a list of compatibility requirements C which identify compatibility interfaces and/or capabilities required in a terminal in order for that terminal to download that module. - Continuing with the example in FIG. 2, suppose that
module 202 a is a video game which requires 500 kilobytes of memory in an HCT, whilemodule 202 b is another version of the same video game which requires 1 megabyte of memory to operate (e.g., suppose it has enhanced graphics as compared tomodule 202 a). Thus,module 202 a may have a module identifier such as “Video Game X” (represented by A in table T) whilemodule 202 b may have the same or a similar module identifier such as “Video Game X” (represented by B in table T). Each module identifier preferably includes location information which allows the module to be located in a data stream, for example. Alternatively, the location information may be separately stored in table T as shown in FIG. 3 and described below. - Associated with each module identifier in table T is a list of compatibility requirements C which identifies the requirements needed to download and execute (or use) the specified module. For example, the entry for module A would include a field indicating that the module requires 500 kilobytes of memory to execute, while the entry for module B would indicate 1 megabyte in this field.
- In accordance with various embodiments of the invention, portions of table T are transmitted continuously from transmitting
source 202 over network N toterminals source 202 continuously broadcasts all versions of all the modules in a loop, or by other means. In accordance with the foregoing, each terminal may download the correct version of software and/or data from transmittingsource 202 without making a request tosource 202. - As shown in FIG. 2, each terminal may include an internal table such as table203 a in
terminal 203. Table 203 may identify the manufacturer's model number of the terminal, the version number of the currently executing operating system, the amount of memory currently installed, and the current hardware configuration (for example, interface type such as Ethernet, etc.). - Other fields may also be included, such as CPU RAM (indicating the amount of optional CPU memory installed), CPU flash (indicating the amount of optional CPU flash memory installed), MPEG RAM (indicating the amount of MPEG video decoder memory installed), graphics RAM (indicating the amount of graphics RAM installed), available CPU RAM (the amount of available CPU memory installed, or largest loadable block), or the like.
- If a terminal is upgraded to include additional memory or other capabilities, the terminal's internal table would be correspondingly updated.
- FIG. 3 shows in additional detail how entries in compatibility requirements table T may be configured to describe the terminal capabilities required to download each module from downloading
source 302. The term “module descriptors” as used herein refers to the group of compatibility requirements associated with a particular version of a module. Compatibility requirements table T thus correlates module identifiers (and their addresses) with capabilities required to download the module. Each of the actual modules is preferably associated with a module identifier in table T, which is in turn associated with module descriptors. Other arrangements are of course possible, and the table configuration shown in FIG. 3 is not intended to be limiting. Entries could of course be combined or associated in ways other than that specifically illustrated. - As shown in FIG. 3, each module can have associated therewith descriptors for a
hardware manufacturer 306,hardware model number 307,operating system manufacturer 308,operating system version 309, memory capacity 310, audio or other type of card manufacturer 311, and audio or other type of card model number 312. Additionally,location information 320 may be associated with each module to indicate the location from which the module may be downloaded (for example, a channel number with other associated parameters, an MPEG stream number, or the like). The descriptors shown in FIG. 3 are intended to be exemplary and in no way limiting. More or fewer descriptors could of course be included, such as network subsystems, encoding/decoding options, encryption/decryption options, modulation techniques, data formats, and the like. - As shown in FIG. 3, for example, two versions of a video game application known as “Mortal Combat” are shown, each having different module descriptors. In order to download the first version of “Mortal Combat”, a terminal must be compatible with hardware manufacturer A, model number greater than or equal to 1.0, must be executing an operating system manufactured by company X having a version number of 2.0 or greater, must have at least 500 kilobytes of memory, and must have an audio card manufactured by manufacturer C with a model number of 2.2 or greater. If a terminal in the system meets all these requirements, it is assured that the indicated version of the application is compatible with the terminal. If, however, any one of the capabilities in the list fails to match the terminal's capabilities, the application is presumed to be not compatible with the terminal.
- The second entry, also indicated as “Mortal Combat”, has similar compatibility requirements, but requires a higher hardware model number (2.0 or greater), a higher operating system version (3.1 or greater), at least 1 megabyte of memory, and an audio card within a range of audio cards manufactured by C (e.g., models 2.2 through 3.0).
- Similarly, three versions of a video game entitled “Asteroids” are described in table T, including versions which can operate across different terminal hardware manufacturers, operating system manufacturers, and audio cards. Two versions of a chess video game are also shown, neither of which requires an audio card (note “Don't Care” entries). The final entry depicts a data table which can be downloaded by any terminal which includes an operating system manufactured by X; no other capabilities or interfaces are required.
- One or more fields may be included in table T which specify how the comparison between module descriptors and terminal capabilities is to be carried out. For example, a field can be included which, when set to a first value, indicates that the model and version number of the terminal must exactly match the model number and version number of the module; when set to a second value, indicates that the model numbers must match exactly but that the module operating system version number must be equal to or greater than the version number of the terminal; when set to a third value, indicates that both the model number and operating system version numbers of the terminal must be equal to or greater than the model number and version number of the module. Other variations are of course possible. As shown in FIG. 3, for example, the comparison qualifiers are illustrated as being combined with the compatibility requirement values in each field.
- A plurality of modules may be concatenated into a
data stream 305 which is continuously transmitted on a “carousel” type channel, such as an out-of-band channel or an in-band channel (indeed, the same transmission channel could be used to transmit the descriptor table T). Other techniques of transmitting data containing the downloadable modules are of course possible, and the invention is not intended to be limited in this respect. - Four
terminals 313 through 316 are illustrated in FIG. 3 as being coupled to network N. In accordance with various aspects of the invention, table T may be transmitted continuously over network N to all terminals, which receive the table and extract information therefrom to determine which modules are compatible with the terminal. In order to accomplish this, each terminal includes an internal table such as table 313 a including entries which at least overlap with entries in table T. A computer program orother mechanism 313 b receives table T from the transmittingsource 302 and compares entries in table T with the entry in the internal table for that terminal in order to select a compatible software module to be downloaded. - Each terminal may extract information from table T at boot-up time, or upon initiation of a particular program, or at any other time. For example, each terminal may operate
mechanism 313 b upon boot-up to determine whether a newer version of the operating system is available for downloading. (In such a case, the operating system version entry in table T would not be compared, since the module to be downloaded is the operating system itself, and, as such, it does not require the previously loaded operating system for compatibility with the terminal). - As depicted in FIG. 3,
terminal 313 includes an internal table 313 a which indicates that the terminal is presently configured as being manufactured by hardware manufacturer A, model 1.0, and executing an operating system manufactured by X, version 2.0. Additionally, terminal 313 includes 1 megabyte of memory and audio card model 2.2 manufactured bymanufacturer C. Terminals 314 through 316 include similar tables. Note that terminal 316 does not have an audio card. - Suppose that the user of
terminal 313 selects the video game “Mortal Combat”, which is not currently resident interminal 313. In accordance with the invention,download mechanism 313 b extracts descriptor table T from the network and locates the two versions of the requested “Mortal Combat” video game in the table. By comparing the two version descriptors with the compatibility requirements ofterminal 313, terminal 313 determines that only the first version of the game can be downloaded, because the second version requires a hardware model number of 2.0 or greater, which is not compatible with the entries in table 313 a. Accordingly, because the terminal entry in table 313 a satisfies the criteria described in the first entry of table T, it can and does download that version of “Mortal Combat” frommodule data stream 305, without requiring any requests to downloadingsource 302. Thus, no communication is required betweenterminal 313 and downloadingsource 302 to identify and coordinate the downloading of the correct version of a video game. Terminal 313 can extract the proper version of “Mortal Combat” by virtue of an association between its module name in table T with an address indata stream 305. - As another example, suppose that terminal315 needs to download the video game “Asteroids”. Of the three versions of “Asteroids” included in table T, the first version cannot be downloaded by
terminal 315 because it is only compatible with terminals manufactured by manufacturer A. However, either of the second two versions would be compatible with the requirements included in table 315 a, the only difference being that the second version requires only 500 kilobytes to be downloaded, while the third version requires 1 megabyte. In accordance with various aspects of the invention,terminal mechanism 315 b may select the “best” version, which would presumably correspond to the 1 megabyte version (i.e., it is the version having the highest degree of match). - As yet another example, note that any of
terminals terminal 316, which executes an operating system manufactured by manufacturer Z, is not compatible with the data table. Thus, it is apparent that each terminal can select for itself—without communicating to downloadingsource 302—which of several versions of a software or data module can be downloaded into that terminal. - FIG. 4 shows steps which may be executed by each terminal in order to automatically upgrade the operating system to the latest version upon boot-up or other initialization sequence. Beginning in
step 401, the terminal boots up or otherwise commences an initialization sequence. This could occur upon power-up, for example, or upon receiving a command from the network. - In
step 402, the terminal receives the module descriptor table from the network from a known channel and location. Instep 403, the terminal compares all the operating system modules in the received descriptor table which are compatible with the particular hardware configuration of the terminal (e.g., it matches terminal manufacturer, model, operating system manufacturer, and memory). Based on the comparison between the operating system modules in the received table and the hardware parameters in its internal configuration table, the terminal finds the highest operating system version number which is compatible with the terminal's hardware parameters. - In
step 404, a comparison is made between the highest compatible operating system version number available in the received descriptor table and the currently executing operating system version number in the terminal. If the highest available operating system version is less than or equal to the version currently executing in the terminal, then instep 405 the terminal continues its normal processing. However, if a newer (higher) version of the operating system is available, instep 406 the terminal downloads the newer version from the download data stream, and reboots the terminal in step 407 to install the newer version. The downloading instep 406 can be accomplished by tuning to a “carousel” channel and locating the newest operating system version according to its address in the data channel (the module address can be extracted from the descriptor table). - In
step 404, instead of determining whether a newer version of the operating system is available, the terminal could instead make a determination that the currently loaded operating system is corrupted or otherwise not suitable. In such a circumstance, the terminal could automatically obtain the latest version of the operating system by locating and downloading it from the data stream. Instructions to execute the steps shown in FIG. 4 could be installed into ROM to prevent erasure or corruption. - FIG. 5 shows how a terminal may download an application module or data module in response to selecting an application, whether by user input or other means (e.g., the operating system may select a program or data table for a purpose). Beginning in
step 501, an application module (such as a video game, a stock market tool, a billing program, or the like) or a data module (such as a tuning table, operating system parameter table, screen icon or the like) is selected. Instep 502, the terminal extracts the module descriptor table from the network at a known channel and location. Instep 503, the terminal finds the “best” version of the selected application or data module in the received descriptor table which is compatible with the terminal's capabilities and interfaces. This may include checking all of the fields shown in FIG. 3, a subset of these fields, or additional fields. - In
step 504, a comparison is (optionally) made between the “best” located version of the selected module and any currently loaded version (if any) of the module in the terminal. If a currently loaded version of the module is already the “best” version for the terminal, then instep 505 the currently loaded version is executed. However, if a newer version (or a version not currently loaded) is available, then instep 506 the specified version of the module is downloaded from the network. Thereafter, instep 507, the application is executed or the downloaded data module is accessed. - In
step 501, instead of an application or data module being “selected”, the terminal may perform an equivalent step by terminating an existing application. Thus, for example, if a “navigator” program is normally executed by the terminal to allow a user to select from among a group of applications, then at the completion of any particular application, the terminal could automatically execute the steps shown in FIG. 5 to determine if a newer version of the navigator program were available. Such a case might occur where new features were added to a main menu, for example. Additionally, although not explicitly shown in FIG. 5, the terminal could free up memory areas if needed before downloading newer modules. - It is apparent that many modifications and variations of the present invention are possible, and references to specific values are by example only. As one example, the module descriptors and download data stream could be transmitted periodically, continuously, or aperiodically, using either in-band techniques, out-of-band techniques, or over a combination of channels. Either the module descriptor table, the downloaded modules, or both, could be compressed, encoded, encrypted, or otherwise manipulated prior to transmission. Moreover, different modules to be downloaded could be transmitted over different channels, and the descriptor table could include an identifier indicating where the downloadable module could be found. An authentication function can be provided in each terminal to ensure that only authenticated modules are downloaded into the terminal. Finally, although the invention has application to cable television networks, the term “network” is intended to include satellite transmission networks, radio transmission means, and other communication media. It is, therefore, to be understood that within the scope of the appended claims the invention may be practiced otherwise than as specifically described.
Claims (23)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/253,377 US20030028899A1 (en) | 1996-02-14 | 2002-09-24 | Multicast downloading of software and data modules and their compatibility requirements |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/601,455 US5951639A (en) | 1996-02-14 | 1996-02-14 | Multicast downloading of software and data modules and their compatibility requirements |
US09/305,179 US6487723B1 (en) | 1996-02-14 | 1999-05-04 | Multicast downloading of software and data modules and their compatibility requirements |
US10/253,377 US20030028899A1 (en) | 1996-02-14 | 2002-09-24 | Multicast downloading of software and data modules and their compatibility requirements |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/305,179 Continuation US6487723B1 (en) | 1996-02-14 | 1999-05-04 | Multicast downloading of software and data modules and their compatibility requirements |
Publications (1)
Publication Number | Publication Date |
---|---|
US20030028899A1 true US20030028899A1 (en) | 2003-02-06 |
Family
ID=24407546
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/601,455 Expired - Lifetime US5951639A (en) | 1996-02-14 | 1996-02-14 | Multicast downloading of software and data modules and their compatibility requirements |
US09/305,179 Expired - Lifetime US6487723B1 (en) | 1996-02-14 | 1999-05-04 | Multicast downloading of software and data modules and their compatibility requirements |
US10/253,377 Abandoned US20030028899A1 (en) | 1996-02-14 | 2002-09-24 | Multicast downloading of software and data modules and their compatibility requirements |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/601,455 Expired - Lifetime US5951639A (en) | 1996-02-14 | 1996-02-14 | Multicast downloading of software and data modules and their compatibility requirements |
US09/305,179 Expired - Lifetime US6487723B1 (en) | 1996-02-14 | 1999-05-04 | Multicast downloading of software and data modules and their compatibility requirements |
Country Status (6)
Country | Link |
---|---|
US (3) | US5951639A (en) |
EP (1) | EP0880857B1 (en) |
KR (1) | KR19990082617A (en) |
AU (1) | AU1693597A (en) |
DE (1) | DE69712320T2 (en) |
WO (1) | WO1997030549A1 (en) |
Cited By (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020104097A1 (en) * | 2000-05-04 | 2002-08-01 | Scientific-Atlanta, Inc | System and method for a communication terminal to manage memory and maintain a current application version for multiple applications |
US20040177368A1 (en) * | 2003-03-06 | 2004-09-09 | Wegener Communications, Inc. | Apparatus and method for addressing control in a network for distributed data |
US20040177385A1 (en) * | 2003-03-06 | 2004-09-09 | Yoo Jea Yong | Interactive medium and method for managing additional data thereof |
FR2852708A1 (en) * | 2003-03-21 | 2004-09-24 | Eprocess | Computer software components providing method for use with server network, involves sending request of loading of component to server if need for component and terminal compatible with component is detected |
US20050060754A1 (en) * | 2003-09-17 | 2005-03-17 | Wegener Communications, Inc. | Apparatus and method for distributed control of media dissemination |
US20050097441A1 (en) * | 2003-10-31 | 2005-05-05 | Herbach Jonathan D. | Distributed document version control |
US20050097061A1 (en) * | 2003-10-31 | 2005-05-05 | Shapiro William M. | Offline access in a document control system |
US20050108772A1 (en) * | 2003-11-19 | 2005-05-19 | Crinon Regis J. | Generating and managing DTV application signaling based on asset definition |
WO2005048102A1 (en) * | 2003-11-13 | 2005-05-26 | Benq Mobile Gmbh & Co. Ohg | Device and method for software management in a heterogeneous hardware system |
US20050198564A1 (en) * | 2004-02-27 | 2005-09-08 | Werner Sinzig | Data processing system and method of data entry |
WO2006003177A2 (en) * | 2004-06-30 | 2006-01-12 | Siemens Aktiengesellschaft | Method and apparatus for downloading a plurality of images |
WO2006013204A1 (en) * | 2004-08-04 | 2006-02-09 | Thomson Licensing | Method for updating resident software in different appliances and appliances adapted to be updated by same |
WO2006040222A2 (en) * | 2004-10-12 | 2006-04-20 | Siemens Aktiengesellschaft | Method and device for embedded systems, particularly reconfigurable mobile radio terminals, with loadable software modules |
EP1798640A1 (en) * | 2005-12-19 | 2007-06-20 | LG Electronics Inc. | Apparatuses and methods for receiving software |
US20070143812A1 (en) * | 2005-12-19 | 2007-06-21 | Hyun Sik Choi | Apparatus for receiving cable broadcast data and method for transmitting/ receiving cable broadcast software |
US20070180532A1 (en) * | 2006-02-01 | 2007-08-02 | Cha Sang H | Broadcast receiver, data structure and method for providing diagnostic information |
US20070263716A1 (en) * | 2006-05-10 | 2007-11-15 | Himax Technologies, Inc. | Digital video broadcasting method for updating firmware image of digital set-top box or digital television |
EP1863286A1 (en) | 2006-06-01 | 2007-12-05 | LG Electronics Inc. | Broadcast receiver and method for providing diagnostic information |
WO2008001216A1 (en) * | 2006-06-29 | 2008-01-03 | Falconstor, Inc. | System and method for downloading information |
US20080077681A1 (en) * | 2006-09-26 | 2008-03-27 | Samsung Electronics Co., Ltd. | Method and apparatus for upgrading software of digital broadcasting receiver |
US20080115189A1 (en) * | 2006-11-10 | 2008-05-15 | Stephane Lejeune | TV-centric system |
US20080134165A1 (en) * | 2006-12-01 | 2008-06-05 | Lori Anderson | Methods and apparatus for software provisioning of a network device |
US20090040093A1 (en) * | 2007-06-06 | 2009-02-12 | Sandor Holly | Method and apparatus for using collimated and linearly polarized millimeter wave beams at brewster's angle of incidence in ground penetrating radar to detect objects located in the ground |
US20090198712A1 (en) * | 2008-02-06 | 2009-08-06 | Sims Iii John Benjamin | Metadata for software aircraft parts |
US20090198393A1 (en) * | 2008-02-06 | 2009-08-06 | Sims Iii John Benjamin | Method and apparatus for loading software aircraft parts |
US20100146553A1 (en) * | 2008-12-05 | 2010-06-10 | Qualcomm Incorporated | Enhanced method and apparatus for enhancing support for service delivery |
US20110072423A1 (en) * | 2009-09-18 | 2011-03-24 | Yamaha Corporation | Firmware update apparatus and program |
CN102111429A (en) * | 2009-12-28 | 2011-06-29 | 日立民用电子株式会社 | Content distribution method and content reception device |
US20110158606A1 (en) * | 2009-12-31 | 2011-06-30 | Lin Jason T | Storage Device and Method for Resuming Playback of Content |
US7995758B1 (en) | 2004-11-30 | 2011-08-09 | Adobe Systems Incorporated | Family of encryption keys |
US8000343B1 (en) * | 1999-08-18 | 2011-08-16 | Fujitsu, Limited | Communication device, and method of communication between communication devices and medium thereof |
US20110231150A1 (en) * | 2009-06-10 | 2011-09-22 | The Boeing Company | Difference Frequency Detection with Range Measurement |
US8054212B1 (en) | 2009-03-27 | 2011-11-08 | The Boeing Company | Multi-band receiver using harmonic synchronous detection |
US8108672B1 (en) * | 2003-10-31 | 2012-01-31 | Adobe Systems Incorporated | Transparent authentication process integration |
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 |
US8299924B2 (en) | 2007-06-06 | 2012-10-30 | The Boeing Company | Method and apparatus for locating objects using radio frequency identification |
US8832047B2 (en) | 2005-07-27 | 2014-09-09 | Adobe Systems Incorporated | Distributed document version control |
US8903669B1 (en) | 2009-03-27 | 2014-12-02 | The Boeing Company | Multi-band receiver using harmonic synchronous detection |
WO2017210175A1 (en) * | 2016-06-03 | 2017-12-07 | Ebay Inc. | Optimization of user interface data transmission |
US9942124B2 (en) | 2011-06-28 | 2018-04-10 | Time Warner Cable Enterprises Llc | Apparatus and methods for automated device testing in content distribution network |
US11400380B2 (en) * | 2017-07-31 | 2022-08-02 | Sony Interactive Entertainment Inc. | Information processing apparatus and download processing method |
Families Citing this family (281)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7168084B1 (en) | 1992-12-09 | 2007-01-23 | Sedna Patent Services, Llc | Method and apparatus for targeting virtual objects |
US9286294B2 (en) | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
USRE44685E1 (en) | 1994-04-28 | 2013-12-31 | Opentv, Inc. | Apparatus for transmitting and receiving executable applications as for a multimedia system, and method and system to order an item using a distributed computing system |
US6189030B1 (en) | 1996-02-21 | 2001-02-13 | Infoseek Corporation | Method and apparatus for redirection of server external hyper-link references |
US6643506B1 (en) * | 1996-08-07 | 2003-11-04 | Telxon Corporation | Wireless software upgrades with version control |
JP3671543B2 (en) * | 1996-09-10 | 2005-07-13 | ソニー株式会社 | Data transmission method, data transmission device, data reception device parameter setting method, data reception device, and data transmission system |
JPH10301788A (en) * | 1997-04-30 | 1998-11-13 | Sony Corp | Data communication system and method therefor and data receiving device and method therefor |
US6049830A (en) * | 1997-05-13 | 2000-04-11 | Sony Corporation | Peripheral software download of a broadcast receiver |
JP3529588B2 (en) * | 1997-05-30 | 2004-05-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Computer network system, computer, computer for temporary storage, and method in these |
FR2764392B1 (en) * | 1997-06-04 | 1999-08-13 | Sgs Thomson Microelectronics | METHOD FOR IDENTIFYING AN INTEGRATED CIRCUIT AND ASSOCIATED DEVICE |
US6337715B1 (en) * | 1997-07-04 | 2002-01-08 | Matsushita Electric Industrial Co., Ltd. | Broadcasting reception apparatus and data broadcasting method |
US6205473B1 (en) * | 1997-10-03 | 2001-03-20 | Helius Development Corporation | Method and system for asymmetric satellite communications for local area networks |
JP3567696B2 (en) * | 1997-09-24 | 2004-09-22 | 松下電器産業株式会社 | Software download system |
US6928653B1 (en) | 1997-11-06 | 2005-08-09 | United Video Properties, Inc. | Interactive electronic television program guide with database configurability |
FR2771884B1 (en) * | 1997-12-02 | 1999-12-31 | Thomson Multimedia Sa | METHOD FOR MANAGING SERVICE INFORMATION IN A DIGITAL TELEVISION SYSTEM AND RECEIVER IMPLEMENTING SAID METHOD |
AU1815399A (en) * | 1997-12-12 | 1999-07-05 | General Instrument Corporation | Method and apparatus for providing demand-based application downloading via an in-band channel to a set-top terminal |
JPH11194943A (en) * | 1997-12-26 | 1999-07-21 | Matsushita Electric Ind Co Ltd | Transmitter and receiver |
US6567855B1 (en) * | 1998-01-02 | 2003-05-20 | Intel Corporation | Portable processing system with always on, always connected capability |
US7032236B1 (en) | 1998-02-20 | 2006-04-18 | Thomson Licensing | Multimedia system for processing program guides and associated multimedia objects |
BR9908066B1 (en) * | 1998-02-20 | 2013-12-03 | MULTIMEDIA SYSTEM FOR ADAPTABLELY FORMING AND PROCESSING EXPANSIVE PROGRAM GUIDES. | |
US6792245B1 (en) * | 1998-04-10 | 2004-09-14 | Sony Computer Entertainment Inc. | Information reproducing apparatus and broadcasting system |
US7117518B1 (en) * | 1998-05-14 | 2006-10-03 | Sony Corporation | Information retrieval method and apparatus |
US6735625B1 (en) | 1998-05-29 | 2004-05-11 | Cisco Technology, Inc. | System and method for automatically determining whether a product is compatible with a physical device in a network |
US6427238B1 (en) | 1998-05-29 | 2002-07-30 | Opentv, Inc. | Module manager for interactive television system |
US7993194B1 (en) * | 1998-06-18 | 2011-08-09 | Aristocrat Technologies Australia Pty Limited | Method of linking devices to gaming machines |
AU4169099A (en) * | 1998-06-19 | 2000-01-05 | Matsushita Electric Industrial Co., Ltd. | Data transmitting/receiving method and device, and program recorded medium |
US6237053B1 (en) | 1998-06-30 | 2001-05-22 | Symbol Technologies, Inc. | Configurable operating system having multiple data conversion applications for I/O connectivity |
US9924234B2 (en) | 1998-07-23 | 2018-03-20 | Comcast Ip Holdings I, Llc | Data structure and methods for providing an interactive program |
US6754905B2 (en) | 1998-07-23 | 2004-06-22 | Diva Systems Corporation | Data structure and methods for providing an interactive program guide |
KR100655248B1 (en) | 1998-07-23 | 2006-12-08 | 세드나 페이턴트 서비시즈, 엘엘씨 | Interactive user interface |
JP2000047968A (en) * | 1998-07-31 | 2000-02-18 | Sony Computer Entertainment Inc | Device, method and system for processing information, terminal and method for receiving data, and data broadcasting system |
US6430165B1 (en) | 1998-08-07 | 2002-08-06 | Hughes Electronics Corporation | Method and apparatus for performing satellite selection in a broadcast communication system |
US6198511B1 (en) * | 1998-09-10 | 2001-03-06 | Intel Corporation | Identifying patterns in closed caption script |
US6636896B1 (en) | 1998-09-11 | 2003-10-21 | Lv Partners, L.P. | Method and apparatus for utilizing an audibly coded signal to conduct commerce over the internet |
US7379901B1 (en) | 1998-09-11 | 2008-05-27 | Lv Partners, L.P. | Accessing a vendor web site using personal account information retrieved from a credit card company web site |
US7440993B1 (en) | 1998-09-11 | 2008-10-21 | Lv Partners, L.P. | Method and apparatus for launching a web browser in response to scanning of product information |
US6823388B1 (en) | 1998-09-11 | 2004-11-23 | L.V. Parners, L.P. | Method and apparatus for accessing a remote location with an optical reader having a programmable memory system |
US7386600B1 (en) | 1998-09-11 | 2008-06-10 | Lv Partners, L.P. | Launching a web site using a personal device |
US6745234B1 (en) | 1998-09-11 | 2004-06-01 | Digital:Convergence Corporation | Method and apparatus for accessing a remote location by scanning an optical code |
US6704864B1 (en) | 1999-08-19 | 2004-03-09 | L.V. Partners, L.P. | Automatic configuration of equipment software |
US7392945B1 (en) | 1998-09-11 | 2008-07-01 | Lv Partners, L.P. | Portable scanner for enabling automatic commerce transactions |
US6868433B1 (en) | 1998-09-11 | 2005-03-15 | L.V. Partners, L.P. | Input device having positional and scanning capabilities |
US7191247B1 (en) | 1998-09-11 | 2007-03-13 | Lv Partners, Lp | Method for connecting a wireless device to a remote location on a network |
US7206849B1 (en) | 1998-10-05 | 2007-04-17 | Symbol Technologies, Inc. | Communication in a wireless communications network when a mobile computer terminal may be unreachable |
US6488585B1 (en) * | 1998-10-14 | 2002-12-03 | International Game Technology | Gaming device identification method and apparatus |
US6805634B1 (en) * | 1998-10-14 | 2004-10-19 | Igt | Method for downloading data to gaming devices |
US6594825B1 (en) * | 1998-10-30 | 2003-07-15 | Intel Corporation | Method and apparatus for selecting a version of an entertainment program based on user preferences |
KR100587284B1 (en) * | 1999-01-14 | 2006-06-08 | 엘지전자 주식회사 | Method for PSI filtering |
JP2000259417A (en) * | 1999-03-12 | 2000-09-22 | Sony Corp | Device and method for data processing and program providing medium |
US7877290B1 (en) | 1999-03-29 | 2011-01-25 | The Directv Group, Inc. | System and method for transmitting, receiving and displaying advertisements |
US7552458B1 (en) | 1999-03-29 | 2009-06-23 | The Directv Group, Inc. | Method and apparatus for transmission receipt and display of advertisements |
US6469742B1 (en) * | 1999-04-12 | 2002-10-22 | Koninklijke Philips Electronics N.V. | Consumer electronic devices with adaptable upgrade capability |
US6904610B1 (en) | 1999-04-15 | 2005-06-07 | Sedna Patent Services, Llc | Server-centric customized interactive program guide in an interactive television environment |
US6754271B1 (en) | 1999-04-15 | 2004-06-22 | Diva Systems Corporation | Temporal slice persistence method and apparatus for delivery of interactive program guide |
US7096487B1 (en) | 1999-10-27 | 2006-08-22 | Sedna Patent Services, Llc | Apparatus and method for combining realtime and non-realtime encoded content |
CA2371144A1 (en) * | 1999-04-21 | 2000-10-26 | General Instrument Corporation | Method and system for locating a control channel and data transport stream within the signal received by a set-top box from a cable television system |
WO2000064178A1 (en) * | 1999-04-21 | 2000-10-26 | General Instrument Corporation | Method and system for targeted or universal upgrades of programming in a population of advanced set-top boxes in a cable television system |
CA2370214A1 (en) * | 1999-04-21 | 2000-10-26 | General Instrument Corporation | Automatic initialization of an advanced set-top box in a cable television system by downloading software or firmware over the cable system |
US6718374B1 (en) * | 1999-04-21 | 2004-04-06 | General Instrument Corporation | Method and system for identifying and downloading appropriate software or formware specific to a particular model of set-top box in a cable television system |
US6574795B1 (en) * | 1999-05-28 | 2003-06-03 | Intel Corporation | Reliable communication of data by supplementing a unidirectional communications protocol |
DE60033931T2 (en) * | 1999-05-28 | 2007-11-29 | Intel Corporation, Santa Clara | COMMUNICATION OF IMPROVEMENT DATA IN PROTOCOL LAYERS |
US6557172B1 (en) | 1999-05-28 | 2003-04-29 | Intel Corporation | Communicating enhancement data in layers |
AU5594400A (en) * | 1999-06-03 | 2000-12-28 | Opentv, Inc. | Networking smart toys |
JP2003502757A (en) | 1999-06-10 | 2003-01-21 | アルカテル・インターネツトワーキング・インコーポレイテツド | Policy-based network architecture |
US7032022B1 (en) | 1999-06-10 | 2006-04-18 | Alcatel | Statistics aggregation for policy-based network |
US7640571B1 (en) * | 1999-07-15 | 2009-12-29 | General Instrument Corporation | Method and apparatus for preventing disruptions in set-top terminal function due to the download of updated programming or data to the set-top terminal |
FI19991865A (en) | 1999-09-01 | 2001-03-01 | Nokia Corp | A method and system for providing customized audio capabilities to cellular system terminals |
US7032213B1 (en) * | 1999-09-01 | 2006-04-18 | Microsoft Corporation | Fixing incompatible applications using a light debugger |
US6745385B1 (en) * | 1999-09-01 | 2004-06-01 | Microsoft Corporation | Fixing incompatible applications by providing stubs for APIs |
EP1427214A3 (en) * | 1999-09-02 | 2004-12-22 | General Instrument Corporation | Method and system of identifying software and firmware objects available for download over a network such as a cable television system |
US7120926B1 (en) * | 1999-09-02 | 2006-10-10 | General Instrument Corporation | Method and system of identifying software and firmware objects available for download over a network such as a cable television system |
US6904611B1 (en) * | 1999-09-03 | 2005-06-07 | General Instrument Corporation | Method and system for directing the download of software and firmware objects over a network such as a cable television system |
US6973475B2 (en) * | 1999-09-18 | 2005-12-06 | Wildtangent | Dynamic scalable multi-media content streaming |
US6453470B1 (en) | 1999-09-30 | 2002-09-17 | General Instruments Corporation | Dynamic detection of hardware configuration in a digital terminal |
WO2001028248A1 (en) * | 1999-10-13 | 2001-04-19 | Digital Convergence.:Com Inc. | Software downloading using a television broadcast channel |
DE69907761T2 (en) * | 1999-10-22 | 2004-03-25 | General Instrument Corporation | METHOD AND DEVICE FOR MANAGING SEVERAL APPLICATION PROGRAMS IN LARGE AREA NETWORKS |
DE60002747T2 (en) * | 1999-10-22 | 2004-03-11 | General Instrument Corporation | OBJECT AND CHARACTERISTICS AUTHORIZATION FOR DIGITAL COMMUNICATION TERMINALS |
US6832323B1 (en) * | 1999-10-22 | 2004-12-14 | General Instrument Corporation | Object and feature authorization for digital communication terminals |
CA2388606C (en) | 1999-10-27 | 2009-12-29 | Diva Systems Corporation | Picture-in-picture and multiple video streams using slice-based encoding |
US6970641B1 (en) | 2000-09-15 | 2005-11-29 | Opentv, Inc. | Playback of interactive programs |
DE10048942B4 (en) * | 1999-12-01 | 2008-07-03 | International Business Machines Corp. | Method and system for maintaining software over a network |
US20020026642A1 (en) * | 1999-12-15 | 2002-02-28 | Augenbraun Joseph E. | System and method for broadcasting web pages and other information |
FR2809839A1 (en) * | 1999-12-30 | 2001-12-07 | Thomson Multimedia Sa | METHOD FOR DOWNLOADING DATA PROCESSED BY ADVERTISEMENT SIGNALS |
US20020012347A1 (en) * | 2000-02-03 | 2002-01-31 | Patrick Fitzpatrick | System and method for downloading code |
US7069578B1 (en) * | 2000-02-04 | 2006-06-27 | Scientific-Atlanta, Inc. | Settop cable television control device and method including bootloader software and code version table for maintaining and updating settop receiver operating system software |
JP2001216167A (en) * | 2000-02-04 | 2001-08-10 | Minolta Co Ltd | System consisting of main body and peripheral device |
US7330824B1 (en) | 2000-02-25 | 2008-02-12 | Navic Systems, Inc. | Method and system for content profiling and activation |
US7392281B1 (en) | 2000-02-25 | 2008-06-24 | Navic Systems, Inc. | System and method for providing guaranteed delivery of messages to embedded devices over a data network |
US6714992B1 (en) | 2000-02-25 | 2004-03-30 | Navic Systems, Inc. | Method and system for embedded network device installation |
US6845396B1 (en) | 2000-02-25 | 2005-01-18 | Navic Systems, Inc. | Method and system for content deployment and activation |
EP1260100A2 (en) * | 2000-03-01 | 2002-11-27 | Scientific-Atlanta, Inc. | System and method for a client device to load applications during initialization |
WO2001080472A2 (en) * | 2000-04-18 | 2001-10-25 | Portalplayer, Inc. | Downloaded media protocol integration system and method |
US7155713B1 (en) * | 2000-04-27 | 2006-12-26 | Microsoft Corporation | Componentized operating system |
US20010044835A1 (en) * | 2000-05-17 | 2001-11-22 | Schober Joseph Frank | Selecting content to be communicated based on automatic detection of communication bandwidth |
US7526775B2 (en) | 2000-05-17 | 2009-04-28 | Aol Llc, A Delaware Limited Liability Company | Component installation tool |
US6912711B1 (en) | 2000-05-25 | 2005-06-28 | International Business Machines Corporation | Method of applying an update to a contained collection of program and data files based upon versions |
US20020002706A1 (en) * | 2000-05-26 | 2002-01-03 | Sprunk Eric J. | Authentication and authorization epochs |
JP2002171232A (en) * | 2000-08-01 | 2002-06-14 | Matsushita Electric Ind Co Ltd | Transmitting and receiving system and transmitter/ receiver |
AU2001281088A1 (en) * | 2000-08-04 | 2002-02-18 | Marconi Communications, Inc. | System and method for implementing a redundant data storage architecture |
US6760043B2 (en) | 2000-08-21 | 2004-07-06 | Intellocity Usa, Inc. | System and method for web based enhanced interactive television content page layout |
EP1312214A2 (en) * | 2000-08-21 | 2003-05-21 | Intellocity USA, Inc. | System and method for television enhancement |
AU9127601A (en) | 2000-08-25 | 2002-03-04 | Intellocity Usa Inc | Streaming media |
US20020065950A1 (en) * | 2000-09-26 | 2002-05-30 | Katz James S. | Device event handler |
US20080201406A1 (en) * | 2000-10-16 | 2008-08-21 | Edward Balassanian | Feature manager system for facilitating communication and shared functionality among components |
US8556698B2 (en) | 2000-10-19 | 2013-10-15 | Igt | Executing multiple applications and their variations in computing environments |
US6645077B2 (en) * | 2000-10-19 | 2003-11-11 | Igt | Gaming terminal data repository and information distribution system |
US20040180721A1 (en) * | 2000-12-21 | 2004-09-16 | Igt | Gaming terminal data repository and information distribution system |
US8636596B2 (en) | 2000-11-04 | 2014-01-28 | Igt | Dynamic player notices for operational changes in gaming machines |
US9251647B2 (en) * | 2000-10-19 | 2016-02-02 | Igt | Remote configuration of gaming terminals |
US6985934B1 (en) * | 2000-10-23 | 2006-01-10 | Binham Communications Corporation | Method and system for providing rich media content over a computer network |
FR2815807A1 (en) * | 2000-10-23 | 2002-04-26 | Thomson Multimedia Sa | Receptor for interactive systems comprises selector for interactive programme, device to store programmes and device to select them subsequently |
US20020126990A1 (en) * | 2000-10-24 | 2002-09-12 | Gary Rasmussen | Creating on content enhancements |
WO2002035348A1 (en) * | 2000-10-26 | 2002-05-02 | Kreatel Communications Ab | Method and apparatus for sending information in a communication system |
US7020888B2 (en) * | 2000-11-27 | 2006-03-28 | Intellocity Usa, Inc. | System and method for providing an omnimedia package |
US7047273B2 (en) | 2000-11-28 | 2006-05-16 | Navic Systems, Inc. | Load balancing in set top cable box environment |
US20020065929A1 (en) * | 2000-11-28 | 2002-05-30 | Navic Systems Inc. | Protocol extensions to increase reliability of bulk data transmissions |
US7328231B2 (en) * | 2000-11-28 | 2008-02-05 | Navic Systems | Generating schedules for synchronizing bulk data transfers to end node devices in a multimedia network |
US20020122427A1 (en) * | 2000-11-28 | 2002-09-05 | Navic Systems, Inc. | Synchronization of bulk data transfers to end node devices in a multimedia network |
US7653743B2 (en) * | 2000-11-28 | 2010-01-26 | Microsoft Corporation | Protocol for throttling high volume messages |
US20020112175A1 (en) * | 2000-12-13 | 2002-08-15 | Makofka Douglas S. | Conditional access for functional units |
US20020112231A1 (en) * | 2000-12-13 | 2002-08-15 | Arne Lundback | Software distribution at a multi-processor telecommunications platform |
WO2002050673A2 (en) * | 2000-12-21 | 2002-06-27 | Nokia Corporation | Improvements in and relating to communication terminals |
EP1818824B1 (en) * | 2000-12-21 | 2016-07-13 | Nokia Technologies Oy | Improvements in and relating to communication terminals |
JP4622101B2 (en) * | 2000-12-27 | 2011-02-02 | ソニー株式会社 | Information processing apparatus, information processing method for information processing apparatus, and information processing system |
KR20020062022A (en) * | 2001-01-19 | 2002-07-25 | 백은옥 | Digital television receiver capable of reproducing interactive contents and broadcasting system for the contents |
US7072950B2 (en) * | 2001-01-23 | 2006-07-04 | Sony Corporation | Method and apparatus for operating system and application selection |
US7186181B2 (en) * | 2001-02-02 | 2007-03-06 | Igt | Wide area program distribution and game information communication system |
US6749510B2 (en) * | 2001-02-07 | 2004-06-15 | Wms Gaming Inc. | Centralized gaming system with modifiable remote display terminals |
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 |
JP2002259282A (en) * | 2001-02-27 | 2002-09-13 | Matsushita Electric Ind Co Ltd | Data broadcasting schedule system, and device, method, recording medium, or program concerned with the system |
US7191439B2 (en) * | 2001-02-28 | 2007-03-13 | Palmsource, Inc. | Verification of software application attributes for optimal compatibility with a software system |
JP4291467B2 (en) * | 2001-03-01 | 2009-07-08 | 株式会社ソニー・コンピュータエンタテインメント | Entertainment device, menu display method, and information recording medium |
US20020178455A1 (en) * | 2001-03-14 | 2002-11-28 | General Instrument Corporation | Dynamic movement of the control channel for broadband communication devices |
WO2002075596A2 (en) * | 2001-03-16 | 2002-09-26 | Nds Limited | Method and system for literal data access |
US7134134B2 (en) * | 2001-03-24 | 2006-11-07 | Microsoft Corporation | Electronic program guide hardware card |
US20020156877A1 (en) * | 2001-04-23 | 2002-10-24 | Lu James C. | System and method for the duplication of a software system onto an appropriate target computer |
JP2002318704A (en) * | 2001-04-24 | 2002-10-31 | Sony Corp | Electronic equipment |
GB0111008D0 (en) * | 2001-05-04 | 2001-06-27 | Koninkl Philips Electronics Nv | Recording of interactive applications |
FR2824646B1 (en) * | 2001-05-09 | 2003-08-15 | Canal Plus Technologies | METHOD FOR SELECTING AN EXECUTABLE SOFTWARE IMAGE |
EP1265133A1 (en) * | 2001-06-07 | 2002-12-11 | Siemens Aktiengesellschaft | Method for loading software on several processors |
US20030083958A1 (en) * | 2001-06-08 | 2003-05-01 | Jinshan Song | System and method for retrieving information from an electronic catalog |
US20030041336A1 (en) * | 2001-07-10 | 2003-02-27 | General Instrument Corporation | Selective downloading of specific code images to broadband terminals |
US20030028640A1 (en) * | 2001-07-30 | 2003-02-06 | Vishal Malik | Peer-to-peer distributed mechanism |
US7908628B2 (en) | 2001-08-03 | 2011-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content coding and formatting |
US7793326B2 (en) | 2001-08-03 | 2010-09-07 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator |
US7725918B2 (en) * | 2001-08-03 | 2010-05-25 | Ericsson Television Inc. | Interactive television with embedded universal time codes |
US7162036B2 (en) | 2001-08-06 | 2007-01-09 | Igt | Digital identification of unique game characteristics |
US6685567B2 (en) | 2001-08-08 | 2004-02-03 | Igt | Process verification |
GB2379579A (en) * | 2001-09-05 | 2003-03-12 | Nokia Corp | Compatibility of a game with a mobile gaming system |
EP1300761A1 (en) * | 2001-10-04 | 2003-04-09 | Brendan Tschabold | Methods for upgrading or updating data and software on computers |
FR2831378B1 (en) * | 2001-10-23 | 2004-02-27 | Sagem | SYSTEM FOR VIEWING ON A TELEVISION SCREEN A VIDEO GAME EXECUTED BY A COMPUTER |
US7085529B1 (en) | 2001-10-24 | 2006-08-01 | The Directv Group, Inc. | Method and apparatus for determining a direct-to-home satellite receiver multi-switch type |
KR100783400B1 (en) * | 2001-10-25 | 2007-12-10 | 엘지전자 주식회사 | Method for using manufacturer specific data of manufacturer information structure in digital video broadcasting |
US6811085B2 (en) * | 2001-10-26 | 2004-11-02 | Symbol Technologies, Inc. | Miniature imager |
GB2381709A (en) * | 2001-10-30 | 2003-05-07 | Graeme Roy Smith | Programmable set-top box and home gateway |
US20030172044A1 (en) * | 2001-11-06 | 2003-09-11 | Shamrao Andrew Divaker | Configuration-dependent download process |
SE0104080D0 (en) | 2001-12-05 | 2001-12-05 | Ericsson Telefon Ab L M | A method and apparatus for negotiating mobile services |
CN100592682C (en) * | 2001-12-13 | 2010-02-24 | 索尼计算机娱乐公司 | Method and device for safely assigning content of program |
AU2002366938A1 (en) * | 2001-12-14 | 2003-07-09 | Spl Innotech Pte Ltd. | System, method and apparatus for multimedia display |
ATE542325T1 (en) * | 2001-12-21 | 2012-02-15 | Sony Computer Entertainment Inc | METHOD AND DEVICE FOR SECURE DISTRIBUTION OF PROGRAM CONTENT |
GB2384066A (en) * | 2002-01-09 | 2003-07-16 | Hewlett Packard Co | Installation of software components having multiple implementations |
JP3932477B2 (en) * | 2002-01-29 | 2007-06-20 | ソニー株式会社 | Information processing system, information processing apparatus and method, and program |
FR2835384A1 (en) * | 2002-01-31 | 2003-08-01 | Thomson Licensing Sa | Mechanism for and management of audio visual recording on network calculates terminal compatibility and selects terminal with greatest compatibility to perform recording |
US20030154128A1 (en) * | 2002-02-11 | 2003-08-14 | Liga Kevin M. | Communicating and displaying an advertisement using a personal video recorder |
US7743115B2 (en) * | 2002-02-27 | 2010-06-22 | Motorola, Inc. | Software content downloading methods in radio communication networks |
JP2003256225A (en) * | 2002-03-06 | 2003-09-10 | Mitsubishi Electric Corp | Computer system, failure countermeasure and program for making computer system function |
FI20025018A (en) * | 2002-04-23 | 2003-10-24 | Nokia Corp | System for provisioning end-to-end encryption in a digital wireless data network and corresponding terminal |
US6973479B2 (en) * | 2002-05-01 | 2005-12-06 | Thales Avionics, Inc. | Method and system for configuration and download in a restricted architecture network |
US7075899B2 (en) * | 2002-05-21 | 2006-07-11 | Actv, Inc. | System and method for providing private in-band data to digital set-top boxes in a broadcast environment |
WO2004031949A2 (en) * | 2002-10-07 | 2004-04-15 | Koninklijke Philips Electronics N.V. | Broadcasting of software packages |
US20040083471A1 (en) * | 2002-10-21 | 2004-04-29 | Lg Electronics Inc. | Method of upgrading system software of a home appliance |
US7058964B2 (en) * | 2002-12-03 | 2006-06-06 | Matsushita Electric Industrial Co., Ltd. | Flexible digital cable network architecture |
JP2004206682A (en) * | 2002-12-12 | 2004-07-22 | Seiko Epson Corp | Device management system, device management terminal, network device, program for terminal and program for device, and device management method |
US20040117785A1 (en) * | 2002-12-13 | 2004-06-17 | Samsung Electronics Co., Ltd. | Component download manager for a wireless mobile station and method of operation |
US7546383B2 (en) * | 2003-01-08 | 2009-06-09 | Microsoft Corporation | Enabling broadcast of multiple data configurations |
US7606255B2 (en) * | 2003-01-08 | 2009-10-20 | Microsoft Corporation | Selectively receiving broadcast data according to one of multiple data configurations |
US7500092B2 (en) * | 2003-01-17 | 2009-03-03 | International Business Machines Corporation | Hardware abstraction for set-top box operating systems |
US6941453B2 (en) * | 2003-02-11 | 2005-09-06 | Bitfone Corporation | System and method for determining if a device needs to be updated and locating and invoking an update agent to update the firmware or software in the device |
US7398055B2 (en) | 2003-02-14 | 2008-07-08 | Ntt Docomo, Inc. | Electronic device and program |
US7020689B2 (en) * | 2003-03-07 | 2006-03-28 | Wegener Communications, Inc. | System and method for command transmission utilizing an email return path |
US20040193609A1 (en) * | 2003-03-26 | 2004-09-30 | Sony Corporation | Master content directory service server for providing a consolidated network-wide content directory |
CA2423989A1 (en) * | 2003-03-28 | 2004-09-28 | Jvl Corporation | Game system for handheld personal devices |
US20040199899A1 (en) * | 2003-04-04 | 2004-10-07 | Powers Richard Dickert | System and method for determining whether a mix of system components is compatible |
US20050005270A1 (en) * | 2003-04-11 | 2005-01-06 | Tim Bucher | Service platform application distribution manager |
US7206411B2 (en) | 2003-06-25 | 2007-04-17 | Wegener Communications, Inc. | Rapid decryption of data by key synchronization and indexing |
EP2362603B1 (en) * | 2003-08-29 | 2015-01-14 | OpenTV, Inc. | Targeted content broadcast and reception system |
DE10340372A1 (en) * | 2003-09-02 | 2005-03-24 | Robert Bosch Gmbh | Procedure for installing a program component |
GB2405711B (en) * | 2003-09-05 | 2006-08-09 | Sun Microsystems Inc | Method and apparatus for performing configuration over a network |
US20050055352A1 (en) * | 2003-09-08 | 2005-03-10 | Sony Corporation | Content directory and synchronization bridge |
US7925790B2 (en) * | 2003-09-17 | 2011-04-12 | Sony Corporation | Middleware filter agent between server and PDA |
US20050060578A1 (en) * | 2003-09-17 | 2005-03-17 | Sony Corporation | Method of and system for authentication downloading |
US20050060370A1 (en) * | 2003-09-17 | 2005-03-17 | Sony Corporation | Version based content distribution and synchronization system and method |
US7735000B2 (en) * | 2003-09-25 | 2010-06-08 | Sony Corporation | Information and content exchange document type definitions to support content distribution |
CN1894970B (en) * | 2003-11-04 | 2011-05-18 | 韩国电子通信研究院 | Apparatus and method for receiving data broadcasting service to support connection with mobile networks |
KR100548207B1 (en) * | 2003-11-18 | 2006-02-02 | 삼성전자주식회사 | Digital broadcast receiver attempt to stabilize the upgrade and a method thereof |
JP2005165514A (en) * | 2003-12-01 | 2005-06-23 | Sony Corp | Application display device |
US8689113B2 (en) * | 2004-01-22 | 2014-04-01 | Sony Corporation | Methods and apparatus for presenting content |
US20050165941A1 (en) * | 2004-01-22 | 2005-07-28 | Edward Eytchison | Methods and apparatuses for streaming content |
US7519718B2 (en) * | 2004-02-27 | 2009-04-14 | International Business Machines Corporation | Server-side protocol configuration of accessing clients |
US20050234467A1 (en) * | 2004-03-08 | 2005-10-20 | James Rains | Screw guide |
US7904895B1 (en) | 2004-04-21 | 2011-03-08 | Hewlett-Packard Develpment Company, L.P. | Firmware update in electronic devices employing update agent in a flash memory card |
US7523145B2 (en) | 2004-04-22 | 2009-04-21 | Opentv, Inc. | System for managing data in a distributed computing system |
US8526940B1 (en) | 2004-08-17 | 2013-09-03 | Palm, Inc. | Centralized rules repository for smart phone customer care |
US7779409B2 (en) * | 2004-08-24 | 2010-08-17 | Nokia Corporation | Device-to-device software distribution |
CN1906576B (en) * | 2004-09-20 | 2010-05-12 | 索尼计算机娱乐公司 | Methods and apparatus for distributing software applications |
WO2006033423A1 (en) * | 2004-09-20 | 2006-03-30 | Sony Computer Entertainment Inc. | Methods and apparatus for emulating software applications |
DE602004020401D1 (en) * | 2004-10-08 | 2009-05-14 | Verigy Pte Ltd Singapore | FEATURED TEST PROGRAM DEVELOPMENT AND PERFORMANCE |
US8117282B2 (en) | 2004-10-20 | 2012-02-14 | Clearplay, Inc. | Media player configured to receive playback filters from alternative storage mediums |
JP5279981B2 (en) * | 2004-11-22 | 2013-09-04 | 富士通株式会社 | Update control program, update control method, and update control apparatus |
US20060117346A1 (en) * | 2004-11-29 | 2006-06-01 | Jo Su D | Video device capable of downloading data and method for controlling the same |
US8020141B2 (en) | 2004-12-06 | 2011-09-13 | Microsoft Corporation | Operating-system process construction |
US7882317B2 (en) * | 2004-12-06 | 2011-02-01 | Microsoft Corporation | Process isolation using protection domains |
US7600232B2 (en) | 2004-12-07 | 2009-10-06 | Microsoft Corporation | Inter-process communications employing bi-directional message conduits |
US7451435B2 (en) * | 2004-12-07 | 2008-11-11 | Microsoft Corporation | Self-describing artifacts and application abstractions |
WO2006075557A1 (en) * | 2005-01-17 | 2006-07-20 | Matsushita Electric Industrial Co., Ltd. | Program execution device |
US8029365B2 (en) | 2005-03-24 | 2011-10-04 | Wms Gaming Inc. | Hierarchical multi-tiered system for gaming related communications |
AU2006236335A1 (en) | 2005-04-18 | 2006-10-26 | Clearplay, Inc. | Apparatus, system and method for associating one or more filter files with a particular multimedia presentation |
US20060242620A1 (en) * | 2005-04-22 | 2006-10-26 | Avadhi Finance & Technology | Method for maintaining and selling software |
GB0511774D0 (en) * | 2005-06-09 | 2005-07-20 | Nds Ltd | Extended service information 2 (XSI-2) |
US8849968B2 (en) | 2005-06-20 | 2014-09-30 | Microsoft Corporation | Secure and stable hosting of third-party extensions to web services |
US8788546B2 (en) * | 2005-08-03 | 2014-07-22 | Bluestreak Technology Inc. | Preloading resources from data carousel of broadcast file system |
AU2006290982A1 (en) * | 2005-09-12 | 2007-03-22 | Bally Gaming, Inc. | Download and configuration system and method for gaming machines |
US8287379B2 (en) * | 2005-09-12 | 2012-10-16 | Igt | Distributed game services |
US7887420B2 (en) | 2005-09-12 | 2011-02-15 | Igt | Method and system for instant-on game download |
US8074231B2 (en) * | 2005-10-26 | 2011-12-06 | Microsoft Corporation | Configuration of isolated extensions and device drivers |
EP1811778A1 (en) * | 2006-01-24 | 2007-07-25 | Nagracard S.A. | Verfahren für Aktualisierung des microprogramme eines Sicherheitsmoduls |
US9547485B2 (en) * | 2006-03-31 | 2017-01-17 | Prowess Consulting, Llc | System and method for deploying a virtual machine |
US7809817B2 (en) * | 2006-04-21 | 2010-10-05 | Cirba Inc. | Method and system for determining compatibility of computer systems |
WO2007121571A1 (en) * | 2006-04-21 | 2007-11-01 | Cirba Inc. | Method and system for determining compatibility of computer systems |
US7680754B2 (en) | 2006-04-21 | 2010-03-16 | Cirba Inc. | System and method for evaluating differences in parameters for computer systems using differential rule definitions |
US8775319B2 (en) | 2006-05-15 | 2014-07-08 | The Directv Group, Inc. | Secure content transfer systems and methods to operate the same |
US8209676B2 (en) | 2006-06-08 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Device management in a network |
US8032898B2 (en) | 2006-06-30 | 2011-10-04 | Microsoft Corporation | Kernel interface with categorized kernel objects |
WO2008014454A2 (en) | 2006-07-27 | 2008-01-31 | Hewlett-Packard Development Company, L.P. | User experience and dependency management in a mobile device |
KR100782857B1 (en) * | 2006-10-13 | 2007-12-06 | 삼성전자주식회사 | Method of upgrading software using common module which multiple models share and digital broadcasting receiver thereof, and computer readable medium recording the method |
US8261345B2 (en) | 2006-10-23 | 2012-09-04 | Endeavors Technologies, Inc. | Rule-based application access management |
US20080108435A1 (en) * | 2006-11-03 | 2008-05-08 | Igt | Monitoring and controlling gaming-environments |
KR100781534B1 (en) * | 2006-12-08 | 2007-12-03 | 삼성전자주식회사 | Apparatus and method for constructing and executing the function of application corresponding to broadcasting receiving devices |
US7870276B1 (en) * | 2006-12-18 | 2011-01-11 | Emc Corporation | Interface plugin |
US8029367B2 (en) * | 2007-01-15 | 2011-10-04 | Microsoft Corporation | Automatic delivery of game content to a game console |
US8789063B2 (en) * | 2007-03-30 | 2014-07-22 | Microsoft Corporation | Master and subordinate operating system kernels for heterogeneous multiprocessor systems |
US20080244507A1 (en) * | 2007-03-30 | 2008-10-02 | Microsoft Corporation | Homogeneous Programming For Heterogeneous Multiprocessor Systems |
KR100897681B1 (en) | 2007-04-05 | 2009-05-14 | 베리지 (싱가포르) 피티이. 엘티디. | Feature-oriented test program development and execution |
JP5341761B2 (en) * | 2007-08-09 | 2013-11-13 | パナソニック株式会社 | Terminal device, server, and system thereof |
KR20090024885A (en) * | 2007-09-05 | 2009-03-10 | 엘지전자 주식회사 | Method for software updateing in display device |
US8892738B2 (en) | 2007-11-07 | 2014-11-18 | Numecent Holdings, Inc. | Deriving component statistics for a stream enabled application |
US8484689B2 (en) * | 2007-12-05 | 2013-07-09 | Lg Electronics Inc. | IPTV receiver and method of discovering an IPTV service |
US8869219B2 (en) * | 2007-12-05 | 2014-10-21 | Lg Electronics Inc. | Method for controlling a channel and an IPTV receiver |
US8893205B2 (en) * | 2007-12-05 | 2014-11-18 | Lg Electronics Inc. | IPTV receiver and method of providing channel map management information |
US8635641B2 (en) * | 2007-12-05 | 2014-01-21 | Lg Electronics Inc. | Method of performing parental control a channel and an IPTV receiver |
US8893200B2 (en) * | 2007-12-05 | 2014-11-18 | Lg Electronics Inc. | IPTV receiver and method of acquiring a resource for an IPTV service |
US8397256B2 (en) * | 2007-12-05 | 2013-03-12 | Lg Electronics Inc. | IPTV receiver and method of providing channel map information |
US8813155B2 (en) * | 2007-12-05 | 2014-08-19 | Lg Electronics Inc. | Method for receiving service information data and an IPTV receiver |
US8112775B2 (en) * | 2007-12-05 | 2012-02-07 | Lg Electronics Inc. | IPTV receiver and method of providing channel details information |
US8484634B2 (en) * | 2008-03-28 | 2013-07-09 | Time Warner Cable, Inc. | System for signaling an application to a host device and method therefor |
US8566891B2 (en) * | 2008-03-31 | 2013-10-22 | Verizon Patent And Licensing Inc. | Systems and methods for monitoring, troubleshooting and/or controlling a digital television |
DE102008039380A1 (en) * | 2008-08-22 | 2010-02-25 | It-Designers Gmbh | Test System |
US20100095330A1 (en) * | 2008-10-15 | 2010-04-15 | Echostar Technologies L.L.C. | Satellite receiver system with rechargeable battery and antenna solar cell |
US10235832B2 (en) | 2008-10-17 | 2019-03-19 | Igt | Post certification metering for diverse game machines |
US7975189B2 (en) * | 2008-11-14 | 2011-07-05 | Trelliware Technologies, Inc. | Error rate estimation/application to code-rate adaption |
JP5368878B2 (en) * | 2009-05-25 | 2013-12-18 | キヤノン株式会社 | Information processing apparatus, manufacturing apparatus, and device manufacturing method |
US9445795B2 (en) * | 2009-10-16 | 2016-09-20 | Confluent Surgical, Inc. | Prevention of premature gelling of delivery devices for pH dependent forming materials |
US8726305B2 (en) | 2010-04-02 | 2014-05-13 | Yahoo! Inc. | Methods and systems for application rendering and management on internet television enabled displays |
KR20110118975A (en) * | 2010-04-26 | 2011-11-02 | 삼성전자주식회사 | Apparatus and method for firmware updating in portable terminal |
US9672022B2 (en) * | 2010-06-23 | 2017-06-06 | Microsoft Technology Licensing, Llc | Applications including multiple experience modules |
US9699503B2 (en) | 2010-09-07 | 2017-07-04 | Opentv, Inc. | Smart playlist |
US10210160B2 (en) | 2010-09-07 | 2019-02-19 | Opentv, Inc. | Collecting data from different sources |
US8949871B2 (en) | 2010-09-08 | 2015-02-03 | Opentv, Inc. | Smart media selection based on viewer user presence |
WO2012146985A2 (en) * | 2011-04-28 | 2012-11-01 | Approxy Inc. Ltd. | Adaptive cloud-based application streaming |
US9154813B2 (en) | 2011-06-09 | 2015-10-06 | Comcast Cable Communications, Llc | Multiple video content in a composite video stream |
US9594605B2 (en) * | 2011-11-15 | 2017-03-14 | Apple Inc. | Client-server version control system for software applications |
US8687947B2 (en) | 2012-02-20 | 2014-04-01 | Rr Donnelley & Sons Company | Systems and methods for variable video production, distribution and presentation |
US9344762B2 (en) * | 2012-10-18 | 2016-05-17 | Broadcom Corporation | Integration of untrusted applications and frameworks with a secure operating system environment |
US9338522B2 (en) * | 2012-10-18 | 2016-05-10 | Broadcom Corporation | Integration of untrusted framework components with a secure operating system environment |
US8935734B2 (en) | 2013-02-01 | 2015-01-13 | Ebay Inc. | Methods, systems and apparatus for configuring a system of content access devices |
FR3003714A1 (en) * | 2013-03-25 | 2014-09-26 | France Telecom | MECHANISM FOR DEPLOYING A SERVICE IN A HOME NETWORK |
US20140359606A1 (en) * | 2013-05-30 | 2014-12-04 | Microsoft Corporation | Bundle package retrieving |
US20140357357A1 (en) * | 2013-05-30 | 2014-12-04 | Microsoft Corporation | Game bundle package |
US9667496B2 (en) * | 2013-12-24 | 2017-05-30 | International Business Machines Corporation | Configuration updates across peer storage systems |
EP3056989B1 (en) * | 2015-02-12 | 2018-08-29 | Deutsche Telekom AG | Transfer of applications |
US11321064B1 (en) * | 2021-10-04 | 2022-05-03 | CTRL IQ, Inc. | Systems and methods for trusted and secure application deployment via collective signature verification of the application artifacts |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4677685A (en) * | 1985-07-16 | 1987-06-30 | Zenith Electronics Corporation | Method and apparatus for downloading a code defining the channel transmission format employed in an addressable CATV system |
US5003591A (en) * | 1989-05-25 | 1991-03-26 | General Instrument Corporation | Functionally modifiable cable television converter system |
US5019963A (en) * | 1987-04-02 | 1991-05-28 | International Business Machines Corporation | Data processing network with upgrading of files |
US5155847A (en) * | 1988-08-03 | 1992-10-13 | Minicom Data Corporation | Method and apparatus for updating software at remote locations |
US5359730A (en) * | 1992-12-04 | 1994-10-25 | International Business Machines Corporation | Method of operating a data processing system having a dynamic software update facility |
US5440632A (en) * | 1992-12-02 | 1995-08-08 | Scientific-Atlanta, Inc. | Reprogrammable subscriber terminal |
US5579509A (en) * | 1991-02-08 | 1996-11-26 | International Business Machines Corporation | Apparatus and method for verifying compatibility of system components |
US5666293A (en) * | 1994-05-27 | 1997-09-09 | Bell Atlantic Network Services, Inc. | Downloading operating system software through a broadcast channel |
US5771064A (en) * | 1995-11-29 | 1998-06-23 | Scientific-Atlanta, Inc. | Home communications terminal having an applications module |
US5809329A (en) * | 1994-05-27 | 1998-09-15 | Microsoft Corporation | System for managing the configuration of a computer system |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4965825A (en) * | 1981-11-03 | 1990-10-23 | The Personalized Mass Media Corporation | Signal processing apparatus and methods |
US4694490A (en) * | 1981-11-03 | 1987-09-15 | Harvey John C | Signal processing apparatus and methods |
CA1269177A (en) * | 1987-03-13 | 1990-05-15 | Claude Jean Champagne | System for maintaining the hardware-software compatibility of modular communication systems |
US5136411A (en) * | 1987-12-11 | 1992-08-04 | General Instrument Corporation | Dynamically responsive CATV system with shared fiber optic link |
CA1341310C (en) * | 1988-07-15 | 2001-10-23 | Robert Filepp | Interactive computer network and method of operation |
US5495610A (en) * | 1989-11-30 | 1996-02-27 | Seer Technologies, Inc. | Software distribution system to build and distribute a software release |
US5093921A (en) * | 1989-12-19 | 1992-03-03 | Comband Technologies, Inc. | Initialization technique and apparatus for set top converters |
US5390256A (en) * | 1991-01-08 | 1995-02-14 | Dolby Laboratories Licensing Corporation | Dynamic loader |
US5396546A (en) * | 1991-10-03 | 1995-03-07 | Viscorp | Apparatus and method for automatic and user configurable information appliance |
US5367571A (en) * | 1992-12-02 | 1994-11-22 | Scientific-Atlanta, Inc. | Subscriber terminal with plug in expansion card |
US5635979A (en) * | 1994-05-27 | 1997-06-03 | Bell Atlantic | Dynamically programmable digital entertainment terminal using downloaded software to control broadband data operations |
-
1996
- 1996-02-14 US US08/601,455 patent/US5951639A/en not_active Expired - Lifetime
-
1997
- 1997-01-13 EP EP97902864A patent/EP0880857B1/en not_active Expired - Lifetime
- 1997-01-13 KR KR1019980706356A patent/KR19990082617A/en not_active Application Discontinuation
- 1997-01-13 AU AU16935/97A patent/AU1693597A/en not_active Abandoned
- 1997-01-13 DE DE69712320T patent/DE69712320T2/en not_active Expired - Lifetime
- 1997-01-13 WO PCT/US1997/000257 patent/WO1997030549A1/en not_active Application Discontinuation
-
1999
- 1999-05-04 US US09/305,179 patent/US6487723B1/en not_active Expired - Lifetime
-
2002
- 2002-09-24 US US10/253,377 patent/US20030028899A1/en not_active Abandoned
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4677685A (en) * | 1985-07-16 | 1987-06-30 | Zenith Electronics Corporation | Method and apparatus for downloading a code defining the channel transmission format employed in an addressable CATV system |
US5019963A (en) * | 1987-04-02 | 1991-05-28 | International Business Machines Corporation | Data processing network with upgrading of files |
US5155847A (en) * | 1988-08-03 | 1992-10-13 | Minicom Data Corporation | Method and apparatus for updating software at remote locations |
US5003591A (en) * | 1989-05-25 | 1991-03-26 | General Instrument Corporation | Functionally modifiable cable television converter system |
US5579509A (en) * | 1991-02-08 | 1996-11-26 | International Business Machines Corporation | Apparatus and method for verifying compatibility of system components |
US5440632A (en) * | 1992-12-02 | 1995-08-08 | Scientific-Atlanta, Inc. | Reprogrammable subscriber terminal |
US5359730A (en) * | 1992-12-04 | 1994-10-25 | International Business Machines Corporation | Method of operating a data processing system having a dynamic software update facility |
US5666293A (en) * | 1994-05-27 | 1997-09-09 | Bell Atlantic Network Services, Inc. | Downloading operating system software through a broadcast channel |
US5809329A (en) * | 1994-05-27 | 1998-09-15 | Microsoft Corporation | System for managing the configuration of a computer system |
US5771064A (en) * | 1995-11-29 | 1998-06-23 | Scientific-Atlanta, Inc. | Home communications terminal having an applications module |
Cited By (77)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8000343B1 (en) * | 1999-08-18 | 2011-08-16 | Fujitsu, Limited | Communication device, and method of communication between communication devices and medium thereof |
US20020104097A1 (en) * | 2000-05-04 | 2002-08-01 | Scientific-Atlanta, Inc | System and method for a communication terminal to manage memory and maintain a current application version for multiple applications |
US7234035B2 (en) * | 2000-05-04 | 2007-06-19 | Scientific-Atlanta, Inc. | System and method for maintaining applications with their current versions |
US20040177368A1 (en) * | 2003-03-06 | 2004-09-09 | Wegener Communications, Inc. | Apparatus and method for addressing control in a network for distributed data |
US20040177385A1 (en) * | 2003-03-06 | 2004-09-09 | Yoo Jea Yong | Interactive medium and method for managing additional data thereof |
US7930711B2 (en) | 2003-03-06 | 2011-04-19 | Wegener Communications, Inc. | Apparatus and method for addressing control in a network for distributed data |
US8042144B2 (en) * | 2003-03-06 | 2011-10-18 | Lg Electronics Inc. | Interactive medium and method for managing additional data thereof |
FR2852708A1 (en) * | 2003-03-21 | 2004-09-24 | Eprocess | Computer software components providing method for use with server network, involves sending request of loading of component to server if need for component and terminal compatible with component is detected |
US20050060754A1 (en) * | 2003-09-17 | 2005-03-17 | Wegener Communications, Inc. | Apparatus and method for distributed control of media dissemination |
US8108672B1 (en) * | 2003-10-31 | 2012-01-31 | Adobe Systems Incorporated | Transparent authentication process integration |
US7930757B2 (en) | 2003-10-31 | 2011-04-19 | Adobe Systems Incorporated | Offline access in a document control system |
US8627077B2 (en) * | 2003-10-31 | 2014-01-07 | Adobe Systems Incorporated | Transparent authentication process integration |
US8479301B2 (en) | 2003-10-31 | 2013-07-02 | Adobe Systems Incorporated | Offline access in a document control system |
US20130198807A1 (en) * | 2003-10-31 | 2013-08-01 | Adobe Systems Incorporated | Transparent Authentication Process Integration |
US8627489B2 (en) | 2003-10-31 | 2014-01-07 | Adobe Systems Incorporated | Distributed document version control |
US20050097061A1 (en) * | 2003-10-31 | 2005-05-05 | Shapiro William M. | Offline access in a document control system |
US20050097441A1 (en) * | 2003-10-31 | 2005-05-05 | Herbach Jonathan D. | Distributed document version control |
WO2005048102A1 (en) * | 2003-11-13 | 2005-05-26 | Benq Mobile Gmbh & Co. Ohg | Device and method for software management in a heterogeneous hardware system |
US20050108772A1 (en) * | 2003-11-19 | 2005-05-19 | Crinon Regis J. | Generating and managing DTV application signaling based on asset definition |
US7904933B2 (en) * | 2003-11-19 | 2011-03-08 | Microsoft Corporation | Generating and managing DTV application signaling based on asset definition |
US8239782B2 (en) * | 2004-02-27 | 2012-08-07 | Sap Ag | Data processing system and method of data entry |
US20050198564A1 (en) * | 2004-02-27 | 2005-09-08 | Werner Sinzig | Data processing system and method of data entry |
WO2006003177A3 (en) * | 2004-06-30 | 2006-09-14 | Siemens Ag | Method and apparatus for downloading a plurality of images |
WO2006003177A2 (en) * | 2004-06-30 | 2006-01-12 | Siemens Aktiengesellschaft | Method and apparatus for downloading a plurality of images |
FR2874146A1 (en) * | 2004-08-04 | 2006-02-10 | Thomson Licensing Sa | METHOD FOR UPDATING RESIDENT SOFTWARE IN AN APPARATUS AND APPARATUS ADAPTED BY THE METHOD |
WO2006013204A1 (en) * | 2004-08-04 | 2006-02-09 | Thomson Licensing | Method for updating resident software in different appliances and appliances adapted to be updated by same |
US20090125965A1 (en) * | 2004-08-04 | 2009-05-14 | Frederic Albert | Method for updating resident software in different appliances and appliances adapted to be updated by same |
WO2006040222A3 (en) * | 2004-10-12 | 2006-07-06 | Siemens Ag | Method and device for embedded systems, particularly reconfigurable mobile radio terminals, with loadable software modules |
WO2006040222A2 (en) * | 2004-10-12 | 2006-04-20 | Siemens Aktiengesellschaft | Method and device for embedded systems, particularly reconfigurable mobile radio terminals, with loadable software modules |
US7995758B1 (en) | 2004-11-30 | 2011-08-09 | Adobe Systems Incorporated | Family of encryption keys |
US8832047B2 (en) | 2005-07-27 | 2014-09-09 | Adobe Systems Incorporated | Distributed document version control |
US20070169118A1 (en) * | 2005-12-19 | 2007-07-19 | Choi Hyun S | Apparatuses and methods for receiving software |
US20070143812A1 (en) * | 2005-12-19 | 2007-06-21 | Hyun Sik Choi | Apparatus for receiving cable broadcast data and method for transmitting/ receiving cable broadcast software |
EP1798640A1 (en) * | 2005-12-19 | 2007-06-20 | LG Electronics Inc. | Apparatuses and methods for receiving software |
EP1816770A3 (en) * | 2006-02-01 | 2007-12-26 | LG Electronics Inc. | Broadcast receiver, data structure and method for providing diagnostic information |
EP1816770A2 (en) * | 2006-02-01 | 2007-08-08 | LG Electronics Inc. | Broadcast receiver, data structure and method for providing diagnostic information |
US20070180532A1 (en) * | 2006-02-01 | 2007-08-02 | Cha Sang H | Broadcast receiver, data structure and method for providing diagnostic information |
US20070263716A1 (en) * | 2006-05-10 | 2007-11-15 | Himax Technologies, Inc. | Digital video broadcasting method for updating firmware image of digital set-top box or digital television |
US20070283405A1 (en) * | 2006-06-01 | 2007-12-06 | Sang Hoon Cha | Broadcast receiver and method for providing diagnostic information |
EP1863286A1 (en) | 2006-06-01 | 2007-12-05 | LG Electronics Inc. | Broadcast receiver and method for providing diagnostic information |
US7895637B2 (en) | 2006-06-01 | 2011-02-22 | Lg Electronics Inc. | Broadcast receiver and method for providing diagnostic information |
WO2008001216A1 (en) * | 2006-06-29 | 2008-01-03 | Falconstor, Inc. | System and method for downloading information |
US20080016150A1 (en) * | 2006-06-29 | 2008-01-17 | Chen Wen-Shyen E | System and method for downloading information |
US20080077681A1 (en) * | 2006-09-26 | 2008-03-27 | Samsung Electronics Co., Ltd. | Method and apparatus for upgrading software of digital broadcasting receiver |
US8799433B2 (en) * | 2006-09-26 | 2014-08-05 | Samsung Electronics Co., Ltd. | Method and apparatus for upgrading software of digital broadcasting receiver |
US20080115189A1 (en) * | 2006-11-10 | 2008-05-15 | Stephane Lejeune | TV-centric system |
US20080134165A1 (en) * | 2006-12-01 | 2008-06-05 | Lori Anderson | Methods and apparatus for software provisioning of a network device |
US10104432B2 (en) * | 2006-12-01 | 2018-10-16 | Time Warner Cable Enterprises Llc | Methods and apparatus for software provisioning of a network device |
US20190069027A1 (en) * | 2006-12-01 | 2019-02-28 | Time Warner Cable Enterprises Llc | Methods and apparatus for software provisioning of a network device |
US10863239B2 (en) * | 2006-12-01 | 2020-12-08 | Time Warner Cable Enterprises Llc | Methods and apparatus for software provisioning of a network device |
US20090040093A1 (en) * | 2007-06-06 | 2009-02-12 | Sandor Holly | Method and apparatus for using collimated and linearly polarized millimeter wave beams at brewster's angle of incidence in ground penetrating radar to detect objects located in the ground |
US7893862B2 (en) | 2007-06-06 | 2011-02-22 | The Boeing Company | Method and apparatus for using collimated and linearly polarized millimeter wave beams at Brewster's angle of incidence in ground penetrating radar to detect objects located in the ground |
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 |
US8055393B2 (en) | 2008-02-06 | 2011-11-08 | The Boeing Company | Method and apparatus for loading software aircraft parts |
WO2009099710A1 (en) * | 2008-02-06 | 2009-08-13 | 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 |
US20090198393A1 (en) * | 2008-02-06 | 2009-08-06 | Sims Iii John Benjamin | Method and apparatus for loading software aircraft parts |
US20090198712A1 (en) * | 2008-02-06 | 2009-08-06 | Sims Iii John Benjamin | Metadata for software aircraft parts |
US20100146553A1 (en) * | 2008-12-05 | 2010-06-10 | Qualcomm Incorporated | Enhanced method and apparatus for enhancing support for service delivery |
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 |
US20110231150A1 (en) * | 2009-06-10 | 2011-09-22 | The Boeing Company | Difference Frequency Detection with Range Measurement |
US8275572B2 (en) | 2009-06-10 | 2012-09-25 | The Boeing Company | Difference frequency detection with range measurement |
EP2333661A3 (en) * | 2009-09-18 | 2011-09-07 | Yamaha Corporation | Firmware update apparatus and program |
EP2369474A1 (en) * | 2009-09-18 | 2011-09-28 | Yamaha Corporation | Firmware update apparatus and program |
US8621053B2 (en) | 2009-09-18 | 2013-12-31 | Yamaha Corporation | Firmware update apparatus and program |
US20110072423A1 (en) * | 2009-09-18 | 2011-03-24 | Yamaha Corporation | Firmware update apparatus and program |
CN102111429A (en) * | 2009-12-28 | 2011-06-29 | 日立民用电子株式会社 | Content distribution method and content reception device |
US20110158251A1 (en) * | 2009-12-28 | 2011-06-30 | Hiroyuki Koreeda | Content distribution method and content reception device |
EP2357824A1 (en) * | 2009-12-28 | 2011-08-17 | Hitachi Consumer Electronics Co. Ltd. | Content distribution method and content reception device |
US8977107B2 (en) * | 2009-12-31 | 2015-03-10 | Sandisk Technologies Inc. | Storage device and method for resuming playback of content |
US20110158606A1 (en) * | 2009-12-31 | 2011-06-30 | Lin Jason T | Storage Device and Method for Resuming Playback of Content |
US9942124B2 (en) | 2011-06-28 | 2018-04-10 | Time Warner Cable Enterprises Llc | Apparatus and methods for automated device testing in content distribution network |
WO2017210175A1 (en) * | 2016-06-03 | 2017-12-07 | Ebay Inc. | Optimization of user interface data transmission |
US10375211B2 (en) | 2016-06-03 | 2019-08-06 | Ebay Inc. | Optimization of user interface data transmission for a consistent multi-platform experience service delivery |
US11400380B2 (en) * | 2017-07-31 | 2022-08-02 | Sony Interactive Entertainment Inc. | Information processing apparatus and download processing method |
Also Published As
Publication number | Publication date |
---|---|
EP0880857A4 (en) | 1998-12-09 |
KR19990082617A (en) | 1999-11-25 |
US6487723B1 (en) | 2002-11-26 |
EP0880857A1 (en) | 1998-12-02 |
US5951639A (en) | 1999-09-14 |
DE69712320T2 (en) | 2002-11-07 |
DE69712320D1 (en) | 2002-06-06 |
WO1997030549A1 (en) | 1997-08-21 |
AU1693597A (en) | 1997-09-02 |
EP0880857B1 (en) | 2002-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6487723B1 (en) | Multicast downloading of software and data modules and their compatibility requirements | |
CA2304144C (en) | Downloading data | |
EP1252758B1 (en) | Settop cable television control device and method including bootloader software and code version table for maintaining and updating settop receiver operating system software | |
EP1309182B1 (en) | A method of providing a code upgrade to a host device having a smart card interface | |
US6493871B1 (en) | Method and system for downloading updates for software installation | |
US8347281B2 (en) | Automatic software update detection and flexible installer for set-top boxes | |
TW472489B (en) | Method and system for identifying and downloading appropriate software or firmware specific to a particular model of set-top box in a cable television system | |
US20020138592A1 (en) | Method and apparatus for operating system and application selection | |
CN101170675B (en) | Method and system for managing J2ME application in network TV system | |
US8453195B2 (en) | Program replacing method | |
US11775288B2 (en) | Method and apparatus for generating difference between old and new versions of data for updating software | |
US20080276300A1 (en) | Program Execution Device | |
WO2008013393A1 (en) | Apparatus, system and method for software upgrade | |
CN107147519B (en) | Method, device and system for upgrading equipment | |
CN106469078A (en) | A kind of upgrade method of intelligent appliance and device | |
WO1998043433A1 (en) | Data processing system | |
US7392518B1 (en) | Robust remote flash ROM upgrade system and method | |
CN110413292B (en) | Light application installation method of application program, mobile terminal and storage medium | |
CN111694590A (en) | Upgrading method of intelligent water meter | |
US6286037B1 (en) | Data communication system, data communication method, data receiver and data receiving method | |
JP2005531846A (en) | Software download to receiver | |
CN117707578A (en) | Beacon firmware upgrading method, device and system | |
KR20100045266A (en) | A method for processing ota in set-top box | |
WO2000064181A1 (en) | Automatic initialization of an advanced set-top box in a cable television system by downloading software or firmware over the cable system | |
CN118363629A (en) | Method for upgrading controller by OTA, OTA upgrading platform and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: POWERTV, INC., A GEORGIA CORP., GEORGIA Free format text: MERGER;ASSIGNOR:POWERTV, INC., A CALIFORNIA CORPORATION;REEL/FRAME:014493/0382 Effective date: 20030430 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: SCIENTIFIC-ATLANTA, LLC, GEORGIA Free format text: CHANGE OF NAME;ASSIGNOR:SCIENTIFIC-ATLANTA, INC.;REEL/FRAME:052917/0513 Effective date: 20081205 |
|
AS | Assignment |
Owner name: SCIENTIFIC-ATLANTA, LLC, GEORGIA Free format text: CHANGE OF NAME;ASSIGNOR:SCIENTIFIC-ATLANTA, INC.;REEL/FRAME:052903/0168 Effective date: 20200227 |