-
Technisches
Gebiet
-
Die
vorliegende Erfindung bezieht sich auf ein Kommunikationssystem,
eine Relaiseinrichtung und ein Kommunikationssteuerverfahren.
-
Stand der
Technik
-
Da
sich die Web- (weltweites Netz, World Wide Web) Technik entwickelt
hat, wurden Dienste zum Herunterladen verschiedener Anwendungen von
einem Web-Server-Endgerät
zu einem Web-Client-Endgerät über ein
Kommunikationsnetz, das das Internet enthält, weit verbreitet und üblich.
-
Ein
Benutzer mit einem Client-Endgerät greift
auf ein Web-Server-Endgerät unter
Verwendung eines Web-Browsers, der in dem Client-Endgerät vorgesehen
ist, zu und sendet zu dem Web-Server-Endgerät eine Anforderung
zum Herunterladen für
eine Anwendung. In diesem Prozess wird die Anwendung, die durch
den Benutzer gewünscht
wird, von dem Web-Server-Endgerät
zu dem Web-Client-Endgerät
heruntergeladen. Diese Technik wird z.B. in dem japanischen Patent
Offenlegung. Nr. 2002-189600 (Seite 2 und Seite 4) offenbart.
-
JP 2000 99476 offenbart
einen Server, der ein Relaisprogramm zu einem Firewall überträgt, um automatisch
mit Objekten in dem Firewall zu kommunizieren, und weniger CPU des
Endgerätes
zu verwenden.
-
Einige
Anwendungen, die zu einem Web-Client-Endgerät heruntergeladen werden, verursachen ein
Kommunikationsproblem dadurch, dass die Anwendung fortsetzt, mit
einem Web-Server-Endgerät, der Quelle
zum Herunterladen, zu kommunizieren. Falls ja, wird sich der Kommunikationsprozess
nahezu endlos fortsetzen, es sei denn, ein Benutzer bricht die Kommunikation
durch Betreiben eines Client-Endgerätes ab.
-
Offenbarung
der Erfindung
-
Die
vorliegende Erfindung wurde angesichts der oben erläuterten
Umstände
präsentiert
und ein Ziel besteht darin, ein Kommunikationssystem, eine Relaiseinrichtung
und ein Kommunikationssteuerverfahren vorzusehen, die in der Lage
sind, Kommunikation zu regeln, die durch eine Anwendung durchgeführt wird,
sodass Kommunikations- und Herunterladungsprobleme nicht auftreten.
-
Die
oben beschriebenen Probleme werden durch ein Kommunikationssystem
gemäß Anspruch 1
und eine Relaiseinrichtung gemäß Anspruch
6 gelöst.
-
Das
Kommunikationssystem umfasst ein Kommunikationsendgerät; und eine
Relaiseinrichtung zum Weiterleiten von Datenkommunikation zwischen
dem Kommunikationsendgerät
und einem Server, das Kommunikationsendgerät umfassend: Speichermittel
zum Speichern einer Anwendung, die mit einem Server über ein
Netz kommuniziert; Sendemittel zum Kommunizieren mit dem Server
als Reaktion auf die Anwendung; und vor Durchführen der Kommunikation, Einbeziehen
anwendungsbezogener Information bezogen auf die Anwendung in eine Kommunikationsanforderung,
und Senden der Anforderung zu dem Server; die Relaiseinrichtung
umfassend: Empfangsmittel zum Empfangen einer Kommunikationsanforderung
von dem Kommunikationsendgerät;
Relaisverarbeitungsmittel zum Weitergeben der Kommunikation, die
von der Kommunikationsanforderung angefordert wird; und in einem
Fall, dass anwendungsbezogene Information, die in der Kommunikationsanforderung
enthalten ist, eine vorbestimmte Bedingung erfüllt, Regeln der Kommunikation,
die von der Kommunikationsanforderung angefordert wird.
-
In
der oben beschriebenen Konfiguration bestimmt die Relaiseinrichtung,
ob anwendungsbezogene Information eine vorbestimmte Bedingung erfüllt. Im
Fall einer Bestimmung, dass die anwendungsbezogene Information eine
vorbestimmte Bedingung erfüllt,
regelt die Relaiseinrichtung Kommunikation, die durch die Kommunikationsanforderung angefordert
wird. Wie erläutert,
regelt eine Relaiseinrichtung, in einem Fall, dass eine Anwendung,
die in einem Kommunikationsendgerät installiert ist, eine vorbestimmte
Bedingung erfüllt,
Kommunikation, die durch die Anwendung durchgeführt wird; deshalb ist es möglich, die
Last in der Relaiseinrichtung in einer Spitzenzeit in der Kommunikation
zu reduzieren.
-
In
einer bevorzugten Ausführungsform
kann die anwendungsbezogene Information auch Kommunikationsidentifikationsinformation
enthalten, die in einem Fall, dass die Anwendung, die durch das Sendemittel
betrieben wird, eine Anwendung eines spezifischen Typs ist, anzeigt,
dass die Kommunikation durch eine Anwendung eines spezifischen Typs durchgeführt wird;
und wobei das Relaisverarbeitungsmittel ferner in einem Fall, dass
die anwendungsbezogene Information die Kommunikationsidentifikationsinformation
enthält,
Kommunikation regelt, die durch die Kommunikationsanforderung angefordert
wird.
-
Ferner
kann die anwendungsbezogene Information auch Aktivierungstypinformation
enthalten, die den Aktivierungsmodus der Anwendung anzeigt; und
wobei das Relaisverarbeitungsmittel in einem Fall, dass ein Aktivierungstyp,
der durch die Aktivierungstypinformation angezeigt wird, die in
der anwendungsbe zogenen Information enthalten ist, ferner Kommunikation
regelt, die durch die Kommunikationsanforderung angefordert wird.
-
Des
weiteren kann die anwendungsbezogene Information auch Serveridentifikationsinformation zum
Identifizieren eines Server enthalten, von dem die Anwendung abgegeben
wird; und wobei das Relaisverarbeitungsmittel in einem Fall, dass
der Server, der durch die Serveridentifikationsinformation identifiziert
wird, die in der anwendungsbezogenen Information enthalten ist,
ein spezifischer Server ist, ferner Kommunikation regelt, die durch
die Kommunikationsanforderung angefordert wird.
-
Des
Weiteren kann die anwendungsbezogene Information auch Anwendungsidentifikationsinformation
zum Identifizieren der Anwendung enthalten; und wobei das Relaisverarbeitungsmittel
in einem Fall, dass die Anwendung, die durch Anwendungsidentifikationsinformation
identifiziert wird, die in der anwendungsbezogenen Information enthalten
ist, eine spezifische Anwendung ist, ferner Kommunikation regelt,
die durch die Kommunikationsanforderung angefordert wird.
-
Kurze Beschreibung
der Zeichnungen
-
1 ist
ein Diagramm, das die Konfiguration eines Kommunikationssystems
in der vorliegenden Ausführungsform
zeigt.
-
2 ist
ein Diagramm, das die Konfiguration eines Gateway-Servers gemäß der vorliegenden Ausführungsform
zeigt.
-
3 ist
ein Diagramm zum Erläutern
einer Anforderungsnachricht RQ gemäß der vorliegenden Ausführungsform.
-
4 ist
ein Diagramm zum Erläutern
einer Kommunikationsmanagementtabelle Ta gemäß der vorliegenden Ausführungsform.
-
5 ist
ein Diagramm zum Erläutern
einer Antwortnachricht RS gemäß der vorliegenden
Ausführungsform.
-
6 ist
ein Diagramm, das die Hardwarekonfiguration einer Java-aktivierten
MS gemäß der vorliegenden
Ausführungsform
zeigt.
-
7 ist
ein Diagramm zum Erläutern
einer Java-Laufzeitumgebung gemäß der vorliegenden Ausführungsform.
-
8 ist
ein Flussdiagramm, das einen Kommunikationssteuerprozess gemäß der vorliegenden
Ausführungsform
zeigt.
-
9 ist
ein Diagramm, das einen beschreibenden Eintrag von ADF veranschaulicht.
-
10 ist
ein Diagramm, das verschiedene Standorte der Profile in einer Java-Laufzeitumgebung
gemäß einem
Modifikationsbeispiel 7 veranschaulicht.
-
11 ist
ein Diagramm zum Erläutern
einer UIM gemäß dem Modifikationsbeispiel
11.
-
12 ist
ein Diagramm zum Erläutern
einer UIM gemäß dem Modifikationsbeispiel
11.
-
13 ist
ein Diagramm zum Erläutern
eines Speicherbereiches eines EEPROM gemäß dem Modifikationsbeispiel
11.
-
Ausführungsformen der Erfindung
-
A. Vorliegende Ausführungsform
-
(1) Konfiguration der
Ausführungsform
-
<Konfiguration von Kommunikationssystem
100>
-
1 ist
ein Diagramm, das die Konfiguration eines Kommunikationssystems
gemäß der vorliegenden
Ausführungsform
zeigt. Das Kommunikationssystem 100 sieht einen Dienst
zum Abgeben einer Anwendung vor, die in der Sprache Java (ein Markenzeichen
von Sun Microsystems, Inc.; trifft auch auf die folgende Beschreibung
zu), die eine der Programmiersprachen ist, die zu einem geringeren Grad
von dem Modell oder dem Betriebssystem abhängig ist, zu dem der Dienst
abgegeben wird.
-
Das
Kommunikationssystem 100 umfasst einen Inhaltsserver 200 zum
Bereitstellen einer Java-Anwendung (hierin nachstehend als Java-aktivierter
CS bezeichnet) 200, einen Gateway-Server 400, der
in einer mobilen Paket-Gateway-Relaisvermittlungsstelle (nicht gezeigt)
zum Verbinden miteinander des Internet 300 und eines mobilen
Paketkommunikationsnetzes 500 vorgesehen ist, und eine
Mobileinrichtung 600, die zum Herunter laden einer Java-Anwendung,
die von dem Java-aktivierten CS 200 bereitgestellt wird, über das
Internet 300 fähig
ist, eine Gateway-Server 400 und ein mobiles Paketkommunikationsnetz 500;
hierin nachstehend wird die Mobileinrichtung als eine Java-aktivierte MS bezeichnet.
Das Kommunikationssystem 100 enthält ferner ein mobiles Telefonnetz
(nicht gezeigt) zum Bereitstellen allgemeiner Telefondienste für verschiedene
Typen von Mobileinrichtungen (einschließlich der Java-aktivierten
MS 600). Das Kommunikationssystem 100 enthält typischerweise
viele Java-aktivierte CSs 200 und Java-aktivierte MSs 600;
um zu vermeiden, dass die Figur kompliziert wird, wird je ein Java-aktivierter
CS 200 und eine Java-aktivierte MS 600 in 1 dargestellt.
-
Der
Java-aktivierte CS 200 ist mit dem Internet 300 über eine
dedizierte Leitung verbunden, um verschiedene Java-Anwendungen (einschließlich Java-Anwendungen
für Spiele)
bereitzustellen, die in der Datenbank DB gespeichert sind. 1 veranschaulicht
einen Fall, in dem der Java-aktivierte CS 200 direkt mit
dem Internet 300 über
eine dedizierte Leitung verbunden ist; der Java-aktivierte CS kann auch
direkt mit einem Gateway-Server 400 über eine dedizierte Leitung
verbunden sein.
-
Der
Gateway-Server 400 besteht aus einer CPU, einem ROM, einem
Computer mit einem RAM und einer Kommunikationseinrichtung. Die
CPU des Gateway-Servers 400 betreibt ein Relaisprogramm, das
in ROM gespeichert ist, und gibt den Transfer von Daten zwischen
Netzen unter Verwendung unterschiedlicher Kommunikationsprotokolle
weiter. Genauer betreibt der Gateway-Server 400 das Relaisprogramm,
um sowohl TCP/IP (Übertragungssteuerprotokoll/Internetprotokoll),
was ein Standardprotokoll des Internet 300 ist, als auch
ein Kommunikationsprotokoll für
mobile Paketkommunikation zu konvertieren, und gibt den Transfer
von Daten zwischen dem Internet 300 und dem mobilen Paketkommunikationsnetz 500 weiter.
Zusätzlich
zu der oben beschriebenen Datenweitergabefunktion stellt der Gateway-Server 400 eine
Funktion zum Regeln von Kommunikation durch eine Java-Anwendungen
bereit, die in der Java-aktivierten MS installiert ist.
-
Das
mobile Paketkommunikationsnetz 500 stellt einen Paketkommunikationsdienst
für mobile Einrichtungen
(einschließlich
der Java-aktivierten MS 600) bereit, die in dem mobilen
Kommunikationsnetz 500 untergebracht sind. Das mobile Paketkommunikationsnetz 500 enthält eine
Vielzahl von Gateway-Servern 400 und Basisstationen (nicht
gezeigt) zum Durchführen
drahtloser Kommunikation mit mobilen Einrichtungen, die sich in drahtlosen
Zellen befinden, die durch die Stationen abgedeckt werden.
-
Die
Java-aktivierte MS 500 ist ein Mobiltelefon, das mit einer
Umgebung zum Betreiben von Anwendungen ausgerüstet ist, die in der Sprache
Java geschrieben sind (hierin nachstehend als Java-Laufzeitumgebung
bezeichnet), und ist zum Betreiben von Java-Anwendungen fähig, die
von dem Java-aktivierten CS heruntergeladen werden. Einige der Java-Anwendungen,
die in der Java-aktivierten MS 600 installiert sind, führen Kommunikation
mit dem Java-aktivierten CS 200, der Quelle zum Herunterladen,
jedes Mal durch, wenn die Anwendung aktiviert ist. In einem Fall,
dass eine derartige Java-Anwendung aktiviert ist, bestimmt der Gateway-Server 400, ob
eine Kommunikation durch die Java-Anwendung gestattet wird, und
regelt gemäß der Bestimmung Kommunikation
durch die Java-Anwendung.
-
Als
Nächstes
wird eine detaillierte Konfiguration des Gateway-Servers 400 und
der Java-aktivierten MS 600, die in dem Kommunikationssystem 100 enthalten
sind, erläutert.
-
<Konfiguration vom Gateway-Server 400>
-
2 ist
ein Blockdiagramm, das die Funktionskonfiguration des Gateway-Servers 400 zeigt.
-
Die
Systemsteuereinheit 410 steuert jede Einheit des Gateway-Servers 400 und
funktioniert als eine Schnittstelle zwischen unterschiedlichen Netzen;
die Schnittstellenfunktion besteht darin, Protokollkonvertierung
mit anderen Netzen einschließlich des
Internet 300 und des mobilen Paketkommunikationsnetzes 500 durchzuführen.
-
Die
Kommunikationsinformations-Managementeinheit 400 umfasst
die Kommunikationsmanagementtabelle TA, die verschiedene Ty pen von
Information in Bezug auf Kommunikationsregelung speichert. Wenn
eine Anforderungsnachricht für Kommunikation über das
mobile Paketkommunikationsnetz 500 von der Java-aktivierten
MS 600 empfangen wird, führt die Systemsteuereinheit 410 die folgenden
Prozesse durch. Bezug nehmend auf den Anforderungsheader, der in
der empfangenen Anforderungsnachricht enthalten ist, bestimmt die
Systemsteuereinheit 410, ob die Kommunikationsanforderung
von einer Java-Anwendung gesendet wird, die in der Java-aktivierten
MS 600 installiert ist. Wenn eine Bestimmung durchgeführt wird,
dass die Kommunikationsanforderung von einer Java-Anwendung gesendet
wird, verweist die Systemsteuereinheit 410 auf Information,
die sich auf eine Java-Anwendung bezieht, die in dem Anforderungsheader
enthalten ist, und die Kommunikationsmanagementtabelle TA, wobei
dadurch bestimmt wird, ob die Kommunikationsanforderung gestattet
wird (die Details werden später
beschrieben).
-
3 und 4 sind
Diagramme, die eine Anforderungsnachricht RQ bzw. eine Kommunikationsmanagementtabelle
TA erläutern.
-
Wie
in 3 gezeigt, umfasst die Anforderungsnachricht RQ
einen Anforderungsheader RH und einen Anforderungsrumpf RB. In dem
Anforderungsheader sind gespeichert: Positionsinformation, wie etwa
ein URL, der den Ressourcenstandort in dem Java-aktivierten CS 200 anzeigt,
Methodeninformation, die den Methodentyp anzeigt, wie etwa eine
GET-Methode (eine Methode zum Erlangen von Daten aus dem Java-aktivierten
CS 200, mit dem die Java-aktivierte MS verbunden ist) und
eine POST-Methode (eine Methode zum Senden von Daten zu dem Java-aktivierten
CS 200, mit dem die Java aktivierte MS verbunden ist),
Inhaltsinformation, die einen Inhaltstyp anzeigt (ob es z.B. Text
oder ein Bild ist), Mobiltelefon-Identifikationsinformation, wie etwa
eine Telefonnummer oder eine E-Mailad resse zum Identifizieren der
Java-aktivierten MS 600 und auf die Java-Anwendung bezogene Information.
-
Die
auf die Java-Anwendung bezogene Information ist Information in Bezug
auf eine Java-Anwendung zum Durchführen einer Kommunikationsanforderung;
die Information enthält
das folgende:
Kommunikationsidentifikationsinformation: Information,
die anzeigt, dass eine Kommunikationsanforderung von einer Java-Anwendung angefordert
wird; in einem Fall, dass eine Kommunikation durch eine Java-Anwendung
ist, wird die Information z.B. durch eine Ziffer "0" angezeigt.
-
Java-Anwendungsidentifikationsinformation:
Information zum Identifizieren der Java-Anwendung; die Information
würde z.B.
den Namen der Java-Anwendung betreffen.
-
Aktivierungstypinformation:
Information, die den Aktivierungstyp der Java-Anwendung anzeigt; der
Aktivierungstyp enthält
es z.B. eine Timer-Aktivierung durch einen Benutzer.
-
Herunterladungsquellen-Identifikationsinformation:
Information zum Identifizieren des Java-aktivierten CS 200,
einer Herunterladungsquelle der Java-Anwendung; die Information
betrifft z.B. den Namen des Java-aktivierten CS 200.
-
Verschiedene
Information, die zu dem Java-aktivierten CS 200 zu senden
ist, ein Zugangspunkt, zu der Zeit einer Verwendung der POST-Methode
werden im Anforderungsrumpf RB beschrieben.
-
Im
Gegensatz dazu werden primäre
Kommunikationsregelungsinformation und sekundäre Kommunikationsregelungsinformation
mit der Kommunikationsmanagementtabelle TA (siehe 4)
re gistriert, die in der Kommunikationsinformations-Managementeinheit 420 des
Gateway-Servers 400 gespeichert ist.
-
Es
wird vermerkt, dass die primäre
Kommunikationsregelungsinformation Information zum Regeln von Kommunikationen
durch Java-Anwendungen ist, in einem Fall, dass auf einen Gateway-Server von einer
Vielzahl von Java-Anwendungen in einem Zeitpunkt zugegriffen wird;
die erste Information enthält
Information betreffend die Kommunikationsmenge, die in einem Zeitpunkt
verarbeitet werden kann.
-
Sekundäre Kommunikationsregelungsinformation
ist Information zum Regeln von Kommunikation durch die Java-Anwendung,
die als ein Ergebnis vom Zugriff wahrscheinlich ein Problem in der
Kommunikation verursachen wird, wie etwa Kommunikation, die sich
wegen einem Fehler endlos fortsetzt. Die sekundäre Kommunikationsregelungsinformation
enthält
Java-Anwendungsidentifikationsinformation zum Identifizieren einer
Java-Anwendung, die endlos kommuniziert (z.B. wegen dem Auftreten
eines Fehlers), was die Kommunikationslogik der Anwendung in einen
Zustand einer endlosen Schleife versetzt; Aktivierungstypinformation,
die den Aktivierungstyp darstellt, die einen Fehler in einem Fall
verursacht, dass ein Fehler nur als ein Ergebnis eines spezifischen
Anwendungstyps auftritt, und Herunterladungsquellen-Identifikationsinformation
zum Identifizieren des Java-aktivierten CS 200, der ursprünglich die
Java-Anwendung bereitgestellt hat, die bereits einen Fehler enthalten
kann.
-
Zusammen
mit der primären
Kommunikationsregelungsinformation und der sekundären Kommunikationsregelungsinformation
wird aktuelle Kommunikationsinformation, die die Kommunikationsmenge
anzeigt, die gegenwärtig
den Gateway-Server 400 durchläuft, mit der Kommunikationsmanagementtabelle
TA registriert. Die Systemsteuereinheit 410 hat auch die
Funktion zum Überwachen
der Kommunikationsmenge, die den Gateway-Server 400 durchläuft; und
setzt/aktualisiert auf der Basis des Überwachungsergebnisses aktuelle
Kommunikationsinformation, die mit der Kommunikationsmanagementtabelle
TA registriert ist.
-
Die
Systemsteuereinheit 410 verweist auf die auf die Java-Anwendung
bezogene Information, die in der Anforderungsnachricht RQ enthalten
ist, und die Kommunikationsmanagementtabelle TA, die in der Kommunikationsinformations-Managementeinheit 420 gespeichert
ist, wobei dadurch bestimmt wird, ob die Kommunikationsanforderungen gestattet
wird. In einem Fall, dass bestimmt wird, dass die Kommunikationsanforderung
gestattet wird, führt
die Systemsteuereinheit 410 eine Protokollkonvertierung
in der Anforderungsnachricht RQ durch und überträgt die konvertierte Nachricht
zu dem Java-aktivierten CS 200 entsprechend Positionsinformation,
die in einem Anforderungsheader RH enthalten ist. In einem Fall,
dass bestimmt wird, dass die Kommunikationsanforderung nicht gestattet
wird, sendet die Systemsteuereinheit 410 umgekehrt zu der
Java-aktivierten MS 600 eine Antwortnachricht, die anzeigt,
dass die Kommunikationsanforderung zurückzuweisen ist.
-
5 veranschaulicht
eine Antwortnachricht RS, die in dem oben beschriebenen Prozess
gesendet wird.
-
Kommunikationszurückweisungsinformation,
die anzeigt, dass eine Kommunikationsanforderung zurückgewiesen
wird, und Kommunikationsregelungsinformation zum Regeln von Kommunikation für n Sekunden
nach Empfang einer Antwortnachricht RS sind in der Nachricht enthalten.
-
In Übereinstimmung
mit der Kommunikationsregelungsinformation, die in der Antwortnachricht RS
enthalten ist, regelt die Java-aktivierte MS 600, die die
Antwortnachricht RS über das
mobile Paketkommunikationsnetz 500 empfangen hat, die Kommunikation
durch eine Java-Anwendung, die in der Java-aktivierten MS 600 installiert
ist, für
n Sekunden nach Empfang der Antwortnachricht RS. Als solche wird
Kommunikation durch eine Java-Anwendung geregelt.
-
<Konfiguration der Java-aktivierten
MS 600>
-
6 ist
ein Diagramm, das die Hardwarekonfiguration der Java-aktivierten
MS 600 zeigt.
-
Die
CPU 610 steuert in Übereinstimmung
mit verschiedenen Steuerprogrammen, die in der Speichereinheiten 650 gespeichert
sind, jede Einheit der Java-aktivierten MS 600.
-
Die
Drahtloskommunikationseinheit 620 ist mit einer Antenne
ausgerüstet
und steuert drahtlose Kommunikation zwischen Basisstationen. Unter
der Steuerung von CPU 610 generiert die Drahtloskommunikationseinheit 620 drahtlose
Signale durch Überlagerung
von Daten in Bezug auf eine Sendersprache, oder Daten für Paketkommunikation
in einer Trägerwelle
und überträgt das Signal
zu Basisstationen über
Antenne 621; umgekehrt demoduliert die Kommunikationseinheit
drahtlose Signale, die von Basisstationen über Antenne 621 empfangen
werden, und erlangt Daten in Bezug auf eine Empfangssprache, oder
Daten für
Paketkommunikation.
-
Die
Operationseingabeeinheit 630 ist mit einer Leistungsein/Austaste
und Operationstasten zum Eingeben von Ziffern, Worten und Operationsinstruktionen
ausgerüstet;
und gibt durch sie Operationssignale zu der CPU 610 als
Reaktion auf die Tastenoperationen aus.
-
Die
Kommunikationsverarbeitungseinheit 640 enthält ein Mikrofon
oder einen Lautsprecher, z.B. eine Sprachverarbeitungs einheit (nicht
gezeigt); und führt
unter der Steuerung der CPU 610 Kommunikationsverarbeitung
einschließlich
eines Rufverbindungs-/Trennungsprozesses durch. Die Anzeigeeinheit 645 hat
eine LCD (Flüssigkeitskristallanzeige) oder
eine Treiberschaltung zum Durchführen
von Anzeigesteuerung der LCD; dadurch zeigt die Einheit Information
in der Form verschiedener Zeichen, Bilder oder Text an.
-
Die
Speichereinheit 650 enthält einen ROM 651,
einen RAM 652 und einen nicht-flüchtigen Speicher 653 einschließlich SRAM
(statischer RAM) oder EEPROM (elektrisch löschbarer programmierbarer Nur-Lesespeicher).
-
Verschiedene
Programme, die durch die CPU 610 ausgeführt werden, sind in ROM 651 gespeichert.
Der ROM 651 speichert OS für die Java-aktivierte MS 600,
Software, wie etwa einen Web-Browser
zum Betrachten von Anwendungen, die in HTML (Hypertext-Auszeichnungssprache)
geschrieben sind, unter Verwendung eines HTTP (Hypertext-Transferprotokoll)
oder eines HTTPS (Hypertext-Transferprotokollsicherheit) (hierin
nachstehend als Mikro-Browser bezeichnet), und Software zum Bereitstellen
der oben beschriebenen Java-Laufzeitumgebung.
-
Der
RAM 652 wird als ein Arbeitsspeicher der CPU 610 verwendet,
und wird zum zeitweiligen Speichern verschiedener Daten verwendet,
und wird auch zu der Zeit des Betreibens einer Java-Anwendung verwendet,
die in der Java-aktivierten MS 600 installiert ist.
-
Der
nicht-flüchtige
Speicher 653 hat einen Anwendungsspeicher 653a.
Der Anwendungsspeicher 653a speichert in Entsprechung zu
Java-Anwendungen, die von dem Java-aktivierten CS 200 heruntergeladen
werden, Daten, die zu speichern sind, sogar nachdem die Ausführung einer
Java-Anwendung endet (hierin nachstehend als permanente Daten bezeichnet),
und Informa tion, die zum Vorbereiten der Anforderungsnachricht RQ
(siehe 3) erforderlich ist, die zu dem Java-aktivierten
CS 200, der Herunterladungsquelle, zur Zeit eines Starts
der Kommunikation zu senden ist; die Information enthält Methoden
Information oder auf die Java-Anwendung bezogene Information.
-
<Java-Laufzeitumgebung>
-
7 ist
ein Diagramm zum Erläutern
der Konfiguration der Java-Laufzeitumgebung, die in der Java-aktivierten
MS 600 vorgesehen ist. In der folgenden Erklärung wird
angenommen, dass die Java-aktivierte MS 600 mit einer Java-Laufzeitumgebung
versehen ist, die in einer Einrichtung installiert ist, die im Vergleich
zu einem Personalcomputer (hierin nachstehend als PC bezeichnet)
die Verwendung von Berechnungsressourcen, wie etwa einer CPU, eines
Speichers und einer Festplatte strikt regelt; in der aktuellen Erklärung ist
die Java-Laufzeitumgebung J2ME:Java 2 Micro Edition. J2ME führt zwei
Konzepte ein, nämlich
Konfiguration und Profil; in der vorliegenden Ausführungsform
wird angenommen, dass CLDC (Connected Limited Device Configuration,
verbundene begrenzte Einrichtungskonfiguration), die auf eine Einrichtung
mit geringer Verarbeitungsfähigkeit
anwendbar ist, als Konfiguration verwendet wird, und ein Profil,
das durch Anbieter eindeutig entwickelt wird, die in dem Abgabemanagementgeschäft (hierin
nachstehend als ursprüngliches
Java-Erweiterungsprofil bezeichnet) einbezogen sind, verwendet wird.
-
Eine
native Anwendung ist eine Anwendung zum Bereitstellen einer Sprachkommunikationsfunktion
oder Funktion zum Analysieren/Betreiben von Anwendungen, die in
einer für
eine Mobileinrichtung aktivierten Auszeichnungssprache geschrieben
sind, wobei die Anwendung Software zum Bereitstellen einer Browserfunktion
(ein Mikro-Browser), Software zum Bereitstel len einer Telefonbuchfunktion,
Software zum Bereitstellen einer Netzkommunikationsfunktion umfasst.
-
KVM
(Kilo Virtual Machine) wird durch Umgestaltung von JVM (Java Virtual
Machine) als eine eingebaute Einrichtung kleiner Größe, wie
etwa eine Mobileinrichtung, hergestellt, und die KVM kann durch
einen Speicher einer Kilobyte-Einheit (das "K" von
KVM ist aus der Tatsache abgeleitet, dass die Maschine einen Speicher
nach einer Kilobyte-Einheit für
den Betrieb erfordert) betrieben werden. JVM ist eine Software zum
Interpretieren/Betreiben von Java-Anwendungen.
-
Die
CLDC-Klassenbibliothek enthält
Klassen, die eine Teilmenge sind, die von J2SE (Java 2 Standard
Edition, Java-Laufzeitumgebung, von der vorausgesetzt wird, im PC
installiert zu sein) transferiert ist, eine obere Edition von J2ME
und Klassen, die für
CLDC spezifisch sind.
-
Die
ursprüngliche
Java-Erweiterungsbibliothek ist eine Klassenbibliothek zum Ermöglichen
der Realisierung der Funktion des oben beschriebenen ursprünglichen
Java-Erweiterungsprofils; die Bibliothek ermöglicht die Realisierung des
Java-Erweiterungsprofils durch Nutzung verschiedener Klassen, die
von jeder Klassenbibliothek bereitgestellt werden, oder einer API
(Anwendungsprogrammschnittstelle, ein Protokoll, das die Prozesse
in einem Programm zur Zeit einer Verwendung von OS oder verschiedener
Bibliotheken definiert).
-
API
verweist typischerweise auf ein Protokoll, das zur Zeit eines Aufrufs
einer Klasse in jeder Bibliothek verwendet wird, der Erläuterung
halber werden Klassen, die von jeder Bibliothek bereitgestellt werden,
als API bezeichnet.
-
APIs,
die von der ursprünglichen
Java-Erweiterungsbibliothek bereitgestellt werden, enthalten eine
Netzschnittstellen-API, eine Benutzerschnittstellen-API und eine
zweite Speicher-API.
-
Eine
Netzschnittstellen-API ist eine API zum Unterstützen der Verbindung mit Netzressourcen,
die durch einen URL (wie etwa der Java-aktivierte CS 200)
spezifiziert sind, und die API unterstützt die Netzverbindung unter
Verwendung einer HTTP(Hypertext-Transferprotokoll) Kommunikation
und einer HTTPS(Hypertext-Transferprotokollsicherheit) Kommunikation.
Eine Benutzerschnittstellen-API ist eine API zum Bereitstellen verschiedener
Benutzer Schnittstellenfunktionen. Eine zweite Speicher-API ist
eine API zum Unterstützen
einer Funktion zum Lesen/Schreiben von Daten in einem zweiten Speicher.
-
Die
Java-aktivierte MS 600 der vorliegenden Ausführungsform
installiert eine für
einen Hersteller proprietäre
erweiterte Bibliothek, die durch jeden Hersteller einer mobilen
Einrichtung zusätzlich
gegeben wird, zum Bereitstellen ihrer eindeutigen Funktion, zusammen
mit der oben erläuterten
CLDC-Klassenbibliothek und der ursprünglichen Java-Erweiterungsbibliothek.
-
Der
JAM (Java Application Manager) ist eine Software zum Bereitstellen
der Funktion zum Managen einer Java-Anwendung, die in der Java-aktivierten
MS 600 installiert ist. Genauer sieht JAM die folgenden Funktionen
vor: eine Funktion zum Bestimmen, ob eine Java-Anwendung verfügbar ist;
eine Funktion für
eine Liste, die Java-Anwendungen anzeigt, die in der Java-aktivierten
MS 600 gespeichert sind; eine Funktion zum Aktivieren oder
Durchführen einer
Abschaltung in einer Java-Anwendung;
eine Funktion zum Installieren oder Aktualisieren einer Java-Anwendung
und eine Funktion zum Löschen
der existierenden Java-Anwendungen, die in der Java-aktivierten
MS 600 gespeichert sind.
-
Ein
erster Speicher ist ein Speichermechanismus zum Speichern von Java-Anwendungen,
die von dem Java-aktivierten CS 200 heruntergeladen werden,
oder Information, die zum Vorbereiten der oben beschriebenen Anforderungsnachricht
RQ erforderlich ist (siehe 3).
-
Ein
zweiter Speicher ist ein Speichermechanismus zum Speichern der oben
beschriebenen permanente Daten, und ihm wird ein anderer Speicherbereich
für jede
Java-Anwendung gegeben, die in der Java-aktivierten MS 600 installiert
ist.
-
Es
wird verschiedene Software, die die Java-Laufzeitumgebung bildet,
durch Hardwareressourcen, wie etwa die CPU, die in der Java-aktivierten
MS 600 vorgesehen sind, ausgeführt.
-
Als
Nächstes
werden Kommunikationsoperationen einer Java-Anwendung, die mit dem
Java-aktivierten CS 200, der Quelle zum Herunterladen,
jedes Mal kommuniziert, wenn die Anwendung aktiviert wird, erläutert. In
der folgenden Erläuterung wird
angenommen, dass ein Benutzer die Aktivierungszeitsteuerung der
Java-Anwendung (eine Timeraktivierung, die durch einen Benutzer
eingestellt wird) setzt, und die Java-Anwendung mit dem Java-aktivierten
CS 200, dem Ursprung zum Herunterladen, gemäß der eingestellten
Zeitsteuerung kommuniziert.
-
(2) Operationen der Ausführungsform
-
Ein
Benutzer manipuliert die Operationstasten der Java-aktivierten MS 600,
um eine Java-Anwendung auszuwählen,
und setzt die Aktivierungszeitsteuerung der Java-Anwendung (die
Anwendung kann alle 30 Minuten aktiviert werden). Information in Bezug
auf eine ausgewählte
Java-Anwendung und Aktivierungszeitsteuerung, die durch einen Benutzer gesetzt
ist, wird in einem nicht-flüchtigen
Speicher 653 der Java-aktivierten MS 600 gespeichert. Bezüglich der
Information, die in dem nichtflüchtigen
Speicher 653 gespeichert wird, und eines Timers (nicht gezeigt)
bestimmt die CPU 610, ob es die Zeit ist, die ausgewählte Java-Anwendung
zu aktivieren.
-
Wenn
bestimmt ist, dass es die Zeit ist, die Java-Anwendung zu aktivieren,
generiert die CPU 610 eine Anforderungsnachricht RQ, die
in der obigen 3 gezeigt wird, um Kommunikation
zwischen der Java-Anwendung und dem Java-aktivierten CS 200,
der Quelle zum Herunterladen, zu starten. Um es genauer zu beschreiben,
liest die CPU 610 aus dem nichtflüchtigen Speicher 653 aus: Standortinformation,
die den Ressourcenstandort anzeigt, der in Entsprechung zu der Java-Anwendung gespeichert
ist; Methodeninformation, die einen Methodentyp anzeigt; Inhaltsinformation,
die einen Inhaltstyp anzeigt; Mobileinrichtungs-Identifikationsinformation,
wie etwa eine Telefonnummer; und die oben beschriebene auf eine
Java-Anwendung bezogene
Information, und beschreibt sie im Anforderungsheader RH; und beschreibt
in einem Fall einer Verwendung der POST-Methode als einen Methodentyp
im Anforderungsrumpf RB verschiedene Information, die zu dem Java-aktivierten
CS 200 zu übertragen
ist, um die Anforderungsnachricht RQ vorzubereiten.
-
Wenn
die Anforderungsnachricht RQ vorbereitet ist, sendet die CPU 610 die
Kommunikationseinheit 620 zu dem Java-aktivierten CS 200 über die Kommunikationseinheit 620 und
die Antenne 621. Die Anforderungsnachricht RQ wird durch
den Gateway-Server 400 empfangen, der Senden/Empfangen von
Daten zwischen der Java-aktivierten MS 600 und dem Java-aktivierten
CS 200 weitergibt. Die Systemsteuereinheit 410 des
Gateway-Servers 400 verweist auf Kommunikationsidentifikationsinformation,
die in dem Anforderungsheader RH der empfangenen Anforderungsnachricht
RQ enthalten ist, und bestimmt, ob die Kommunikationsanforderung
von einer Java-Anwendung oder von einem Mikro-Browser, die/der eine
HTML-Basis verwendet, gesendet wird.
-
In
einem Fall, dass bestimmt wird, dass eine Kommunikationsanforderung
von einem Mikro-Browser gesendet wird, führt die Systemsteuereinheit 410 Kommunikationsprozesse,
wie etwa Unterziehung der Anforderungsnachricht, die von der Java-aktivierten
MS 600 empfangen wird, Protokollkonvertierung, aus, und überträgt die Nachricht
zu einem Server (nicht gezeigt) entsprechend einem URL. In einem Fall,
dass bestimmt wird, dass eine Kommunikationsanforderung von einer
Java-Anwendung gesendet wird, liest die Systemsteuereinheit 410 umgekehrt ein
Kommunikationssteuerprogramm aus, das in einem ROM gespeichert ist,
um die in 8 gezeigten Kommunikationssteuerprozesse
durchzuführen.
-
Wenn
eine Anforderungsnachricht RQ von der Java-aktivierten MS 600 empfangen
wird (Schritt S1), bestimmt die Systemsteuereinheit 400,
ob die Kommunikationsanforderung gestattet wird, durch Verweis auf
die Kommunikationsmanagementtabelle TA, die in der Kommunikationsinformations-Managementeinheit 420 gespeichert
ist. Genauer vergleicht die Systemsteuereinheit 410 aktuelle
Kommunikationsinformation, die mit der Kommunikationsmanagementtabelle
TA registriert ist (die Information ist z.B. der Verkehr, der in
diesem Punkt den Gateway-Server 400 durchläuft) mit
erster Kommunikationsinformation, die mit der Kommunikationsmanagementtabelle
TA registriert ist (Information zum Regeln von Kommunikation von
Java-Anwendungen in einem Fall, dass eine Vielzahl von Java-Anwendungen gleichzeitig
auf einen Gateway-Server zugreifen).
-
In
einem Fall einer Bestimmung, dass der Verkehr, der durch aktuelle
Kommunikationsinformation angezeigt wird, stärker als der Verkehr ist, der durch
die erste Kommunikationsinformation angezeigt wird (Schritt S2;
NEIN), bereitet die Sys temsteuereinheit 410 eine Antwortnachricht
RS (siehe 5) vor, die Kommunikationszurückweisungsinformation
zum Zurückweisen
einer Kommunikationsanforderung oder Kommunikationsregelungsinformation,
um Kommunikation für
(n) Sekunden nach Empfangen der Antwortnachricht RS nicht zu erlauben
(Schritt S3), enthält,
und sendet die Nachricht zu der Java-aktivierten MS 600 über das
mobile Paketkommunikationsnetz 500 (Schritt S4), um die
Prozesse zu beenden.
-
In
einem Fall andererseits, dass der Verkehr, der durch die aktuelle
Kommunikationsinformation angezeigt wird, geringer als der Verkehr
ist, der durch eine erste Kommunikationsinformation angezeigt wird,
vergleicht die Systemsteuereinheit 410 die auf eine Java-Anwendung
bezogene Information, die in dem Anforderungsheader RH der empfangenen
Anforderungsnachricht RQ enthalten ist, mit sekundärer Kommunikationsregelungsinformation,
die in der Kommunikationsmanagementtabelle TA registriert ist. Wie
oben beschrieben, enthält
sekundäre
Kommunikationsregelungsinformation Information in Bezug auf Java-Anwendungen,
die eine Kommunikationsstörung
verursachen können,
wie etwa eine endlose Fortsetzung von Kommunikation wegen dem Vorhandensein
eines Fehlers.
-
In
einem Fall, dass eine Bestimmung durchgeführt wird, dass eine Kommunikationsanforderung von
einer Java-Anwendung zurückzuweisen
ist (Schritt S2; NEIN), da Java-Anwendungsidentifikationsinformation,
die in sekundärer
Kommunikationsregelungsinformation enthalten ist, und Java-Anwendungsidentifikationsinformation,
die in einer Anforderungsnachricht RQ enthalten ist, miteinander übereinstimmen,
bereitet die Systemsteuereinheit 410 eine Antwortnachricht
RS (Schritt S3) vor, die der gleiche Prozess wie oben beschrieben
ist, und sendet die Nachricht zu der Java-aktivierten MS 600 über das
mobile Paketkommunikationsnetz 500 (Schritt S4), um die
Prozesse zu beenden.
-
In
einem Fall, dass eine Bestimmung durchgeführt wird, dass der Verkehr,
der in aktueller Kommunikationsinformation angezeigt wird, geringer
als der Verkehr ist, der in Kommunikationsregelungsinformation angezeigt
wird, und dass es keine gemeinsame Information zwischen verschiedener
Information gibt, die in auf eine Java-Anwendung bezogener Information
enthalten ist, und verschiedener Information, die in sekundärer Kommunikationsregelungsinformation
enthalten ist, bestimmt die Systemsteuereinheit 410, dass
eine Kommunikationsanforderung von der Java-Anwendung zu gestatten
ist (Schritt S2; JA), und fährt
zu Schritt S5 fort. In Schritt S5 unterzieht die Systemsteuereinheit 410 die
Anforderungsnachricht, die von der Java-aktivierten MS 600 empfangen
wird, Protokollkonvertierung und überträgt die Nachricht zum Java-aktivierten
CS 200 entsprechend Positionsinformation, die im Anforderungsheader
RH enthalten ist, um die Prozesse zu beenden.
-
Wenn
die Anforderungsnachricht RQ von dem Gateway-Server 400 über das
Internet 300 empfangen wird, übermittelt der Javaaktivierte
CS 200 dem Internet 300 Textdaten und Bilddaten
entsprechend Positionsinformation, die in der Anforderungsnachricht
RQ enthalten ist. Als solche werden die Textdaten und Bilddaten
zu der Java-aktivierten MS 600 über den Gateway-Server 400 gesendet.
Wenn die Daten empfangen werden, aktiviert die CPU 610 der
Java-aktivierten MS 600 einen Bestätigungsdialog (nicht gezeigt),
um einem Benutzer mitzuteilen, dass der Datenempfang erfolgreich
abgeschlossen ist, zeigt den Dialog auf einer Anzeigeeinheit an
und beendet die Kommunikation mit dem Java-aktivierten CS 200.
-
Wie
erläutert,
verweist gemäß der vorliegenden
Erfindung in einem Fall, dass Kommunikation zwischen einer Java-Anwendung,
die in der Java-aktivierten MS 600 installiert ist, und
einem Java-aktivierten CS 200 durchgeführt wird, der Quelle zum Herunterladen,
der Gateway-Server 400, der die Kommunikation weitergibt,
auf sowohl auf eine Java-Anwendung bezogene Informationsanforderung, die
in einer Nachricht RQ enthalten ist, die von der Java-aktivierten
MS 600 gesendet wird, als auch eine Kommunikationsmanagementtabelle
TA, die in einer Kommunikationsinformations-Managementeinheit 420 gespeichert
ist, wobei dadurch bestimmt wird, ob die Kommunikationsanforderung
gestattet wird. In einem Fall, dass die Kommunikationsanforderung
gestattet wird, überträgt der Gateway-Server 400 die Anforderungsnachricht
RQ zum Java-aktivierten CS 200; in dem Fall, dass die Kommunikationsanforderung
zurückgewiesen
wird, überträgt der Server
die Anforderungsnachricht RQ zu dem Java-aktivierten CS 200 nicht,
sondern sendet der Java-aktivierten MS 600 eine Antwortnachricht
RS, die die Zurückweisung
der Kommunikationsanforderung anzeigt.
-
Primäre Kommunikationsregelungsinformation
zum Regeln von Kommunikation von Java-Anwendungen in einem Fall,
dass eine Vielzahl von Java-Anwendungen gleichzeitig auf einen Gateway-Server zugreifen,
ist in einer Kommunikationsmanagementtabelle TA enthalten. Der Gateway-Server 400 regelt
die Kommunikation von einer Java-Anwendung durch Vergleichen der
ersten Kommunikationsinformation mit aktueller Kommunikationsinformation;
somit ist der Gateway-Server 400 zum Reduzieren der Last
in einer Spitzenzeit fähig,
sogar in der Zeit, wenn von Verkehr, der den Gateway-Server 400 zeitweilig
passiert, angenommen wird, dass er übermäßig hoch ist, wie etwa dem
Ende des Jahres.
-
Die
Kommunikationsmanagementtabelle TA enthält ferner sekundäre Kommunikationsregelungsinformation
zum Identifizieren von Java-Anwendungen, von denen wahrscheinlich
ist, dass sie eine Verkehrsfehlfunktion verursachen, wie etwa endloses Kommunizieren
wegen dem Vorhandensein eines Fehlers. Der Gateway-Server 400 regelt
die Kommunikation von einer Java-Anwen dung durch Vergleichen der
sekundären
Kommunikationsinformation mit aktueller Kommunikationsinformation;
somit ist sogar in einem Fall, dass eine Java-Anwendung, für die es
wahrscheinlich ist, dass sie die oben beschriebene Verkehrsfehlfunktion
verursacht, eine Kommunikationsanforderung durchführt, der
Gateway-Server 400 in der Lage, eine Kommunikationsanforderung
von der Java-Anwendung zurückzuweisen
und ein Kommunikationsproblem zu verhindern, das wegen der Java-Anwendung
auftritt.
-
Wie
erläutert,
wird durch Regeln der Last zur Spitzen zeit und Verhindern der oben
beschriebenen Kommunikationsfehlfunktion dem Problem, das einen
Zusammenbruch im Gateway-Server 400 enthält (nämlich die
Kommunikationsweitergabefunktion von Zusammenbrüchen vom Gateway-Server 400),
das durch die Kommunikationsfehlfunktion verursacht wird, zuvorgekommen.
-
Sogar
einem Fall, dass eine Java-aktivierte MS 600 mit einer
Java-Anwendung installiert ist, von der es wahrscheinlich ist, dass
sie eine Verkehrsfehlfunktion verursacht, regelt der Gateway-Server 400 Kommunikation
von der Java-Anwendung. Deshalb wird einem Problem, wie etwa Kommunikation,
die zwischen der Java-Anwendung und einem Java-aktivierten CS 200,
der Quelle zum Herunterladen der Java-Anwendung, ohne eine Anforderung
von einem Benutzer einer Java-aktivierten MS 600, durchgeführt wird
und die resultierenden Kommunikationsgebühren für den Benutzer unerwartet ansteigen,
zuvorgekommen.
-
B. Modifikationen
-
Es
wurde eine Ausführungsform
der Erfindung erläutert;
die obige Ausführungsform
ist jedoch einfach ein Beispiel, und es sind verschiedene Modifikationen
auf die oben beschriebene Ausführungsform
innerhalb des Ziels der vorliegenden Erfindung anwendbar.
-
<Modifikationsbeispiel 1>
-
In
der oben beschriebenen Ausführungsform wird
ein Aktivierungsmodus einer Java-Anwendung veranschaulicht, die
in einer Java-aktivierten MS 600 installiert ist, wobei:
eine Java-Anwendung durch Folgen der Aktivierungszeitsteuerung aktiviert
wird, die durch einen Benutzer gesetzt ist. In einer anderen Ausführungsform
wird jedoch in einem Fall, dass eine Java-Anwendung, die in einer
Java-aktivierten MS 600 installiert ist, eine Anwendung
ist, die von einem Java-aktivierten CS 200 heruntergeladen
wird, die vorliegende Erfindung auch auf eine Ausführungsform
angewendet, in der eine Java-Anwendung folgend der Zeitsteuerungsinformation
aktiviert wird, die in einer nachstehend gezeigten ADF beschrieben
ist.
-
Eine
Java-Anwendung, die von einem Java-aktivierten CS 200 heruntergeladen
wird, umfasst eine JAR-Datei von mehreren Dutzend Kilobytes, die Programmdateien
eines Java-Anwendungsrumpfes und Ressourcen, wie etwa Bild- oder
Sprachdateien enthält,
und eine Textdatei von mehreren Dutzend Kilobytes, die ADF (Anwendungsdeskriptordatei)
genannt wird, die verschiedene Typen von Information in Bezug auf
die JAR-Datei beschreibt.
-
9 ist
ein Diagramm, das einen beschreibenden Eintrag einer ADF veranschaulicht.
-
ADF
enthält
Dateigrößeninformation,
die die Größe einer
JAR-Datei anzeigt
(wie etwa 10 Kilobytes), URL-Information, die den Speicherstandort der
JAR-Datei anzeigt (wie etwa http://www. ...), und Modellinformation,
die das Modell einer mobilen Einrichtung anzeigt, die in der Lage
ist, die JAR-Datei zu verwenden (wie etwa DCMH 505).
-
Zur
Zeit des Herunterladens einer gewünschten Java-Anwendung vom
Java-aktivierten CS 200 greift ein Benutzer mit einer Java-aktivierten MS 600 auf
einen Java-aktivierten CS unter Verwendung eines Mikro-Browsers
von 200 zu, um eine ADF herunterzuladen. Wenn eine ADF heruntergeladen wird,
verweist die Java-aktivierte MS 600 auf den Inhalt, der
in der ADF beschrieben ist, und beurteilt, ob die Java-Anwendung
verfügbar
ist. Nur in einem Fall, dass beurteilt wird, dass die Java-Anwendung verfügbar ist,
lädt die
Java-aktivierte MS 600 eine JAR-Datei unter Verwendung von URL-Information herunter,
die in der ADF beschrieben ist.
-
Somit
wird eine JAR-Datei nicht direkt heruntergeladen; stattdessen wird
die Verringerung der Kommunikationsgebühren durch Verwenden eines Modells
erreicht, worin eine ADF, deren Größe kleiner als eine JAR-Datei
ist, heruntergeladen wird, um nur die Basiselemente zu prüfen.
-
Eine
ADF enthält
wesentliche Elemente: wie etwa Dateigrößeninformation, die die Größe einer JAR-Datei
anzeigt (wie etwa 10 Kilobytes) URL-Information, die den Speicherstandort
der JAR-Datei anzeigt (wie etwa http://www. ...); und Modellinformation,
die das Modell einer mobilen Einrichtung anzeigt, die in der Lage
ist, die JAR-Datei zu verwenden (wie etwa DCMH 505), und
ein Optionselement, wie etwa Zeitsteuerungsinformation, das die
Autoaktivierungszeitsteuerung anzeigt (wie etwa jede 45 Minuten) (siehe 9).
-
In
einer Java-aktivierten MS 600, die mit der Java-Anwendung
installiert ist, wird die Java-Anwendung in Übereinstimmung mit Zeitsteuerungsinformation
aktiviert, die in einer ADF beschrieben ist. In einem Fall, dass
die Java-Anwendung eine Anwendung ist, die mit einem Java-aktivierten
CS 200 (der Quelle zum Herunterladen) kommuniziert, wird
die Anwendung (die Java-Anwendung, die auf der Basis der Zeitsteuerungsin formation
aktiviert wird) jedes Mal aktiviert, um mit einem Java-aktivierten
CS 200 (der Quelle zum Herunterladen) zu kommunizieren. Wenn
die Java-Anwendung mit einem Java-aktivierten CS 200 (der
Quelle zum Herunterladen) kommuniziert, wird eine Anforderungsnachricht
RQ, die Aktivierungstypinformation enthält, die anzeigt, dass die Aktivierung
durch eine ADF veranlasst wird, von der Java-aktivierten MS 600 zu
einem Gateway-Server 400 gesendet.
-
Sogar
in dem Fall einer Aktivierung des Typs einer Java-Anwendung, die
mit einem Java-aktivierten CS (der Quelle zum Herunterladen) in Übereinstimmung
mit Zeitsteuerungsinformation kommuniziert, die in einer ADF beschrieben
ist, verweist ein Gateway-Server 400, der die Kommunikation
weitergibt, auf zu einer Java-Anwendung gehörige Information, die in einer
Anforderungsnachricht RQ enthalten ist, die von einer Java-aktivierten MS 600 gesendet wird,
und auf eine Kommunikationsmanagementtabelle TA, die in einer Kommunikationsinformations-Managementeinheit 420 gespeichert
ist, wobei dadurch bestimmt wird, ob die Kommunikationsanforderung
gestattet wird. In dem Fall einer Zurückweisung der Kommunikationsanforderung
hebt der Gateway-Server die Übertragung
der Anforderungsnachricht RQ zu einem Java-aktivierten CS 200 auf und
sendet eine Antwortnachricht RS, die die Zurückweisung der Kommunikationsanforderung
anzeigt, zur Java-aktivierten MS 600. Folglich werden die
gleichen Effekte wie jene der oben beschriebenen Ausführungsform
erreicht.
-
Es
wurden Erläuterungen
veranschaulicht, die die folgenden Modi enthalten: Aktivieren einer
Java-Anwendung durch Folgen der Aktivierungszeitsteuerung, die durch
einen Benutzer gesetzt ist; Aktivieren einer Java-Anwendung durch
Folgen der Zeitsteuerungsinformation, die in einer ADF beschrieben ist.
In einer bevorzugten Ausführungsform
wird auch der nachstehend beschriebene Aktivierungsmodus verwendet.
- a) Ein Modus, in dem eine Java-Anwendung aktiviert
wird, unmittelbar nachdem sie heruntergeladen ist
- b) Ein Modus, in dem die Aktivierung einer Java-Anwendung durch
eine E-Mail ausgelöst
wird, die zu einer Java-aktivierten MS 600 verteilt wird
- c) Ein Modus, in dem die Aktivierung einer Java-Anwendung durch
Befehle ausgelöst
wird, die durch eine externe Ausrüstungsschnittstelle empfangen
werden, die in einer Java-aktivierten MS 600 vorgesehen
ist (IrDA, Bluetooth)
- d) Ein Modus, in dem eine Java-Anwendung auf der Basis von Intervallen
aktiviert wird, die durch einen Java-aktivierten CS 200 instruiert
werden
-
Zusammen
mit Aktivierungsmodi, wie in den obigen a) bis d) veranschaulicht,
existiert ein anderer Modus, worin eine Java-Anwendung, die für Standby-Anzeige
gesetzt ist, für
eine vorbestimmte Zeitperiode aktiviert wird (die Anwendung kann
z.B. für
50 Sekunden beginnend in 02.00 Uhr aktiviert werden). In einem Fall,
dass die Java-Anwendung, die in einer Java-aktivierten MS 600 installiert
ist, mit einem Java-aktivierten CS 200, der Quelle zum
Herunterladen, kommuniziert, wird eine Anforderungsnachricht RQ,
die Aktivierungstypinformation enthält, die den Aktivierungsmodus
anzeigt, der verwendet wird, zum Java-aktivierten CS gesendet. Wie
veranschaulicht, werden verschiedene Aktivierungsmodi verwendet; der
Typ vom Aktivierungsmodus, der zu verwenden ist, ist abhängig von
der Gestaltung der Java-aktivierten MS 600 änderbar.
-
<Modifikationsbeispiel 2>
-
In
der oben angegebenen vorliegenden Ausführungsform wird eine Erläuterung
gegeben, in der alle von der Information: Kommunikationsidentifikationsinformation;
Java-Anwendungsidentifikationsinformation; Aktivierungstypinformation
und Identifikationsinformation der Quelle zum Herunterladen in auf eine
Java-Anwendung bezogener Information enthalten ist. In einer bevorzugten
Ausführungsform
kann z.B. nur Kommunikationsidentifikationsinformation in auf eine
Java-Anwendung bezogener Information enthalten sein. D.h. es ist
nur primäre
Kommunikationsregelungsinformation mit einer Kommunikationsmanagementtabelle
TA registriert, und eine Bestimmung bezüglich dessen, ob Kommunikation
durch eine Java-Anwendung gestattet wird, wird mit Bezug auf die
primäre
Kommunikationsregelungsinformation und aktuelle Kommunikationsinformation
durchgeführt. Ähnlich kann
nur Aktivierungstypinformation in auf eine Java-Anwendung bezogener
Information enthalten sein; in dieser Ausführungsform ist nur Aktivierungstypinformation,
die sekundäre
Kommunikationsregelungsinformation sein kann, mit der Kommunikationsmanagementtabelle
TA registriert, und unter Verweis auf die Aktivierungstypinformation,
die als die sekundäre
Kommunikationsregelungsinformation registriert ist, und Aktivierungstypinformation, die
in einer Anforderungsnachricht RQ enthalten ist, wird eine Bestimmung
bezüglich
dessen durchgeführt,
ob die Kommunikation durch eine Java-Anwendung gestattet wird.
-
Ähnlich kann
nur Identifikationsinformation einer Quelle zum Herunterladen in
auf eine Java-Anwendung bezogener Information enthalten sein; in dieser
Ausführungsform
ist nur Identifikationsinformation einer Quelle zum Herunterladen,
die eine sekundäre
Kommunikationsregelungsinformation sein kann, mit einer Kommunikationsmanagementtabelle TA
registriert, und unter Verweis auf die Identifikationsinformation
einer Quelle zum Herunterladen, die als die sekundäre Kommunikationsregelungsinformation
registriert ist, und Identifikationsinforma tion einer Quelle zum
Herunterladen, die in einer Anforderungsnachricht RQ enthalten ist,
wird eine Bestimmung bezüglich
dessen durchgeführt,
ob Kommunikation durch eine Java-Anwendung
gestattet wird.
-
Des
weiteren kann Identifikationsinformation einer Java-Anwendung in
auf eine Java-Anwendung bezogener Information enthalten sein; in
dieser Ausführungsform
ist nur Identifikationsinformation einer Java-Anwendung, die sekundäre Kommunikationsregelungsinformation
sein kann, mit einer Kommunikationsmanagementtabelle TA registriert,
und unter Verweis auf die Identifikationsinformation einer Java-Anwendung,
die als sekundäre
Kommunikationsregelungsinformation registriert ist, und Identifikationsinformation
einer Java-Anwendung, die in einer Anforderungsnachricht RQ enthalten
ist, wird eine Bestimmung bezüglich
dessen durchgeführt,
ob Kommunikation durch eine Java-Anwendung gestattet wird.
-
Wie
veranschaulicht, kann unter Verwendung entweder eines Typs von Information,
die in auf eine Java-Anwendung bezogener Information enthalten ist,
oder einer Vielzahl von Typen von Information bestimmt werden, ob
Kommunikation durch eine Java-Anwendung gestattet wird.
-
In
dem Fall einer Verwendung einer Aktivierungstypinformation um zu
bestimmen, ob Kommunikation gestattet wird, ist auch Zurückweisung
der Kommunikation durch die Java-Anwendung, die in der Sprache Java
zusammen mit Anwendungen, die in anderen Programmiersprachen geschrieben
sind, erreichbar, solange wie die Anwendung durch den gleichen Aktivierungsmodus
als ein Aktivierungsmodus aktiviert wird, der durch die Aktivierungstypinformation
identifiziert wird.
-
<Modifikationsbeispiel 3>
-
In
der oben angeführten
vorliegenden Ausführungsform
wird eine Ausführungsform,
in der Kommunikation durch eine Java-Anwendung zurückgewiesen wird, als eine Ausführungsform
zum Regeln von Kommunikation durch eine Java-Anwendung veranschaulicht;
in einer anderen Ausführungsform
können
jedoch auch ein Umfang von Verkehr, eine Dauer von Kommunikation
und die Zeit von Kommunikation durch Vergleichen von auf eine Java-Anwendung
bezogener Information, die in einer Anforderungsnachricht RQ enthalten
ist, mit einer Kommunikationsmanagementtabelle TA geregelt werden.
Kommunikationsregelung in der oben beschriebenen Java-Anwendung
gemäß der vorliegenden
Modifikation kann nämlich
beliebig abhängig
von der Gestaltung vom Gateway-Server 400 geändert werden.
-
<Modifikationsbeispiel 4>
-
In
den oben beschriebenen Ausführungsformen
werden Kommunikationsidentifikationsinformation, die anzeigt, dass
eine Kommunikationsanforderung von einer Java-Anwendung gesendet
wird, Identifikationsinformation einer Java-Anwendung zum Identifizieren
der Java-Anwendung, Aktivierungstypinformation, die den Aktivierungsmodus
der Java-Anwendung anzeigt, Identifikationsinformation einer Quelle
zum Herunterladen zum Identifizieren eines Java-aktivierten CS 200,
der Quelle zum Herunterladen der Java-Anwendung, als auf eine Java-Anwendung
bezogene Information veranschaulicht, die in einer Anforderungsnachricht
RQ enthalten ist. Umgekehrt kann auch auf eine Java-Anwendung bezogene
Information die Versionsinformation einer Java-Anwendung sein. Folglich
wird beliebige Information in Bezug auf die Java-Anwendung als auf eine
Java-Anwendung bezogene Information verwendet.
-
In
der oben beschriebenen vorliegenden Ausführungsform werden Identifikationsinformation einer
Java-Anwendung, Aktivierungstypinformation, Identifikationsinformation
einer Quelle zum Herunterladen als sekundäre Kommunikationsinformation veranschaulicht,
die mit einer Kommunikationsmanagementtabelle TA registriert ist;
wie in dem Fall der oben beschriebenen auf eine Java-Anwendung bezogenen
Information wird beliebige Information zum Identifizieren einer
Java-Anwendung, die ein Kommunikationsproblem verursachen kann,
als sekundäre
Kommunikationsregelungsinformation verwendet.
-
Speziell
wird beliebige Information als auf eine Java-Anwendung bezogene
Information und sekundäre
Kommunikationsregelungsinformation verwendet, solange wie ein Gateway-Server 400 in
der Lage ist zu bestimmen, ob eine Kommunikationsanforderung gestattet
wird, in einem Fall, dass der Gateway-Server 400 eine Anforderungsnachricht
RQ empfängt.
-
<Modifikationsbeispiel 5>
-
In
der oben beschriebenen vorliegenden Ausführungsform wird eine Erklärung mit
Bezug auf ein Beispiel gegeben, in dem Kommunikationszurückweisungsinformation
zum Zurückweisen
einer Kommunikationsanforderung und Kommunikationsregelungsinformation
zum Regeln von Kommunikation für
n Sekunden, wenn die Nachricht empfangen wird, in einer Antwortnachricht
RS enthalten sind; es kann auch eine Antwortnachricht, die nur Kommunikationszurückweisungsinformation
enthält, oder
eine Antwortnachricht, die eine Kommunikationshäufigkeit (Kommunikationshäufigkeit
an einem Tag), Umfang von Verkehr (Umfang von Verkehr an einem Tag)
und Dauer einer Kommunikation (Dauer einer Kommunikation an einem
Tag) als die Kommunikationsregelungsinformation verwendet werden.
-
<Modifikationsbeispiel 6>
-
In
der oben beschriebenen vorliegenden Ausführungsform wird die Kommunikationsseite
einer Java-Anwendung auf einen Java- aktivierten CS 200, den Ursprung
zum Herunterladen, begrenzt, um im voraus ein auftretendes Problem
zu verhindern, wie etwa Information, die zu anderen Servern fließt; Server
außer
dem Java-aktivierten CS 200, dem Ursprung zum Herunterladen,
können
auch als die Kommunikationsseite einer Java-Anwendung eingestellt
werden. In der oben beschriebenen vorliegenden Ausführungsform
und den Modifikationen wird eine Erläuterung mit Bezug auf ein Beispiel
gegeben, in dem Kommunikation unter Verwendung von HTTP und HTTPS
durchgeführt
wird; das Kommunikationsprotokoll, das in einer Kommunikation verwendet wird,
kann abhängig
von der Gestaltung der Java-aktivierten MS 600 beliebig
geändert
werden.
-
<Modifikationsbeispiel 7>
-
In
der oben beschriebenen vorliegenden Ausführungsform wird eine Java-Anwendung,
die von einem Java-aktivierten CS 200 heruntergeladen wird,
als ein Beispiel veranschaulicht; die vorliegende Erfindung ist
auch auf die Java-Anwendung anwendbar, die in einer Java-aktivierten
MS 600 vorinstalliert ist (eine ursprüngliche Java-Anwendung, die
durch einen Träger
vorbereitet wird, der eine Java-aktivierte MS 600 bereitstellt).
-
<Modifikationsbeispiel 8>
-
Des
weiteren werden die Funktionen der Java-aktivierten MS 600 oder
des Gateway-Servers 400, die in den oben beschriebenen
Ausführungsformen
erläutert
werden, auch durch Verwenden von Software erreicht. Speziell installiert
ein Server, der entweder die Software oder ein Speichermedium (eine
Speicherkarte) enthält,
die die Software speichert, in entweder einer Speichereinheit einer
Java-aktivierten MS 600 oder einem Speicher (nicht gezeigt)
eines Gateway-Servers 400 über ein Übertragungsmedium (mobiles
Paketkommunikationsnetz). Wie oben beschrieben, werden die angegebenen
Funktionen auch durch Verwenden von Software realisiert.
-
<Modifikationsbeispiel 9>
-
10 ist
ein Diagramm, das verschiedene Standorte der Profile in einer Java-Laufzeitumgebung
veranschaulicht, die in einer Java-aktivierten MS 600 bereitgestellt
wird.
-
In
der oben beschriebenen vorliegenden Ausführungsform wird eine Erläuterung
mit Bezug auf eine Mobileinrichtung, die mit CLDC als eine Konfiguration
installiert ist, und ein ursprüngliches
Java-Erweiterungsprofil als ein Profil (siehe A, das in 10 gezeigt
wird) gegeben; an Stelle des ursprünglichen Java-Erweiterungsprofils
ist die vorliegende Erfindung auch auf eine Mobileinrichtung anwendbar,
die mit einem Profil, das durch Unterziehen eines Standardisierungsprozesses
von Java (Java Community Process, JCP), für ein mobiles Endgerät (MIDP;
Mobile Information Device Profile), wie etwa eine Mobileinrichtung
(siehe B, was in 10 gezeigt wird) definiert ist,
versehen ist, oder auf eine Mobileinrichtung, die mit einem ursprünglichen
Java-Erweiterungsprofil und MIDP (siehe C, was in 10 gezeigt
wird) versehen ist.
-
In
der oben beschriebenen vorliegenden Ausführungsform wird eine Mobileinrichtung,
wie etwa ein Mobiltelefon, als ein Beispiel eines kleinen Endgerätes veranschaulicht;
die vorliegende Erfindung ist auch auf ein beliebiges kleines Endgerät anwendbar,
das mit CLDC versehen ist, wie etwa PDS oder PHS (Personal Handyphone
System). Des weiteren ist die vorliegende Erfindung nicht auf ein
Endgerät
kleiner Größe begrenzt,
das mit CLDC versehen ist, und ist auch auf ein Endgerät mittlerer
Größe oder
ein Endgerät
großer
Größe anwendbar,
einschließlich
eines Fahrzeugnavigationssystems oder einer set-top Box, die mit
CDC (Connected Device Configuration) versehen ist. In einem Endgerät mittlerer
Größe oder
einem Endgerät
großer
Größe, die mit
CDC versehen sind, wird ein Profil, wie etwa "J2ME Foundation Profile", vorgesehen, und
es wird JVM an Stelle von VIM ausgerüstet.
-
<Modifikationsbeispiel 10>
-
In
der oben beschriebenen vorliegenden Ausführungsform wird eine Erläuterung
mit Bezug auf einen Fall gegeben, wo ein Gateway-Server 400 Kommunikation
durch eine Java-Anwendung regelt, die in einer Java-aktivierten
MS 600 installiert ist; die Kommunikationsmanagementtabelle
TA kann auch in Basisstationen installiert sein, die z.B. in einem mobilen
Paketkommunikationsnetz 500 untergebracht sind, wobei dadurch
den Basisstationen ermöglicht
wird, Kommunikation von einer Java-Anwendung zu regeln. Deshalb ist die
vorliegende Erfindung auf eine beliebige Einrichtung anwendbar,
solange wie die Einrichtung in einem mobilen Paketkommunikationsnetz 500 untergebracht
ist und die Kommunikation zwischen einer Java-aktivierten MS 600 und
einem Java-aktivierten CS 200 (äquivalent zu einer "Relaiseinrichtung", die in den Ansprüchen beschrieben
wird) weitergibt.
-
<Modifikationsbeispiel 11>
-
In
der oben beschriebenen vorliegenden Ausführungsform wird eine Erläuterung
mit Bezug auf den Fall gegeben, wo eine Java-Anwendung in einem
Anwendungsspeicher 653a einer Java-aktivierten MS 600 gespeichert
ist; eine Java-Anwendung kann auch in einem UIM (User Identity Module, Benutzeridentitätsmodul)
gespeichert sein, das für ein
Mobiltelefon der dritten Generation verwendet wird.
-
11 und 12 sind
Diagramme zum Erläuterung
eines UIM 700.
-
Das
UIM 700 ist eine IC-Karte, die aus einer Java-aktivierten
MS 600 entfernt werden kann; das UIM umfasst eine CPU 710 zum
Steuern jedes Teils des UIM 700 auf der Basis des Steuerprogramms, das
in einem ROM 720 gespeichert ist, eine UIM-Schnittstelle 715 zum
Verbinden des UIM mit einer Java-aktivierten MS 600, einen
RAM 725 zum zeitweiligen Speichern von Daten, die von einer
Java-aktivierten MS 600 bereitgestellt werden, und einen
EEPROM 730, in dem eine Java-Anwendung gespeichert ist.
-
13 ist
ein Diagramm zum Erläuterung
eines Speicherbereiches eines EEPROM 730.
-
Der
EEPROM 730 hat einen Benutzerinformations-Speicherbereich 731,
oder einen Anwendungsspeicher 732.
-
Der
Benutzerinformations-Speicherbereich 731 speichert Information,
die für
einen Benutzer spezifisch ist, der ein UIM 700 trägt; die
Information enthält
eine Teilnehmernummer, ausgehende Historieninformation, eingehende
Historieninformation, Kommunikationszeitinformation.
-
Der
Anwendungsspeicherbereich 732 speichert verschiedene Typen
von Information, die in dem oben beschriebenen Anwendungsspeicherbereich 653a gespeichert
ist; die Information enthält nämlich eine
Java-Anwendung, die von einem Java-aktivierten CS 200 heruntergeladen
wird, oder eine permanente Datei, oder Information, die erforderlich
ist, um eine Anforderungsnachricht vorzubereiten, die zu einem Java-aktivierten
CS 200, dem Ursprung zum Herunterladen, zu senden ist.
Die Java-Anwendung, die im Anwendungsspeicherbereich 732 gespeichert
ist, kann eine Anwendung sein, die von einem Java-aktivierten CS 200 zum
UIM 700 über
eine Java-aktivierte MS her untergeladen wird, oder eine Anwendung,
die im voraus im UIM 700 gespeichert wird.
-
In
einem Zustand, dass Information, die für einen Benutze r spezifisch
ist, und eine Java-Anwendung im UIM 700 gespeichert sind,
generiert nun, wenn eine Instruktion, Kommunikation zu starten, durch
die Java-Anwendung gegeben wird, die CPU 710 vom UIM 700 (oder
die CPU 610 der Java-aktivierten MS 600) eine
Anforderungsnachricht RQ und sendet die Nachricht zu dem Java-aktivierten
CS 200 über
die Java-aktivierte MS 600. Da die Kommunikationsregelungsoperation,
die in einem Gateway-Server 400 durchgeführt wird,
die gleiche wie die oben beschriebene vorliegende Ausführungsform
ist, wird eine Erläuterung
weggelassen.
-
Wie
oben erläutert,
ist durch Vorhandensein eines Gateway-Servers 400, der Kommunikationsregelung
in einer Java-Anwendung durchführt,
die im UIM 700 gespeichert ist, eine Kommunikationsregelung
nicht für
jede Mobileinrichtung, aber für
jeden Benutzer erreichbar. Als ein Ergebnis wird das Auftreten eines
Problems in einer Kommunikation z.B. durch Zurückweisen in einem Gateway-Server 400 einer
Kommunikationsanforderung von einem illegalen Benutzer verhindert.
In der vorliegenden Modifikation ist das UIM 700 als ein
Kommunikationsendgerät
veranschaulicht, das eine Java-Anwendung speichert; die vorliegende
Erfindung ist jedoch nicht darauf begrenzt, und ist auf ein beliebiges
Kommunikationsendgerät
mit einer Kommunikationsfunktion zum Kommunizieren zwischen externen
Ausrüstungen
und einer Java-Laufzeitumgebung anwendbar, wie etwa J2ME (Java 2
Micro Edition), J2SE (Java 2 standard edition) und J2EE (Java 2
Enterprise Edition). In der oben beschriebenen vorliegenden Ausführungsform
wird eine Java-Anwendung, die durch Java geschrieben ist, als ein
Beispiel veranschaulicht, die vorliegende Erfindung ist jedoch auch
auf Anwendungen anwendbar, die durch eine beliebige Pro grammiersprache
geschrieben sind, solange wie die Anwendung über einen Gateway-Server 400 kommuniziert.