(58)【調査した分野】(Int.Cl.,DB名)
【背景技術】
【0002】
携帯電話端末が動作するためのプログラムは、例えばNOR(ノア)型フラッシュメモリや、NAND(ナンド)型フラッシュメモリ等のフラッシュROM(Read Only Memory)に格納されている。格納されたプログラムは、携帯電話端末の起動時に、CPU(Central Processing Unit)によって読み出されて、例えばスタティックRAM(Random Access Memory)やダイナミックRAM等のRAMに展開されて実行される。
【0003】
このように、一度読み出されたプログラムがRAM上で実行された後には、そのプログラムが、格納されたフラッシュROMから再度読み出されることはない。このため、フラッシュROMは、高価であるにもかかわらずその利用効率が低い。
【0004】
上の記述に関連して、携帯電話が特開2002−190863号公報に開示されている。これは、電波を送受信する通常の通信機能の他に必要最小限のメモリ機能のみを内蔵した簡略・高機能型の携帯電話であって、高周波ユニット部(RF:Radio Frequency)と、低周波ユニット部(ベースバンド)と、液晶表示部と、システム制御用のMPU(Micro Processing Unit:マイクロプロセッサ)と、外部記憶装置のMMC(MultiMediaCard:マルチメディアカード)とのインターフェースを司るASIC(Application Specific Integrated Circuit)と、MMCのプログラムおよびデータのバッファとして使用するDRAM(Dynamic Random Access Memory)などから構成されている。特に、この携帯電話では、ブート用プログラムによるブートローダのみを内蔵すればよいので、フラッシュメモリは不要になり、MPUにブート用プログラムをROMとして内蔵し、MPUも処理能力が向上しているため、MMCとDRAMとのインターフェースのみをサポートし、コスト低減を可能にすることができるようにしている。
【0005】
また、特開2006−059116号公報には、携帯端末が開示されている。これは、機器の起動に最小限必要な機能を実行する第1のプログラムとその管理情報を用意して、電子機器の不揮発性の記憶手段に記憶させ、その不揮発性の記憶手段に記憶された管理情報による指示で、第1のプログラムを起動処理実行用の記憶手段に展開して、電子機器を機能が制限された状態で起動させるものである。また、第1のプログラムで実行可能な機能以外の機能についても実行する第2のプログラムを用意して、不揮発性の記憶手段に記憶させた場合に、管理情報で第2のプログラムも読み出すように更新させ、更新された管理情報に基づいて、第1及び第2のプログラムを起動処理実行用の記憶手段に展開して、電子機器を起動可能な状態として、電子機器を機能が制限されない状態で起動可能としている。
【0006】
また、プログラム管理システムとその制御方法、ならびに記憶媒体が特開2006−202028号公報に開示されている。この例では、ユーザ識別やユーザ環境などのユーザ情報、複合機の使用頻度や使用日時などの使用履歴情報をサーバで管理し、ユーザ毎に、概複合機での使用頻度の高いプログラムを優先してダウンロードしている。
【0007】
また、携帯無線ゲーム機サーバー、携帯無線ゲーム機クライアント、およびこれらを使用するシステムが特開2009−078132号公報で開示されている。この発明による携帯無線サーバーは、バッテリ、データ処理回路、読み/書きメモリ、無線通信回路および脱着可能な記憶装置を収容するメモリ挿入口を含んでいる。記憶装置は、データ処理回路によって実行される多数のダイナミックサーバーアプリケーションと、携帯無線クライアントにダウンロードされる多数のダイナミッククライアントアプリケーションを記憶している。無線通信回路は、クライアントアプリケーションのダウンロード要求を携帯無線クライアントから受信している。データ処理回路は、多数の携帯無線クライアントからのクライアントアプリケーションのダウンロード要求を同時に処理し、当該多数の携帯クライアント機器に対してクライアントアプリケーションを無線送信している。
【0008】
そして、特開平10−240538号公報においては、プログラムロード方式が開示されている。この例におけるクライアントは使用頻度の高いプログラムを格納するプログラムライブラリファイルと、クライアントが使用したプログラムの版数および使用頻度を保持するクライアントプログラム版管理テーブルと、任意のプログラムを使用するときそのプログラムの版数をサーバに問い合わせ、その版数がサーバの保持するものの版数に一致したときにはクライアント自身が保持するプログラムをロードし、一致しなかったときにはサーバが転送したプログラムをロードし、使用頻度の高いプログラムをクライアント自身のファイルに格納するプログラムローダとを備えている。
【発明を実施するための形態】
【0017】
(第1の実施形態)
以下に、添付図面を参照しながら、本発明の第1の実施形態による携帯電話システム、及び携帯電話システムの制御方法を詳細に説明する。
【0018】
まず、本発明の第1の実施形態による携帯電話システムの構成を詳細に説明する。
【0019】
図1は、本発明における第1の実施形態の一例である携帯電話システムの構成を示す機能ブロック図である。
図1を参照すると、本実施形態による携帯電話システムは、携帯電話端末1と、基地局100と、ゲートウェイ200と、サーバ300とを備えている。携帯電話端末1と基地局100との間の通信は無線で行われる。また、基地局100と、ゲートウェイ200との間は電話網によって、ゲートウェイ200とサーバ300との間はインターネット網によって接続されている。
【0020】
携帯電話端末1は、CPU部10と、フラッシュROM11と、操作部12と、無線部13と、RAM15とを含んでいる。CPU部10は、フラッシュROM11、操作部12、無線部13、及びRAM15と図示せぬ内部バスで接続されており、各部を制御することができる。なお、上述した構成以外の例えば、表示部、スピーカー、マイク、及び電池等をはじめとした種々の構成については本発明とは直接関係しないので、その詳細な構成、及び動作の説明については省略する。
【0021】
CPU部10は、携帯電話端末1の周辺各部を制御して、携帯電話端末1としての一連の動作を実現する制御部としての機能を有する。
【0022】
フラッシュROM11は、NOR型フラッシュメモリや、NAND型フラッシュメモリ等に例示される書き換え可能な不揮発性の半導体メモリによる記憶装置である。ここでのフラッシュROM11はCPU部10が直接読み書きできる主記憶装置として機能する不揮発性記憶部である。フラッシュROM11は、プログラム領域21と、データ領域22とを含む。
【0023】
プログラム領域21には、携帯電話端末1の起動時にCPU部10が実行する起動用(ブート)プログラムが格納されている。プログラム領域21に格納されるブートプログラムは、携帯電話端末1のシステムプログラムを外部から読み込んで起動するのに最低限必要な機能を有している。そして、ブートプログラムの容量は最低限に抑えられている。なお、ブートプログラムには、自動接続先としてサーバ300が予め登録されている。また、書き換え可能なフラッシュROM11が用いられることによって、例えばサーバ300のアドレス変更等のブートプログラムに修正の必要が生じた際には自在にその更新をすることができる。
【0024】
また、データ領域22には、携帯電話端末1の設定情報等の各種データを格納することができる。格納される各種データとしては、携帯電話端末1の起動後に実行されるアプリケーションプログラム毎の起動履歴情報が例示される。この起動履歴情報には、起動回数、及び起動日時等が含まれる。このようなデータは、高機能化によって巨大化するプログラムのようにそのファイルサイズが大容量化することはない。
【0025】
このようにして、本実施形態によるフラッシュROM11は、これらのプログラム、及びデータを格納するのに必要な容量があれば良く、その費用を低減することができる。
【0026】
操作部12は、キーボード、及びタッチパネル等に例示される入力装置であり、ユーザによる操作の決定、キャンセル、及び文字列の入力等を行うためのキー(ボタン)を備えている。
【0027】
無線部13は、ベースバンドLSI(Large Scale Integration)に例示される通信処理を行う装置である。無線部13はアンテナ14を備えている。無線部13は、アンテナ14を介した、基地局100と携帯電話端末1との無線通信の制御、及びCPU部10との間における無線状態の通知等の情報交換を行う。
【0028】
RAM15は、スタティックRAMやダイナミックRAM等の各種RAMに例示される主記憶装置で、CPU部10の作業領域として機能する主記憶部である。携帯電話端末1の起動後にRAM15上に展開されるシステムプログラム、及びアプリケーションプログラムがCPU部10によって実行されて携帯電話端末1が動作する。RAM15は、フラッシュROM11よりもデータの読み書きを高速に行うことが可能である。
【0029】
基地局(携帯基地局)100は、複数の携帯電話端末1との間で無線通信を行うための装置であるとともに、電話網(有線ネットワーク)の末端である。すなわち、携帯電話端末1と電話網との間の通信を中継する中継点としての機能を有する。
【0030】
ゲートウェイ200は、基地局100側の電話網と、サーバ300側のインターネット網とを接続するためのネットワーク機器である。ゲートウェイ200では、プロトコルの変換、ファイル形式の変換等を行って電話網と、インターネット網との間の接続が中継される。
【0031】
サーバ300は、インターネット上に設けられ、携帯電話端末1で用いられる各種プログラムを格納していて携帯電話端末1からの要求に応答してそれらのプログラムを提供する。各種プログラムには、携帯電話端末1が最低限動作するシステムプログラム、及び携帯電話端末1のシステムプログラム上で動作するアプリケーションプログラム等が含まれる。そして、携帯電話端末1の基本機能以外はアプリケーションプログラムで実現されるため、システムプログラムの容量もまた最低限に抑えられている。これによってシステムプログラムの携帯電話端末1へのデータ転送量を抑えることができる。
【0032】
ここで、記述、及び図示した本発明の実施形態による携帯電話端末1の各構成要素は機能の概略を開示したものであり、物理的構成を限定するものではない。すなわち、携帯電話端末1の各構成要素は、任意の単位で、機能的、又は物理的に分散、又は統合された形態で構成されても良い。例えば、CPU部10と、無線部13とは、一つのチップとして統合された装置を用いることができる。また、LSIによって処理が実現される機能は、CPU部10が、プログラムを実行することによって処理が実現される形態にしても良い。
【0033】
次に、本発明の第1の実施形態による携帯電話システムの動作を詳細に説明する。
【0034】
図2A、及び
図2Bは、本発明における第1の実施形態の一例である携帯電話システムが利用可能となるまでの動作を示す流れ図である。
【0035】
図2A、及び
図2Bを参照して、携帯電話端末1において、電源が投入されてからアプリケーションプログラムの実行によってその機能が利用可能となるまでの処理の流れを詳細に説明する。
【0036】
まず、携帯電話端末1の電源が投入される等して装置全体のリセットが行われた後に、リセットの解除が行われる(ステップS1)。これによって、CPU部10、フラッシュROM11、及びRAM15、並びに
図2A、及び
図2B中には示していない操作部12、無線部13、及びアンテナ14等の携帯電話端末1内の各部が初期化されて動作可能な状態となる。
【0037】
リセット解除後にCPU部10は、携帯電話端末1を起動するためのブートプログラムの読み出しを行う(ステップS2)。より具体的にはCPU部10は、携帯電話端末1に内蔵されるフラッシュROM11のプログラム領域21(
図2A、及び
図2B中には示さず)に格納されているブートプログラムを読み出す。
【0038】
読み出されたブートプログラムはCPU部10によって直接実行されて起動される(ステップS3)。このブートプログラムは、携帯電話端末1のシステムプログラムをサーバ300から、
図2A、及び
図2B中には示していないゲートウェイ200、基地局100、並びに携帯電話端末1のアンテナ14、及び無線部13を経由してダウンロードするのに最低限必要な機能を有している。したがって、この段階においては、携帯電話端末1を利用者が使える状態にはまだなっていない。
【0039】
ブートプログラムの起動後にCPU部10は、システムプログラムの読み出し要求をサーバ300に対して行う(ステップS4)。なお、この際に、CPU部10が、携帯電話端末1の情報を送信することによって、サーバ300が、携帯電話端末1に適合するシステムプログラムを選び出すようにしても良い。
【0040】
サーバ300は、読み出し要求に応答して、システムプログラムの読み出し許可を携帯電話端末1に送信する(ステップS5)。
【0041】
システムプログラム読み出し許可を受信したCPU部10はシステムプログラムのダウンロードを開始する(ステップS6)。
【0042】
CPU部10は、システムプログラムダウンロード要求をサーバ300に対して行う(ステップS7)。
【0043】
システムプログラムダウンロード要求を受信したサーバ300は要求に応答してシステムプログラムを携帯電話端末1に送信する(ステップS8)。
【0044】
CPU部10は、受信したシステムプログラムのデータをRAM15に展開する(ステップS9)。システムプログラムのデータはその容量に応じてサーバ300によって適宜分割されて携帯電話端末1に転送され、システムプログラムの全データの転送が終わるまでステップS8、及びステップS9が繰り返される。
【0045】
システムプログラムの全データが転送され、RAM15上におけるシステムプログラムの展開が完了した後にCPU部10は、システムプログラムの起動を実施する(ステップS10)。システムプログラムが起動することによって携帯電話端末1を利用者が使える状態となる。
【0046】
システムプログラムの起動完了後には引き続いて、アプリケーションプログラム(以下、アプリと称す)のダウンロードが実施される。
【0047】
アプリのダウンロードに先立ってCPU部10は、フラッシュROM11のデータ領域22に格納されているアプリ毎の起動履歴情報を読み出す(ステップS11)。
【0048】
CPU部10は、読み出された起動履歴情報を基に起動頻度の高いアプリを抽出する(ステップS12)。
【0049】
CPU部10は、抽出されたアプリのダウンロード要求をサーバ300に対して行う(ステップS13)。
【0050】
アプリのダウンロード要求を受信したサーバ300は要求に応答してアプリを携帯電話端末1に送信する(ステップS14)。
【0051】
CPU部10は、受信したアプリのデータをRAM15に展開する(ステップS15)。アプリのデータはその容量に応じてサーバ300によって適宜分割されて携帯電話端末1に転送され、アプリの全データの転送が終わるまでステップS14、及びステップS15が繰り返される。
【0052】
アプリの全データが転送され、RAM15上におけるアプリの展開が完了した後にCPU部10は、アプリの起動を行う(ステップS16)。これによって、携帯電話端末1のアプリの機能を利用者が使える状態となる。なお、別のアプリも起動する場合においては各アプリについて、ステップS13からステップS16が実行される。
【0053】
アプリの起動後にCPU部10は、フラッシュROM11のデータ領域22におけるアプリ毎の起動履歴情報を更新する(ステップS17)。
【0054】
ここでは、起動履歴情報に基づいた、携帯電話端末1起動時のアプリの起動についての説明を行った。しかし、上述したように、起動履歴情報には、アプリ毎の起動時刻が記録されている。このため、特定のアプリの起動が特定の時刻に集中しているような場合は起動時刻になる前にそのアプリを予め起動する形態としても良い。このような場合には、起動時刻になる前にそのアプリについて、ステップS13からステップS16が予め実行される。このような形態とすることはユーザの利便性向上に繋がる。
【0055】
以上の手順によって、第1の実施形態の一例である携帯電話端末1が利用可能となる。
【0056】
図3は、本発明における第1の実施形態の一例である携帯電話システムにおけるユーザの指示によるアプリ起動の動作を示す流れ図である。
【0057】
図3を参照して、携帯電話端末1において、ユーザによるアプリ起動の操作が行われてからアプリの機能が利用可能となるまでの処理の流れを詳細に説明する。
【0058】
システムプログラム、及び自動起動するように設定された(起動頻度の高い)アプリの起動が完了した状態においてユーザが、操作部12(
図3中には示さず)から、上述したアプリ以外で所望のアプリ(ここでは、例としてアプリAとする)の起動指示を行う(ステップS20)。
【0059】
操作部12からのアプリA起動指示を契機に、CPU部10は、アプリAの起動履歴情報をフラッシュROM11のデータ領域22(
図3中には示さず)に保存する(ステップS21)。この起動履歴情報には、アプリ毎の起動回数、及び起動日時等が記録されている。
【0060】
起動履歴情報の保存後にCPU部10は、アプリAの読み出し要求をサーバ300に対して行う(ステップS22)。
【0061】
サーバ300は、読み出し要求に応答して、アプリAの読み出し許可を携帯電話端末1に送信する(ステップS23)。
【0062】
アプリAの読み出し許可を受信したCPU部10はアプリAのダウンロードを開始する(ステップS24)。
【0063】
CPU部10は、アプリAのダウンロード要求をサーバ300に対して行う(ステップS25)。
【0064】
アプリAのダウンロード要求を受信したサーバ300は要求に応答してアプリAのデータを携帯電話端末1に送信する(ステップS26)。
【0065】
CPU部10は、受信したアプリAのデータをRAM15に展開する(ステップS27)。アプリAのデータはその容量に応じてサーバ300によって適宜分割されて携帯電話端末1に転送され、アプリの全データの転送が終わるまでステップS26、及びステップS27が繰り返される。
【0066】
アプリAの全データが転送され、RAM15上におけるアプリAの展開が完了した後にCPU部10は、アプリAの起動を行う(ステップS28)。これによって、携帯電話端末1のアプリAの機能を利用者が使える状態となる。なお、別のアプリも起動する場合においては各アプリについて、ステップS20からステップS28が実行される。
【0067】
以上の手順によって、第1の実施形態の一例である携帯電話端末1においてユーザの所望の機能が利用可能となる。
【0068】
以上に説明した本実施形態による携帯電話システムは、システム、及びアプリケーションプログラムをインターネット上のサーバからダウンロードする形態とすることによって携帯電話端末からフラッシュROMを削減して製造費用を抑える効果を有する。
【0069】
また、本実施形態による携帯電話システムは、フラッシュROM上で直接実行されるブートプログラム以外はRAM上に展開されたプログラムが実行されるため、例えば、高速なスタティックRAM、及びダイナミックRAM等が主記憶装置のRAMとして用いられることでプログラム処理時間を高速化する効果を有する。
【0070】
また、本実施形態による携帯電話システムは、サーバ上のプログラムを差分としてではなくそのすべてを置き換えることによって携帯電話端末のプログラム全体が更新されるのでユーザ、及びシステムの利便性、及び信頼性が向上する効果を有する。
【0071】
そして、本実施形態による携帯電話システムは、システムプログラムの容量を可及的に抑えること、及びアプリ起動履歴情報によって、起動時にダウンロードの必要なプログラムを限定することを行っている。よって、本実施形態による携帯電話システムは、有線ブロードバンド等の高速、かつ大容量のデータ通信の自在な環境と比べてデータの通信には制約のある無線通信を用いながらもその転送負荷を軽減して、所要時間を延長することなく携帯電話端末が起動されるため、実用性が高いという効果を有する。
【0072】
(第2の実施形態)
以下に、添付図面を参照しながら、本発明の第2の実施形態による携帯電話システム、及び携帯電話システムの制御方法を詳細に説明する。
【0073】
まず、本発明の第2の実施形態による携帯電話システムの構成を詳細に説明する。
【0074】
図4は、本発明における第2の実施形態の一例である携帯電話システムの構成を示す機能ブロック図である。
図4を参照すると、本実施形態による携帯電話システムは上述した第1の実施形態と同様に、携帯電話端末1と、基地局100と、ゲートウェイ200と、サーバ300とを備えている。携帯電話端末1と基地局100との間の通信は無線で行われる。また、基地局100と、ゲートウェイ200との間は電話網によって、ゲートウェイ200とサーバ300との間はインターネット網によって接続されている。
【0075】
また、携帯電話端末1は、上述した第1の実施形態と同様に、CPU部10と、フラッシュROM11と、操作部12と、無線部13と、RAM15とを含んでいる。これら、及びサーバ300側のその詳細な構成、及び動作の説明については上述した第1の実施形態と同様であるので省略する。
【0076】
本実施形態による携帯電話端末1は上述した構成に加えて、SDメモリカード等のメモリカードに例示される書き換え可能で不揮発性の補助記憶装置20を更に含んでいる。補助記憶装置20は、携帯電話端末1に着脱自在に装着されている。補助記憶装置20は、第1の実施形態における携帯電話端末1内の各部と同様に図示せぬ内部バスでCPU部10と接続されており、CPU部10は、補助記憶装置20を制御することができる。なお、補助記憶装置20は、フラッシュROM11に比べて安価で大容量という特長を有している。
【0077】
補助記憶装置20は、その起動が行われた際にサーバ300からダウンロードされたシステムプログラム、及びアプリを格納している。
【0078】
次に、本発明の第2の実施形態による携帯電話システムの動作を詳細に説明する。
【0079】
図5は、本発明における第2の実施形態の一例である携帯電話システムが利用可能となるまでの動作を示す流れ図である。
【0080】
図5を参照して、携帯電話端末1において、電源が投入されてからアプリケーションプログラムの実行によってその機能が利用可能となるまでの処理の流れを詳細に説明する。
【0081】
まず、携帯電話端末1の電源が投入される等して装置全体のリセットが行われた後に、リセットの解除が行われる(ステップS101)。これによって、CPU部10、フラッシュROM11、RAM15、及び補助記憶装置20、並びに
図5中には示していない操作部12、無線部13、及びアンテナ14等の携帯電話端末1内の各部が初期化されて動作可能な状態となる。
【0082】
リセット解除後にCPU部10は、携帯電話端末1を起動するためのブートプログラムの読み出しを行う(ステップS102)。より具体的にはCPU部10は、携帯電話端末1に内蔵されるフラッシュROM11のプログラム領域21(
図5中には示さず)に格納されているブートプログラムを読み出す。
【0083】
読み出されたブートプログラムはCPU部10によって直接実行されて起動される(ステップS103)。このブートプログラムは、携帯電話端末1のシステムプログラムを補助記憶装置20から読み出し、また補助記憶装置20にシステムプログラムがない場合にはサーバ300(
図5中には示さず)からダウンロードするのに最低限必要な機能を有している。したがって、この段階においては、携帯電話端末1を利用者が使える状態にはまだなっていない。
【0084】
ブートプログラムの起動後にCPU部10は、システムプログラムの読み出しを行う(ステップS104)。より具体的にはCPU部10は、携帯電話端末1に内蔵される補助記憶装置20に格納されているシステムプログラムを読み出す。
【0085】
CPU部10は、システムプログラムのデータを補助記憶装置20からRAM15に展開する(ステップS105)。
【0086】
ここで、システムプログラムが、補助記憶装置20に格納されていない等によって、CPU部10が、システムプログラムを読み出すことができなかった場合にはシステムプログラムをサーバ300から読み出してRAM15に展開する。すなわち、補助記憶装置20からシステムプログラムを読み出せなかった場合には第1の実施形態のステップS4からステップS9までが実行される。
【0087】
このようにして、RAM15上におけるシステムプログラムの展開が完了した後にCPU部10は、システムプログラムの起動を実施する(ステップS106)。システムプログラムが起動することによって携帯電話端末1を利用者が使える状態となる。
【0088】
なお、補助記憶装置20に格納されたシステムプログラムが起動できなかった場合にはシステムプログラムをサーバ300から新たにダウンロードする形態としても良い。その新たにダウンロードされたシステムプログラムは補助記憶装置20に格納されて次回以降の起動の際に用いられる。
【0089】
システムプログラムの起動完了後には引き続いて、アプリの起動が実施される。
【0090】
アプリの起動に先立ってCPU部10は、フラッシュROM11のデータ領域22(
図5中には示さず)に格納されているアプリ毎の起動履歴情報を読み出す(ステップS107)。
【0091】
CPU部10は、読み出された起動履歴情報を基に起動頻度の高いアプリを抽出する(ステップS108)。
【0092】
CPU部10は、抽出された起動頻度の高いアプリの読み出しを行う(ステップS109)。より具体的にはCPU部10は、携帯電話端末1に内蔵される補助記憶装置20に格納されているアプリを読み出す。
【0093】
CPU部10は、アプリのデータを補助記憶装置20からRAM15に展開する(ステップS110)。
【0094】
ここで、アプリが、補助記憶装置20に格納されておらず、CPU部10が、アプリを読み出すことができなかった場合にはアプリをサーバ300から読み出してRAM15に展開する。すなわち、補助記憶装置20からアプリを読み出せなかった場合には第1の実施形態のステップS13からステップS15までが実行される。
【0095】
このようにして、RAM15上におけるアプリの展開が完了した後にCPU部10は、アプリの起動を行う(ステップS111)。これによって、携帯電話端末1のアプリの機能を利用者が使える状態となる。なお、別のアプリも起動する場合においては各アプリについて、ステップS109からステップS111が実行される。
【0096】
なお、上述したシステムプログラムと同様に、補助記憶装置20に格納されたアプリが起動できなかった場合にはアプリをサーバ300から新たにダウンロードする形態としても良い。その新たにダウンロードされたアプリは補助記憶装置20に格納されて次回以降の起動の際に用いられる。
【0097】
アプリの起動後にCPU部10は、フラッシュROM11のデータ領域22におけるアプリ毎の起動履歴情報を更新する(ステップS112)。
【0098】
なお、本実施形態においても、第1の実施形態と同様に、特定のアプリの起動が特定の時刻に集中しているような場合は起動時刻になる前にそのアプリを予め起動する形態としても良い。このような形態とすることはユーザの利便性向上に繋がる。
【0099】
以上の手順によって、第2の実施形態の一例である携帯電話端末1が利用可能となる。
【0100】
図6は、本発明における第2の実施形態の一例である携帯電話システムにおけるユーザの指示によるアプリ起動の動作を示す流れ図である。
【0101】
図6を参照して、携帯電話端末1において、ユーザによるアプリ起動の操作が行われてからアプリの機能が利用可能となるまでの処理の流れを詳細に説明する。
【0102】
システムプログラム、及び自動起動するように設定された(起動頻度の高い)アプリの起動が完了した状態においてユーザが、操作部12(
図6中には示さず)から、上述したアプリ以外で所望のアプリ(ここでは、例としてアプリAとする)の起動指示を行う(ステップS120)。
【0103】
操作部12からのアプリA起動指示を契機に、CPU部10は、アプリAの起動履歴情報をフラッシュROM11のデータ領域22(
図6中には示さず)に保存する(ステップS121)。この起動履歴情報には、アプリ毎の起動回数、及び起動日時等が記録されている。
【0104】
起動履歴情報の保存後にCPU部10は、アプリAの読み出しを行う(ステップS122)。より具体的にはCPU部10は、携帯電話端末1に内蔵される補助記憶装置20に格納されているアプリAを読み出す。
【0105】
CPU部10は、アプリAのデータを補助記憶装置20からRAM15に展開する(ステップS123)。
【0106】
ここで、アプリAが、補助記憶装置20に格納されておらず、CPU部10が、アプリAを読み出すことができなかった場合にはアプリAをサーバ300(
図6中には示さず)から読み出してRAM15に展開する。すなわち、補助記憶装置20からアプリAを読み出せなかった場合には第1の実施形態のステップS22からステップS27までが実行される。
【0107】
このようにして、RAM15上におけるアプリAの展開が完了した後にCPU部10は、アプリAの起動を行う(ステップS124)。これによって、携帯電話端末1のアプリAの機能を利用者が使える状態となる。なお、別のアプリも起動する場合においては各アプリについて、ステップS120からステップS124が実行される。
【0108】
なお、上述した起動時のプログラムと同様に、補助記憶装置20に格納されたアプリAが起動できなかった場合にはアプリAをサーバ300から新たにダウンロードする形態としても良い。その新たにダウンロードされたアプリAは補助記憶装置20に格納されて次回以降の起動の際に用いられる。
【0109】
本実施形態においては、携帯電話端末1におけるシステムプログラム、及び各種アプリの起動の可否にかかわらず、サーバ300からの定期的なダウンロードによってシステムプログラム、及び各種アプリの更新が所定の間隔で行われる形態としても良い。また、このようなプログラム更新のためのダウンロードは携帯電話端末1の起動時でなくCPU、及び通信の負荷の低い状況下で行っても当然構わない。
【0110】
以上の手順によって、第2の実施形態の一例である携帯電話端末1においてユーザの所望の機能が利用可能となる。
【0111】
以上に説明した第2の実施形態においては、上述した第1の実施形態と同等の効果を有する。すなわち、本実施形態による携帯電話システムは、システム、及びアプリケーションプログラムをより安価で大容量の補助記憶装置に格納する形態とすることによって携帯電話端末からフラッシュROMを削減して製造費用を抑える効果を有する。
【0112】
また、本実施形態による携帯電話システムは、フラッシュROM上で直接実行されるブートプログラム以外はRAM上に展開されたプログラムが実行されるため、例えば、高速なスタティックRAM、及びダイナミックRAM等が主記憶装置のRAMとして用いられることでプログラム処理時間を高速化する効果を有する。
【0113】
また、本実施形態による携帯電話システムは、サーバ上のプログラムを差分としてではなくそのすべてを置き換えた上で定期的な更新を行う形態にすることによって携帯電話端末のプログラムが更新されるのでユーザ、及びシステムの利便性、及び信頼性が向上する効果を有する。
【0114】
そして、本実施形態による携帯電話システムは、システムプログラムの容量を可及的に抑えること、アプリ起動履歴情報によって、起動の必要なプログラムを限定すること、及びプログラムが起動できなかった場合に選択的にサーバからそのダウンロードを行うことでその転送負荷を軽減して、所要時間を延長することなく携帯電話端末が起動されるため、実用性が高いという効果を有する。
【0115】
以上、本発明の実施形態を説明した。しかし、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々変形して実施することができる。