EP1646938A2 - Download, caching and execution of software applications in broadband systems - Google Patents
Download, caching and execution of software applications in broadband systemsInfo
- Publication number
- EP1646938A2 EP1646938A2 EP04744470A EP04744470A EP1646938A2 EP 1646938 A2 EP1646938 A2 EP 1646938A2 EP 04744470 A EP04744470 A EP 04744470A EP 04744470 A EP04744470 A EP 04744470A EP 1646938 A2 EP1646938 A2 EP 1646938A2
- Authority
- EP
- European Patent Office
- Prior art keywords
- memory
- application
- broadcast
- software
- validated
- 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.)
- Withdrawn
Links
Classifications
-
- 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/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/54—Link editing before load time
-
- 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/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23614—Multiplexing of additional data and video streams
- H04N21/23617—Multiplexing of additional data and video streams by inserting additional data into a data carousel, e.g. inserting software modules into a DVB carousel
-
- 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/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4348—Demultiplexing of additional data and video streams
- H04N21/4349—Demultiplexing of additional data and video streams by extracting from data carousels, e.g. extraction of software modules from a DVB carousel
-
- 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/4433—Implementing client middleware, e.g. Multimedia Home Platform [MHP]
-
- 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/4435—Memory management
-
- 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/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8545—Content authoring for generating interactive applications
Definitions
- the present invention relates to methods of executing software applications in communication apparatus; in particular, but not exclusively, the present invention relates to methods of executing software applications implemented in conjunction with JavaTM software, such applications being known as Xlets; such Xlet execution is susceptible to occur in apparatus such as Multimedia Home Platforms (MHP), for example set-top-boxes (STB) suitable for use with interactive digital television (DTV) equipment in domestic environments.
- MHP Multimedia Home Platforms
- STB set-top-boxes
- DTV digital television
- the invention also relates to apparatus capable of implementing the method when executing software applications, for example Xlet software applications.
- the DVB project specifies JavaTM technology as a suitable software application environment language.
- JavaTM is a high-level, object-orientated programming language.
- Java software source matter is translated into platform-independent byte- codes for interpretation by a Virtual Machine.
- Software applications downloaded to set-top- boxes (STB) are typically JavaTM software applications built from a suite of application programming interfaces (API's) tailored specifically for use in an interactive television environment.
- API's application programming interfaces
- a part of the standard, namely MHP 1.0.1 defines a first profile wherein the digital broadcast of audio and video services is combined with executable software applications.
- the software applications enable one or more television viewers to interact locally and do not, for example, require an interaction channel to be provided.
- the standard also defines a second profile wherein, in addition to features provided to one or more users by enhanced broadcasting, there are also provided thereto a range of interactive services associated or independent from the broadcasting services, such interactive services requiring the provision of an additional interaction channel.
- MHP Multimedia Home Platform
- MHP software applications which are conventionally regarded as not being complete JavaTM applications in a normal sense.
- These MHP software applications are more like Applets in that they are loaded onto a given platform and executed therein under supervision of a life cycle manager, for example the platform being a set-top-box (STB) and the life cycle manager being implemented by dedicated software therein.
- the MHP software applications are conveniently referred to as "Xlets”.
- MHP broadcast involves the transmission of JavaTM applications such as Xlets. These Xlets are susceptible to being downloaded onto MHP-compliant products by a Digital Media Command and Control (DSM-CC). Moreover, the inventors have appreciated that Xlet applications are often continuously broadcast but seldom modified, for example where a "carousel" repetition pattern for broadcast software applications is utilized.
- a person at home owns a set-top-box (STB) linked to a television. The user is capable, using the television in combination with the STB, of selecting a label or symbol on the television screen corresponding to one ore more desired services and then invoking the symbol, conventionally known as "zapping" the symbol.
- STB set-top-box
- Such "zapping" of the symbol results in a corresponding Xlet being detected.
- associated classes and images of the Xlet are downloaded to the STB via a communication medium such as satellite connection and/or fibre-optical link.
- a Security Manager implemented in software in the STB is operable to check the downloaded Xlet, namely classes and associated images, prior to the Xlet being loaded onto a Virtual Machine provided in the STB and then executed therein.
- the Security Manager is operable to prevent the Virtual Machine from executing the Xlet.
- a software system for use with a Digital Television (DTV) set-top-box employs a software bus application programming interface (API) specially designed to render the set-top-box compatible with two standard DASE architectures, namely first and second architectures.
- API application programming interface
- a procedural application engine includes a declarative application engine.
- the second architecture there is includes a procedural application engine containing an associated procedural.
- the applications engines each have associated therewith an application engine manager utilizing a function cell router to intercept all DASE infrastructure API's incoming from software applications downloaded by the set-top-box from a DTV broadcast. All API's are routed through the application manager, and all application engines are required to implement a software bus API included therein.
- a first object of the present invention is to provide a method of executing software applications, for example in set-top-boxes in association with digital television (DTV), which is more rapid in operation when security checking software applications.
- a second object of the present invention is to provide apparatus operable according to the aforementioned method. According to a first aspect of the present invention, there is provided a method of executing one or more software applications in a broadcasting system including a broadcast provider coupled via at least one communication link to at least one corresponding user interface including associated computing means therein, the method comprising the steps of:
- step (d) when said at least one application is found to be not already stored in the memory receiving from the broadcast provider said at least one preferred software application, loading said at least one application to the computing means, validating said at least one application in the computing means and then subsequently executing said at least one application when validated in the computing means.
- the method is of advantage in that it is capable of addressing at least one of the objects of the invention.
- said at least one software application when validated is stored in the memory for subsequent potential re-use.
- Such re-use is capable of rendering the user interface more responsive and rapid in use.
- each user interface is provided with memory managing means operable to overwrite less frequently user-requested software applications with more recently user-requested software applications, thereby allowing for re-utilization of memory capacity for at least one more frequently user-requested software application.
- memory managing means operable to overwrite less frequently user-requested software applications with more recently user-requested software applications, thereby allowing for re-utilization of memory capacity for at least one more frequently user-requested software application.
- step (b) of the method at least one validated software application stored in the memory is compared with at least one corresponding software application broadcast from the broadcast provider to check for similarity, such that:
- said at least one validated application stored in the memory is executed in the computing means when correspondence between said at least one stored validated application and at least one broadcast application is identified;
- said at least one broadcast application is checked for validity, and stored in the memory when successfully validated and subsequently executed in the computing means, the method thereby operable to update said at least one application stored in the memory when newer corresponding at least one application is broadcast from the broadcast provider.
- said at least one user interface and corresponding at least one communication link are operable to convey one or more user requests for the preferred software application to the broadcast provider which is responsive to broadcast said requested preferred application to said at least one user interface.
- the broadcast provider is operable to broadcast via said at least one communication link one or more software applications in a repetitive temporal manner for selective loading into associated memory at said at least one user interface.
- Such a "carousel" manner of software application broadcasting is capable of supporting user- interactive digital television (DTV) simultaneously with the at least one communication link being mono-directional. More preferably, for example to provide an acceptably short user-request response delay, the broadcast provider is operable to broadcast said one or more software applications in a pseudo-continuous manner.
- the broadcasting system is a digital television
- said at least one user- interface corresponds to at least one step-top-box (STB) coupled to associated displaying means
- said at least one communication link is implemented by at least one of wireless links, fibre optical links and conductive wire communication links.
- said displaying means comprises at least one of a cathode ray tube, a pixel plasma display, a pixel back-lit liquid crystal display and a pixel projection liquid crystal display.
- said at least one preferred software application is selected by use of at least one graphic representative symbol presented to said at least one user at said at least one user interface. More preferably, said at least one graphic symbol is implemented as at least one graphics icon.
- said at least one user interface is implemented as at least one mobile telephone provided with corresponding graphic display.
- the memory is implemented as persistent memory operable to retain data therein when de- energized. More preferably, the memory is implemented as non- volatile memory utilizing at least one of: solid-state flash memory, magnetic disc memory.
- said at least one software application is implemented as one or more Java Xlets. Java is an internationally- known, widely-used contemporary computer language.
- step (d) of the method validation is performed by a software- implemented Security Manager and validated software applications are executed on a software-implemented Virtual Machine provided in said computing means.
- a software-implemented Virtual Machine provided in said computing means.
- downloading, validation and storage in said memory of validated said at least one software application is performed as a continuous concurrent background activity in said computing means.
- a broadcasting system for executing one or more software applications, the system including a broadcast provider coupled via at least one communication link to at least one corresponding user interface, each user interface comprising: (a) interfacing means for receiving one or more requests from at least one user associated with said user interface for executing at least one preferred software application therein;
- computing means for determining whether or not said at least one preferred software application is already validated and stored in said memory, for validating one or more software applications received from the broadcast provider where said one or more software applications are not already stored in the memory, and for executing one or more validated software applications in response to said one or more user requests such that said one or more validated software applications stored in said memory are executed in preference to validating corresponding one or more software applications receivable from the broadcast provider so as to provide said at least one user with more rapid temporal response to said one or more requests from said at least one user.
- said computing means is operable to store said at least one software application when validated in the memory for subsequent potential re-use.
- each user interface is provided with memory managing means operable to overwrite less frequently requested software applications with more recently requested software applications, thereby allowing for re-utilization of memory capacity for at least one more frequently user-requested software application.
- the computing means is operable to compare at least one validated software application stored in the memory with at least one corresponding software application broadcast from the broadcast provider to check for similarity, such that:
- said at least one validated application stored in the memory is executed in the computing means when correspondence between said at least one stored application and at least one broadcast application is identified;
- said at least one broadcast application is checked for validity, and stored in the memory if validated and subsequently executed in the computing means, the computing means thereby being operable to update said at least one application stored in the memory when newer corresponding at least one application is broadcast from the broadcast provider.
- said at least one user interface and corresponding at least one communication link are operable to convey one or more user requests for the preferred software application to the broadcast provider which is responsive to broadcast said requested preferred application to said at least one user interface.
- the broadcast provider is operable to broadcast via said at least one communication link one or more software applications in a repetitive temporal manner for selective loading at said at least one user interface.
- the broadcast provider is operable to broadcast said one or more software applications in a pseudo-continuous manner.
- the broadcasting system is a digital television broadcasting system wherein said at least one user-interface corresponds to at least one step-top-box coupled to associated displaying means, and said at least one communication link is implemented by at least one of wireless links, fibre optical links and conductive wire communication links.
- said displaying means comprises at least one of a cathode ray tube, a pixel plasma display, a pixel back-lit liquid crystal display and a pixel projection liquid crystal display.
- said at least one preferred software application is selectable by use of at least one graphic representative symbol presented to said at least one user at said at least one user interface.
- said at least one graphic symbol is implemented as at least one graphics icon.
- said at least one user interface is implemented as at least one mobile telephone provided with corresponding graphic display.
- the memory is implemented as persistent memory operable to retain data therein when de-energized. More preferably, the memory is implemented as nonvolatile memory utilizing at least one of: solid-state flash memory, magnetic disc memory.
- said at least one software application is implemented as one or more Java Xlets.
- the computing means is operable to perform validation by way of a software-implemented Security Manager and execute validated software applications by way of a software-implemented Virtual Machine provided in said computing means.
- said computing means is operable to download, to validate and to store in said memory said at least one validated software application as a continuous concurrent background activity. It will be appreciated that features of the invention are susceptible to being combined in any combination without departing from the scope of the invention.
- Fig. 1 is a schematic diagram of a digital television broadcasting network linked to several set-top-boxes
- Fig. 2 is a schematic diagram of a conventional method of downloading and executing Xlet software applications in set-top-boxes (STB)
- Fig. 3 is a schematic diagram of an embodiment of the method of the invention for downloading and executing Xlet software applications in set-top-boxes (STB).
- Each output is coupled via a communication link 30 which is preferably one or more of a co -axial high-frequency wire link, a wide-bandwidth fibre-optical link and a wireless radio link.
- each user has associated therewith a set-top-box (STB) 40 coupled between its corresponding link 30 and a television monitor 50 viewable by the user 60.
- the monitor 50 is preferable one or more of a cathode ray tube (CRT) display, a pixel liquid crystal display (LCD), an LCD projection unit and a plasma display.
- the monitor 50 also includes a corresponding audio system and user interface control panel, for example a miniature computer keyboard and/or a computer mouse, tracker ball or similar.
- the STB 40 includes computer hardware together with high-speed signal processing hardware.
- the computer hardware includes at least one processor coupled via suitable digital buses to volatile and non- volatile memory devices; non-volatile memory devices are capable of providing persistent memory as will be elucidated later.
- the STB 40 includes software executable therein to enable it to function as a Virtual Machine, namely a substantially universal computer emulation capable of receiving, amongst other software applications, Xlets and executing them to provide the user 60 with a corresponding visual and/or audio service.
- Fig. 2 there is shown as a flow chart of processing steps executed within each STB 40; the processing steps are indicated generally by 100.
- the steps 100 comprise a symbol selection step 110 (SYMBOL SELECT), a request for Xlet step 120 (REQ. FOR XLET), a receipt of Xlet step 130 (RECEIPT OF XLET), an Xlet security/validation checking step 140 (SECURITY CHECK XLET), a decision step 150
- the broadcast provider 20 is operable to output digital signals via one or more of the links 30 to their respective users 60.
- the digital signals comprise at least one of digital programme material, executable software and software-related data.
- Each user 60 is capable of directing its corresponding STB 40 to select a given digital data stream transmitted from the provider 20, for example for selecting a preferred programme channel.
- each user 60 is also capable of selecting one or more software applications to be sent to the user's STB 40 for execution therein as will now be described.
- Each STB 40 is operable to receive an application request from its user 60, namely the user 60 selects a preferred option on the monitor 50; for example, the option is selected in step 110 by the user 60 moving a mouse icon displayed on the monitor 50 to a preferred icon software application symbol presented thereon.
- the user 60 then forwards this request via the STB 40 to the provider 20 in step 120; for example, the user 60 presses an "execute" button or switch which causes the STB 40 to send a request via the link 30 to the broadcast provider 20.
- the provider 20 responds in step 130 by downloading one or more corresponding software applications, for example one or more Xlets, for eventual execution in the STB 40 for display on the monitor 50.
- the STB 40 responds to the request from the user 60 by isolating the selected Xlet from incoming signals conveyed to the STB 40, the isolated selected Xlet being subject to eventual execution in the STB 40 for display on the monitor 50.
- the STB 40 in order to avoid corruption of the STB 40 and data stored therein, the STB 40 also executes validation software known as a Security Manager for validating the one or more received software applications from the broadcast provider 20, for example the aforementioned Xlets.
- validation software known as a Security Manager for validating the one or more received software applications from the broadcast provider 20, for example the aforementioned Xlets.
- Such validation is desirable to ensure that the software applications have been provided from a bona fide source and/or determining whether or not the software applications include computer viruses or similar aberrations likely to adversely affect operation of the STB 40.
- an Xlet is received at one or more STB's 40, it is firstly validated by the aforesaid Security Manager software executing on the one or more STB's 40. .
- step 150 if the Xlet is found not to be bona-fide, it is not executed.
- step 150 if the Xlet is successfully validated by the Security Manager, it is loaded onto the Virtual Machine provided by the SBT 40 and then executed in step 160 to provide the user 60 with a corresponding service, for example a weather report, a report of investment bank performance, a stock market report and/or a video game.
- a corresponding service for example a weather report, a report of investment bank performance, a stock market report and/or a video game.
- the Security Manager in the STB's 40 is relatively slow in step 140 to execute its validation function with a result that the user 60 must wait a period before a software application icon or similar identified on the monitor 50 appears to respond and function.
- significant time is required to load the applications in step 130 from the broadcast provider 20 via the link 30 to its associated STB 40.
- Such delay is susceptible to being disconcerting and potentially irritating to the user 60.
- software applications have been executed within the STB's 40, they are conventionally erased and/or overwritten by new subsequent software applications provided from the network provider 20.
- the network provider 10 repetitively transmits software applications which are normally ignored at each of the STB's 40 unless users 60 thereat have caused their STB's 40 in steps 120, 130 to identify and load corresponding selected software applications, for example Xlets, into memory of the STB's 40 for validation in steps 140, 150 for subsequent execution if bona fide.
- the inventors have appreciated for the present invention that it is desirable to regard the downloading of Xlets to one or more of the STB's 40 as a two-stage process, namely a storage process and an execution process. It is especially desirable that such storage is non-volatile persistent storage, for example in solid-state flash memory and/or magnetic hard-disc memory which retains data therein on power-down, namely when power is disconnected from the STB's 40. Other types of non-volatile persistent memory are also susceptible for use to provide such persistent storage.
- the STB's 40 are programmed to invoke their Security Manager to validate the Xlet in all associated classes and then store the validated Xlet in persistent memory of the STB's 40.
- the corresponding STB 40 firstly checks to determine whether or not the preferred Xlet is already stored in persistent storage of the STB 40. The STB 40 then checks to ensure that the validated stored Xlet is similar to that continuously output from the broadcast provider 20, for example as output therefrom in its "carousel" mode of operation for broadcasting Xlets.
- the STB 40 will identify therefrom that the two Xlets are both valid and then proceed to execute the stored Xlet.
- the SBT 40 is operable to download the preferred selected Xlet from the provider 20 and then subject it to validation checking by the Security Manager before loading it into the persistent storage and then executing it as described earlier in the Virtual Machine.
- the STB's 40 are susceptible to storing validation data, for example a check sum, corresponding to the validated preferred Xlet, so that an incoming received Xlet can be quickly validated by using the checksum prior to execution thereof in the Virtual Machine; such an implementation of the method of the invention is less demanding in memory capacity within the STB's 40.
- validation data for example a check sum, corresponding to the validated preferred Xlet, so that an incoming received Xlet can be quickly validated by using the checksum prior to execution thereof in the Virtual Machine; such an implementation of the method of the invention is less demanding in memory capacity within the STB's 40.
- Fig. 3 there is shown a flow chart of processing steps corresponding to an embodiment of the invention; the processing steps are indicated generally by 200.
- the steps 200 include a symbol selection step 210 (SYMBOL SEL.), a software application check step 220 (XLET ALREADY LOADED & SECURITY CHECKED IN STB?), an Xlet loading from persistent memory loading step 230 (LOAD XLET FROM STB STORAGE), an Xlet execution step 240 (EXECUTE XLET), a request for Xlet step 250 (REQ. FOR XLET), an Xlet receive step 260 (REC. OF XLET), an Xlet security validation step 270 (SEC. CHECK XLET), an Xlet validation checking step 280 (XLET VALID ?), and finally an Xlet storage in persistent memory step 290 (STORE XLET).
- SYMBOL SEL. symbol selection step 210
- a software application check step 220 XLET ALREADY LOADED & SECURITY CHECKED IN STB?
- an Xlet loading from persistent memory loading step 230 LOAD X
- the steps 200 are executed in a temporal sequence as illustrated with branching at the step 220 depending on whether or not a user selected Xlet is already available in persistent storage of the STB 40 ready for subsequent execution in step 240 or is to be requested in step 250, received in step 260, validated by the aforementioned Security Manager in step 270, checked for validity in step 280 and finally stored and subsequently executed in steps 240, 290 if valid.
- Security validation in steps 270, 280 is performed in the aforementioned
- each STB 40 is operable to store all detected Xlets in persistent memory associated therewith. Such storage of Xlets is preferably a continuously executing background activity within each of the STB's 40.
- each SBT 40 is arranged to maintain an internal Xlet record, for example in the form of a journal in memory; each STB 40 is operable to utilize its Xlet record to determine least used Xlets and non-executed Xlets and delete them from persistent storage so as to free memory space therein, thereby avoiding memory exhaustion.
- a new Xlet selected by the user 60 that is not yet stored in persistent memory of the associated STB 40 will then preferably replace a least-used Xlet already stored in persistent memory of the STB 40.
- Each STB 40 preferably employs Digital Storage Media Command and Control (DSN-CC) for downloading modules, each module including one or more of classes and files. Module versions are beneficially identified in Download Info Indication (DII) known in the context of DTV. Preferably, such DII information is advantageously stored together with corresponding Xlets in persistent memory of the STB's 40.
- DIII Download Info Indication
- each STB 40 includes class, loader software which is operable to invoke the aforementioned Security Manager if stored Xlets have not been executed before or have been in the meantime updated.
- the method of the invention described in the foregoing is susceptible to being used in DTV systems including STB's, the method is also applicable to mobile telephone networks in which the STB's 40 and their monitors 50 are substituted by hand-held mobile telephones, for example mobile telephones including liquid crystal display suitable for displaying 2-dimensional graphical images.
- the STB's 40 and their associated monitors 50 are susceptible to being spatially co-located in corresponding housing and are not limited to being two mutually detachable items.
- expressions such as “include”, “contain”, “comprise”, “incorporate”, “have”, “has” are to be construed as being non-exclusive, namely such expressions do not exclude other components or items also being present.
- reference to the singular shall also be construed to include the plural.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP04744470A EP1646938A2 (en) | 2003-07-10 | 2004-07-02 | Download, caching and execution of software applications in broadband systems |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP03102092 | 2003-07-10 | ||
PCT/IB2004/051101 WO2005006180A2 (en) | 2003-07-10 | 2004-07-02 | Download, caching and execution of software applications in broadband systems |
EP04744470A EP1646938A2 (en) | 2003-07-10 | 2004-07-02 | Download, caching and execution of software applications in broadband systems |
Publications (1)
Publication Number | Publication Date |
---|---|
EP1646938A2 true EP1646938A2 (en) | 2006-04-19 |
Family
ID=34042931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP04744470A Withdrawn EP1646938A2 (en) | 2003-07-10 | 2004-07-02 | Download, caching and execution of software applications in broadband systems |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP1646938A2 (zh) |
JP (1) | JP2007528048A (zh) |
KR (1) | KR20060029689A (zh) |
CN (1) | CN1820251A (zh) |
WO (1) | WO2005006180A2 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2603621A1 (en) * | 2005-04-08 | 2006-10-19 | Biap Systems, Inc. | Method and system for downloading applications into memory-constrained systems |
KR100723913B1 (ko) | 2005-05-30 | 2007-05-31 | 주식회사 에어코드 | 구조화된 데이터 방송 어플리케이션, 그 기록 매체, 및 그동작 방법 |
KR100709790B1 (ko) | 2005-07-05 | 2007-04-19 | 주식회사 알티캐스트 | 셋톱박스 유저인터페이스 갱신 시스템 및 방법 |
EP1763246A1 (en) * | 2005-09-08 | 2007-03-14 | Osmosys S.A. | Method of access to applications transmitted within data streams of different television channels and device giving access to broadcasted applications |
KR100768894B1 (ko) | 2006-12-19 | 2007-10-19 | 삼성전자주식회사 | 디스플레이장치 및 방송시스템 |
KR100858197B1 (ko) * | 2007-01-11 | 2008-09-10 | 한국문화콘텐츠진흥원 | 디지털 텔레비전 수신기용 자바 응용 프로그램 생성 장치 |
WO2011013303A1 (ja) * | 2009-07-30 | 2011-02-03 | パナソニック株式会社 | 受信データ認証方法及びデジタル放送受信機 |
CN102196229A (zh) * | 2010-03-05 | 2011-09-21 | 海尔集团公司 | 功能扩展装置及具有该功能扩展装置的电视机 |
CN104796763A (zh) * | 2015-04-01 | 2015-07-22 | 太仓苏易信息科技有限公司 | 一种触屏式外接电视机控制软件系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0949595A3 (en) * | 1998-03-30 | 2001-09-26 | Citicorp Development Center, Inc. | Method and system for managing applications for a multi-function smartcard |
CN1166176C (zh) * | 1999-08-05 | 2004-09-08 | 皇家菲利浦电子有限公司 | 用作服务器分配广播的独立应用程序的电视系统和分配广播的独立应用程序的方法 |
-
2004
- 2004-07-02 KR KR1020067000645A patent/KR20060029689A/ko not_active Application Discontinuation
- 2004-07-02 EP EP04744470A patent/EP1646938A2/en not_active Withdrawn
- 2004-07-02 WO PCT/IB2004/051101 patent/WO2005006180A2/en not_active Application Discontinuation
- 2004-07-02 CN CNA200480019595XA patent/CN1820251A/zh active Pending
- 2004-07-02 JP JP2006518466A patent/JP2007528048A/ja active Pending
Non-Patent Citations (1)
Title |
---|
See references of WO2005006180A2 * |
Also Published As
Publication number | Publication date |
---|---|
KR20060029689A (ko) | 2006-04-06 |
WO2005006180A2 (en) | 2005-01-20 |
WO2005006180A3 (en) | 2006-02-23 |
CN1820251A (zh) | 2006-08-16 |
JP2007528048A (ja) | 2007-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7051325B2 (en) | Apparatus and method for upgrading software | |
CA2497013C (en) | Broadcast carousel system access for remote home communications terminal | |
US20130031592A1 (en) | Smart set-top box and operation method for smart service and digital television service using single operating system | |
US9124931B2 (en) | Managing a TV application for over-the-top TV | |
AU9278398A (en) | Downloading data | |
RU2181929C2 (ru) | Извлечение секций данных из транслируемого потока данных | |
JP6080229B2 (ja) | アプリケーション管理装置 | |
EP3474559B1 (en) | Smart-television playback method and apparatus | |
WO2005006180A2 (en) | Download, caching and execution of software applications in broadband systems | |
KR100709348B1 (ko) | 채널 맵 업데이트를 위한 영상재생장치 및 채널 맵 업데이트 방법 | |
US8125567B2 (en) | Apparatus and method for controlling the screen size of real-time video | |
US20070169108A1 (en) | Method of executing software applications | |
US20090044281A1 (en) | Java conditional access apparatus | |
US7917921B2 (en) | Control of an interactive application | |
JP2001519125A (ja) | テレビジョンまたはラジオ制御システムの開発 | |
JP2002320158A (ja) | 機能追加削除型受信機及び機能搭載方法並びに機能提供方法 | |
US6832323B1 (en) | Object and feature authorization for digital communication terminals | |
CN113784219A (zh) | 终端设备升级方法、终端设备、控制系统及存储介质 | |
JP5092608B2 (ja) | 受信装置 | |
CN111050196A (zh) | 广告投放方法、智能电视及计算机存储介质 | |
KR101224304B1 (ko) | 방송수신장치 및 그 소프트웨어 업그레이드 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL HR LT LV MK |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G06F 9/445 20060101AFI20060419BHEP |
|
DAX | Request for extension of the european patent (deleted) | ||
REG | Reference to a national code |
Ref country code: DE Ref legal event code: 8566 |
|
18D | Application deemed to be withdrawn |
Effective date: 20060211 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
R18D | Application deemed to be withdrawn (corrected) |
Effective date: 20060824 |