[go: up one dir, main page]

CZ200243A3 - Spouątění a testování aplikací - Google Patents

Spouątění a testování aplikací Download PDF

Info

Publication number
CZ200243A3
CZ200243A3 CZ200243A CZ200243A CZ200243A3 CZ 200243 A3 CZ200243 A3 CZ 200243A3 CZ 200243 A CZ200243 A CZ 200243A CZ 200243 A CZ200243 A CZ 200243A CZ 200243 A3 CZ200243 A3 CZ 200243A3
Authority
CZ
Czechia
Prior art keywords
decoder
receiver
application
workstation
file
Prior art date
Application number
CZ200243A
Other languages
English (en)
Inventor
Jean-Bernard Gerard Maurice Beuque
Hongtao Liao
Mahmoud Boudokhane
Didier Vincent
Original Assignee
Canal+ Societe Anonyme
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from EP99401746A external-priority patent/EP1067455A1/en
Application filed by Canal+ Societe Anonyme filed Critical Canal+ Societe Anonyme
Publication of CZ200243A3 publication Critical patent/CZ200243A3/cs

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/362Debugging of software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Information Transfer Between Computers (AREA)

Description

Spouštění a testování aplikací
Oblast techniky
Předkládaný vynález se týká přijímače/dekodéru (například pro analogový nebo digitální systém), pracovní stanice a realizačního nástroje, a způsobu přenosu aplikace do přijímače/dekodéru a způsobů spouštění aplikace v přijímači/dekodéru.
Vynález má obzvláštní využití ve spojení s vývojem,
IQ testováním a laděním aplikací pro přijímače/dekodéry, ačkoliv může být rovněž použit, například, pro předvádění takovýchto aplikací.
Dosavadní stav techniky
V případě digitálních televizních systémů mají 15 přenosové televizní kanály k divákovi spíše digitální než analogovou podobu. Digitální kanály jsou kódovány do digitálního datového toku na vysílací straně a jsou dekódovány na přijímací straně s použitím digitálního dekodéru, který může. být bud’ v digitální nastavovací skříni (set-top box - DSTB) nebo v integrované digitální televizi. Pro umožnění interaktivíty může být vytvořena vzestupní linka, buď přes stejné prostředí, které dodává televizní kanály, nebo přes odlišné prostředí, jako je telefonní linka.
Zde používaný termín digitální televizní systém zahrnuje, například, jakýkoliv satelitní, pozemní, kabelový nebo jiný systém.
Digitální dekodéry obvykle obsahují procesor, na kterém mohou být spouštěny programy, známé jako aplikace.
Příklady takovýchto aplikací zahrnují programové průvodce, • · > « • · • · · · teleshopping, kvízy, domácí bankovnictví a televizní hlasování. Takové aplikace obvykle zobrazují nabídku (menu) na televizní obrazovce, ze které uživatel může zvolit určitou možnost. Data, použitá v aplikaci, mohou být přenesena do dekodéru ve stejném datovém toku jako televizní kanály.
Výsledek volby může být přímo interpretován aplikací, spuštěné na dekodéru, nebo může být přenášen přes vzestupnou linku pro umožnění provedení odpovídající akce.
Aplikace mohou být trvale přítomné v DSTB nebo integrované digitální televizí, nebo mohou být stahovaný pres digitální prostředí na vyžádání a když jsou vyžádány. Pro spouštění aplikací má dekodér prováděcí prostředek, jako je virtuální počítač (VM)pro spouštění, například, Java aplikací (aplikací v jazyku Java).
15
S rychle rostoucí množstvím služeb, které začínají být poskytovány uživateli, vzniká potřeba nástrojů pro vývoj aplikací, které mohou umožnit konstruování, vytváření, ladění a testování aplikací. Příkladem takovéhoto aplikačního nástroje je Mecříahighway Application Workshop, dodávaný firmou CANAL+.
Známé nástroje pro vývoj aplikací obvykle umožňují, aby aplikace byly vyvíjeny na pracovní stanici, jako je PC nebo pracovní stanice UNIX (pracující s operačním systémem
UNIX). Když je aplikace připravena pro testování, je stažena do digitálního dekodéru, jako je DSTB.
Jak je popsáno v mezinárodní patentové přihlášce číslo WO 98/43165 stejného přihlašovatele, jejíž obsah je tímto začleněn do tohoto popisu prostřednictvím odkazu, může být pracovní stanice, spřažená s jednotkou typu • · • · • · · · • · · · · · • · · · · · • * ·· · · • · · · · · · příjímače/dekodéru, vybavena pro ladění aplikací. Za účelem odladění aplikace, je tato aplikace celá stažena do přijímače/dekodéru s využitím spojení (linky). Ladící program na pracovní stanici je potom použit pro monitorování a/nebo pro řízení činnosti aplikace s použitím dvou dalších linek pro předávání řídících signálů do a z přijímače/dekodéru.
Podstata vynálezu
Podle jednoho aspektu předkládaného vynálezu je
2_0 navržen přijímač/dekodér zahrnující prostředek (například paměť) pro uložení aplikace, prostředek (například procesor, virtuální počítač, prováděcí program, nebo jakýkoliv jiný vhodný prováděcí prostředek nebo prostředí) pro spuštění uložené aplikace, a prostředek (například propojovací rozhraní) pro komunikaci přes síť odlaďovacích zpráv do vzdálené pracovní stanice pro použití touto pracovní stanicí pří ladění uložené aplikace.
Doposud takovéto uspořádání nebylo uvažováno, v principu v důsledku nadměrné složitosti, spojené se zajištěním síťových funkcí pro přijímač/dekodér ve srovnání s jednoduchým prostým spojením. Nyní ale podle předkládaného vynálezu bylo shledáno, že v souvislosti s testování a/nebo laděním aplikací mohou vyplynout různé výhody z poskytnutí síťových funkcí přijímači/dekodéru.
. z ,
Vytvořením prijimace/dekoderu s prostředkem pro komunikování odlaďovacích zpráv přes síť se tento přijímač/dekodér může stát součástí prostředí pro vývoj aplikace, takže, například, mohou být při testování aplikace mezi přijímačem/dekodérem a pracovní stanicí vyměňovány soubory, řídicí signály nebo informační signály. To muže umožnit větší pružnost při testování aplikací, než bylo doposud vůbec možné.
Navíc mohou být mezi přijímačem/dekodérem, pracovní stanicí a dalšími zařízeními, připojenými k síti, sdíleny zdroje. Například tak přijímač/dekodér může mít přes síť přímý přístup k vnějšímu paměťovému zařízení, jako je pevný disk v pracovní stanici.
V důsledku zajištění síťových funkcí může být přijímač/dekodér fyzicky vzdálený od pracovní stanice, když je aplikace laděna. Síť může zajistit zesílení signálů, takže přijímač/dekodér může být oddělen většími vzdálenostmi, než by jinak bylo možné.
Termín ladění, používaný v tomto popisu, výhodně v sobě zahrnuje, že aplikace je řízena a/nebo monitorována pro umožnění identifikace chyb nebo vad v aplikaci. Odlaďovací zprávy výhodně zahrnují řídící a/nebo monitorovací zprávy pro ladění aplikace, přičemž tyto zprávy mohou být přijímány nebo vysílány přijímačem/dekodérem. Například tak může přijímač/dekodér přijmout příkaz, který jej instruuje, aby vyslal určitou informaci o stavu aplikace nebo přijímače/dekodéru, přičemž jak příkaz tak i informace jsou označována jako odlaďovací zprávy. Tímto způsobem mohou být realizovány odlaďovací funkce, jako je monitorování proměnných, spouštění a zastavování provádění aplikace, trasovací funkce, monitorování stavu přijímače/dekodéru a další. Přijímač/dekodér je výhodně provozovatelný v odlaďovacím režimu pro ladění aplikace.
Termín síť v sobě výhodně zahrnuje, že zařízením jsou přiděleny adresy. To výhodně poskytuje možnost mít více ·
• · · · než dvě zařízení v logické síti, přičemž tato zařízení jsou rozlišena prostřednictvím adres. To je odlišné od, například, jednoduché sériové línky mezí dvěma zařízeními. Výhodně má síť protokol, který přijímači/dekodéru umožňuje přístup k souborům na vzdáleném paměťovém zařízení, jako je pevný disk pracovní stanice. Výhodně síť vysílá signály ve formě paketů dat, majících cílové adresy. Výhodně přijímač/dekodér obsahuje prostředek pro uložení adresy (nebo identifikátoru) přijímače/dekodéru.
Pokud aplikace zahrnuje množství souborů, může přijímač/dekodér zahrnovat prostředek (například propojovací rozhraní) pro selektivní čtení alespoň jednoho ze souborů z vnějšího paměťového prostředku, ačkoliv přijímač/dekodér může být rovněž vytvořen bez takovéhoto prostředku.
Prostředek pro komunikování odlaďovací zprávy může být upraven pro příjem odlaďovací zprávy ze sítě, výhodně pro řízení provádění aplikace v závislosti na zprávě. Operátor na vzdáleném místě (jako je pracovní stanice) tudíž může řídit provádění aplikace.
Výhodně zpráva obsahuje identifikátor vzdáleného hostitele a prostředek pro komunikování odlaďovací zprávy je upraven pro komunikování další odlaďovací zprávy se vzdáleným hostitelem, identifikovaným ve zprávě.
Prostředek pro komunikování odlaďovací zprávy může být rovněž nebo alternativně upraven pro vysílání odlaďovací zprávy do sítě, přičemž tato zpráva výhodně obsahuje informace týkající se provádění aplikace. Operátor na vzdáleném místě tudíž může monitorovat provádění aplikace.
• « • · • · · · • « β
<· · · · · · • · ·· » · • · · · · · ·
V dalším aspektu předkládaného vynálezu je vytvořena pracovní stanice pro ladění aplikace, spuštěné na vzdáleném přijímači/dekodéru, přičemž tato pracovní stanice zahrnuje prostředek (například propojovací rozhraní) pro komunikování odlaďovací zprávy s přijímačem/dekodérem přes síť, výhodně pro řízení a/nebo pro monitorování provádění aplikace na přijímači/dekodéru.
Předkládaný vynález rovněž navrhuje nástroj pro vývoj aplikací (aplikační vývojový nástroj), zahrnující přijímač/dekodér v kterékoliv z výše popisovaných podob a pracovní stanici v kterékoliv z výše popisovaných podob.
Nástroj pro vývoj aplikací může obsahovat síťový prováděcí prostředek pro realizací komunikace mezi přijímačem/dekodérem a pracovní stanicí.
Předkládaný vynález rovněž navrhuje prostředí pro vývoj aplikací (aplikační vývojové prostředí), které zahrnuje nástroj pro vývoj aplikací, podle výše uvedeného popisu, a síť, přes kterou si pracovní stanice a přijímač/dekodér vyměňují zprávy.
Ve způsobovém aspektu předkládaného vynálezu je navržen způsob ladění aplikace, uložené a spuštěné na přijímači/dekodéru, přičemž tento způsob zahrnuje komunikování odlaďovací zprávy přes síť do vzdálené pracovní stanice pro použití pracovní stanicí při ladění uložené aplikace.
Přijímač/dekodér může přijímat odlaďovací zprávu ze sítě, výhodně pro řízení provádění aplikace v závislosti na zprávě. Zpráva může obsahovat identifikátor vzdáleného hostitele, přičemž způsob zahrnuje komunikování další • · · * · · • · ·· · * • ♦ · · · · · ♦
odlaďovací zprávy se vzdáleným hostitelem, identifikovaným ve zprávě.
Způsob může rovněž nebo alternativně zahrnovat vysílání odlaďovací zprávy do sítě, přičemž zpráva výhodně z
obsahuje informace týkající se provádění aplikace.
Problémem dosavadního stavu techniky, který byl identifikován v souladu s předkládaným vynálezem, je to, že pokud je vyžadováno provedení jakýchkoliv změn v aplikaci v důsledku testování na přijímači/dekodéru, musí být příslušné změny provedeny v nástroji pro vývoj aplikací, aplikace musí být opětovně kompilována jako rezidentní a potom celá rezidentní aplikace a virtuální počítač musí být staženy do dekodéru, přičemž tento proces může být časově velmi náročný a těžkopádný.
Podle dalšího aspektu předkládaného vynálezu, který může být realizován buď nezávisle nebo v závislosti na přijímači/dekodéru v kterékoliv z výše popisovaných podob, je navržen přijímač/dekodér zahrnující prostředek pro spouštění
2Q aplikace, přičemž tato aplikace zahrnuje množství souborů, a prostředek pro selektivní čtení alespoň jednoho ze souborů ze vzdálené pracovní stanice.
Předkládaný vynález rovněž navrhuje přijímač/dekodér zahrnující prostředek pro spouštění aplikace, přičemž tato aplikace zahrnuje množství souborů, a prostředek pro selektivní čtení alespoň jednoho ze souborů ze vnějšího paměťového prostředku. Výhodně je tento vnější paměťový prostředek spojen se sítí a přijímač/dekodér zahrnuje prostředek pro selektivní čtení alespoň jednoho ze souborů ze sítě.
• · · · ► *» · · • · · · « · ·«·· • ·· 4 4 4 · · 4 •4 ♦ ♦ · · ·«« ♦ 4 ·· «· «»
Vytvořením přijímače/dekodéru, který může selektivně číst soubor ze sítě, mohou být přijímačem/dekodérem čteny části aplikace, například následně po modifikování některé z částí aplikace.
V kterémkoliv aspektu může být prostředkem pro spouštění aplikace prováděcí prostředek, jako je procesor, virtuální počítač, prováděcí program nebo jiný vhodný prováděcí prostředek nebo prostředí, a prostředkem pro čtení alespoň jednoho ze souborů ze sítě nebo vnějšího paměťového prostředku může být vstupně/výstupní port a přidružené ovladače. Vnějším paměťovým prostředkem může být pevný disk počítače nebo síťová datová paměť nebo jakékoliv jiné paměťové médium.
Termín příjímač/dekodér, používaný v tomto popisu může v sobě zahrnovat přijímač pro příjem buď kódovaných nebo nekódovaných signálů, například televizních a/nebo rádiových signálů, které mohou být přenášeny nebo vysílány nějakým dalším prostředkem, tento termín v sobě může rovněž zahrnovat dekodér pro dekódování přijímaných signálů. Provedení takovýchto přijímačů/dekodérů mohou zahrnovat dekodér integrální s přijímačem pro dekódování přijímaných signálů, například, v nastavovací řídící skříni (set top box), jako je dekodér pracující v kombinaci s fyzicky odděleným přijímačem, nebo jako je dekodér zahrnující v sobě přídavné funkce, jako je webovský prohlížeč, videorekordér nebo televize. Ve smyslu, používaném v tomto popisu, tento termín přijímač/dekodér zahrnuje jednotku typu přijímače/dekodéru, která může být použita pro testování a/nebo ladění aplikací.
Výhodně je přijímač/dekodér upraven pro příjem zprávy, která obsahuje identifikátor místa, na kterém jsou «4 4 • · »
«4 ·4 ·4 soubory uloženy. Výhodně je přijímač/dekodér upraven pro čtení jednotlivého souboru ze sítě nebo vnějšího paměťového prostředku, takže není přenášeno více dat, než je potřebné.
Aplikace může obsahovat určité soubory, které nejsou vždy vyžadovány pro provoz aplikace a tudíž, než aby stahoval celou aplikaci v jednom okamžiku, je přijímač/dekodér výhodně upraven pro čtení uvedeného alespoň jednoho souboru, když je tento soubor požadován pro provoz aplikace.
Přijímač/dekodér může být upraven pro čtení 10 aktualizovaných souborů, takže pokud jsou soubory modifikovány, přijímač/dekodér bude aktualizován modifikovanými soubory.
Vnější paměťový prostředek může být částí pracovní 25 stanice, jako je například pracovní stanice, která je používána pro editování aplikací. Vnějším paměťovým prostředkem může být rovněž datová paměť, instalovaná na síti. Aby se kompenzovala skutečnost, že příjímač/dekodér nemusí mít síťovou zásobníkovou paměť, může být
2Q přijímač/dekodér upraven pro použití jaké své síťové zásobníkové paměti simulované zásobníkové paměti na pracovní stanici. Alternativně může být přijímač/dekodér vytvořen se síťovou zásobníkovou pamětí.
Za účelem inicializace aplikace je přijímač/dekodér výhodně upraven pro stahování zaváděcího souboru z vnějšího paměťového prostředku.
Podle dalšího aspektu předkládaného vynálezu, který může být realizován buď nezávisle nebo v závislosti na pracovní stanici v jakémkoliv z výše popisovaných provedení, je vytvořena pracovní stanice zahrnující paměťový prostředek • 9 9 · • 9 9 9 ♦ 9 9 · • 9 «· ·· 99 * * 9 9 · 9 • 9 99 (jako je pevný disk nebo jiné paměťové médium) pro uloženi aplikace, která má být spuštěna na přijimači/dekodéru, přičemž aplikace zahrnuje množství souborů, a prostředek (jako je vstupně/výstupní port a přidružené ovladače) pro umožnění přístupu k alespoň jednomu ze souborů přijímačem/dekodérem připojeným k pracovní stanici prostřednictvím sítě.
Podle dalšího aspektu předkládaného vynálezu je vytvořena pracovní stanice zahrnující paměťový prostředek (jako je pevný disk nebo jiné paměťové médium) pro uloženi aplikace, přičemž aplikace zahrnuje množství souborů, a prostředek (jako je vstupně/výstupní port a přidružené ovladače) pro umožnění přístupu k alespoň jednomu ze souborů přijímačem/dekodérem.
Prostředek pro umožnění přístupu k uvedenému alespoň jednomu souboru může být upraven pro umožnění přečtení jednotlivého souboru. Pracovní stanice může dále zahrnovat prostředek pro editování aplikace.
2o Podle dalšího aspektu předkládaného vynálezu, který může být realizován buď nezávisle na nebo v závislosti na nástroji pro vývoj aplikací v kterémkoliv jeho výše popisovaném provedení, je vytvořen nástroj pro vývoj aplikací, který zahrnuje pracovní stanici pro editování aplikace a přijímač/dekodér pro spouštění aplikace, přičemž přijímač/dekodér má prostředek pro selektivní čtení alespoň části aplikace ze síťové datové paměti a pracovní stanice má prostředek pro inicializaci komunikace této nebo každé části do přijímače/dekodéru.
• · » *· · • * · · * » ♦ · • · ·♦ • · · · • · · ·
9 9 ·· 99
9 9 9
9· 9
Podle dalšího aspektu předkládaného vynálezu je navržen nástroj pro vývoj aplikací, který zahrnuje pracovní stanici pro editování aplikace a přijímač/dekodér pro spouštění aplikace, přičemž přijímač/dekodér má prostředek pro selektivní čtení alespoň části aplikace z pracovní stanice a pracovní stanice má prostředek pro komunikování této nebo každé části do přijímače/dekodéru. Pracovní stanice může dále zahrnovat paměťový prostředek, jako je pevný disk nebo jiné paměťové médium, pro uložení aplikace.
0
Ve shora uvedených aspektech aplikace může zahrnovat množství souborů. Přijímač/dekodér může být upraven pro čtení souboru, když je tento soubor požadován pro provoz aplikace.
Pracovní stanice může být upravena pro aktualizaci souboru a přijímač/dekodér může být upraven pro čtení uvedeného 15 souboru, jakmile je aktualizován.
Za účelem zajištění, aby přijímačem/dekodérem byly používány aktualizované soubory, může být přijímač/dekodér upraven pro čtení nejnovější verze souboru. Přídavně nebo alternativně může být pracovní stanice upravena pro instruování přijímače/dekodéru, aby vyřadil soubor, například starou verzi souboru, který již byl aktualizován, takže když přijímač/dekodér příště potřebuje tento soubor, bude z pracovní stanice přečten aktualizovaný soubor.
Nástroj pro vývoj aplikací může dále obsahovat síťový prováděcí prostředek pro realizaci komunikace mezi přijímačem/dekodérem a sítí. Navíc je pracovní stanice obvykle rovněž připojena k síti.
Ve výhodných provedeních nástroje pro vývoj aplikací, pracovní stanice dále zahrnuje odlaďovací prostředek • ·
pracující pro řízení a/nebo monitorování provádění aplikace na přijímači/dekodéru. Tento odlaďovací prostředek a aplikace si mohou vyměňovat řídící signály přes síť. Soubory a řídící signály přitom tedy mohou být přenášeny na stejné síti.
o
Podle způsobového aspektu předkládaného vynalezu je navržen způsob přenosu aplikace z pracovní stanice pro editování aplikace do přijímače/dekodéru pro spouštění aplikace, přičemž aplikace zahrnuje množství souborů, a přičemž tento způsob zahrnuje přenos (obvykle přes síť) jednotlivého souboru z pracovní stanice do přijímače/dekodéru. Soubor může být přenášen pouze, když je to vyžadováno pro provoz aplikace. Způsob může dále zahrnovat aktualizaci souboru a přenos aktualizovaného souboru do přijímače/dekodéru.
15
Podle dalšího způsobového aspektu je navržen způsob spouštění aplikace na přijímači/dekodéru, přičemž aplikace zahrnuje množství souborů, a přičemž tento způsob zahrnuje přenos souborů do přijímače/dekodéru, když jsou vyžadovány pro provoz aplikace.
Podle dalšího způsobového aspektu je navržen způsob spouštění aplikace na přijímači/dekodéru, přičemž aplikace zahrnuje zaváděcí soubor a alespoň jeden další soubor, a přičemž tento způsob zahrnuje:
přenos (případně přes síť) zaváděcího souboru do přijímače/dekodéru;
provedení zaváděcího souboru v přijímači/dekodéru; a přenos uvedeného alespoň jednoho dalšího souboru, když je vyžadován.
·♦··
Alespoň jeden ze zaváděcího souboru a alespoň jednoho dalšího souboru může být přenášen ze síťové datové paměti.
Předkládaný vynález rovněž navrhuje počítačově čitelné médium, mající v sobě uložený program pro provádění kteréhokoliv z výše popisovaných způsobů, a počítačový programový produkt zahrnující program pro provádění kteréhokoliv z výše popisovaných způsobů.
Předkládaný vynález rovněž navrhuje zařízení v podstatě podle zde uvedeného popisu ve spojení s odkazy na připojené výkresy a podle znázornění na připojených výkresech, a způsob v podstatě podle zde uvedeného popisu ve spojení s odkazy na obr. 7 připojených výkresů.
Znaky jednoho z aspektů mohou být aplikovány na jiné aspekty; znaky zařízení mohou být aplikovány na znaky způsobu a obráceně.
Výhodné znaky předkládaného vynálezu budou nyní popsány, čistě prostřednictvím příkladu, ve spojení s odkazy na připojené výkresy.
Přehled obrázků na výkresech
Obr.l znázorňuje architekturu typického digitálního televizního systému;
Obr. 2 znázorňuje architekturu interaktivního systému digitálního televizního systému podle obr. 1;
Obr. 3 znázorňuje blokové schéma struktury přijímače/dekodéru systému podle obr. 1;
Obr. 4 znázorňuje funkční blokové schéma vrstvové architektury přijímače/dekodéru;
• φφ • · « · φ φ ·· ·· φφ φφφφ
Obr. 5 znázorňuje obecné schéma realizačního nástroje;
Obr.6 znázorňuje hlavní komponenty realizačního nástroje podle obr. 5;
Obr.7 znázorňuje činnost realizačního nástroje podle obr. 5;
Obr. 8 znázorňuje architekturu vstupně/výstupních vrstev realizačního nástroje podle obr. 5;
Obr.9 znázorňuje schéma ilustrující síťový datový rámec; a
Obr.10 znázorňuje funkční blokové schéma dalšího provedení vynálezu.
Příklady provedení vynálezu
Přehled digitálního televizního systému
Celkový přehled digitálního televizního systému A je znázorněn na obr. 1. Předkládaný vynález zahrnuje většinou běžný digitální televizní systém 2, který využívá známý MPEG-2 kompresní systém pro vysílání komprimovaných digitálních signálů. Přesněji MPEG-2 komprimátor 3. ve vysílacím centru přijímá tok digitálního signálu (obvykle tok video signálů). Komprimátor 2 je spojen s multiplexorem a kodérem A prostřednictvím spojení 5.·
Multiplexor A přijímá množství dalších vstupních signálů, sestavuje transportní tok a vysílá komprimované digitální signály do vysílače 6. vysílacího centra přes spojení J_, které samozřejmě může být představováno velkým množstvím různých forem včetně telekomunikačních linek. Vysílač A vysílá elektromagnetické signály přes vzestupné ·· φφ > · · <
»φ φφφφ spojení 8. směrem k satelitnímu odpovídači 9., kde jsou tyto signály elektronicky zpracovány a vysílány přes teoretické sestupné spojení 10 do pozemního přijímače 12., běžně ve formě parabolické antény vlastněné nebo pronajímané koncovým uživatelem. Jiné transportní kanály pro vysílání dat jsou samozřejmě možné, jako je pozemní přenos, kabelové vysílání, kombinované satelitní/kabelové spojení, telefonní sítě a podobně.
Signály přijímané přijímačem 12 jsou vysílány do integrovaného přijímače/dekodéru 13 vlastněného nebo pronajímaného koncovým uživatelem a spojeného s televizním zařízením 14 koncového uživatele. Přijímač/dekodér 13 dekóduje komprimovaný MPEG-2 signál na televizní signál pro televizní zařízení 14 . Ačkoliv je na obr. 1 znázorněn samostatný přijímač/dekodér, může být tento přijímač/dekodér rovněž součástí integrované digitální televize. Ve zde používaném smyslu termín přijímač/dekodér v sobě zahrnuje samostatný přijímač/dekodér, jako je nastavovací řídící skříň (set-top box), a televizi mající v sobě integrovaný přijímač/dekodér.
Ve vícekanálovém systému multiplexor 4. zpracovává audio a video informace přijímané z množství paralelních zdrojů a interaguje s vysílačem 6. pro přenos informace po odpovídajícím počtu kanálů. Vedle audiovizuální informace, mohou být zprávy nebo aplikace nebo jakýkoliv jiný druh digitálních dat zaváděny do některých nebo do všech těchto kanálů, proloženě s vysílanou digitální audio a video informací.
Systém 15 podmíněného přístupu je spojen s multiplexorem 4. a přijímačem/dekodérem 13 a je umístěn fc fc
fc fcfc • fcfcfc fc · · fc • fcfc fc • fc fcfc částečně ve vysílacím centru a částečně v dekodéru. Tento systém umožňuje koncovému uživateli přístup k digitálním televizním vysíláním (přenosům) od jednoho nebo více dodavatelů (poskytovatelů) vysílání. Inteligentní karta, schopná dekódování zpráv týkajících se komerčních nabídek (to jest jeden nebo několik televizních programů, které jsou prodávány dodavatelem vysílání), může být vložena do přijímače/dekodéru 13. S použitím dekodéru 13 a inteligentní karty může koncový uživatel nakupovat komerčně nabízené vysílané události bud’ v módu předplacení nebo v módu platby za shlédnutí. Ve zde použitém smyslu termín inteligentní karta v sobě zahrnuje, ale samozřejmě ne výhradně, jakékoliv kartové zařízení na bázi čipu nebo předmět s podobnou funkcí a výkonem, mající například mikroprocesor a/nebopaměťový prostředek. V tomto termínu jsou zahrnuta zařízení mající alternativní fyzické podoby ke kartě, například zařízení ve tvaru klíče, jaká jsou často používána v systémech TV dekodérů.
Jak bylo zmiňováno výše, programy vysílané systémem
O Q jsou kódovány v multiplexoru 4., přičemž podmínky a kodovaci klíče, aplikované na daný přenos, jsou určovány systémem 15 podmíněného přístupu. Vysílání kódovaných dat tímto způsobem je velmi dobře známé v oblasti placených TV systémů. Obvykle jsou kódovaná data vysílána společně s řídícím slovem pro ? 5 dekódování těchto dat, přičemž řídící slovo je samo kodovano prostřednictvím tak zvaného exploatačního klíče a vysíláno v kódované formě.
Kódovaná (šifrovaná) data a kódované (šifrované) řídící slovo jsou potom přijímána dekodérem 13, který má přístup k ekvivalentu exploatačního klíče, který je uložen na • 0 ·· 4 *000 ·
0 00 0 • 0 · · < · *000 0
0 0 I » ·« 0 · 0« • 0 0 0 ·· 0 0
0 0 0 0
0·0 00 * ♦· 0 0 inteligentní kartě vložené do dekodéru, pro dekódování kódovaného řídícího slova a potom pro dekódování vysílaných dat. Předplacený účastník bude přijímat, například, v přenášené měsíční ECM (opravňovací řídící zpráva) exploatační klíč potřebný pro dekódování řídícího slova a tak pro umožnění sledování vysílání.
Interaktivní systém 16, rovněž spojený s multiplexorem 4. a přijímačem/dekodérem 13 a opět umístěný částečně ve vysílacím centru a částečně v dekodéru, umožňuje koncovému uživateli interagovat s různými aplikacemi přes modemový zpětný kanál 17. Modemový zpětný kanál 17 může být rovněž využit pro komunikace použité v systému 15 podmíněného přístupu. Interaktivní systém 16 může být použit, například, pro umožnění divákovi komunikovat bezprostředně s vysílacím centrem pro požadavek o autorizaci sledování určité události, stažení aplikace a podobně.
Obr. 2 znázorňuje obecnou architekturu interaktivního televizního systému 16 v digitálním televizním systému 1 podle předkládaného vynálezu.
Například tento interaktivní systém 16 umožňuje koncovému uživateli nakupovat položky z katalogů, umístěných na obrazovce, konzultovat místní zprávy a meteorologické mapy na vyžádání a hrát hry prostřednictvím svého televizního zařízení.
Interaktivní systém 16 zahrnuje v přehledu čtyři hlavní prvky:• realizační nástroj 4004 ve vysílacím centru, nebo kdekoliv jinde, pro umožnění dodavateli vysílání vytvářet, vyvíjet, ladit a testovat aplikace;
♦ · ««-·« ί
• 4 *· * · · 1 » · ·· ι · · 4 » · · 4 • 4 · · »· 44 • 4 4 9
4 4 • aplikační a datový server (obslužný kanál) 4006 ve vysílacím centru, spojený s realizačním nástrojem 4004 pro umožnění dodavateli vysílání připravovat, ověřovat (potvrzovat) a formátovat aplikace a data pro předání do multiplexoru a kodéru 4. pro vložení do MPEG-2 transportního toku (obvykle do jeho privátního úseku), který má být přenesen ke koncovému uživateli;
• virtuální počítač obsahující prováděcí prostředek 4008, který je v proveditelném kódu instalován.v přijímači/dekodéru 13, vlastněném nebo pronajatém koncovým uživatelem, pro umožnění koncovému uživateli přijímat, ověřovat, dekomprimovat a stahovat (zavádět) aplikace do pracovní paměti dekodéru 13 pro provedení. Prováděcí prostředek 4008 rovněž spouští rezidentní aplikace obecného účelu. Prováděcí prostředek 4008 je nezávislý na hardwaru a operačním systému; a • modemový zpětný kanál 17 mezi přijímačem/dekodérem 13 a aplikačním a datovým serverem 4006 pro umožnění přenosu signálů instruujících server 4006, aby vložil data a aplikace do MPEG-2 transportního toku na žádost koncového uživatele.
Interaktivní televizní systém pracuje s využitím aplikací, které řídí funkce přijímače/dekodéru a různých 25 zařízení v něm obsažených. Aplikace jsou reprezentovány v prováděcím prostředku 4008 jako zdrojové soubory. Modul je sada zdrojových souborů a dat. Paměťové médium přijímače/dekodéru je paměťový prostor pro moduly. Moduly mohou být stahovány do přijímače/dekodéru 13 z MPEG-2 transportního toku.
9 • «
» 9
9999 ·♦
9*9
Přijímač/dekodér
Ve spojení s odkazy na obr. 3 budou nyní popsány prvky při j ímače/dekodéru 13., nebo nastavovací řídící skříně (set-top box). Prvky znázorněné na tomto obrázku budou popsány ve spojeni s funkčními bloky.
Dekodér 13 zahrnuje centrální procesor 20 obsahující přidružené paměťové prvky a upravený pro příjem vstupních dat ze sériového rozhraní 21, paralelního rozhraní 22, modemu 23 (spojeného s modemovým zpětným kanálem 17 podle obr. 1), a přepínacích kontaktů 24 na předním panelu dekodéru.
Přijímač/dekodér je navíc upraven pro příjem vstupů z infra-červeného dálkového ovladače 25 přes řídící jednotku 26 a rovněž má dvě zařízení 27, 28 pro čtení inteligentních karet, která jsou upravena pro čtení bankovních respektive účastnických inteligentních karet 29, 30. Zařízení 28 pro čtení účastnické inteligentní karty zabírá s vloženou účastnickou inteligentní kartou 30 a s jednotkou 29 podmíněného přístupu pro přivedení potřebného řídícího slova
2Q do demultiplexoru/dekodéru 30 pro umožnění dekódování kódovaných přenášených signálů. Dekodér rovněž obsahuje běžný ladič (tuner) 31 a demodulátor 32 pro příjem a demodulaci satelitního vysílání před filtrováním a demultiplexováním prostřednictvím jednotky demultiplexoru/dekodéru 30.
Zpracování dat uvnitř přijímače/dekodéru je obecně realizováno prostřednictvím centrálního procesoru 20. Obr. 4 ilustruje softwarovou architekturu tohoto centrálního procesoru 20 přijímače/dekodéru. Jak je patrné na obr. 4, tato softwarová architektura zahrnuje prováděcí prostředek
4008, správce 4068 (logických) zařízení a množství
4 W 9 t 4 ·· ·9
4 4 4
4 9
9 4 · • 4 4
4« 4944 • · 49 · » 9 • 4 ·» • · · 4 9
9 9 4
94
4 4
9 4
9 9
4 4 · · 94 (logických) zařízení 4062 a ovladačů 4066 zařízení pro spouštění jedné nebo více aplikací 4056.
Pro účely tohoto popisu je aplikace výhodně úsek strojového kódu pro řízení vysokoúrovňových funkcí výhodně přijímače/dekodéru 13. Například, když koncový uživatel namíří ohnisko dálkového ovladače 25 na tlačítkový objekt viděný na obrazovce televizního zařízení 14 a stlačí potvrzovací klávesu, spustí se sekvence instrukcí, sdružená s tímto tlačítkem.
Interaktivní aplikace nabízí menu a vykonává příkazy na žádost koncového uživatele a poskytuje data týkající se účelu této aplikace. Aplikace mohou být buď rezidentními aplikacemi, to znamená, že jsou uloženy v ROM (nebo FLASH nebo jiné energeticky nezávislé paměti) přijímače/dekodéru 13, nebo mohou být vysílány a stahovány do RAM nebo FLASH paměti tohoto přijímače/dekodéru 13 .
Aplikace jsou uloženy v paměťových místech přijímače/dekodéru 13 a jsou reprezentovány jako zdrojové
2o soubory. Zdrojové soubory mohou například zahrnovat soubory jednotky popisu grafických objektů, soubory jednotky proměnných bloků, soubory instrukčních sekvencí, aplikační soubory a datové soubory, jak je podrobněji popsáno ve shora zmiňovaných patentových přihláškách.
Přijímač/dekodér obsahuje paměť rozdělenou na RAM médium, FLASH médium a ROM médium, ale tato fyzická organizace je odlišná od logické organizace. Paměť může být dále rozdělena na paměťová média nebo objemy sdružené s různými rozhraními. Z jednoho úhlu pohledu může být paměť považována za součást hardwaru; z jiného úhlu pohledu lze ·» «φφφ ·· ΦΦ ♦ « · « ·· ·« • 9 · » ·
Φ · ·Φ · * · · 9 9 9
9 9 9 9
99
9 ·
• · 9
9 9 paměť považovat za podporující nebo obsahující celý znázorněný systém, až na hardware.
Centrální procesor 20 lze považovat za soustředěný na prováděcím prostředku 4008 tvořícím část virtuálního počítače 4007. Ten je spojen s aplikacemi na jedné straně (vysokoúrovňová strana) a na druhé straně (nízkoúrovňová strana) přes různé mezilehlé logické jednotky, diskutované níže, s hardwarem 4061 přijímače/dekodéru. Hardware 4061 přijímače/dekodéru zahrnuje různé porty nebo rozhraní, jak bylo diskutováno výše (to jest například sériové rozhraní 21, paralelní rozhraní 22., modem 23 a řídící jednotka 26) .
Jak'je patrné zejména z obr. 4, jsou s virtuálním počítačem 4007 spojené různé aplikace 4056, přičemž některé z běžněji používaných aplikací mohou být více či méně trvale rezidentní v systému, jak je naznačeno prostřednictvím aplikace 4057, zatímco jiné budou stahovány do systému, například z MPEG datového toku nebo z jiných portů podle požadavků.
Virtuální počítač 4007 zahrnuje, kromě prováděcího prostředku 4008, určitou funkci rezidentní knihovny 4006, která obsahuje blok 4058 nástrojů. Knihovna 4006 obsahuje nejrůznější funkce v jazyku C, používané prováděcím prostředkem 4008. Tyto funkce zahrnují manipulaci s daty, jako je komprimování, dekomprimování nebo porovnávání datových struktur, kreslení čar a podobně. Knihovna 4006 rovněž zahrnuje informaci o mikroprogramovém vybavení v přijímači/dekodéru 13, jako jsou čísla verzí hardwaru a softwaru a dostupný prostor RAM, a funkce použité při stahování nového (logického) zařízení 4062. Funkce mohou být
·♦ 4«4·
• 4 ·« 4· stahovány do knihovny, která je uložena ve FLASH nebo RAM paměti.
Prováděcí prostředek 4008 je spojen se správcem 4068 (logických) zařízení, který je spojen se sadou (logických) zařízení 4062, která jsou spojena s ovladači 4060 (logických) zařízení, které jsou dále spojeny s porty nebo rozhraními. V širším smyslu může být ovladač (řídící program) zařízení považován za prostředek, který definuje logické rozhraní, takže dva různé ovladače zařízení mohou být spojeny se společným fyzickým portem. Zařízení bude obvykle spojeno s více než jen jedním ovladačem zařízení; pokud je zařízení spojeno s jedním řídícím programem (ovladačem) zařízení, bude toto zařízení obvykle konstruováno k tomu, aby bylo plně funkční pro komunikaci, takže potřeba samostatného ovladače zařízení je odstraněna. Určitá zařízení mohou komunikovat sama vzájemně mezi sebou.
Každá funkce přijímače/dekodéru 13 je reprezentována jako (logické) zařízení 4062 v softwarové architektuře přijímače/dekodéru 13. Zařízení mohou být buď lokální nebo vzdálená. Lokální zařízení 4064 zahrnují inteligentní karty, propojovací signály SCART, modemy, sériová a paralelní rozhraní, přehrávač MPEG video a audio signálů a prostředek pro vyjímání MPEG úseků a tabulek. Vzdálená zařízení 4066, vykonávaná na vzdáleném místě, se liší od lokálních zařízení tím, že port a procedura musí být definovány správcem nebo konstruktérem systému, spíše než aby byly definovány zařízením a ovladačem zařízení a zkonstruovány výrobcem přijímače/dekodéru.
Prováděcí prostředek 4008 pracuje pod řízením mikroprocesorem a společným aplikačním programovacím
4 4
4
4
4
9444 ·· • 4 · • ·4 • · · ♦
4 ·
9· *· • 9 4
4 4
4 4 4
4 4 4
94 rozhraním. Tyto prvky jsou nainstalovány v každém přijímači/dekodéru 13, takže z pohledu aplikací jsou všechny přijímače/dekodéry 13 naprosto stejné.
Prováděcí prostředek 4008 spouští aplikace 4056 na přijímači/dekodéru 13. Prováděcí prostředek 4008 rovněž vykonává interaktivní aplikace 4056 a přijímá události z vnějšku přijímače/dekodéru. 13, zobrazuje grafiku a texty, volá zařízení pro poskytování služeb a pro specifické výpočty využívá funkce knihovny 4006, která je s prováděcím prostředkem 4008 spojena.
Prováděcí prostředek 4008 je proveditelný kód instalovaný v každém přijímači/dekodéru 13 a zahrnuje interpreter pro interpretaci a spouštění aplikací. Prováděcí prostředek 4008 je adaptabilní pro jakýkoliv operační systém, včetně operačního systému pracujícího vždy s jednou úlohou (jako je MS-DOS). Prováděcí prostředek 4008 pracuje na bázi jednotek řadiče zpracování (které přebírají různé události, jako je stlačení klávesy, pro provedení různých akcí) a obsahuje svůj vlastní rozvrhující program pro řízení front událostí z různých hardwarových rozhraní. Prováděcí prostředek 4008 rovněž zpracovává zobrazování grafiky a textu. Jednotka řadiče zpracování zahrnuje sadu akcí-skupin. Každá událost způsobuje, že se jednotka řadiče zpracování přesune z její současné akce-skupiny do jiné akce-skupiny v závislosti na charakteru události a vykoná akce této nové akce-skupiny.
Prováděcí prostředek 4008 zahrnuje zaváděcí program kódu pro zavádění a stahování aplikací 4056 do paměti přijímače/dekodéru. Pouze potřebný úsek kódu je stahován do RAM média nebo FLASH média, aby se zajistilo optimální • · 4 4 4 4 • 4 ·· 44
4 · · 4*44
4 ·· 4 4 4 · 4 4 • · 4 4 4 · 4 444 4 4
4444 4444 444
44 44 44 44 4444 využití. Stažená data jsou ověřena prostřednictvím ověřovacího mechanismu pro zabránění jakékoliv modifikace aplikace 4056 nebo vykonání jakékoliv neautorizované aplikace. Prováděcí prostředek 4008 dále zahrnuje dekomprimátor. Protože aplikační kód (určitá forma přechodného kódu) je komprimován z důvodů úspor prostoru a kvůli rychlejšímu stahování z MPEG-2 přenosového toku nebo přes vestavěný režim přijímače/dekodéru, musí být kód dekomprimován před zavedením do RAM. Prováděcí prostředek
4008 rovněž zahrnuje interpreter pro interpretaci aplikačního kódu pro aktualizaci různých proměnných hodnot a určování změn stavů, a prostředek pro ověřování chyb.
Realizační nástroj
Jak bylo zmiňováno výše je realizační nástroj 4004 vytvořen pro umožnění konstruování, vytváření, testování a odlaďování aplikací. Realizační nástroj je spouštěn na pracovní stanici (WS), jako je osobní počítač (PC) pracující s operačním systémem Windows NT, Windows 95 nebo Windows 98, nebo počítač pracující s operačním systémem UNIX, nebo pracovní stanice pracující s jakýmkoliv jiným operačním systémem. Realizační nástroj umožňuje vývojáři aplikací konstruovat a vytvářet aplikace jejich editováním na obrazovce pracovní stanice.
Podle výhodného provedení vynálezu je za účelem testování a ladění aplikací použit přijímač/dekodér, který je spojen s pracovní stanicí. Přijímač/dekodér je spojen s pracovní stanicí takovým způsobem, že různé soubory, které vytvářejí aplikaci, mohou být stahovány do přijímače/dekodéru podle potřeby a když jsou potřebné.
• * • · · ·
Jak je patrné z obr. 5, v přehledu realizační nástroj zahrnuje pracovní stanici 200, která je spojena s přijímačem/dekodérem 226 prostřednictvím linky 228. Pracovní stanice 200 zahrnuje obrazovku 210, počítač 212, klávesnici 214 a myš 216. Počítač 212 zahrnuje procesor 218, paměť 220, pevný disk 222, vstupně/výstupní (I/O) porty 224 a rovněž další součásti hardwaru a softwaru, které jsou běžné v podobných počítačích. Přijímač/dekodér 226 je spojen s televizí 230 nebo s jiným displejem.
Různé komponenty realizačního nástroje 4004 jsou ve větším detailu znázorněny na obr. 6. Realizační nástroj zahrnuje editor 410 pro vytváření a editování různých souborů, které vytvářejí aplikaci, knihovnu 412, která uchovává existující soubory pro použití editorem 410, a kompilátor 414 pro překlad souborů, které byly vytvořeny editorem 410, do přechodného jazyka, který může být proveditelný virtuálním počítačem, jako je virtuální počítač 4007 na obr. 4. Kompilované (přeložené) soubory, které jsou nazývány soubory tříd, jsou uloženy v adresáři 416, který je adresářem na pevném disku 222 pracovní stanice 200 nebo na jiném paměťovém médiu na síti, se kterou je pracovní stanice spojena. Přijímač/dekodér 226 zahrnuje CPU 424 a přidruženou paměť, vstupně/výstupní (I/O) port 422 a rovněž další komponenty, které lze nalézt v běžných přijímačích/dekodérech, jako jsou komponenty ilustrované na obr. 3. Síťový prováděcí prostředek 418 (který bude podrobněji popsán níže) je vytvořen v pracovní stanicí pro umožnění přístupu příjímačí/dekodéru 226 k souborům tříd, uloženým v adresáři 416, přes I/O port 422 přijímače/dekodéru, sériovou linku 228 a I/O port 420 «·· • ·· · · · · · • · · · · v ···· · · · · · • · ·· · · ···· pracovní stanice. Rovněž je vytvořen odlaďovací prostředek 430 (který rovněž bude podrobněji popsán níže) pro ladění aplikací spuštěných na přijímači/dekodéru 226.
Vývojář aplikace vytváří nové soubory a/nebo provádí využití existujících souborů, které jsou uloženy v knihovně 412, aby vytvořil soubory pro svoji aplikaci s využitím editoru 410. Aplikace zahrnuje zdrojové soubory, které obsahují instrukce napsané v univerzálním jazyku, jako je Java, zkonstruovaném pro virtuální počítač, a případně datové soubory, které obsahují data, která mají být použita aplikaci. Soubory, které jsou právě editovány, jsou zobrazovány na obrazovce 210 pracovní stanice a změny jsou zadávány s použitím klávesnice 214 a myši 216. Soubory mohou být zobrazovány množstvím způsobů; například grafické soubory mohou být zobrazovány jako grafika na obrazovce, zatímco pro zdrojové soubory může být zobrazován kód v souborech nebo může být zobrazena reprezentace celkové struktury nebo architektury kódu.
Ve specifické realizaci, která využívá programovací jazyk, známý jako Pantalk, může aplikace zahrnovat jeden nebo více z následujících typů zdrojových souborů:
a zdrojové soubory - pro definování vstupních bodů aplikace a panelové soubory - pro definování obrazovek (tyto jsou grafickými zdrojovými soubory) π soubory tříd - pro definování datových struktur, použitých aplikací a případně soubory skript - pro definování chování aplikace • · · · • ♦ • · · · · · · • · · · ·· · · · «'·· · « · 9 9 9 9 9 9 « · 9 · · 9 9 9 9 9 9
9 9 9 9 9 9 9 9 · 99 9
Příklady datových souborů jsou následující: π knihovní soubory ikon - tyto soubory obsahují sbírku, například, bitových map se 4 bity na obrazový bod. Tyto ikony mohou být použity panely (obrazovkami) jako tlačítka nebo jako dekorace.
a obrazy - tyto soubory obsahují jednu bitovou mapu jakékoliv velikosti se čtyřmi bity na obrazový bod, poskytující 256 barev. Tento typ obrazu je obvykle použit jako pozadí pro panel (obrazovku).
a barevné tabulky - tyto soubory jsou použity pro definování barev, které modul může zobrazit na obrazovce.
a uživatelské datové soubory - tyto soubory jsou definovány uživatelem pro použití aplikací. Tyto soubory jsou soubory ASCII textu nebo soubory binárních dat.
Testování aplikací
Jakmile již aplikace byla vytvořena, je kompilátorem
414 konvertována do přechodného jazyka, který může být proveditelný virtuálním počítačem, a uložena jako soubory tříd v adresáři 416. Aplikace potom může být testována jejím spuštěním na procesoru 424 přijímače/dekodéru 226. Za účelem testování aplikace pracovní stanice 200 vysílá žádost do přijímače/dekodéru 226 ve formě zprávy, obsahující jméno serveru (obslužného kanálu), který má být použit pro komunikaci, a jméno adresáře, ve kterém jsou uloženy soubory tříd.
Na rozdíl od běžného příjímače/dekodéru, je přijímač/dekodér 226 podle předkládaného provedení • · • · ···· ·· ··
·· ·· ·· ·· ·· ···· naprogramován tak, že při jeho prvním zapnutí spouští rezidentní program nazvaný zavaděč síťového systému správy souborů (NFS). Tento program čeká na žádost, která má být přijata z pracovní stanice 200. Když pak tento program přijímá žádost, přistupuje k adresáři, specifikovanému v žádosti, s využitím specifikovaného portu. Adresář 416 obsahuje soubor nazvaný startup.txt, který obsahuje jméno zaváděcího souboru, to jest souboru, který inicializuje aplikaci. NFS zaváděč čte jméno zaváděcího souboru a potom stahuje tento soubor z adresáře pracovní stanice a ukládá jej v paměti přijímače/dekodéru. Zaváděcí soubor je potom spuštěn procesorem 424 v přijímači/dekodéru.
Zaváděcí soubor může obsahovat volání na podprogramy, které jsou obsaženy v jiných souborech, přičemž v tomto případě požadované soubory musí být staženy do procesoru. V takovém případě procesor nejprve prohlíží paměť přijímače/dekodéru, aby zjistil, zda soubor, který je třeba, není již uložen lokálně, například protože již byl použit. Pokud soubor není uložen lokálně, pak procesor vyhledává v adresáři pracovní stanice, specifikovaném v žádosti z pracovní stanice, aby tento soubor nalezl. Soubor je potom stažena uložen v paměti příjímače/dekodéru (například v RAM nebo FLASH paměti) pro použití přijímačem/dekodérem. Tímto způsobem jsou na přijímači/dekodéru 226 spouštěny aplikace, které již byly vytvořeny editorem 410 a uloženy v adresáři 416. Výstup z přijímače/dekodéru 226 je zobrazován na televizním zařízení 230. To umožňuje vývojáři aplikací, aby sledoval, jak aplikace vypadá při spuštění na příjímači/dekodéru a televizi.
• · ·· ·· • ♦ · · · • · * • φ « φ φ
Ve spojení s odkazy na obr. 7 budou nyní popsány různé kroky při vytváření a testování aplikace. V kroku 450 je aplikace vytvořena s použitím editoru 410. V kroku 452 je aplikace kompilována a v kroku 454 je kompilovaná aplikace uložena v adresáři 416 jako soubor tříd. V kroku 456 je z pracovní stanice do přijímače/dekodéru vyslána žádost, která specifikuje jméno adresáře a port, který má být použit pro komunikaci. V kroku 458 je z adresáře do přijímače dekodéru stažen zaváděcí soubor a v kroku 460 je tento zaváděcí soubor spuštěn na procesoru přijímače/dekodéru. V kroku 462 je procesorem rozhodnuto, zda je či není požadován nový soubor tříd. Pokud je požadován nový soubor tříd, pak v kroku 464 je tento nový soubor tříd stažen do přij ímače/dekodéru a v kroku 466 je tento nový soubor tříd spuštěn. Další soubory tříd jsou stahovány do přijímače/dekodéru a spouštěny procesorem podle požadavku.
Editor 410 může být použit pro provádění změn v aplikaci, například v důsledku testování. V důsledku takovýchto změn mohou být některé nebo všechny ze souborů, uložených v adresáři 416, aktualizovány. Aktualizované soubory mohou být potom přenášeny do přijímače/dekodéru 226 jedním z několika způsobů, jak bude popsáno v popisu níže.
V jednom provedení není provedeno žádné speciální opatření pro aktualizaci souborů v přjímači/dekodéru 226.
Když je příjímač/dekodér zapnut, jednoduše stahuje soubory, které potřebuje z adresáře 416. V tomto případě, pokud byly provedeny změny na souborech, které již byly staženy do přjímače/dekodéru, pak přijímač/dekodér musí být restartován (opětovně zapnut) , takže budou stahovány aktualizované soubory. To může být provedeno, například, vypnutím • · · · • * » • · ·· • · · ·· * · ·· ·« ·· ···· přijímače/dekodéru a pak jeho opětovným zapnutím.
Přijímač/dekodér potom stahuje soubory, včetně jakýchkoliv modifikovaných souborů, které jsou potřebné pro provoz aplikace.
V dalším provedení jsou soubory v přijímači/dekodéru aktualizovány vysláním příkazu uvolni soubor z pracovní stanice do přijímače/dekodéru. Když přijímač/dekodér přijímá tento příkaz, vymaže specifikované soubory. Když je potom příště takový soubor požadován, nebude přítomen lokálně.v přijímači/dekodéru a tak bude z adresáře 416 stažena aktualizovaná verze tohoto souboru.
V dalším provedení přijímač/dekodér ověřuje čas a datum poslední modifikace všech souborů, které jsou mu dostupné, jak lokálně tak i v pracovní stanici, a používá nej novější verzi všech souborů. Tímto způsobem jsou do přijímače/dekodéru automaticky přenášeny modifikované soubory.
Síť realizačního nástroje
Obr. 8 ilustruje architekturu různých vrstev, které jsou použity pro poskytnutí přístupu přijímači/dekodéru 226 k pevnému disku pracovní stanice, nebo paměťovému médiu na síti, podle toho o který případ se jedná, obsahujícímu adresář 416. Přijímač/dekodér je opatřen klientským síťovým systémem správy souborů (NFS), který umožňuje přijímači/dekodéru použít pevný disk pracovní stanice nebo adresář na paměťovém médiu sítě, jako kdyby to bylo lokální paměťové zařízení. V předkládaném příkladu přijímač/dekodér nemá síťovou zásobníkovou paměť a tak je pro použití * · • · • · · · ·· ·· • · ♦ ♦ · · ♦ · · * • » · · · * · ·· · • ·· · » · » · · * 3 · « · «· · * · · ·· ···· přijímačem/dekodérem vytvořena zásobníková paměť 418 síťového prováděcího prostředku (NetProxy) na pracovní stanici.
Tento síťový prováděcí prostředek vytváří spojení mezi síťovou zásobníkovou pamětí pracovní stanice a fyzickým portem, který je připojen k přijímači/dekodéru.
Jak je patrné na obr. 8, přijímač/dekodér 226 obsahuje fyzickou vrstvu 250, linkovou vrstvu 252, vrstvu 254 síťového prováděcího prostředku, NFS/RPC vrstvu 256 a vrstvu 258 souborů.
Fyzická vrstva 250 zajišťuje fyzický port mezi přijímačem/dekodérem 226 a pracovní stanicí 200. Jako taková může obsahovat (kromě jiných možností) kterýkoliv nebo všechny ze sériového portu, paralelního portu nebo modemu.
Účelem linkové vrstvy 252 je realizovat výměnu rámců dat mezi fyzickou vrstvou 250 a vrstvou 254 síťového prováděcího prostředku. Tato linková vrstva 252 slouží pro zajištění integrity rámců, které jsou vyměňovány, a pro demultiplexování rámců přicházejících z různých umístění.
Linková vrstva 252 může používat protokol, identifikovaný jako SLPD. SLPD protokol zpracovává dat v rámcích, které obsahují pět polí, jak je schematicky reprezentováno na obr. 9. Pole, obsažená uvnitř takového rámce, jsou následující:
• pole 500 SYNC_WORD: pevná 16-ti bitová hodnota, která identifikuje začátek SLPD rámce.
• pole 502 LENGHT: 16-ti bitová hodnota, která udává počet bytů, které následují v SLPD rámci.
• ·
999 9
Φ 9 ·»·· ·· ♦ 9 9 9 9
9 99 9 9 9 9 9 9
99 99 99 ♦ · ·*»· • pole 504 PROTOCOL_ID: 16-ti bitová hodnota, která identifikuje protokol dat, obsažených uvnitř SLPD rámce. Toto pole je použito při multiplexování dat.
• pole 506 DATA: pole s proměnnou délkou, obsahující LENGHT - 4 byty dat transportovaných SPLD rámcem.
• pole 508 CRC16: 16-ti bitové pole obsahující data pro ověření integrity SPLD rámce. Toto pole obsahuje 16-ti bitovou hodnotu kontrolního součtu, vypočítanou na polích PROTOCOL_ID a DATA.
Funkčnost linkové vrstvy 252 zahrnuje zajištění následujících veřejných postupů:
MhwNFSRpcComRegisterProtocol: Tato funkce zaznamenává funkce zpětného volání, sdružené s protokolem. Dvě funkce zpětného volání, aSendCallback a aRevCallback, jsou sdruženy s každým protokolem a jsou patřičně volány pro indikování dokončení přenosu rámce dat respektive pro indikování přijetí rámce dat.
MhwNFSRpcComUnregisterProtocol: Tato funkce je použita pro vymazání funkcí zpětného volání, sdružených s protokolem.
MhwNFSRpcComPortlnit, MhwNFSRpcComPortClose: Tyto funkce jsou příslušně používané pro inicializaci respektive pro uzavření komunikačního portu (jako je sériový port, paralelní port nebo modemové zařízení) a pro získání kontextové adresy portu. Ve výhodném provedení je umožněno volat tuto funkci několikrát pro stejné zařízení.
Inicializace zařízení se neprovádí jinak, než na první zavolání. Linková vrstva 252 ukládá v čítači počet volání
4· 4444 provedených funkcí MhwNFSRpcComPortlnit pro každé zařízení. Pokaždé, když je provedeno následující volání funkce MhwNFSRpcComPortClose pro zařízení, hodnota v čítači pro toto zařízení je snížena. Port není skutečně uzavřen, dokud jeho čítač nedosáhne hodnoty nula.
MhwNFSRpcComlnit, MhwNFSRpcComClose: Tyto funkce jsou příslušně volány pro inicializaci respektive pro správné uzavření linkové vrstvy 252.
MhwNSFRpcComDatagramSend: Tato funkce vysílá SPLD rámec přes komunikační port. Po dokončení přenosu je volána funkce zpětného volání aSendCallback pro protokol identifikovaný v SPLD rámci, aby indikovala klientovi, že rámec již byl vyslán.
Vrstva 254 síťového prováděcího prostředku je softwarová vrstva, která kompenzuje nepřítomnost síťové zásobníkové paměti v dekodéru. Vrstva 254 síťového prováděcího prostředku komunikuje s vrstvou 264 síťového prováděcího prostředku v pracovní stanici 200 přes mezilehlé linkové vrstvy 252, 262 a fyzické vrstvy 250, 260 v přijímači/dekodéru 226 a v pracovní stanicí 200. Uvnitř pracovní stanice 200 jsou všechny zprávy, přijímané vrstvou 264 síťového prováděcího prostředku, předávány do síťové zásobníkové paměti 266 pro následný přenos do vzdáleného hostitele přes UDP (uživatelský datagramový protokol) zásuvku 2 68; podobně jsou všechny zprávy, přijímané UDP zásuvkou 268, přenášeny do přijímače/dekodéru 226. NFS/RPC vrstva 256 v přijímači/dekodéru zajišťuje propojovací rozhraní mezi vrstvou 258 souborů v přijímači/dekodéru 226 a vrstvou 254 síťového prováděcího prostředku, zatímco NFS/RPC vrstva 270 v • * • · · • · ···· «« · · * * * 9 9 9 9 9
9 9 9 9 9
9· 9· ·· ·· 9 9 99 9 9 pracovní stanici 200 zajišťuje propojovací rozhraní mezi vrstvou 272 souborů v pracovní stanici 200 a síťovou zásobníkovou pamětí 266.
Vrstva síťového prováděcího prostředku 254, 264 (tedy ať již v přijímači/dekodéru 226 nebo v pracovní sanici 200) zpracovává datové pakety, které obsahují jméno hostitele a datový paket libovolné délky. Vrstva síťového prováděcího prostředku poskytuje následující veřejné postupy:
NFSRpcProxylnit, NFSRpcProxyClose: Tyto funkce 10 inicializují respektive uzavírají vrstvu síťového prováděcího prostředku.
NFSRpcProxyBindHostName, NFSRpcProxyUnbindHostName: První z těchto funkcí spojuje jméno hostitele s fyzickým
2_5 rozhraním. Druhá z těchto funkcí vymazává předtím registrované jméno hostitele ze seznamu hostitelů, který je udržován síťovým prováděcím prostředkem.
NFSRpcProxyBindResolveName: Tato funkce získává adresu hostitele identifikovaného jménem.
NFSRpcProxyRpcSend: Tato funkce je použita pro provedení RPC volání na vzdáleného hostitele.
NFS/RPC vrstva realizuje funkčnost potřebnou pro vyvolání RPC příkazů v souladu s RFC1057, RFC1094 a relevantními ISO standardy.
Modifikované provedení je znázorněno na obr. 10. V tomto provedení je adresář 416 uložen v paměťovém médiu na NFS serveru 600 vzdáleném od pracovní stanice 200. Vývojář, pracující na vývojářské pracovní stanici 620, může získat
9 ♦ 9 · 9 · 9*99
9 99 9*9 9 9 9 i : i i · ; i · i * ϊ z ·*
99 9 · 99 99 · 9 9 9 přístup k souborům v adresáři 416 přes síť 612 spojenou s NFS serverem 600. Odděleně od vývojářské pracovní stanice 620 je vytvořen síťový prováděcí prostředek 610, aby přijímač/dekodér 226 mohl získat přístup do sítě.
V uspořádání podle obr. 10 je přijímač/dekodér konfigurován tak, jak bylo popisováno výše ve spojení s odkazy na předcházející výkresy. Síťový prováděcí prostředek 610 může být výhodně realizován jako software pracující na hardwaru, jako je PC pracovní stanice. Obvykle je vývojářská pracovní stanice výkonnějším vývojářským zařízením, jako je pracovní stanice pracující s operačním systémem Unix. Mělo by být zcela zřejmé, že prováděcí prostředí přijímače/dekodéru 226 může prostřednictvím síťového prováděcího prostředku 610 přistupovat k souborům na množství z adresářů v různých paměťových médiích připojených k síti 612, včetně vývojarske pracovní stanice 620, NFS serveru 600 a dalších lokálních nebo vzdálených vývojářských pracovních stanicích (nejsou znázorněny).
Odlaďovací prostředek
Jak je opět patrné na obr. 6, pracovní stanice 200 obsahuje odlaďovací prostředek 430 ve formě softwaru, který monitoruje a řídí provádění kódu v prováděcím prostředí přijímače/dekodéru 226. Jak již bylo popsáno v mezinárodní patentové přihlášce číslo WO 98/43165, citované výše, odlaďovací prostředek, pracující na vývojářské pracovní stanici, si může vyměňovat řídící zprávy s prováděcím prostředím přijímače/dekodéru 226 pro řízení a/nebo
3Q monitorování provádění programu, prováděného v prováděcím prostředí.
♦ · · »· ·
V předkládaném provedení, aby odlaďovací prostředek mohl řídit činnost aplikace prováděné na přijímači/dekodéru 226, jsou řídící zprávy přenášeny mezi sítí a přijímačem/dekodérem 226 prostřednictvím síťového prováděcího 5 prostředku 418 nebo 610. Při inicializaci dálkové odlaďovací relace je odlaďovací prostředek 430 vyvolán hostitelským jménem vzdáleného hostitele, jako vyvolávacím parametrem. To způsobuje přenos datového paketu do specifikovaného vzdáleného hostitele a tudíž přes síťový prováděcí prostředek 10 418 nebo 610 do přijímače/dekodéru 226. Tento datový paket obsahuje příkazový signál pro prováděcí prostředí, který jej instruuje pro zavedení odlaďovacího režimu, a dále obsahuje jméno hostitele, kterému a od kterého mají být posílány odlaďovací řídící signály (obvykle hostitelské jméno vývojářské pracovní stanice). Během odlaďovací operace bude potom prováděcí prostředí vysílat a přijímat řídící signály přes síťový prováděcí prostředek přijímače/dekodéru a přes lokální komunikační port.
Během odlaďovací operace je aplikace, prováděná na
0.
přijímači/dekodéru, monitorována a řízena v souladu s příkazy vysílanými do odlaďovacího prostředku. Soubory tříd, tvořící aplikaci, jsou stahovány do přijímače/dekodéru podle toho, jak jsou potřeba, stejným způsobem jako bylo popsáno výše ve spojení s testovacími operacemi. Aktualizované soubory mohou
5 být rovněž přenášeny do přijímače/dekodéru kterýmkoliv ze způsobů popisovaných ve spojení s testovacími operacemi.
Odlaďovacím prostředkem 430 mohou být prováděny různé odlaďovací operace. Například tak odlaďovací prostředek může monitorovat proměnné v aplikaci, přičemž pro tento účel je definován seznam proměnných, které mají být monitorovány.
Hodnoty definovaných proměnných mohou být zobrazovány v definovaných bodech při provádění aplikace, a/nebo mohou být hodnoty proměnných zobrazovány (společně se jmény proměnných) při jakékoliv změně hodnoty. Odlaďovací prostředek 430 může být navíc použit pro modifikování proměnných hodnot v přijímači/dekodéru; což poskytuje operátorovi možnost sledovat téměř bezprostředně, jaký účinek bude mít nastavení proměnných na různé hodnoty. Tyto proměnné řídící funkce mohou být samozřejmě rovněž vymazány odlaďovacím prostředkem (jako mohou být vymazány všechny funkce odlaďovacího prostředku).
Podobně může odlaďovací prostředek 430 nastavit přijímač/dekodér, aby signalizoval, když další typy entit, jako jsou moduly, soubory jednotek proměnných bloků, a objekty jsou začleněny během provádění aplikace.
Odlaďovací prostředek 430 může rovněž řídit provádění aplikace prostřednictvím vkládání přerušovacích bodů (a jejich mazáním). Přesněji tedy provádění může být umožněno, aby probíhalo bez přerušení, aby probíhalo do přerušovacího bodu a zastavilo se, aby probíhalo do přerušovacího bodu a pokračovalo (spustilo se znovu) na vyžádání, aby probíhalo k volání podprogramu nebo k návratu z podprogramu, nebo aby probíhalo krok po kroku (to jest krokově od každého příkazu pouze v odezvě na akci operátora) buď mezi definovanými body anebo definovanými podprogramy nebo v celé aplikaci. (Podprogramem může být sekvence instrukcí, která je sekvencí příkazů, které mohou být volány nebo prováděny aplikací.)
Odlaďovací prostředek 430 může realizovat trasovací 3Q funkci, která detekuje a signalizuje jednu nebo více z množství operací jako je pokračování, stahování, návrat nebo
Μ « · • · skok na, započetí nebo ukončení provádění, nebo přerušení jednoho nebo více specifikovaných podprogramů nebo jejich typů.
Odlaďovací prostředek 430 může rovněž monitorovat a podávat zprávy o stavu přijímače/dekodéru a aplikace v požadovaných bodech při provádění aplikace. Mezi prvky, jejichž stav může být takto monitorován a popisován, patří následující: velikost paměti, volná paměť, charakteristiky fondů vyrovnávacích pamětí, číslo verze systému, a podobně; obsah paměti (výpis paměti) celé paměti nebo jejích specifikovaných částí (například RAM, FLASH, ROM); nainstalovaná paměťová média, stažené moduly (a aktuální moduly), soubory jednotek proměnných bloků (počet, použitá paměť, seznam souborů jednotek proměnných bloků); stav instrukčních sekvencí (počet, počet pracujících a/nebo přerušených, použitá paměť, a podobně); obsahy návratových paměťových míst (to jest seznam podprogramů, na které má být proveden návrat).
Příklady funkcí odlaďovacího prostředku, které jsou dostupné ve výhodném provedení, jsou uvedeny v následující tabulce:
Příkaz
Popis next step cont provedení řádky kódu bez vykonání jeho funkce provedení řádky kódu s vykonáním jeho funkce pokračování v provádění až do stop bodu nebo do konce programu ·« 4 44 4
4« 94 * »·44 ♦ 4 4 4 · 4 4 4
44
4 4 · » • 44 ·· • 4 4«4 4
9949
until <číslo řádku> pokračování provádění až do specifikovaného čísla řádku
finish pokračování v provádění až do konce aktuální funkce
5 break CřetězeO vložení přerušovacího bodu
break CřetězeO if vložení podmíněného přerušovacího bodu
<podmínka>
breakcount Cpočet> vložení přerušovacího bodu s čítačem
10 <řetězec> (program se zastaví poté, co přerušovacím bodem prošel tolikrát, kolikrát je specifikováno počtem)
breakcount <počet> vložení podmíněného přerušovacího bodu s
<řetězec> if čítačem
15 cpodmínka>
delete <číslo přerušovacího bodu> vymazání přerušovacího bodu
20 dísable cčíslo přerušovacího bodu> deaktivace přerušovacího bodu
enable cčíslo přerušovacího bodu> aktivace přerušovacího bodu
command Cčíslo přerušovacího bodu> spojení příkazu s přerušovacím bodem
25 watchexception vložení přerušovacího bodu, když je
Cvyj ímka> zjištěna výjimka
unwatchexception potlačení přerušovacího bodu sdruženého
30 cčíslo watchexception> s výjimkou
ΦΦ φφ φφ φφ φ φ φ φ φ φ φ φ φ φ φ φ φ φφ φφφφ φ φ φ • φ φ • φ φ • φ φ φ φ
info zobrazení seznamu a stavu přerušovacích bodů
print <výraz> tisk hodnoty výrazu
set <výrazl> <výraz2> nastavení hodnoty výrazu 2 na výraz 1
whatis <výraz> indikace typu výrazu
inherit <výraz> zobrazení seznamu mateřských tříd výrazu
fields <výraz> zobrazení seznamu polí výrazu
methods <výraz> zobrazení seznamu postupů výrazu
dump <formát> <adresa> <číslo> zobrazení obsahu úseku paměti
where zobrazení zásobníkové paměti aktuálního procesu
up zvolení rámce volajícího aktuální rámec
down zvolení volaného rámce
threads zobrazení seznamu procesů a jejich hlavních atributů
getthr zobrazení detailního seznamu atributů procesu
monitors zobrazení seznamu monitorů procesů
getmon zobrazení detailního seznamu atributů monitoru
dbginfo zobrazení seznamu modulů, pro které je definována úroveň trasování
dbgset modifikováni úrovně trasování modulů
fs <akce> | parametry| použito pro získání informací ze systému souborů
·' · φφφφ • Φ φφ φφ φφφφ · * · φ • Φ ·Φ 9 9 9 9 · ·
Φ φ φ Φ · Φ Φ Φ Φ φ · Φ • φφφ Φ φ Φ Φ ΦΦΦ φφ Φφ φΦ ΦΦ Φφ ΦΦΦΦ
Za některých okolností může být žádoucí, aby s přijímačem/dekodérem 226 udržoval komunikaci více než jen jeden hostitel. Například může být prováděcí prostředí konfigurováno pro vyslání odlaďovací informace v reálném čase do síťové tiskárny.
V alternativním provedení je přijímač/dekodér 226 vytvořen se síťovou zásobníkovou pamětí a vrstva síťového prováděcího prostředku je vypuštěna.
Pracovní stanice a přijímač/dekodér byly výše popsány ve spojení s realizačním nástrojem; přijímač/dekodér a pracovní stanice ale mohou být rovněž použity pro jiné účely, jako například pro předvádění aplikací.
Simulátor zařízení, popisovaný v souběžné evropské 15 patentové přihlášce číslo 99401744.0 stejného přihlašovatele, může být použit ve spojení s předkládaným vynálezem. Předmět této patentové přihlášky je tímto začleněn do tohoto popisu prostřednictvím odkazu.
Mělo by být zcela zřejmé, že předkládaný vynález byl 20 výše popsán čistě prostřednictvím příkladu a že v rozsahu vynálezu mohou být prováděny modifikace detailu. 4
Každý znak, popsaný v popisu a kde je to vhodné v nárocích a na výkresech, může být zajištěn nezávisle nebo v jakékoliv vhodné kombinaci s ostatními.
Vztahové značky, uváděné v nárocích, mají pouze ilustrační účel a nemohou mít omezující účinek na rozsah nároků.
Zastupuje :
• 4 4 ♦ • 4 ·
4 4
4 4
4*44

