以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、通信システム10の一例を概略的に示す。通信システム10は、制御装置100を含む。通信システム10は、基地局運用システム300を含んでよい。通信システム10は、無線基地局200を含んでよい。
本実施形態に係る制御装置100は、複数の無線基地局200を管理する。制御装置100は、無線基地局200によって複数のユーザ端末20に対して提供される無線通信サービスを最適化するように、無線基地局200を制御してよい。
無線基地局200は、任意の移動体通信方式に準拠していてよい。無線基地局200は、例えば、LTE(Long Term Evolution)通信方式に準拠する。無線基地局200は、3G(3rd Generation)通信方式に準拠してもよい。無線基地局200は、5G(5th Generation)通信方式に準拠してもよい。無線基地局200は、6G(6th Generation)通信方式以降の移動体通信方式に準拠してもよい。ここでは、無線基地局200が、LTE通信方式に準拠する場合を主に例に挙げて説明する。
ユーザ端末20は、無線基地局200と通信可能な通信端末であればどのような端末であってもよい。例えば、ユーザ端末20は、スマートフォン等の携帯電話である。ユーザ端末20は、タブレット端末及びPC(Personal Computer)等であってもよい。ユーザ端末20は、いわゆるIoT(Internet of Thing)デバイスであってもよい。ユーザ端末20は、いわゆるIoE(Internet of Everything)に該当するあらゆるものを含み得る。
無線基地局200は、予め定められた期間毎に統計データ202を基地局運用システム300に送信する。統計データ202は、予め定められた期間内の各種統計を含む。当該予め定められた期間をROP(Result Output Period)と記載する場合がある。無線基地局200は、セル単位の統計データ202を基地局運用システム300に送信する。基地局運用システム300は、例えば、いわゆるEMS(Element Management System)であってよい。
無線基地局200は、例えば、15分毎に統計データ202を基地局運用システム300に送信する。統計データ202は、無線基地局200による無線通信の状況を示す通信状況データ等を含む。通信状況データは、15分の間に、無線基地局200が複数のユーザ端末20に割り当てたTransport Timeを含む。Transport Timeは、15分の間に、無線基地局200によって複数のユーザ端末20に割り当てられたスケジューリング数の総数であってよい。通信状況データは、その他、発着信成功数、発着信失敗数、呼切断数、ハンドオーバ成功数、ハンドオーバ失敗数、トラフィック量、及びスループット等を含んでよい。
基地局運用システム300は、無線基地局200から受信した統計データ202を、基地局統計情報DB(データベースをDBと記載する場合がある。)400に送信する。複数の基地局運用システム300は、それぞれが統計データ202を基地局統計情報DB400に送信してよい。また、複数の基地局運用システム300の情報を集約する一の基地局運用システム300を配置して、当該一の基地局運用システム300が複数の基地局運用システム300から統計データ202を受信して、基地局統計情報DB400に送信してもよい。基地局統計情報DB400は、受信した統計データ202を格納する。
制御装置100は、基地局統計情報DB400に格納されている統計データ202と、基地局設定情報DB500に格納されている複数の無線基地局200のそれぞれの設定情報とに基づいて、複数の無線基地局200を制御してよい。
基地局設定情報DB500は、複数の無線基地局200の基地局情報を格納する。基地局情報は、無線基地局200の設定情報を含む。設定情報は、無線基地局200の各種設定値の情報を含む。設定値の例としては、スケジューリングアルゴリズム、周波数、アンテナの角度及び出力強度等が挙げられる。設定情報は、無線基地局200のベンダの情報を含んでよい。設定情報は、無線基地局200が無線通信サービスを提供する対象の情報を含んでよい。
制御装置100は、例えば、基地局統計情報DB400に定期的にアップロードされる統計データ202を参照して、複数のユーザ端末20に対して公平に無線リソースを割り当てることを目的とした第1のスケジューリングアルゴリズムに従ってスケジューリングを行っている複数の無線基地局200のそれぞれについて、輻輳状態に関する予め定められた条件が満たされたか否かを判定する。第1のスケジューリングアルゴリズムは、無線リソースを割り当てたときに期待される瞬時スループットが、それまでの平均スループットと比較して大きくなるユーザ端末に無線リソースを割り当てるアルゴリズムであってよい。第1のスケジューリングアルゴリズムの例として、Proportional Fairが挙げられる。
当該条件は、無線基地局200が輻輳しているか否かを判定可能な任意の条件であってよい。例えば、当該条件は、1TTI当たりのスケジュール数が予め定められた閾値より高いときに満たされる条件である。LTEにおける1TTIは1msである。1TTI当たりのスケジュール数は、例えば、通信状況データに含まれるTransport TimeをROPで除算することによって算出される。また、例えば、当該条件は、無線基地局200のPRB(Physical Resouce Block)使用率が予め定められた閾値より高いときに満たされる条件である。また、例えば、当該条件は、通信トラフィックが予め定められた閾値より高いときに満たされる条件である。
制御装置100は、無線基地局200の装置情報に基づいて、無線基地局200が輻輳しているか否かを判定してもよい。例えば、制御装置100は、無線基地局200のCPU(Central Processing Unit)使用率が予め定められた閾値より高い場合に、無線基地局200が輻輳していると判定する。
制御装置100は、輻輳状態に関する予め定められた条件が満たされた無線基地局200について、基地局設定情報DB500から設定情報を取得し、スケジューリングアルゴリズムを変更可能であるか否かを判定してよい。スケジューリングアルゴリズムが変更可能であるか否かは、無線基地局200のベンダ毎に設定されていてよい。例えば、A社の無線基地局200については変更可、B社の無線基地局200については変更不可等のように設定され得る。また、スケジューリングアルゴリズムが変更可能であるか否かは、無線基地局200が無線通信サービスを提供する対象毎に設定されていてもよい。例えば、特殊法人局に対して無線通信サービスを提供する無線基地局200については変更不可、通常の無線基地局200については変更可等のように設定され得る。この他、スケジューリングアルゴリズムが変更可能であるか否かは、任意に設定されていてよい。
制御装置100は、変更可と判定した無線基地局200に、無線品質がより高いユーザ端末20に対して優先的に無線リソースを割り当てる第2のスケジューリングアルゴリズムに従ってスケジューリングを行わせるように制御する。第2のスケジューリングアルゴリズムの例として、MAX C/Iが挙げられる。
近年のLTE通信方式に準拠した移動体通信ネットワークでは、セルのエッジに位置するような無線品質が低いユーザ端末20の通信状況が極端に悪化することを防ぐために、基本的に、スケジューリングアルゴリズムとしてProportional Fairを採用している。従来の無線基地局では、輻輳時であるか非輻輳時であるかに関わらず、Proportional Fairによってスケジューリングを行っている。
それに対して、発明者は、実験を繰り返すことによって、無線基地局200が輻輳している状態においては、スケジューリングアルゴリズムとしてMAX C/Iを採用した方が、全体の通信品質が向上することを見出した。これは、輻輳時においては、無線品質がより高いユーザ端末20に対して優先的に無線リソースを割り当てることにより、セル全体として処理しなければならないデータをより早く処理することができ、結果として、より多くのデータを処理することができるからと推定される。
図1では、複数の基地局運用システム300に対して1つの制御装置100が配置される場合を主に例に挙げて説明したが、これに限らない。制御装置100は、複数の基地局運用システム300のそれぞれに対して配置されてもよい。この場合、制御装置100は、基地局運用システム300が複数の無線基地局200から受信した統計データ202を、基地局運用システム300から取得する。なお、この場合、制御装置100と基地局運用システム300とは一体であってもよい。すなわち、基地局運用システム300が制御装置100として機能してもよい。
図2は、制御装置100による処理の流れの一例を概略的に示す。ここでは、複数の無線基地局200がProportional Fairを用いてスケジューリングを行っている状態で、統計データ202を送信した状態を開始状態として説明する。制御装置100は、1ROP毎に、図2に示す処理を実行してよい。
ステップ(ステップをSと省略して記載する場合がある。)102では、制御装置100が、基地局統計情報DB400から、複数の無線基地局200の統計データ202を取得する。S104では、制御装置100が、輻輳条件を満たす無線基地局200が有るか否かを判定する。有ると判定した場合、S106に進み、無いと判定した場合、処理を終了する。
S106では、制御装置100が、輻輳条件を満たす無線基地局200の基地局情報を基地局設定情報DB500から取得する。S108では、制御装置100が、輻輳条件を満たす複数の無線基地局200から、スケジューリングアルゴリズムを変更可能な、対象基地局を特定する。
S110では、制御装置100が、S108において特定した対象基地局のスケジューリングアルゴリズムの設定を変更させる。制御装置100は、スケジューリングアルゴリズムをProportional FairからMAX C/Iに切り替えさせてよい。制御装置100は、例えば、切替指示を基地局運用システム300に送信する。基地局運用システム300は、制御装置100から受信した切替指示に従って、無線基地局200にスケジューリングアルゴリズムを切り替えさせる。
制御装置100が図2に示す処理を実行することによって、輻輳条件を満たした無線基地局200に、MAX C/Iに従ってスケジューリングを行わせることができ、Proportional Fairに従ったスケジューリングを継続する場合と比較して、無線基地局200によってユーザ端末20に提供する無線通信サービスの通信品質を向上させることができる。
図3は、制御装置100による処理の流れの一例を概略的に示す。図3に示す処理は、制御装置100が、図2に示す処理を実行することによって、一部の無線基地局200のスケジューリングアルゴリズムの設定が変更された後に実行される。制御装置100は、1ROP毎に、図2に示す処理を実行してよい。
S202では、制御装置100が、基地局統計情報DB400から、設定変更済の無線基地局200の統計データ202を取得する。S204では、制御装置100が、非輻輳条件を満たす無線基地局200が有るか否かを判定する。有ると判定した場合、S206に進み、無いと判定した場合、処理を終了する。
S206では、制御装置100が、非輻輳条件を満たす無線基地局200のスケジューリングアルゴリズムの設定を解除する。すなわち、制御装置100は、非輻輳条件を満たす無線基地局200のスケジューリングアルゴリズムを、MAX C/IからProportional Fairに切り替えさせる。そして、処理を終了する。
上述したように、無線基地局200が輻輳している状態において、スケジューリングアルゴリズムをProportional FairからMAX C/Iに切り替えさせると、セル全体の通信品質は向上する。しかし、発明者は、無線基地局200が輻輳していない状態で、スケジューリングアルゴリズムをProportional FairからMAX C/Iに切り替えさせると、通信品質が低下してしまう場合が多いことも見出した。輻輳していない状態でMAX C/Iに切り替えると、無線品質のより高いユーザ端末20の通信品質が向上する割合に比べて、無線品質のより低いユーザ端末20の通信品質が低下する割合が非常に大きくなるためと考えられる。
本実施形態に係る制御装置100は、図2に示す処理に加えて、図3に示す処理を実行することにより、無線基地局200が輻輳している蓋然性が高い間のみ、無線基地局200にMAX C/Iを利用させることができる。これにより、輻輳時には、MAX C/Iによってセル全体の品質を向上させつつ、非輻輳時にもMAX C/Iを利用させることによって品質が低下してしまうことを防止することができる。
図4は、制御装置100の機能構成の一例を概略的に示す。制御装置100は、データ取得部102、データ格納部104、判定部106、制御部108、及び特定部110を備える。なお、制御装置100がこれらの全ての構成を備えることは必須とは限らない。
データ取得部102は、基地局統計情報DB400から統計データ202を取得する。データ取得部102は、基地局統計情報DB400が複数の無線基地局200から統計データ202を受信する毎に、統計データ202を基地局統計情報DB400から取得してよい。データ取得部102は、統計データ202に含まれる通信状況データのみを基地局統計情報DB400から取得してもよい。データ格納部104は、データ取得部102が取得した統計データ202又は通信状況データを格納する。
判定部106は、第1のスケジューリングアルゴリズムに従ってスケジューリングを行っている無線基地局200の輻輳状態に関する予め定められた条件が満たされたか否かを判定する。判定部106は、例えば、データ取得部102がROP毎に取得する、第1のスケジューリングアルゴリズムに従ってスケジューリングを行っている無線基地局200の通信状況データが、連続して、無線基地局200が輻輳していることを示す場合に、条件が満たされたと判定する。判定部106は、例えば、無線基地局200の通信状況データが2回連続して、無線基地局200が輻輳していることを示す場合に、条件が満たされたと判定する。なお、判定部106は、第1のスケジューリングアルゴリズムに従ってスケジューリングを行っている無線基地局200の通信状況データが、無線基地局200が輻輳していることを示す場合に、即、条件が満たされたと判定してもよい。
通信状況データは、例えば、通信状況データに基づいて導出された、1TTI当たりのスケジューリング要求数が予め定められた閾値より多い場合に、無線基地局200が輻輳していることを示す。
制御部108は、判定部106によって条件が満たされたと判定された場合に、無線基地局200に、第2のスケジューリングアルゴリズムに従ってスケジューリングを行わせるよう制御する。制御部108は、例えば、第2のスケジューリングアルゴリズムに従ってスケジューリングを行う指示を、基地局運用システム300を介して、無線基地局200に送信する。また、制御部108は、例えば、スケジューリングアルゴリズムを、第1のスケジューリングアルゴリズムから第2のスケジューリングアルゴリズムに切り替える切替指示を、基地局運用システム300を介して、無線基地局200に送信する。
判定部106は、第2のスケジューリングアルゴリズムに従ってスケジューリングを行っている無線基地局200が、輻輳状態から非輻輳状態に移行したか否かを判定してよい。判定部106は、例えば、データ取得部102によって予め定められた期間毎に取得される、第2のスケジューリングアルゴリズムに従ってスケジューリングを行っている無線基地局200の通信状況データが、連続して、無線基地局が輻輳していないことを示す場合に、無線基地局200が、輻輳状態から非輻輳状態に移行したと判定する。
制御部108は、判定部106によって非輻輳状態に移行したと判定された場合に、無線基地局200が用いるスケジューリングアルゴリズムを、第2のスケジューリングアルゴリズムから第1のスケジューリングアルゴリズムに切り替えさせる。制御部108は、例えば、第1のスケジューリングアルゴリズムに従ってスケジューリングを行う指示を、基地局運用システム300を介して、無線基地局200に送信する。また、制御部108は、例えば、スケジューリングアルゴリズムを、第2のスケジューリングアルゴリズムから第1のスケジューリングアルゴリズムに切り替える切替指示を、基地局運用システム300を介して、無線基地局200に送信する。
上述したように、判定部106及び制御部108が、データ取得部102によって予め定められた期間毎に取得される通信状況データが、連続して、無線基地局200が輻輳していることを示したり、輻輳していないことを示したりしたことに応じて、スケジューリングアルゴリズムを切り替えさせることによって、状況の変化に応じて、スケジューリングアルゴリズムを適切に切り替えさせることができる。このような制御を突発制御と記載する場合がある。
判定部106及び制御部108は、データ格納部104に格納されている過去の通信状況データに基づいて、無線基地局200のスケジューリングアルゴリズムを切り替えさせてもよい。このような制御を計画制御と記載する場合がある。
判定部106は、例えば、無線基地局200の過去の通信状況データに基づいて、現在の無線基地局200の輻輳状態に関する条件が満たされたか否かを判定する。判定部106は、例えば、第1の日時に対応する過去の第2の日時における無線基地局200の通信状況データが、無線基地局200が輻輳していたことを示す場合に、第1の日時において条件が満たされたと判定する。第1の日時に対応する第2の日時とは、第1の日時と同曜日の日時であってよい。第1の日時に対応する第2の日時は、第1の日時の前週同曜日の日時であってよい。
特定部110は、データ格納部104に格納されている通信状況データに基づいて、一の日の前週同曜日において無線基地局200が輻輳していたことを示す時間帯を特定する。判定部106は、特定部110によって特定された一の日の時間帯に、無線基地局200の輻輳状態に関する条件が満たされると判定してよい。制御部108は、特定部110によって特定された一の日の時間帯の間、無線基地局200に、第2のスケジューリングアルゴリズムに従ってスケジューリングを行わせるよう制御してよい。また、制御部108は、特定部110によって特定された一の日の時間帯が経過するタイミングで、無線基地局200が用いるスケジューリングアルゴリズムを、第2のスケジューリングアルゴリズムから第1のスケジューリングアルゴリズムに切り替えさせてよい。なお、特定部110は、一の日が平日であり、一の日の前週同曜日が祝日である場合、一の日の前々週同曜日において無線基地局200が輻輳していたことを示す時間帯を特定してよい。
突発制御においては、輻輳していることを判定するまでに2ROPのタイムラグが発生してしまうのに対して、計画制御では、このようなタイムラグが発生することなく、スケジューリングアルゴリズムを切り替えさせることができる。計画制御によれば、新たな無線基地局200が設置されたり、無線基地局200の設定が変更されたことによって、通信環境が変化した場合に、変化に応じたスケジューリングアルゴリズムの切り替えを実現するまでに時間がかかってしまう場合があるが、突発制御によれば、このような変化に迅速に対応可能にすることができる。
図5は、制御装置100が突発制御を行う場合の、スケジューリングアルゴリズムの切り替えのタイミングを説明するための説明図である。図5の棒グラフは、ダウンリンクのTTI当たりのスケジュール数を示す。図5の線グラフは、ダウンリンクのユーザスループット(Mbps)を示す。
ここでは、2ROP連続してTTI当たりのスケジュール数が20以上である場合に、無線基地局200が輻輳していると判定し、2ROP連続してTTI当たりのスケジュール数が20より少ない場合に、無線基地局200が輻輳していないと判定する場合を例示している。図5に示すように、判定部106及び制御部108は、TTI当たりのスケジュール数が20以上であるROPが2回連続したタイミングで、スケジューリングアルゴリズムを第1のスケジューリングアルゴリズムから第2のスケジューリングアルゴリズムに切り替えさせる。
TTI当たりのスケジュール数が20以上であるROPが、1回のみではなく、2回連続したタイミングで切り替えさせるように構成することによって、切り替えが頻繁に発生してしまうことを防止できる。なお、判定部106は、3ROP以上の任意の回数連続してTTI当たりのスケジュール数が20以上である場合に、無線基地局200が輻輳していると判定してもよい。
図5に例示するように、判定部106及び制御部108は、TTI当たりのスケジュール数が20より少ないROPが2回連続したタイミングで、スケジューリングアルゴリズムを第2のスケジューリングアルゴリズムから第1のスケジューリングアルゴリズムに切り替えさせてよい。なお、判定部106は、3ROP以上の任意の回数連続してTTI当たりのスケジュール数が20より少ない場合に、無線基地局200が輻輳状態から非輻輳状態に移行したと判定してもよい。また判定部106は、TTI当たりのスケジュール数が20より少ないROPが1つでもあった場合に、即、無線基地局200が輻輳状態から非輻輳状態に移行したと判定してもよい。また、図5では、TTI当たりのスケジュール数の閾値が20である場合を例に挙げて説明したが、これに限らず、閾値については、柔軟に変更してもよい。また、図5では、無線基地局200が輻輳しているか否かを判定する指標として、TTI当たりのスケジューリング数を用いた場合を例に挙げて説明したが、これに限らず、その他の指標を用いてもよい。
図6は、制御装置100が計画制御を行う場合の制御時間を説明するための説明図である。ここでは、制御装置100が、複数の日のそれぞれについて、前週同曜日の輻輳時間を制御時間としてスケジューリングアルゴリズムを制御する場合を例示している。なお、ここでは、土日を制御対象から除外した場合を例示しているが、制御装置100は、土日を制御対象に加えてもよい。
制御装置100は、例えば、3月11日(月)における制御時間として、前週同曜日の3月4日(月)の輻輳時間を採用する。図6に示す例において、3月4日(月)では、7時45分から8時45分の間、輻輳していたと判定されている。制御部108は、3月11日(月)の7時45分にスケジューリングアルゴリズムを第1のスケジューリングアルゴリズムから第2のスケジューリングアルゴリズムに切り替え、8時45分にスケジューリングアルゴリズムを第2のスケジューリングアルゴリズムから第1のスケジューリングアルゴリズムに切り替えさせるよう、無線基地局200を制御する。
制御装置100は、例えば、3月18日(月)における制御時間として、前週同曜日の3月11日(月)の輻輳時間を採用する。図6に示す例において、3月11日(月)では、8時から9時の間、輻輳していたと判定されている。制御部108は、3月18日(月)の8時にスケジューリングアルゴリズムを第1のスケジューリングアルゴリズムから第2のスケジューリングアルゴリズムに切り替え、9時にスケジューリングアルゴリズムを第2のスケジューリングアルゴリズムから第1のスケジューリングアルゴリズムに切り替えさせるよう、無線基地局200を制御する。
制御装置100は、前週同曜日が祝日である場合、前々週同曜日の輻輳時間を採用してよい。図6に示す例において、3月28日(木)における制御時間として、前週同曜日が祝日であることから、制御装置100は、前々週同曜日の3月14日(木)の輻輳時間を採用する。
図7は、制御装置100として機能するコンピュータ1200のハードウェア構成の一例を概略的に示す。コンピュータ1200にインストールされたプログラムは、コンピュータ1200を、本実施形態に係る装置の1又は複数の「部」として機能させ、又はコンピュータ1200に、本実施形態に係る装置に関連付けられるオペレーション又は当該1又は複数の「部」を実行させることができ、及び/又はコンピュータ1200に、本実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ1200に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又はすべてに関連付けられた特定のオペレーションを実行させるべく、CPU1212によって実行されてよい。
本実施形態によるコンピュータ1200は、CPU1212、RAM1214、及びグラフィックコントローラ1216を含み、それらはホストコントローラ1210によって相互に接続されている。コンピュータ1200はまた、通信インタフェース1222、記憶装置1224、DVDドライブ1226、及びICカードドライブのような入出力ユニットを含み、それらは入出力コントローラ1220を介してホストコントローラ1210に接続されている。DVDドライブ1226は、DVD−ROMドライブ及びDVD−RAMドライブ等であってよい。記憶装置1224は、ハードディスクドライブ及びソリッドステートドライブ等であってよい。コンピュータ1200はまた、ROM1230及びキーボードのようなレガシの入出力ユニットを含み、それらは入出力チップ1240を介して入出力コントローラ1220に接続されている。
CPU1212は、ROM1230及びRAM1214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ1216は、RAM1214内に提供されるフレームバッファ等又はそれ自体の中に、CPU1212によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス1218上に表示されるようにする。
通信インタフェース1222は、ネットワークを介して他の電子デバイスと通信する。記憶装置1224は、コンピュータ1200内のCPU1212によって使用されるプログラム及びデータを格納する。DVDドライブ1226は、プログラム又はデータをDVD−ROM1227等から読み取り、記憶装置1224に提供する。ICカードドライブは、プログラム及びデータをICカードから読み取り、及び/又はプログラム及びデータをICカードに書き込む。
ROM1230はその中に、アクティブ化時にコンピュータ1200によって実行されるブートプログラム等、及び/又はコンピュータ1200のハードウェアに依存するプログラムを格納する。入出力チップ1240はまた、様々な入出力ユニットをUSBポート、パラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ1220に接続してよい。
プログラムは、DVD−ROM1227又はICカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもある記憶装置1224、RAM1214、又はROM1230にインストールされ、CPU1212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ1200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ1200の使用に従い情報のオペレーション又は処理を実現することによって構成されてよい。
例えば、通信がコンピュータ1200及び外部デバイス間で実行される場合、CPU1212は、RAM1214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース1222に対し、通信処理を命令してよい。通信インタフェース1222は、CPU1212の制御の下、RAM1214、記憶装置1224、DVD−ROM1227、又はICカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
また、CPU1212は、記憶装置1224、DVDドライブ1226(DVD−ROM1227)、ICカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がRAM1214に読み取られるようにし、RAM1214上のデータに対し様々なタイプの処理を実行してよい。CPU1212は次に、処理されたデータを外部記録媒体にライトバックしてよい。
様々なタイプのプログラム、データ、テーブル、及びデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU1212は、RAM1214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM1214に対しライトバックする。また、CPU1212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU1212は、当該複数のエントリの中から、第1の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。
上で説明したプログラム又はソフトウエアモジュールは、コンピュータ1200上又はコンピュータ1200近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はRAMのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ1200に提供する。
本実施形態におけるフローチャート及びブロック図におけるブロックは、オペレーションが実行されるプロセスの段階又はオペレーションを実行する役割を持つ装置の「部」を表わしてよい。特定の段階及び「部」が、専用回路、コンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、及び/又はコンピュータ可読記憶媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタル及び/又はアナログハードウェア回路を含んでよく、集積回路(IC)及び/又はディスクリート回路を含んでよい。プログラマブル回路は、例えば、フィールドプログラマブルゲートアレイ(FPGA)、及びプログラマブルロジックアレイ(PLA)等のような、論理積、論理和、排他的論理和、否定論理積、否定論理和、及び他の論理演算、フリップフロップ、レジスタ、並びにメモリエレメントを含む、再構成可能なハードウェア回路を含んでよい。
コンピュータ可読記憶媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読記憶媒体は、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読記憶媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読記憶媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD−ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク、メモリスティック、集積回路カード等が含まれてよい。
コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、又はSmalltalk、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1又は複数のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかを含んでよい。
コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路が、フローチャート又はブロック図で指定されたオペレーションを実行するための手段を生成するために当該コンピュータ可読命令を実行すべく、ローカルに又はローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサ、又はプログラマブル回路に提供されてよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階などの各処理の実行順序は、特段「より前に」、「先立って」などと明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」などを用いて説明したとしても、この順で実施することが必須であることを意味するものではない。