-
Die vorliegende Erfindung bezieht
sich auf ein nachstehend als Terminal bezeichnetes Endgerät zur Verarbeitung
digitaler audiovisueller oder multimedialer Daten.
-
Terminals dieser Art sind auf dem
Gebiet von Pay-TV-Systemen
allgemein bekannt, wobei eine Decodierungseinrichtung oder ein nachstehend
als Set-Top-Box
bezeichnetes Aufsatzgerät
ausgestrahlte digitale multimediale Daten einschließlich audiovisueller
Programminformationen sowie Daten zur Erzeugung von Menüs auf dem
Bildschirm, Daten zur Realisierung von Spiel- oder Einkaufsanwendungen und so weiter
empfängt.
Abhängig
von dem System können
die Daten in verwürfelter
oder klarer Form ausgestrahlt werden. Eine derartige Decodierungseinrichtung
ist in der WO98/43432 beschrieben.
-
Vor der Einführung von digitaler Technologie waren
Decodierungseinrichtungen mit einer begrenzten Anzahl von Vorrichtungen
verbunden, üblicherweise
nur einer zugeordneten Fernsehanzeige oder maximal einer Fernsehanzeige
und einem VHS-Recorder. Das Erscheinen von digitaler Technologie
hat zu einer Explosion der Anzahl von Vorrichtungen, die mit der
Decodierungseinrichtung verbunden werden können, sowie der Funktionalitäten der
Decodierungseinrichtung geführt.
Beispielsweise kann die Decodierungseinrichtung zusätzlich zu
einer Peritel- Analogausgabe
zu einem Fernseher und einer VHS-Vorrichtung
auch eine Verbindung über
einen digitalen Bus wie beispielsweise den IEEE-1394-Bus mit anderen
digitalen Vorrichtungen wie beispielsweise einem DVD-Recorder, einem PC
und so weiter umfassen.
-
Als eine Ergänzung zu der Erhöhung der
Anzahl von externen Vorrichtungen, die mit der Decodierungseinrichtung
verbunden werden können,
hat eine Erhöhung
der Anzahl von Betriebsarten einer Vorrichtung stattgefunden. Beispielsweise
kann die Decodierungseinrichtung in der Standardeinstellung von
Decodierungseinrichtung und Fernseher entweder zur einfachen Unterstützung von
Fernsehausstrahlungsinformationen oder zur Bereitstellung einer Verbindung
mit dem Internet verwendet werden.
-
Bei der Entwicklung weg von dem herkömmlichen
analogen System hat die Architektur von gegenwärtig bekannten digitalen Decodierungseinrichtungen
dennoch dazu tendiert, den ihren Entwurf lenkenden vorgefaßten Meinungen
zu folgen. Insbesondere spiegelt die Architektur von Standarddecodierungseinrichtungen
die Rolle eines Terminals bei einem parallelen Leiten von Daten
zwischen vielen externen Vorrichtungen, die Betriebsarten der Decodierungseinrichtung
und die Anzahl von Benutzern des Systems, die vorhanden sein können, nicht
genau wider. Bei ihren bevorzugten Ausführungsbeispielen strebt die
vorliegende Erfindung eine Überwindung dieser
Probleme an.
-
Die WO97/44943 beschreibt ein System
zur Änderung
und/oder Verwaltung von Fernsehdiensten in einem Fernsehnetz. Es
ist eine Gelegenheit für den
Abonnenten zum Ändern
von und Blättern
in seinen eigenen abonnentenbezogenen gekoppelten Diensten vorgesehen.
-
Die
EP
0,435,370 beschreibt ein Fernsehsystem mit einem Fernseher
und einer Fernsteuerung zur Verwendung sowohl bei der Programmierung
als auch bei der Steuerung des Fernsehers und einer einfachen Hilfsfernsteuerungssendevorrichtung.
Die Fernsteuerung weist Tasten wie beispielsweise "Einschalten", "Kanal nach oben", "Kanal nach unten", "Lautstärke nach
oben" und "Lautstärke nach unten" sowie einen Schalter,
der den Benutzer identifiziert, auf. Durch die Fernsteuerung werden
verschiedene Einschalt- und Kanal-nach-oben-und -unten-Codes für jede Schalterposition
bereitgestellt. Auf diese Art und Weise erkennt es ein Mikroprozessor
in dem Fernseher, welcher Benutzer die Steuerung innehat. Werte
für einen
Parameter einer persönlichen
Vorliebe und/oder Kanalringe, die mit jedem Benutzer verbunden sind,
können
eingegeben und in einem programmierbaren Speicher des Fernsehers
gespeichert werden. Daraufhin wird dann, wenn der Fernseher den
Einschalt-Code für
einen speziellen Benutzer erkennt, unmittelbar auf den Parameter
einer persönlichen
Vorliebe und/oder die Kanalringe zugegriffen.
-
Gemäß der vorliegenden Erfindung
wird eine Decodierungseinrichtung bereitgestellt, die zum Empfangen
von Datenübertragungen
in einem Digitalübertragungssystem
eingerichtet ist, wobei die Decodierungseinrichtung ein Datenverarbeitungssystem
und einen Speicher aufweist, dadurch gekennzeichnet, daß das Datenverarbeitungssystem
zum Speichern von Profildaten für
jede Betriebsart einer Vielzahl von Betriebsarten der Decodierungseinrichtung
in dem Speicher ausgelegt ist, wobei die Profildaten jeweils die
Betriebsmittel in der Decodierungseinrichtung, auf die in der Betriebsart
zugegriffen werden kann, angebende Betriebsmitteldaten und die Priorität der Betriebsart
hinsichtlich des Zugriffs auf eines oder mehrere der Betriebsmittel
der Decodierungseinrichtung angebende Prioritätsdaten aufweisen.
-
Die Definition eines Profils oder "Benutzerprofils" ermöglicht es
dem Verarbeitungssystem, eine Anzahl von "Benutzern" der Decodierungseinrichtung flexibel
zu behandeln und zu handhaben. Gemäß der vorliegenden Erfindung
ist ein Benutzerprofil mit einer Betriebsart verbunden, zum Beispiel
einer Internetbetriebsart oder einer Fernsehbetriebsart.
-
Ein Profil kann auch für eine Bedienungsperson
oder mehrere Bedienungspersonen der Decodierungseinrichtung personalisiert
werden. Beispielsweise kann es nach der Definition eines Profils
für die Internetbetriebsart
der Decodierungseinrichtung möglich
sein, eine erste Internetbedienungsperson mit bestimmten Rechten
und eine zweite Bedienungsperson mit anderen Rechten zu definieren.
-
Die Profildaten umfassen jeweils
die Betriebsmittel in der Decodierungseinrichtung, auf die in der
Betriebsart zugegriffen werden kann, angebende Betriebsmitteldaten.
Diese Betriebsmittel können Rechte
des Zugriffs auf den Demultiplexer zur Bestimmung der aus dem ausgestrahlten
Datenstrom heruntergeladenen Daten und so weiter umfassen.
-
Die Profildaten umfassen auch jeweils
die Priorität
der Betriebsart hinsichtlich des Zugriffs auf eines oder mehrere
der Betriebsmittel der Decodierungseinrichtung angebende Prioritätsdaten.
Beispielsweise können
die Profildaten eine die Priorität eines
speziellen Benutzers bei einem Zugriff auf den Demultiplexer angebende
Prioritätsstufe
umfassen. Kollidierende Kanalanforderungen zwischen zum Beispiel
einem Benutzer einer Fernsehvorrichtung und einem Benutzer einer
Recorder-Vorrichtung können
danach durch eine Verwaltungsanwendung auf der Grundlage dieser
Informationen aufgelöst
werden.
-
Zusätzlich zu die für eine gegebenen
Betriebsart verfügbaren
Betriebsmittel angebenden Betriebsmitteldaten können die Profildaten ferner
Daten umfassen, die sich auf Eigenschaften von Informationen beziehen,
die in jeder Betriebsart der Decodierungseinrichtung bereitzustellen
sind. Diese Eigenschaften können
zum Beispiel eine Angabe der für die
Betriebsart in allen Anzeigen einer grafischen Oberfläche zu verwendenden
Sprache umfassen.
-
Darüber hinaus können die
Profildaten ferner Daten umfassen, die sich auf die in jeder Betriebsart erlaubten
Aktionen beziehen, wie beispielsweise ob eine gegebene Betriebsart
den Demultiplexerkanal ändern
kann und so weiter. Obwohl sie eng mit den vorstehend beschriebenen
Betriebsmitteldaten zusammenhängen,
können
diese Daten zur Definition der Parameter der durch jede Vorrichtung
mit Zugriff auf ein gegebenes Betriebsmittel erlaubten Operationen
verwendet werden.
-
Vorzugsweise können einige oder alle der Eigenschaften
oder Präferenzen
beziehungsweise Vorlieben der Profildaten während des normalen Betriebs
der Decodierungseinrichtung durch eine Bedienungsperson modifiziert
werden. Beispielsweise können
die relativen Prioritätswerte
jeder Betriebsart bei einem Zugriff auf Daten durch einen Betrachter modifiziert
werden, um einer Ausgabe eines VHS-Recorders Priorität über eine
Ausgabe eines Fernsehers oder einer Internetverbindung Priorität über den
Fernseher und so weiter zu geben. Zusätzlich oder alternativ können einige
oder alle der Profildaten durch das Datenverarbeitungssystem der
Decodierungseinrichtung vorbestimmt sein.
-
Die vorliegende Erfindung ist insbesondere auf
eine Decodierungseinrichtung mit einem Datenverarbeitungssystem,
das unter anderem eine virtuelle Maschine und eine objektorientierte
Anwendungsschnittstellenschicht mit einer Vielzahl von Klassenbibliotheken
umfaßt,
anwendbar.
-
Insbesondere kann die Anwendungsschnittstellenschicht
eine Klassenbibliothek oder mehrere Klassenbibliotheken umfassen,
die den Betrieb der virtuellen Maschine mit Bezug auf Profildaten
definieren. Diese Klassen können
zum Beispiel eine Klassenbibliothek umfassen, die einer Verwaltung
von Profildaten in dem Speicher-Cache der Decodierungseinrichtung
ausschließlich
zugeordnet ist. Ebenso können
die Klassen eine Profilklassenbibliothek oder mehrere Profilklassenbibliotheken
zur Definition der Eigenschaften der Daten, die in den Profilen
zu speichern sind, umfassen. Beispielsweise kann eine Verfahrensklasse
zur Definition der in dem Profil zu speichernden Eigenschaften der
bevorzugten Sprache verwendet werden.
-
Das Verhalten von Klassen in der
Anwendungsschnittstellenschicht hängt von der gewählten Sprache
ab. In dem Fall einer in Java geschriebenen Anwendungsschnittstelle
kann zum Beispiel eine Einfach-Vererbungs-Struktur
zwischen einer Klasse und ihren Unterklassen Anwendung finden.
-
Bei einem Ausführungsbeispiel können die Profilklassen
eine generische Klassenbibliothek, die mit der Definition von generischen
Eigenschaften von Profildaten verbunden ist, und eine Unterklassenbibliothek
oder mehrere Unterklassenbibliotheken, die mit den Definitionen
von mit einem spezifischen Profil verbundenen Eigenschaften verbunden
ist oder sind, umfassen.
-
Die vorliegende Erfindung kann sich
ebenso auf ein Verfahren zum Betrieb einer Decodierungseinrichtung
erstrecken.
-
Der Ausdruck "Decodierungseinrichtung" kann eine Empfangseinrichtung
zum Empfangen entweder codierter oder nicht codierter Signale, zum Beispiel
Fernseh- und/oder Radiosignale, beschreiben. Ausführungsbeispiele
einer derartigen Decodierungseinrichtung können eine mit der Empfangseinrichtung
eine Einheit bildende Decodierungseinrichtung zur Decodierung der
empfangenen Signale zum Beispiel in einer "Set-Top-Box", eine in Verbindung mit einer physikalisch
getrennten Empfangseinrichtung funktionierende derartige Decodierungseinrichtung
oder eine mit zusätzlichen
Elementen wie beispielsweise einem Web-Browser oder einem Videorecorder
oder einem Fernseher integrierte Decodierungseinrichtung umfassen.
-
Wie er dabei verwendet ist, umfaßt der Ausdruck "Digitalübertragungssystem" ein Übertragungssystem
zur Übertragung
oder Ausstrahlung von zum Beispiel in erster Linie audiovisuellen
oder multimedialen digitalen Daten. Während die vorliegenden Erfindung
insbesondere auf ein ausstrahlendes Digitalfernsehsystem anwendbar
ist, kann die Erfindung auch auf ein festes Telekommunikationsnetz für Multimediainternetanwendungen,
einen Fernseher mit geschlossener Schaltung und so weiter anwendbar
sein.
-
Nachstehend ist lediglich beispielhaft
ein bevorzugtes Ausführungsbeispiel
der Erfindung beschrieben, bei dem:
-
1 ein
Digitalfernsehsystem einschließlich
eines Multimediaterminals in der Form einer Decodierungseinrichtung
zeigt;
-
2 die
physikalischen Elemente der Decodierungseinrichtung gemäß 1 zeigt;
-
3 die
Softwarearchitektur des Datenverarbeitungssystems in der Decodierungseinrichtung zeigt;
-
4 die
Struktur der in dem Datenverarbeitungssystem gemäß 3 verwendeten virtuellen Maschine zeigt;
-
5 einen
Satz von bei diesem Ausführungsbeispiel
der Erfindung zu definierenden vorbestimmten Benutzerprofilen zeigt;
-
6 die
Elemente von in dem Decodierungseinrichtungsspeicher gespeicherten
Benutzerprofildaten für
jedes der Benutzerprofile gemäß 5 zeigt; und
-
7 die
Struktur von Klassenbibliotheken in der Anwendungsschnittstellenschicht
der Softwarearchitektur zeigt, die bei der Definition der Benutzerprofile
zu verwenden sind.
-
Ein Überblick eines Digitalfernsehsystems 1 gemäß der Erfindung
ist in 1 gezeigt. Die
Erfindung umfaßt
ein größtenteils
bekanntes Digitalfernsehsystem 2, das das bekannte MPEG-2-Komprimierungssystem
zur Übertragung
komprimierter digitaler Signale verwendet. Genauer empfängt eine MPEG-2-Komprimierungseinrichtung 3 in
einem Sendezentrum einen digitalen Signalstrom (typischerweise einen
Strom von Videosignalen). Die Komprimierungsseinrichtung 3 ist
durch eine Verkoppelung 5 mit einem Multiplexer und Verwürfler 4 verbunden.
-
Der Multiplexer 4 empfängt eine
Vielzahl von weiteren Eingangssignalen, setzt den Transportstrom
zusammen und überträgt komprimierte
digitale Signale über
eine Verkoppelung 7, die selbstverständlich eine breite Vielfalt
von Formen einschließlich
Telekommunikationsverbindungen annehmen kann, zu einer Übertragungseinrichtung 6 des
Sendezentrums. Die Übertragungseinrichtung 6 überträgt elektromagnetische
Signale über
eine Aufwärtsstrecke 8 zu
einem Satellitentransponder 9, wo sie elektronisch verarbeitet
und über
eine angenommene Abwärtsstrecke 10 zu
einer Erdempfangseinrichtung 12, üblicherweise in der Form einer
dem Endbenutzer gehörenden
oder von ihm gemieteten Schüssel,
ausgestrahlt werden. Die durch die Empfangseinrichtung 12 empfangenen
Signale werden zu einer dem Endbenutzer gehörenden oder von ihm gemieteten
und mit dem Fernseher 14 des Endbenutzers verbundenen integrierten
Empfangseinrichtung/Decodierungseinrichtung 13 übertragen.
Die Empfangseinrichtung/Decodierungseinrichtung 13 decodiert
das komprimierte MPEG-2-Signal in ein Fernsehsignal für den Fernseher 14.
-
Andere Transportkanäle zur Übertragung
der Daten sind selbstverständlich
möglich,
wie beispielsweise terrestrische Ausstrahlung, Kabelübertragung, kombinierte
Satelliten-/Kabelverbindungen, Telefonnetze und so weiter.
-
In einem Mehrkanalsystem handhabt
der Multiplexer 4 von einer Anzahl von parallelen Quellen empfangene
Audio- und Videoinformationen und interagiert mit der Übertragungseinrichtung 6,
um die Informationen entlang einer entsprechenden Anzahl von Kanälen auszustrahlen.
Zusätzlich
zu audiovisuellen Informationen können Nachrichten oder Anwendungen
oder eine andere Sorte von digitalen Daten in einige oder alle dieser
Kanäle
eingeführt
werden, die mit den übertragenen
digitalen Audio- und Videoinformationen verschachtelt werden.
-
Ein Zugangsberechtigungssystem 15 ist
mit dem Multiplexer 4 und der Empfangseinrichtung/Decodierungseinrichtung 13 verbunden
und befindet sich teilweise in dem Sendezentrum und teilweise in der
Decodierungseinrichtung. Es ermöglicht
es dem Endbenutzer, auf Digitalfernsehsendungen von einem Sendungsanbieter
oder mehreren Sendungsanbietern zuzugreifen. Eine Chipkarte, die
zur Dechiffrierung von sich auf kommerzielle Angebote (das heißt ein Fernsehprogramm
oder mehrere Fernsehprogramme, die durch den Sendungsanbieter verkauft
werden) beziehenden Nachrichten in der Lage ist, kann in die Empfangseinrichtung/Decodierungseinrichtung 13 eingesetzt
werden. Unter Verwendung der Decodierungseinrichtung 13 und
der Chipkarte kann der Endbenutzer kommerzielle Angebote in entweder
einer Abonnementbetriebsart oder einer Pay-Per-View-Betriebsart
kaufen. In der Praxis kann die Decodierungseinrichtung zur Handhabung
mehrerer Zugangssteuersysteme, zum Beispiel des Simulcrypt- oder
Multicrypt-Entwurfs, konfiguriert sein.
-
Wie es vorstehend angeführt ist,
werden durch das System übertragene
Programme in dem Multiplexer 4 verwürfelt, wobei die auf eine gegebene Übertragung
angewendeten Bedingungen und Verschlüsselungsschlüssel durch
das Zugangssteuersystem 15 bestimmt werden. Die Übertragung
von verwürfelten
Daten auf diese Weise. ist auf dem Gebiet der Pay-TV-Systeme allgemein
bekannt. Typischerweise werden verwürfelte Daten zusammen mit einem
Steuerwort zur Entwürfelung
der Daten übertragen,
wobei das Steuerwort selbst durch einen sogenannten Verwertungsschlüssel verschlüsselt und in
verschlüsselter
Form übertragen
wird.
-
Die verwürfelten Daten und das verschlüsselte Steuerwort
werden daraufhin durch die Decodierungseinrichtung 13 empfangen,
die Zugriff auf ein Äquivalent
des Verwertungsschlüssels
hat, das auf einer zur Entschlüsselung
des verschlüsselten
Steuerworts und Entwürfelung
der übertragenen
Daten danach in die Decodierungseinrichtung eingesetzten Chipkarte
gespeichert ist. Ein Abonnent ohne Beitragsrückstand empfängt zum
Beispiel in einer ausgestrahlten monatlichen ECM (Berechtigungssteuernachricht)
den Verwertungsschlüssel,
der zur Entschlüsselung
des verschlüsselten
Steuerworts zum Erlauben der Betrachtung der Übertragung notwendig ist.
-
Ein interaktives System 16,
das ebenfalls mit dem Multiplexer 4 und der Empfangseinrichtung/Decodierungseinrichtung 13 verbunden
ist und sich wieder teilweise in dem Sendezentrum und teilweise
in der Decodierungseinrichtung befindet, ermöglicht es dem Endbenutzer, über einen
Modemrückkanal 17 mit
verschiedenen Anwendungen zu interagieren. Der Modemrückkanal
kann auch für
in dem Zugangsberechtigungssystem 15 verwendete Kommunikationen
verwendet werden. Ein interaktives System kann zum Beispiel verwendet
werden, um es dem Betrachter zu ermöglichen, unmittelbar mit dem Übertragungszentrum
zu kommunizieren, um die Genehmigung zum Ansehen eines speziellen
Ereignisses, Herunterladen einer Anwendung und so weiter zu verlangen.
-
Mit Bezug auf 2 sind nachstehend die physikalischen
Elemente der Empfangseinrichtung/Decodierungseinrichtung 13 oder
der Set-Top-Box beschrieben, die zur Verwendung bei der Erfindung
eingerichtet sind. Die in dieser Figur gezeigten Elemente sind in
Form von Funktionsblöcken
beschrieben.
-
Die Decodierungseinrichtung 13 umfaßt eine Zentralverarbeitungseinrichtung 20,
die zugeordnete Speicherelemente aufweist und zum Empfangen von Eingangsdaten
von einer seriellen Schnittstelle 21, einer parallelen
Schnittstelle 22 und einem (mit dem Modemrückkanal 17 gemäß 1 verbundenen) Modem 23 eingerichtet
ist.
-
Die Decodierungseinrichtung ist zusätzlich dazu
eingerichtet, Eingaben von einer Infrarotfernsteuerung 25 über eine
Steuereinheit 26 und von Schaltkontakten 24 an
dem vorderen Bedienfeld der Decodierungseinrichtung zu empfangen.
Die Decodierungseinrichtung besitzt auch zwei Chipkartenleser 27, 28,
die jeweils zum Lesen von Bank- oder Abonnementchipkarten 29, 30 eingerichtet
sind. Es kann auch über
eine (nicht gezeigte) Infrarottastatur eine Eingabe empfangen werden.
Der Abonnementchipkartenleser 28 greift mit einer eingesetzten Abonnementchipkarte 30 und
einer Zugangsberechtigungseinheit 29 ein, um einem Demultiplexer/Entwürfler 30 das
notwendige Steuerwort zuzuführen, um
eine Entwürfelung
des verschlüsselten
Sendesignals zu ermöglichen.
Die Decodierungseinrichtung umfaßt auch einen bekannten Tuner 31 und
Demodulator 32 zum Empfangen und Demodulieren der Satellitenübertragung,
bevor sie durch die Einheit 30 gefiltert und gedemultiplext
wird.
-
Eine Verarbeitung von Daten in der
Decodierungseinrichtung wird im allgemeinen durch die Zentralverarbeitungseinrichtung 20 gehandhabt.
Die Softwarearchitektur der Zentralverarbeitungseinrichtung entspricht
einer virtuellen Maschine, die mit einem in den Hardwarekomponenten
der Decodierungseinrichtung realisierten Betriebssystem einer niedrigeren
Ebene interagiert.
-
DECODIERUNGSEINRICHTUNGSSYSTEMARCHITEKTUR
-
Nachstehend der in 3 gezeigten Architektur des Systems in
der Empfangseinrichtung/Decodierungseinrichtung zugewendet ist es
ersichtlich, daß eine
geschichtete Architektur verwendet wird. Die erste Schicht 41 stellt
das Betriebssystem der Hardware der Empfangseinrichtung/Decodierungseinrichtung
dar. Dieses ist ein durch den Hersteller zur Steuerung der Hardwareelemente
der Empfangseinrichtung/Decodierungseinrichtung gewähltes Echtzeitbetriebssystem.
Das Echtzeitbetriebssystem weist eine relativ schnelle Ansprechzeit
auf, um dazu in der Lage zu sein, Hardwareoperationen richtig zu synchronisieren.
Die Ereignisnachrichten werden zwischen dieser Schicht und der sich
unmittelbar darüber
befindenden Middlewareschicht 42 befördert.
-
Das Datenverarbeitungssystem sitzt
oben auf dem Hardwarebetriebssystem und umfaßt eine Middlewareschicht 42 und
eine Anwendungsschnittstellenschicht 43.
-
Die Middlewareschicht 42 ist
in einer Sprache wie beispielsweise ANSI-C geschrieben und umfaßt die Elemente
einer virtuellen Maschine 44 und eine Anzahl von Schnittstellen 45 einschließlich einer Grafikschnittstelle 46,
einer FLASH/PROM-Speicherschnittstelle 47,
einer Protokollschnittstelle 48 und einer Vorrichtungsschnittstelle 49.
-
Die vorliegende Erfindung verwendet
eine virtuelle Maschine, um eine Unabhängigkeit zwischen Anwendungen
einer oberen Ebene und dem durch den Hersteller der Set-Top-Box realisierten
Betriebssystem einer unteren Ebene bereitzustellen. Die Schnittstellen 45 stellen
die Verbindung zwischen Operationen der virtuellen Maschine und
dem Betriebssystem 41 einer unteren Ebene bereit und umfassen
auch eine Anzahl von auf dieser Ebene leichter ausgeführten Zwischenebenenanwendungsmodulen.
-
Die Anwendungsschnittstellenschicht (API-Schicht) 43 umfaßt eine
Anzahl von Paketen 50–55 einer
hohen Ebene, die in einer objektorientierten Interpretationssprache
wie beispielsweise Java geschrieben sind. Diese Pakete stellen eine Schnittstelle
zwischen den durch den Diensteanbieter erzeugten Anwendungen (interaktiver
Programmführer,
Teleshopping, Internet-Browser und so weiter) und der virtuellen
Maschine des Systems bereit. Beispiele für derartige Anwendungen sind
nachstehend angegeben.
-
Das Betriebssystem einer niedrigeren
Ebene ist normalerweise in die Hardwarekomponenten der Decodierungseinrichtung
eingebettet, obwohl bei einigen Realisierungen das Betriebssystem
einer niedrigeren Ebene heruntergeladen werden kann. Die Middleware-
und Anwendungsschnittstellenschichtpakete können aus einer ausgestrahlten Übertragung
in das RAM oder den FLASH-Speicher
der Decodierungseinrichtung heruntergeladen werden. Alternativ können einige
oder alle der Middleware- oder Anwendungsschnittstellenschichtelemente
in dem ROM oder (falls vorhanden) FLASH-Speicher der Decodierungseinrichtung
gespeichert sein. Die Decodierungseinrichtung kann sogar ein Festplatten- oder
DVD-Laufwerk zu Zwecken der Speicheraufbewahrung umfassen. Wie es
zu verstehen ist, ist die physikalische Organisation der Speicherelemente der
Decodierungseinrichtung von der logischen Organisation des Speichers
verschieden.
-
ANWENDUNGSSCHNITTSTELLENSCHICHT
-
Mit Bezug auf die in 3 gezeigte Anwendungsschnittstellenschicht 43 und
wie vorstehend beschrieben sind die Pakete in dieser Schicht mit
einer objektorientierten Sprache wie beispielsweise Java geschrieben.
Jedes Paket definiert einen Satz von Klassenbibliotheken, die während des
Betriebs des Systems in Anspruch genommen werden. In dem vorliegenden
System sind die folgenden Pakete installiert.
-
Lang/util-Paket 50. Dieses
Paket definiert die für
die Manipulation von Objekten durch die virtuelle Maschine notwendigen
Klassen. Diese Klassenbibliotheken bilden normalerweise einen Teil
einer mit der gewählten
objektorientierten Sprache verbundenen Standardbibliothek.
-
MHEG-5-Paket 51. Diese Paket
definiert die mit der Manipulation von Grafikobjekten auf der Fernsehanzeige
verbundenen Klassen. Derartige Objekte sind von audiovisuellen Daten
verschieden und können
zum Beispiel Kanalidentifizierungen oder über angezeigte Bilder gelegten
Text darstellen. Die Definition von Klassen in diesem Paket sollte
die durch die Standards ETS 300777-3 und ISO/ISE 13522-5 (und in
dem Fall eines mit Java realisierten Systems den Standard ISO/ISE
13522-6) definierten MHEG-5-Normen beachten.
-
Werkzeugkastenpaket 52.
Dieses Paket enthält
die zum Herunterladen und Dekomprimieren von Informationen verwendeten
Klassen sowie die mit der Verwaltung des Dateisystems und Speichers
in der Empfangseinrichtung/Decodierungseinrichtung verbundenen Klassen
und die mit der Verbindung mit dem Internet verbundenen Klassen
und so weiter.
-
Vorrichtungspaket 53. Dieses
Paket definiert die zur Verwaltung von an der Empfangseinrichtung/Decodierungseinrichtung
angeschlossenen Peripheriegeräten
wie vorstehend erörtert
und einschließlich
des Modems, der Chipkartenleser, des MPEG-Strom-Tuners und so weiter
notwendigen Klassen.
-
Dienstpaket 54. Dieses Paket
definiert die für die
Realisierung der Entwicklung von interaktiven Anwendungen einer
höheren
Ebene wie beispielsweise der Verwaltung von Kreditkartendaten und
so weiter notwendigen Klassen.
-
DSMCC-UU-Paket 55. Dieses
Paket realisiert die zur Kommunikation zwischen einem Client und
einem Server zum Suchen und Lesen einer Datendatei notwendigen Protokolle.
Die Realisierung dieses Pakets sollte die Norm ISO/IEC 13818-6 und in
DAVIC Teil 9 definierte Direktiven beachten.
-
Während
des normalen Betriebs wird eine weitere Schicht von durch den Diensteanbieter
geschriebenen und wie bei bekannten Systemen während der Ausstrahlung heruntergeladenen
interaktiven Anwendungen über
die vorstehend definierten Schnittstellenpakete gelegt. Diese Anwendungen umfassen
typischerweise einen allgemeinen Anwendungsmanager zur Verwaltung
der definierten Grundoperationen der Decodierungseinrichtung und eine
optionale Anwendung oder mehrere optionale Anwendungen, die zusätzliche
Dienste hinzufügen. Insbesondere
kann eine Benutzermanageranwendung zur Verwaltung von Benutzerprioritätskonflikten verwendet
werden, wie es nachstehend beschrieben ist.
-
Abhängig von den einzuführenden
Anwendungen können
einige der vorstehenden Pakete weggelassen werden. Falls es zum
Beispiel der Diensteanbieter nicht beabsichtigt, einen allgemeinen Weg
zum Datenlesen bereitzustellen, kann das DSMCC-UU-Paket aus dem
endgültigen
System herausgelassen werden.
-
Die Pakete 43 stellen Klassenbibliotheken für eine objektorientierte
Programmierumgebung bereit. Ihr Klassenverhalten hängt von
der gewählten Sprache
ab. In dem Fall einer Java-Anwendung wird zum Beispiel eine Einfach-Vererbungs-Klassenstruktur
eingehalten.
-
Wie es zu verstehen ist, ist die
Gruppierung einer Klasse oder eines Satzes von. Klassen in einem
Paket eine Angelegenheit des Formalismus mit Bezug auf die Funktionalität einer
Klasse. Bestimmte auf die Verwaltung von Peripherievorrichtungen
bezogene Klassen können
zum Beispiel entweder als zu dem Vorrichtungspaket 53 oder
als zu dem Dienstpaket 54 gehörend klassifiziert werden.
-
SCHNITTSTELLENSCHICHT
-
Wie es gezeigt ist, besteht die Schnittstellenschicht
aus vier Modulen, einem Grafikmodul 46, einem Speicherdateiverwaltungsmodul 46,
einem Protokollmodul 48 und einem Vorrichtungsmanager 49. Während die
Module auf dieser Ebene als Schnittstellenmodule beschrieben sind,
besteht ihre Funktion darin, eine "Klebstoff"-Schicht für die Realisierung der Anwendungsschnittstellenpakete
und für
den Betrieb der virtuellen Maschine im allgemeinen bereitzustellen.
-
Das Grafikmodul 46 stellt
zum Beispiel die Erzeugung und Verwaltung von Grafikobjekten bereit.
Es fordert das Betriebssystem einer niedrigen Ebene zur Anzeige
von Grundgrafikformen wie beispielsweise einzelnen Bildelementen,
Linien, Rechtecken und so weiter auf. Die Realisierung dieses Moduls
hängt von
der Grafikfähigkeit
des Betriebssystems einer niedrigen Ebene des Herstellers ab. Auf einige
Weisen das MHEG-5-Paket 51 ergänzend können diese Funktionen auf dieser
Codeebene effizienter ausgeführt
werden, als in dem für
die vorstehende Anwendungsschicht gewählten Code einer hohen Ebene.
-
In einer ähnlichen Art und Weise umfaßt das Speicherdateiverwaltungsmodul 47 mit
den Speicherkomponenten des Systems verbundene Datei-Lesen-/-Schreiben-Befehle
einer niedrigen Ebene. Typischerweise umfaßt das Hardwarebetriebssystem
nur zum Lesen/Schreiben eines Sektors oder einer Seite in einer
Speicherkomponente notwendige Befehle. Wie mit dem Grafikmodul 46 ermöglicht es dieses
Modul, einen Satz von einfacheren Anwendungen einer niedrigeren
Ebene effizient in das System einzuführen.
-
Das Protokollverwaltungsmodul 48 definiert eine
Bibliothek von Kommunikationsprotokollen, die bei Kommunikationen über zum
Beispiel die TCP/IP-Schicht der Decodierungseinrichtung in Anspruch
genommen werden können.
-
Der Vorrichtungsmanager 49 unterscheidet sich
dahingehend leicht von den anderen Modulen in dieser Schicht, daß er die
Verbindung oder Schnittstelle zwischen dem Hardwarebetriebssystem
und den vorstehenden Schichten einschließlich der anderen Module in
der Schnittstellenschicht und der virtuellen Maschine bereitstellt.
Befehle oder Ereignisnachrichten, die von der virtuellen Maschine
empfangen/zu dem Hardwarebetriebssystem gesendet werden, werden
zum Beispiel zur Wandlung gemäß den Schnittstellenspezifikationen
zwischen den zwei Ebenen notwendigerweise durch den Vorrichtungsmanager
geleitet.
-
BESCHREIBUNG
DER VIRTUELLEN MASCHINE
-
Nachstehend auf 4 Bezug nehmend ist die Struktur der
in dem System gemäß der Erfindung verwendeten
virtuellen Maschine 44 beschrieben. Die bei der Erfindung
verwendete virtuelle Maschine ist eine Maschine des preemptiven
Multithread-Typs. Die allgemeinen Eigenschaften einer derartigen
Maschine sind in anderen Zusammenhängen bekannt, und die Erzeugung
von Code zur Realisierung einer derartigen Maschine liegt in den
Möglichkeiten
eines Fachmanns.
-
Die virtuelle Maschine besteht aus
einer Anzahl von Elementen, die wie in 4 gezeigt in großen Zügen interagieren. Der Scheduler 60,
der aus einem Thread-Manager-Dienst 61 und
einem Monitor-Manager-Dienst 62 besteht, bildet das Herz
der Multithread-Maschine. Der Scheduler 60 beauftragt die
Ausführung
von durch Anwendungen außerhalb der
virtuellen Maschine erzeugten Threads und den durch die virtuelle
Maschine selbst erzeugten (zum Beispiel einem Speicherbereinigungs-Thread
wie nachstehend erörtert).
-
Der Ereignismanager 63 handhabt
eine Ereignisleittabelle und die Liste von durch die Threads abonnierten
Ereignissen und zentralisiert die Abfertigung von Ereignisbehandlungen.
-
Der Speichermanager 64 handhabt
die Belegung und Freigabe der Speicherzonen in dem Systemspeicher
und handhabt auch die Entfernung von Objekten, auf die nicht. Bezug
genommen wird, aus dem Speicher (Speicherbereinigung).
-
Der Klassenmanager 65 lädt die Klassen
des in einem ausgestrahlten Signal heruntergeladenen Anwendungscodes,
wobei er zur Überprüfung der
Integrität
des heruntergeladenen Codes mit dem Sicherheitsmanager 66 und
mit dem Dateimanager 68, der die Anwendungen realisiert,
interagiert.
-
Der Dateimanager 68 führt die
Realisierung der Systemdateien und die Handhabung des Mechanismus
des Herunterladens von interaktiven Anwendungen und Daten aus.
-
Der Sicherheitsmanager 66 handhabt
die für heruntergeladene
Anwendungen erlaubte Zugangsstufe, wobei einige Anwendungen in Bezug.
auf das Dateisystem die Fähigkeit
zur Ausführung
von mehr Operationen als andere aufweisen.
-
Der einen Bytecode-Interpretationsdienst 69 und
einen "m-Code"-Interpretationsdienst 70 umfassende
Interpretierer 67 handhabt die Interpretation von in diesen
zwei Codes geschriebenen Anwendungen, wobei der Bytecode mit Java-Anwendungen verbunden
ist und m-Code der einem durch die Anmelder entwickelten proprietären Code
gegebene Name ist.
-
BENUTZERPROFILE
-
Die in Decodierungseinrichtungen
verfügbare
steigende Hardwareverarbeitungsleistung hat zu der Steigerung der
Verwendung von Decodierungseinrichtungen bei dem Leiten von Informationen
zwischen einer Anzahl von potentiellen Benutzern des Systems geführt. Beispielsweise
kann ein einzelner IRD als der Eingangspunkt für einen ausgestrahlten MPEG-Strom
dienen, wobei dieser Strom verarbeitet und für eine angeschlossene Fernsehanzeige
oder mehrere angeschlossene Fernsehanzeigen, einen über eine
Peritel-Verbindung angeschlossenen analogen VHS-Recorder, einen PC oder eine DVD-Vorrichtung,
die über
eine IEEE-1394-Bus angeschlossen sind, und so weiter abgezweigt
wird.
-
Eine für das vorliegende Ausführungsbeispiel
zentrale Idee ist die Definition einer Anzahl von "Benutzern" der Decodierungseinrichtung,
wobei jeder Benutzer ein bestimmtes charakteristisches Profil aufweist.
Beispielsweise kann eine Anwendung einen hohen Ebene eine Anzahl
von Benutzerprofilen für
einen Fernsehzuschauer, einen VHS-Recorder, eine die Decodierungseinrichtung
zum Zugriff auf das Internet direkt verwendende Person, eine die
Decodierungseinrichtung zum Leiten von Informationen zu einem PC
verwendende Person und so weiter definieren. 5 zeigt ein Beispiel für einen
Satz von typischen Benutzerprofilen. Diese Liste kann derart erweitert
werden, daß sie
zum Beispiel eine mit der Decodierungseinrichtung verbundene DVD-Vorrichtung und
so weiter umfaßt.
-
Ein Benutzerprofil kann in bezug
auf eine mit dem Terminal verbundene externe Vorrichtung definiert
sein, zum Beispiel den angeschlossenen Fernseher, wobei das Terminal
der Fernsehanzeige einfach audiovisuelle Daten zuführt. Das
Benutzerprofil kann auch in bezug auf die tatsächliche Identität einer
physischen Person oder "Bedienungsperson" oder mehrerer physischer
Personen oder "Bedienungspersonen", die auf das Terminal
zugreifen, definiert sein.
-
In dem vorliegenden Fall ist jedoch
ein Benutzerprofil in bezug auf eine Betriebsart der Vorrichtung
wie beispielsweise ihren Betrieb in einer Internetbetriebsart definiert.
Jedes für
eine Konfiguration oder Betriebsart definierte Benutzerprofil kann
für die das
Decodierungseinrichtungsterminal verwendenden verschiedenen Personen
personalisiert sein. Beispielsweise kann eine Person andere Betrachtungsvorlieben
als eine weitere haben, oder es kann ihr verboten sein, bestimmten
Kanälen
zuzuschauen. Die Informationen bezüglich der Präferenzen
beziehungsweise Vorlieben jeder Person sind in dem Benutzerprofil
für die
Betriebsart gespeichert.
-
Jedes Benutzerprofil weist eine eindeutige und
charakteristische Benutzer-ID und einen Prioritätswert oder mehrere Prioritätswerte,
die die Priorität
dieses Benutzers bei einem Erhalten von einem. Decodierungseinrichtungsbetriebsmittel
oder mehreren Decodierungseinrichtungsbetriebsmitteln bestimmen,
auf. In diesem Fall bezieht sich der Ausdruck "Betriebsmittel" auf eine Funktionalität der Decodierungseinrichtung
wie beispielsweise den Zugriff auf den Demultiplexer zum Herunterladen
ausgewählter Daten.
Der Anwendungsmanager einer hohen Ebene definiert und speichert
die Eigenschaften dieser Profile und handhabt die gemeinsame Nutzung
von Betriebsmitteln und Benutzerkonflikte unter Bezugnahme auf die
Benutzerpriorität.
-
Beispielsweise kann ein Benutzermanager zum
Beispiel einem Benutzer "RECORDER" derart Priorität zuweisen,
daß eine
Forderung von diesem Benutzer nach der Verwendung eines gegebenen Betriebsmittels
Priorität über eine
Forderung von dem Benutzer "BETRACHTER" nach der Verwendung
des Betriebsmittels bekommt. Insbesondere kann der Benutzer "RECORDER" Vorrang vor dem Benutzer "BETRACHTER" haben, was die Wahl
des Demultiplexerkanals betrifft. Auf diese Weise verhindert es
die Anwendung, das ein von einem Betrachter empfangenes Kanalwechselsignal
Priorität über den durch
jemanden, der ein zu der gleichen Zeit übertragenes Programm aufzeichnen
möchte,
gewählten Kanal
bekommt.
-
Bei diesem Beispiel, bei dem jedem
Benutzer ein einzelner Prioritätswert
zugewiesen ist, bekommt der Benutzer "RECORDER" immer Priorität über "BETRACHTER" zum Zugriff auf ein Betriebsmittel.
Alternativ können
derart mehrere Prioritätswerte
zugewiesen sein, daß "BETRACHTER" für bestimmte
Betriebsmittel Priorität
hat, "RECORDER" für andere
Priorität
hat und so weiter.
-
Die Prioritätsauswertung wird durch den
Benutzermanager gehandhabt und kann interaktiv sein, das heißt eine
Bedienungsperson kann es durch eine Programmierung der Decodierungseinrichtung
mit dem Handapparat bestimmen, ob einer Internetverbindung Priorität über eine
Fernsehbetrachtung zuzuweisen ist und so weiter.
-
Jedes Benutzerprofil umfaßt zusätzlich zu dem
Benutzer-ID-Wert
einen in einem Cache-Speicher in der Decodierungseinrichtung, zum
Beispiel in dem FLASH-Speicher
der Decodierungseinrichtung, gespeicherten Satz von Vorlieben. Dieses
Vorlieben werden bei jedem Booten der Decodierungseinrichtung durch
die Anwendung in Anspruch genommen. Wie in 6 gezeigt umfassen Benutzerprofildaten 80 Betriebsmitteldaten 81,
Eigenschaftsdaten 82 und Aktionsdaten 83.
-
Die Betriebsmitteldaten 81 umfassen
eine Liste von internen Decodierungseinrichtungsbetriebsmitteln,
auf die durch den Benutzer zugegriffen werden kann, zum Beispiel
einen Zugriff auf den MPEG-Tuner und Entwürfler. wie es zu verstehen
ist, bezieht sich ein Betriebsmittel in diesem Zusammenhang auf
ein logisches Betriebsmittel bezüglich
einer mit einem Demultiplexerprozeß, einem Zugangsberechtigungssystem
und so weiter verbundenen Kombination von physikalischen Elementen.
-
Eigenschaftsdaten 82 umfassen
für den
Benutzer spezifische bevorzugte Eigenschaften, zum Beispiel die
Sprache (Englisch, Französisch, Deutsch
und so weiter), die bei dem Schreiben von Anzeigen auf dem Bildschirm
bevorzugt verwendet wird, die Moralstufe von Programmen, die durch
den Benutzer betrachtet werden können,
und so weiter. Die Aktionsdaten 83 umfassen eine Liste
von erlaubten Aktionen, die durch den Benutzer ausgeführt werden
können,
einschließlich
eines Kanalwechsels und so weiter.
-
Die Benutzerprofildaten können durch
den Benutzermanager vorbestimmte feste Werte (zum Beispiel sind
alle Benutzer dazu in der Lage, auf die Betriebsmittel des Tuners,
des Demultiplexers und so weiter zuzugreifen) sowie durch jede Bedienungsperson,
die zur Verwendung des Terminals in jeder Betriebsart in der Lage
ist, modifizierbare und für
sie personalisierte Werte (Moralstufe von Programmen, denen zugeschaut
werden kann, und so weiter) umfassen.
-
Durch eine Bedienungsperson modifizierbare
Werte können
durch eine Bedienungsperson in dem Moment der Inbetriebnahme der
Decodierungseinrichtung eingestellte Werte für jedes Benutzerprofil sowie
jedesmal, wenn eine Sitzung mit einem speziellen Benutzerprofil
gestartet wird, durch eine Bedienungsperson eingestellte Werte umfassen.
-
Die Definition von Betriebsarten
entsprechenden und Daten bezüglich
der Priorität
für Terminalbetriebsmittel
für jedes
Profil umfassenden mehreren Benutzerprofilen ebnet den Weg für eine Parallelverarbeitung
derartiger Betriebsarten durch das Terminal, um es zum Beispiel
einem einzelnen Terminal zu erlauben, Daten zur Betrachtung über einen Fernseher
zu der gleich Zeit zu handhaben und zu verarbeiten, zu der durch
eine zugeordnete Aufzeichnungsvorrichtung aufzuzeichnende, durch
einen PC zu behandelnde und so weiter verschiedenen Daten weitergeleitet
werden. Bei derartigen Systemen wird das Terminal wirksam ein Daten-Hub
für eine
Anzahl von parallel arbeitenden zugeordneten Peripherievorrichtungen.
Diese Sorte von Betrieb wird durch ein Multithread-System der in
Bezug auf die
3 und 4 gezeigten Art und wie nachstehend
beschrieben besonders gut bewältigt.
-
Um die Erzeugung einer Folge von
Benutzerprofilen zu erlauben, ist es wünschenswert, in die API-Schicht
zum Eingreifen in die virtuelle Maschine eingerichtete Objektklassen
aufzunehmen, um dies zu erreichen. Wieder auf 3 Bezug nehmend und wie vorstehend erörtert liefern
die in der API-Schicht 43 definierten Klassenbibliotheken
die Parameter des Betriebs, innerhalb derer die Anwendungen einer höheren Ebene
arbeiten können.
Insbesondere umfaßt
bei der Ausführung
bestimmter Aktionen eine Anwendung einer höheren Ebene Anweisungen mit Bezug
auf in dieser Schicht definierte Klassen von Objekten.
-
Jede Klasse beachtet die Regeln der
für diese
Schicht gewählten
objektorientierten Programmiersprache. Typische Objektklassen umfassen Klassen
bezüglich
der Verwaltung der Anschlüsse der
Decodierungseinrichtung wie beispielsweise der Kreditkartenschnittstelle
sowie anderer Operationen wie beispielsweise der Verwaltung des
Zugangssteuersystems. Eine Anzahl von Standardklassen in der API-Schicht
sind durch die DAVIC-Gruppe in bezug auf zum Beispiel den Zugriff
auf Abschnitte und Tabellen in einem heruntergeladenen MPEG-Strom
definiert worden.
-
Nachstehend ist unter Bezugnahme
auf 7 eine Struktur
von zur Bereitstellung der Möglichkeit
des Definierens von Benutzervorlieben für jeden derartigen Benutzer
und zur Erleichterung der Handhabung von mehreren Benutzern durch
eine Anwendung einer hohen Ebene eingerichteten Klassen beschrieben.
Die beschriebenen Klassen können
zum Beispiel in dem in der API-Schicht 43 installierten
Dienstpaket 54 enthalten sein.
-
Mit Bezug auf 7 wird eine bei 90 gezeigte
Klasse Benutzer-Cache-Manager verwendet, um es Anwendungen zu erlauben,
auf in dem Speicher-Cache des Systems gespeicherte Benutzerprofildaten
zuzugreifen und sie zu verwalten. Diese Klasse ist eine statische
Klasse. Wie mit. standardmäßigen objektorientierten.
-
Programmarchitekturen umfaßt die Klassenbibliothek
eine Liste von Verfahren oder Befehlen wie beispielsweise ein Verfahren
Initialisieren() zum Initialisieren des Speicher-Caches, ein Verfahren
HoleMaxBenutzerProfile() zum Erfahren der maximalen Anzahl von durch
das System zu unterstützenden Benutzern,
ein Verfahren HoleAktiverBenutzerID() zum Erfahren der Anzahl von
derzeit aktiven Benutzern und so weiter. Die Klasse kann auch mit
einer Liste von Ereignissen verbunden sein, die der Anwendung das
Auftreten eines Ereignisses wie beispielsweise der Erzeugung oder
Löschung
eines Benutzerprofils signalisieren.
-
Die Klassen umfassen zusätzlich eine
bei 91 gezeigte Klasse Benutzer-Profil. Diese Klasse ist eine
generische Klasse, die dazu eingerichtet ist, die Erzeugung einer
Anzahl von Benutzerprofilen zu erlauben. Die Klasse umfaßt eine
Liste von Verfahren wie beispielsweise HoleBenutzerID() zum Wiedergewinnen
der Identität
eines Benutzers, HolePrioritätStufe()
zum Wiedergewinnen der Priorität
des Zugriffs auf Betriebsmittel, EinstellenAllgemeineEigenschaft()
zum Einstellen des Werts einer allgemeinen Eigenschaft und so weiter.
Die Klasse ist ebenfalls mit einer Liste von Ereignissen verbunden,
die zum Beispiel einen durch einen Benutzer angeforderten Kanalwechsel
angeben.
-
Diese Verfahren sind Verfahren, die
einen indirekten Zugriff auf Verfahren erlauben, wodurch die Notwendigkeit
vermieden wird, ein Verfahren für
jede Eigenschaft zu haben. Die Anzahl von durch diese Verfahren
verwalteten Eigenschaften hängt
von der Wahl des Systemarchitekten ab und kann sich mit der Zeit
entwickeln.
-
In der Praxis können die Wahl und Funktionalität der Anzahl
von Verfahren in dieser und den anderen Klassen auch nach dem Ermessen
des Systemarchitekten und in Abhängigkeit
von der Verarbeitungsleistung der Hardware, den Eigenschaften der virtuellen
Maschine, der Anzahl von Funktionalitäten, die der Systemarchitekt
einführen
möchte,
und so weiter bestimmt werden.
-
Wie beschrieben können einige der Verfahren gemäß den Prinzipien
der für
die Anwendungsschnittstellenschicht gewählten objektorientierten Sprache
durch andere Klassen geerbt werden.
-
Insbesondere definieren die Klassen
Betrachter-Profil 92, Recorder-Profil 93, Internet-Profil 94,
Datenbrücken-Profil 95 für die Definition
des Benutzerprofils BETRACHTER, RECORDER, INTERNET, DATEN BRÜCKE und
so weiter spezifische Verfahren. Die Klassen 92 bis 95 können von
der generischen Benutzer-Profil-Klasse 91 geerbte Verfahren
umfassen. Beispielsweise kann unter Verwendung des Befehls EinstellenAllgemeineEigenschaft (Eigenschaft,
Wert von Eigenschaft) der mit dem fraglichen Benutzerprofil verbundene
bevorzugte Wert einer Eigenschaft bestimmt werden.
-
Wird der Fall eines Betrachterprofils
genommen, bei dem die Moralstufe eines Betrachters zu definieren
ist, stellt die Anweisung
EinstellenAllgemeineEigenschaft (Moralstufe, 18)
in
dem Zusammenhang der Programmierung der Profile für den Benutzer
BETRACHTER eine, genehmigte Altersgrenze für diesen Benutzer ein. Dieser Wert
wird definiert und durch eine Anwendung einer höheren Ebene aufgerufen und
kann dazu verwendet werden, den Zugriff durch den Benutzer BETRACHTER
auf bestimmte Demultiplexerkanäle
zu verhindern, bis. die Bedienungsperson sein Alter erklärt. Für jede Person
mit Zugriff auf die Decodierungseinrichtung der Betriebsart BETRACHTER
kann so durch Instanzen in der Klasse BETRACHTER ein Satz von Vorlieben
definiert werden.
-
Wie es zu verstehen ist, ermöglicht es
die Definition einer Anzahl von für die Erzeugung eines identifizierten "Benutzers" spezifischen Klassen
in der API dem System, eine Vielzahl von Benutzerprofilen für jeden
dieser Benutzer leicht zu definieren. Die Bereitstellung einer Klasse
Benutzer-Cache-Manager erlaubt die Handhabung von in den Cache-Speicher
aufgenommenen Profildaten bezüglich eines
Benutzers, während
die generischen Klassen Benutzer-Profil und die Unterklassen Betrachter-Profil,
Recorder-Profil und so weiter die für die Definition jedes Benutzerprofils
notwendigen Werkzeuge bereitstellen.
-
Die genaue Zusammensetzung und Definition
der Verfahren und Ereignisse in diesen Klassen ist jedoch dem Ermessen überlassen,
und es liegt in der Kompetenz eines Fachmanns, die beste Definition derartiger
Objekte in Abhängigkeit
von den Eigenschaften der gewählten
virtuellen Maschine und so weiter zu bestimmen.