Claims (11)

  1. PATENTOVÉ NÁROKY
    1. Přijímač/dekodér, vyznačující se tím, že zahrnuje prostředek pro uložení aplikace, prostředek pro spuštění uložené aplikace, a prostředek pro komunikaci přes síť odlaďovací zprávy do vzdálené pracovní stanice pro použití pracovní stanicí při ladění uložené aplikace.
  2. 2. Přijímač/dekodér podle nároku 1, vyznačující se tím, že prostředek pro komunikaci odlaďovací zprávy je upraven pro přijetí odlaďovací zprávy ze sítě pro řízení provádění aplikace přijímačem/dekodérem v závislosti na této zprávě.
  3. 3. Při j ímač/dekodér podle nároku 2, vyznačující se tím, že zpráva obsahuje identifikátor vzdáleného hostitele, a prostředek pro komunikaci odlaďovací zprávy je upraven pro komunikaci další odlaďovací zprávy se vzdáleným hostitelem, identifikovaným ve zprávě.
  4. 4. Přijímač/dekodér podle kteréhokoliv z předcházejících nároků, vyznačující se tím, že prostředek pro komunikaci odlaďovací zprávy je upraven pro přenos odlaďovací zprávy, obsahující informace týkající se provádění aplikace přij ímačem/dekodérem.
  5. 5.. Přijímač/dekodér podle kteréhokoliv z předcházejících nároků, vyznačující se tím, že aplikace zahrnuje množství souborů, přičemž přijímač/dekodér zahrnuje prostředek pro selektivní čtení alespoň jednoho ze souborů ze vzdálené pracovní stanice.
  6. 6. Přijímač/dekodér, vyznačující se tím, že zahrnuje prostředek pro spuštění aplikace, přičemž aplikace zahrnuje ·· ·»*· ·· »»
    9 9 9 9 9
    9 9 *
    9 9 9 9 9 • 9 · 9
    99 99 9 9 ·· »· • « · ♦ <· · ·« • · · · • · · · množství souborů, a prostředek pro selektivní čtení alespoň jednoho ze souborů z vnějšího paměťového prostředku.
  7. 7. Přijímač/dekodér podle nároku 6, vyznačující se tím, že vnější paměťový prostředek je součástí vzdálené pracovní 5 stanice.
  8. 8. Přijímač/dekodér podle nároku 5 nebo 7, vyznačující se tím, že je upraven pro čtení jednotlivého souboru ze vzdálené pracovní stanice.
    10 9. Při j ímač/dekodér podle nároku 8, vyznačující se tím, že je upraven pro použití jako své síťové zásobníkové paměti simulovanou síťovou zásobníkovou paměť na vzdálené pracovní stanici.
    10. Při j ímač/dekodér podle kteréhokoliv z nároků 5 a 7 až
  9. 9. vyznačující se tím, že je upraven pro stažení zaváděcího souboru ze vzdálené pracovní stanice.
    11. Přijímač/dekodér podle kteréhokoliv z nároků 5 až 10, vyznačující se tím, že je upraven pro čtení uvedeného alespoň
    20 jednoho souboru, když je tento soubor vyžadován pro provoz aplikace.
    12. Přijímač/dekodér podle kteréhokoliv z nároků 5 až 11, vyznačující se tím, že je upraven pro čtení aktualizovaných souborů.
    13. Pracovní stanice pro ladění aplikace, uložené a spuštěné na vzdáleném přijímači/dekodéru, vyznačující se tím, že zahrnuje prostředek pro komunikaci odlaďovací zprávy s přijímačem/dekodérem přes síť.
    ·# • ·> t»tt »· «· • · · · · · • · ·* * · • · · * Λ · · • · · « · · ·· 99 9 * » · * · · • 9 9 · • · · · 9
    9 9 9 9 9
    99 99 9999
    14. Pracovní stanice podle nároku 13, vyznačující se tím, že zahrnuje paměťový prostředek pro uložení aplikace, která má být spuštěna na přijímači/dekodéru, přičemž aplikace zahrnuje množství souborů, a prostředek pro umožnění přístupu
    5 k alespoň jednomu ze souborů přijímači/dekodéru připojenému k pracovní stanici prostřednictvím sítě.
    15. Pracovní stanice, vyznačující se tím, že zahrnuje paměťový prostředek pro uložení aplikace, která má být spuštěna na přijímači/dekodéru, přičemž aplikace zahrnuje
  10. 10 , . množství souboru, a prostředek pro umožněni přístupu k alespoň jednomu ze souborů přijímači/dekodéru připojenému k pracovní stanici prostřednictvím sítě.
    16. Pracovní stanice podle nároku 14 nebo 15, vyznačující
    25 se tím, že prostředek pro umožnění přístupu k uvedenému alespoň jednomu souboru je upraven pro umožnění čtení jednotlivého souboru.
    17. Pracovní stanice podle kteréhokoliv z nároků 14 až 17, vyznačující se tím, že dále zahrnuje prostředek pro editování
    2 Q aplikace.
    18. Nástroj pro vývoj aplikací, který zahrnuje přijímač/dekodér podle kteréhokoliv z nároků 1 až 12 a pracovní stanici podle kteréhokoliv z nároků 13 až 17.
    25 19. Nástroj pro vývoj aplikací podle nároku 18, vyznačující se tím, že obsahuje síťový prováděcí prostředek pro realizaci komunikace mezí přijímačem/dekodérem a pracovní stanicí.
    20. Nástroj pro vývoj aplikací, který zahrnuje pracovní stanici pro editování aplikace a přijímač/dekodér pro spouštění aplikace, vyznačující se tím, že přijímač/dekodér • Φ ·« φφ φφφφ φφ φφ φφφφ φφ φ φφφφ • ΦΦΦ ΦΦΦ 4 Φ Φ • ΦΦ ΦΦΦ » ΦΦΦ Φ »
    ΦΦΦΦ «ΦΦΦ φφφ
    Φ· ΦΦ ΦΦ ·* ΦΦ Φ««Φ má prostředek pro selektivní čtení alespoň části aplikace z pracovní stanice a pracovní stanice má prostředek pro komunikaci této nebo každé části do přijímače/dekodéru.
    21. Nástroj pro vývoj aplikací podle nároku 20, vyznačující 5 se tím, že pracovní stanice dále zahrnuje paměťový prostředek pro uložení aplikace.
    22. Nástroj pro vývoj aplikací podle nároku 20 nebo 21, vyznačující se tím, že aplikace zahrnuje množství souborů.
    10 S, X Z
    23. Nástroj pro vývoj aplikací podle nároku 22, vyznačující se tím, že přijímač/dekodér je upraven pro čtení jednotlivého souboru z paměťového prostředku.
    24. Nástroj pro vývoj aplikací podle nároku 22 nebo 23, vyznačující se tím, že přijímač/dekodér je upraven pro čtení souboru, když je tento soubor vyžadován pro provoz aplikace.
    25. Nástroj pro vývoj aplikací podle kteréhokoliv z nároků 22 až 24, vyznačující se tím, že pracovní stanice je upravena pro aktualizaci souboru a přijímač/dekodér je upraven pro
    20 čtení uvedených souborů, když jsou aktualizovány.
    26. Nástroj pro vývoj aplikací podle kteréhokoliv z nároků 22 až 25, vyznačující se tím, že přijímač/dekodér je upraven pro čtení nejnovější verze souboru.
    25 27. Nástroj pro vývoj aplikací podle kteréhokoliv z nároků
    22 až 26, vyznačující se tím, že pracovní stanice je upravena pro instruování přijímače/dekodéru, aby vymazal soubor.
    28. Prostředí pro vývoj aplikací, které zahrnuje nástroj pro vývoj aplikací podle nároku 26 nebo 27 a síť, přes kterou komunikují pracovní stanice a přijímač/dekodér.
    99 99
    9 9 9 9
    9 9 9
    9 9 9
    9 9 9
    99 9999 • 9 *9 • · 9 « • · 99 • »9 9 • 9 9 9
    99 99
    99 9999
    9 9 9
    9 9 9
    9 9 >
    9 9 9 9 «9 99
    29. Způsob ladění aplikace, uložené a spuštěné na přijímači/dekodéru, vyznačující se tím, že zahrnuje komunikování z přijímače/dekodéru odlaďovací zprávy přes síť do vzdálené pracovní stanice pro použití pracovní stanicí při
    5 ladění uložené aplikace.
    30. Způsob podle nároku 29, vyznačující se tím, že odlaďovací zpráva se přijímá přijímačem/dekodérem přes síť pro řízení provádění aplikace v závislosti na této zprávě.
    2_q 31. Způsob podle nároku 30, vyznačující se tím, že zpráva obsahuje identifikátor vzdáleného hostitele a způsob dále zahrnuje komunikování další odlaďovací zprávy se vzdáleným hostitelem, identifikovaným ve zprávě.
    32. Způsob podle kteréhokoliv z nároků 29 až 31,
  11. 15 vyznačující se tím, že zahrnuje přenos z přijímače/dekodéru odlaďovací zprávy, obsahující informace týkající se provádění aplikace.
    33. Způsob podle kteréhokoliv z nároků 29 až 32, vyznačující se tím, že aplikace zahrnuje množství souborů, přičemž způsob zahrnuje selektivní čtení alespoň jednoho ze souborů ze vzdálené pracovní stanice.
    34. Způsob přenosu aplikace z pracovní stanice pro editování aplikace do přijímače/dekodéru pro spouštění
    25 aplikace, přičemž aplikace zahrnuje množství souborů, vyznačující se tím, že zahrnuje přenos jednotlivého souboru z pracovní stanice do přijímače/dekodéru.
    35. Způsob podle nároku 34, vyznačující se tím, že soubor se přenáší, když je požadován pro provoz aplikace.
    «· «·»»
    4 9 9 9
    4 4 9 ·· »· » · · • ·
    36. Způsob podle nároku 34 nebo 35, vyznačující se tím, že zahrnuje aktualizaci souboru a přenos aktualizovaného souboru do přijímače/dekodéru.
    37. Způsob spouštění aplikace na přijímači/dekodéru, přičemž aplikace zahrnuje množství souborů, vyznačující se tím, že zahrnuje přenos souboru do přijímače/dekodéru, když je tento soubor požadován pro provoz aplikace.
    38. Způsob spouštění aplikace na přijímači/dekodéru, přičemž aplikace zahrnuje zaváděcí soubor a alespoň jeden další soubor, vyznačující se tím, že zahrnuje:
    přenos zaváděcího souboru do přijímače/dekodéru; provedení zaváděcího souboru v přijímači/dekodéru; a přenos uvedeného alespoň jednoho dalšího souboru, když je tento soubor požadován.
    39. Způsob podle nároku 38, vyznačující se tím, že alespoň jeden ze zaváděcího souboru a uvedeného alespoň jednoho dalšího souboru se přenáší přes síť.
    40. Způsob podle nároku 39, vyznačující se tím, že alespoň jeden ze zaváděcího souboru a uvedeného alespoň jednoho dalšího souboru se přenáší ze síťové datové paměti.
    41. Počítačově čitelné médium mající v sobě uložený program pro provedení způsobu podle kteréhokoliv z nároků 29 až 40.
    42. Počítačový programový produkt zahrnující program pro provádění způsobu podle kteréhokoliv z nároků 29 až 40.
    43. Signál vyjadřující počítačový program pro provedení způsobu podle kteréhokoliv z nároků 29 až 40.
    Přijímač/dekodér v podstatě podle zde uvedeného popisu.
    • · « * » · ·
    45. Pracovní stanice v podstatě podle zde uvedeného popisu.
    46. Nástroj pro vývoj aplikací v podstatě podle zde uvedeného popisu.
    47. Prostředí pro vývoj aplikací v podstatě podle zde uvedeného popisu.
    48. Způsob ladění aplikace v podstatě podle zde uvedeného popisu.
    49. Způsob přenosu aplikace z pracovní stanice pro editování aplikace do přijímače/dekodéru pro spouštění aplikace v podstatě podle zde uvedeného popisu.
    50. Způsob spouštění aplikace na přijímači/dekodéru v podstatě podle zde uvedeného popisu.
    51. počítačově čitelné médium, počítačový programový produkt nebo signál v podstatě podle zde uvedeného popisu.
CZ200243A 1999-07-09 2000-07-05 Spouątění a testování aplikací CZ200243A3 (cs)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP99401746A EP1067455A1 (en) 1999-07-09 1999-07-09 Running and testing applications
EP00102043A EP1067458A1 (en) 1999-07-09 2000-02-02 Running and testing applications

Publications (1)

Publication Number Publication Date
CZ200243A3 true CZ200243A3 (cs) 2002-05-15

Family

ID=26070490

Family Applications (1)

Application Number Title Priority Date Filing Date
CZ200243A CZ200243A3 (cs) 1999-07-09 2000-07-05 Spouątění a testování aplikací

Country Status (13)

Country Link
EP (2) EP1067458A1 (cs)
JP (1) JP2003504950A (cs)
KR (1) KR20020027467A (cs)
CN (1) CN1372662A (cs)
AU (1) AU5560600A (cs)
CA (1) CA2377486A1 (cs)
CZ (1) CZ200243A3 (cs)
HK (1) HK1044602A1 (cs)
IL (1) IL147382A0 (cs)
NO (1) NO20020023L (cs)
PL (1) PL352186A1 (cs)
TR (1) TR200200009T2 (cs)
WO (1) WO2001004751A2 (cs)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050035970A1 (en) * 1999-08-03 2005-02-17 Wirtschafter Jenny Dana Methods and apparatuses for authoring declarative content for a remote platform
ATE330210T1 (de) * 2002-06-14 2006-07-15 Mettler Toledo Gmbh Objektorientiertes verfahren, system und software für eine gravimetrisches messinstrument
US7162664B2 (en) * 2003-06-20 2007-01-09 Microsoft Corporation Debugging breakpoints on pluggable components
EP1515542A1 (en) * 2003-09-12 2005-03-16 Sony NetServices GmbH Method to provide logging information of an application in a digital broadcast system
US20050096935A1 (en) * 2003-11-03 2005-05-05 Data I/O Corporation Remote development support system and method
US8806435B2 (en) 2004-12-31 2014-08-12 Intel Corporation Remote logging mechanism
CN102253882B (zh) * 2004-12-31 2014-11-26 英特尔公司 远程记录机制
US7675854B2 (en) 2006-02-21 2010-03-09 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US8312507B2 (en) 2006-10-17 2012-11-13 A10 Networks, Inc. System and method to apply network traffic policy to an application session
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
KR101104165B1 (ko) * 2009-11-26 2012-01-13 애니포인트 미디어 그룹 사용자 애플리케이션의 테스트가 가능한 미디어 재생 장치 및 이를 이용한 사용자 애플리케이션의 테스트 방법
KR101084289B1 (ko) * 2009-11-26 2011-11-16 애니포인트 미디어 그룹 미디어 재생 장치에서 실행되는 사용자 애플리케이션을 제공하는 컴퓨팅 장치 및 제공 방법
KR101104166B1 (ko) * 2009-11-26 2012-01-12 애니포인트 미디어 그룹 컴퓨팅 장치 및 미디어 재생 장치를 이용한 사용자 애플리케이션 테스트 시스템 및 테스트 방법
US9215275B2 (en) 2010-09-30 2015-12-15 A10 Networks, Inc. System and method to balance servers based on server load status
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
CN102567198B (zh) * 2010-12-30 2014-12-10 中国移动通信集团公司 对应用程序在物理系统环境中进行测试的系统及其方法
US8897154B2 (en) 2011-10-24 2014-11-25 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9386088B2 (en) 2011-11-29 2016-07-05 A10 Networks, Inc. Accelerating service processing using fast path TCP
US9094364B2 (en) 2011-12-23 2015-07-28 A10 Networks, Inc. Methods to manage services over a service gateway
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
CN102595188B (zh) * 2012-02-27 2014-08-20 四川长虹电器股份有限公司 智能电视的测试方法
US8782221B2 (en) 2012-07-05 2014-07-15 A10 Networks, Inc. Method to allocate buffer for TCP proxy session based on dynamic network conditions
WO2014028070A1 (en) 2012-08-17 2014-02-20 Flextronics Ap, Llc Channel changer for intelligent television
US20160119675A1 (en) 2012-09-06 2016-04-28 Flextronics Ap, Llc Programming user behavior reporting
US11368760B2 (en) 2012-08-17 2022-06-21 Flextronics Ap, Llc Applications generating statistics for user behavior
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
EP2901308B1 (en) 2012-09-25 2021-11-03 A10 Networks, Inc. Load distribution in data networks
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
WO2014092812A1 (en) * 2012-12-13 2014-06-19 Flextronics Ap, Llc Report database intelligent television
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US9992107B2 (en) 2013-03-15 2018-06-05 A10 Networks, Inc. Processing data packets using a policy based network path
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
US10038693B2 (en) 2013-05-03 2018-07-31 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10230770B2 (en) 2013-12-02 2019-03-12 A10 Networks, Inc. Network proxy layer for policy-based application proxies
US10020979B1 (en) 2014-03-25 2018-07-10 A10 Networks, Inc. Allocating resources in multi-core computing environments
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US9806943B2 (en) 2014-04-24 2017-10-31 A10 Networks, Inc. Enabling planned upgrade/downgrade of network devices without impacting network sessions
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
CN104299490A (zh) * 2014-09-15 2015-01-21 肇庆智力科技发展有限公司 一种智能拼装电子积木
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies
US10318288B2 (en) 2016-01-13 2019-06-11 A10 Networks, Inc. System and method to process a chain of network applications
US10389835B2 (en) 2017-01-10 2019-08-20 A10 Networks, Inc. Application aware systems and methods to process user loadable network applications
CN107040777A (zh) * 2017-06-08 2017-08-11 深圳市创维软件有限公司 一种远程调试方法、机顶盒和服务器

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5635979A (en) * 1994-05-27 1997-06-03 Bell Atlantic Dynamically programmable digital entertainment terminal using downloaded software to control broadband data operations
US5615331A (en) * 1994-06-23 1997-03-25 Phoenix Technologies Ltd. System and method for debugging a computing system
US5940074A (en) * 1996-06-03 1999-08-17 Webtv Networks, Inc. Remote upgrade of software over a network
US5983017A (en) * 1996-11-12 1999-11-09 Lsi Logic Corporation Virtual monitor debugging method and apparatus
US6618854B1 (en) * 1997-02-18 2003-09-09 Advanced Micro Devices, Inc. Remotely accessible integrated debug environment

Also Published As

Publication number Publication date
WO2001004751A3 (en) 2001-12-06
EP1067458A1 (en) 2001-01-10
HK1044602A1 (zh) 2002-10-25
AU5560600A (en) 2001-01-30
PL352186A1 (en) 2003-08-11
CA2377486A1 (en) 2001-01-18
NO20020023D0 (no) 2002-01-03
NO20020023L (no) 2002-03-11
WO2001004751A2 (en) 2001-01-18
JP2003504950A (ja) 2003-02-04
TR200200009T2 (tr) 2002-06-21
KR20020027467A (ko) 2002-04-13
IL147382A0 (en) 2002-08-14
EP1194847A2 (en) 2002-04-10
CN1372662A (zh) 2002-10-02

Similar Documents

Publication Publication Date Title
CZ200243A3 (cs) Spouątění a testování aplikací
US6970960B1 (en) Instream loader
NO322938B1 (no) Behandling av digital transportstrom
US7089554B2 (en) Program executing apparatus
BRPI9907903B1 (pt) decodificador para um sistema de transmissão audiovisual digital e método para processar imagens digitais em um decodificador para um sistema de transmissão audiovisual digital
JP2006528857A (ja) 放送におけるフィーチャ利用可能性を処理する方法
US7167820B2 (en) Apparatus for and method of testing applications
US20070174356A1 (en) Program execution device, program execution method, and program
RU2181905C2 (ru) Разработка системы управления телевидением или радиовещанием
WO2005109865A1 (en) A method for realizing embedded digital television service platform
JP4303884B2 (ja) モデム制御
JP2003504977A (ja) アプリケーションを試験するための装置および方法
AU742213B2 (en) Access control system
EP1067455A1 (en) Running and testing applications
KR20050014619A (ko) 어플리케이션을 저장하고 실행하는 디지털 방송 수신 장치및 그 방법
CZ331799A3 (cs) Systém řízení přístupu
KR20000076406A (ko) 데이터 처리 시스템
CZ2000264A3 (cs) Způsob a řídící zařízení pro komunikaci dat
CZ2000266A3 (cs) Zpracování digitálního přenosového toku dat
CZ20001579A3 (cs) Způsob zavádění proveditelných aplikací do dekodéru, dekodér a paměťová karta
MXPA00000776A (en) Ieee set top box device driver
CZ331899A3 (cs) Systém pro zpracování dat
JP2008112448A (ja) プログラム置き換え方法およびプログラム置き換え装置