JP5750831B2 - 情報処理装置およびそのスクリーンセーバ制御方法 - Google Patents

情報処理装置およびそのスクリーンセーバ制御方法 Download PDF

Info

Publication number
JP5750831B2
JP5750831B2 JP2010078074A JP2010078074A JP5750831B2 JP 5750831 B2 JP5750831 B2 JP 5750831B2 JP 2010078074 A JP2010078074 A JP 2010078074A JP 2010078074 A JP2010078074 A JP 2010078074A JP 5750831 B2 JP5750831 B2 JP 5750831B2
Authority
JP
Japan
Prior art keywords
library
function unit
program
list
codec
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010078074A
Other languages
English (en)
Other versions
JP2011209569A (ja
Inventor
祐二 川崎
祐二 川崎
克則 遠藤
克則 遠藤
吉田 敏之
敏之 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2010078074A priority Critical patent/JP5750831B2/ja
Publication of JP2011209569A publication Critical patent/JP2011209569A/ja
Application granted granted Critical
Publication of JP5750831B2 publication Critical patent/JP5750831B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置およびそのスクリーンセーバ制御方法に関するものである。本発明は、とくに、コンピュータシステムにおけるOS(Operating System)環境で管理する情報処理装置に関するものである。また、情報処理装置のスクリーンセーバ制御方法は、コンピュータシステムにおいてプロセスとしてプログラムの読込み時にオブジェクトやモジュールで構築されたライブラリを基にOS環境を設定し、OS環境を管理する方法に関する。
従来、ディスプレイ装置の画面焼けを防止するための仕組として、スクリーンセーバ(Screensaver)が知られている。また、スクリーンセーバは画面焼け防止にとどまらず、画面に描画する内容を陰面してセキュリティを高めるためにも用いられている。
特許文献1のTV(TeleVision)会議システムおよびTV会議システムのための方法である。特許文献1は、汎用的なワークステーションやパーソナルコンピュータ(PC)をプラットフォームとして使用し、その上でOSやウィンドウシステムを動作させることによってあらかじめ設定した時間内にユーザの入力操作がない場合にスクリーンセーバ画面を表示する機能を有するとともに、さらにそのOSやウィンドウシステム上で動作するアプリケーションとして、TV会議アプリケーションソフトをインストールして構築されるデスクトップTV会議システムにおいて、スクリーンセーバ機能は、内部のカウンタによって設定時間が経過するまでにユーザによる入力イベントがあれば、カウンタをクリアし、設定時間が経過するまでにユーザによる入力イベントがなければ、スクリーンセーバ画面を表示するものであって、TV会議用アプリケーションソフトの起動にともなって設定時間よりも短い所定時間間隔で自動的に入力イベント信号を発生させる入力イベント信号発生用タイマを含む無効化手段を設けることによって、TV会議用アプリケーションソフトの起動後において、設定時間が経過するまでユーザによる入力イベントがなくてもスクリーンセーバ機能を動作させないようにすることを提案している。
すなわち、特許文献1は、アプリケーションソフトの起動後において、ユーザによる入力イベントがなくても、スクリーンセーバ機能を動作させないように動作させることができる。
特許第4365897号
ところで、今日、ソフトフォンプログラムをPCのような情報処理装置にインストールし、情報処理装置を電話として利用するソフトフォン(soft-phone)が知られている。ソフトフォンは、電話の機能を有するアプリケーションソフトウェアである。
なお、ソフトフォンは情報処理装置であるから、スクリーンセーバ機能も有している。ソフトフォンは、起動後、利用者から入力がないと、スクリーンセーバ機能によりスクリーンセーバが起動する。
一般的に、ソフトフォンは、情報処理装置のOSが起動させ、この後、OSが主体となる自動処理にてソフトフォンプログラムを起動させるシーケンスを実行する。この手順により、情報処理装置はソフトフォンとして起動する。この起動後、利用者は、情報処理装置を適宜に電話として利用できるようになり、たとえば利用者はPCに接続されているマイク、スピーカおよびハンドセット等を利用して、ソフトフォンで通話することができる。
このとき、情報処理装置に接続されているマウスおよびキーボードを操作しないと、上述したようにスクリーンセーバが起動する。このため、利用者はソフトフォンで通話しているとき、PCは、モニタ画面がスクリーンセーバで描画されていることがある。
たとえば利用者がソフトフォンで通話し、さらに、テキストエディタやブラウザを起動し、情報を閲覧しながら、通話していると、スクリーンセーバの起動により画面が閲覧できなくなってしまうことがある。この改善案として、特許文献1をソフトフォンに適用すると、ソフトフォン起動後、利用者による入力イベントがなくても、スクリーンセーバ機能を動作させないようにすることができる可能性がある。
しかしながら、ソフトフォンは、発着信が適宜に行えるようソフトフォンを自動起動することから、特許文献1では、ソフトフォン起動後において利用者による入力イベントがなくても、常に、スクリーンセーバ機能を動作させないようになってしまう。
また、特許文献1は、TV会議用アプリケーションソフトによる会議が終了し、回線が切断されると、スクリーンセーバ機能を動作させることが可能であるが、複数のTV会議用アプリケーションソフトが起動することを考慮した動作が明確になっていない。
たとえばソフトフォンの利用方法として、複数のソフトフォンをPCにインストールしておき、ソフトフォンを適宜に使い分けることができる。また、複数のソフトフォンをPCにインストールした環境で、すなわち、ソフトフォンAで通話を確立し、ソフトフォンBでも通話を確立し、二つの音声パスを形成する、複数音声パス混在環境で、ソフトフォンAの音声パスで通話し、ソフトフォンBの音声パスで通話、または通話以外のサービルを実施することも可能となる利用方法も考えられる。
このような環境に特許文献1を適用すると、ソフトフォンAのみの起動・終了にともなってスクリーンセーバ機能が実行されてしまい、ソフトフォンBの起動・終了が考慮されなくなってしまう虞がある。
本発明はこのような課題に鑑み、複数のソフトフォンを含む環境でも、ソフトフォン起動後の通話時にスクリーンセーバ機能を動作させない情報処理装置およびそのスクリーンセーバ制御方法を提供することを目的とする。
本発明は上述の課題を解決するために、OS(Operation System)環境で実行するプログラムをメモリにライブラリとして呼び出して、実行処理し、呼び出したライブラリを開放して、所望の情報処理を実行する情報処理装置において、この装置は、OS上にスクリーンセーバの動作を制御する機能ブロックを備え、このスクリーンセーバの動作を制御する機能ブロックは、ライブラリを調査する調査機能ブロックと、この調査機能ブロックの調査結果をライブラリの一覧として保持する記憶機能ブロックと、プログラムが呼び出すライブラリおよびプログラムが開放したライブラリを監視し、監視したライブラリがライブラリの一覧に含まれるか否かを判断する監視機能ブロックと、この監視機能ブロックがライブラリの一覧に、監視したライブラリを含むか否かの判断に応じてスクリーンセーバの動作をオフに設定する設定機能ブロックとを含むことを特徴とする。
また、本発明は上述の課題を解決するために、OS(Operation System)環境で実行するプログラムをメモリにライブラリとして呼び出して、実行処理し、呼び出したライブラリを開放して、所望の情報処理を実行する情報処理装置に、OS上にスクリーンセーバの動作を制御する機能ブロックを備え、このスクリーンセーバの動作を制御する機能ブロックは、ライブラリを調査する調査機能ブロックと、この調査機能ブロックの調査結果をライブラリの一覧として保持する記憶機能ブロックと、プログラムが呼び出すライブラリおよびプログラムが開放したライブラリを監視し、監視したライブラリがライブラリの一覧に含まれるか否かを判断する監視機能ブロックと、この監視機能ブロックがライブラリの一覧に、監視したライブラリを含むか否かの判断に応じてスクリーンセーバの動作をオフに設定する設定機能ブロックとを含むこの装置におけるスクリーンセーバの動作を制御する制御方法において、この方法は、OSの起動に応じて、所望のプログラムを自動に実行し、調査機能ブロック、記憶機能ブロック、監視機能ブロックおよび設定機能ブロックのそれぞれも、あらかじめ、ローディングして記憶し、実行することで各機能が活性化し、処理を開始して起動状態にする第1の工程と、この起動状態から所望のプログラムを実行させながら、調査機能ブロックでOSが含む識別情報を調べて、識別情報を取得し、取得した識別情報の一覧を作成し、この一覧を、この調査結果として、記憶機能ブロックに与えて、保持し、監視機能ブロックでOSに対しインストールし、プログラムが呼び出したライブラリの識別情報を取得し、取得したライブラリの識別情報を監視する呼出し監視機能ブロックで監視を開始し、この呼出し監視において該当する識別情報の存在の有無を判断して設定機能ブロックに供給し、プログラムがライブラリを開放し、開放したライブラリの識別情報を取得し、取得したライブラリの識別情報を監視する開放監視機能ブロックで監視を開始し、この開放監視において該当する識別情報の存在の有無を判断して設定機能ブロックに供給して起動後状態にしている第2の工程と、呼出し監視機能ブロックでの監視により該当する識別情報有の判断に応じて設定機能ブロックでのスクリーンセーバ機能を断に制御させ、開放監視機能ブロックでの監視により該当する識別情報無の判断に応じて設定機能ブロックでのスクリーンセーバ機能を断に制御させてスクリーンセーバを遮断状態にする第3の工程とを含み、第3の工程は、呼出し監視機能ブロックでの監視により該当する識別情報無の判断、または開放監視機能ブロックでの監視により該当する識別情報有の判断に応じて設定機能ブロックでのスクリーンセーバの遮断状態からスクリーンセーバを動作させる起動後状態に状態遷移させることを特徴とする。
本発明によれば、OS上にスクリーンセーバの動作を制御する機能ブロックにおける調査機能ブロックでライブラリを調査し、記憶機能ブロックにこの調査結果をライブラリの一覧として保持し、監視機能ブロックでプログラムが呼び出すライブラリおよびプログラムが開放したライブラリを監視し、監視したライブラリがライブラリの一覧に含まれるか否かを判断し、設定機能ブロックで監視機能ブロックがライブラリの一覧に、監視したライブラリを含むか否かの判断に応じてスクリーンセーバの動作をオフに設定することにより、たとえば複数のソフトフォンを含む環境でも、ソフトフォン起動後の通話時にスクリーンセーバ機能を動作させないように制御することができる。
本発明に係る情報処理装置を適用した情報端末装置における概略的な構成を示すブロック図である。 図1のコーデック調査機能部の概略的な構成を示す機能ブロック図である。 図1のコーデックローディング監視機能部の概略的な構成を示す機能ブロック図である。 図1の情報端末装置が扱うライブラリ名の一覧の例を示す図である。 図1の情報端末装置の呼出し監視におけるフック機能部による情報取得の関係を示す図である。 図1の情報端末装置の呼出し監視におけるコール機能部による情報取得の関係を示す図である。 図1の情報端末装置の開放監視におけるフック機能部による情報取得の関係を示す図である。 図1の情報端末装置の開放監視におけるコール機能部による情報取得の関係を示す図である。 図1の情報端末装置のOS設定機能部の概略的な構成を示す機能ブロック図である。 図1の情報端末装置におけるスクリーンセーバ制御の状態遷移を示す図である。 図1の情報端末装置のOS設定機能部の概略的な他の構成を示す機能ブロック図である。 図1の情報端末装置におけるスクリーンセーバ制御の他の動作手順を示すフローチャートである。
次に添付図面を参照して本発明による情報処理装置の一実施例を詳細に説明する。図1を参照すると、本発明による情報処理装置の実施例は、情報端末装置10に適用した場合であり、情報端末装置10は、メモリ14にスクリーンセーバ(ScS)の動作を制御するScS制御機能部34を備え、ScS制御機能部34は、コーデック調査機能部36でコーデックを調査し、コーデック一覧保持機能部38にこの調査結果をコーデックの一覧として格納し、コーデックローディング監視機能部40でプログラムが呼び出すライブラリおよびプログラムが開放したライブラリを監視し、監視したライブラリがコーデックの一覧に含まれるか否かを判断し、OS(Operation System)設定機能部42でコーデックローディング監視機能部40がコーデックの一覧に、監視したライブラリを含むか否かの判断に応じてスクリーンセーバの動作をオフに設定することにより、たとえば複数のソフトフォンを含む環境でも、ソフトフォン起動後の通話時に、スクリーンセーバ機能を動作させないように制御することができる。
本発明と直接関係のない部分について図示および説明を省略する。以下の説明で、信号はその現れる接続線の参照番号で指示する。
情報端末装置10は、図1に示すように、CPU(Central Processing Unit)12、メモリ14、ストレージ16、通信インタフェース部18および入出力装置20を含む。これらの構成要素それぞれは、システムバス22、信号線24、26、28、30および32を介して、互い接続されている。
CPU 12は、家電製品や工業機器のような情報処理装置の全体を制御する機能を有する。CPU 12は、主に、プログラムの実行を制御する。
メモリ14は、データを一時的に保持する機能を有する。メモリ14には、RAM(Random Access Memory)が用いられる。メモリ14には、図1に示すように、CPU 12がプログラムを実行するとき、プログラムがローディングされ、プログラムが取り扱うデータとして一時的に保持させている。
メモリ14は、OS起動にともないスクリーンセーバ(Screen-Saver)を制御するScS制御機能部34および図示しないが、ソフトフォン機能を含む。ScS制御機能部34は、調査機能、記憶機能、監視機能および設定機能として、それぞれ、コーデック調査機能部36、コーデック一覧保持機能部38、コーデックローディング監視機能部40、およびOS設定機能部42に対応している。これらの機能については後段でさらに詳述する。本実施例はライブラリとしてコーデックを一例に挙げている。
ソフトフォン機能は、通信に用いるVoIP(Voice over Internet Protocol)に対応する。ソフトフォン機能は、具体的に、電話帳機能、電話発着信機能、通話機能、通話したい相手の在席確認を提供するプレゼンス機能等の電話の機能を有する。
ストレージ16は、データを記憶する機能を有する。ストレージ14は、具体的に、RAM、ROM(Read Only Memory)、フラッシュメモリ、磁気テープ、CD-ROM(Compact Disc Read Only Memory)、HDD(Hard disk drive)およびSSD(Solid State Drive)などを用いるとよい。ストレージ16は、CPU 12の制御に基づき記憶するデータを入出力する。また、ストレージ16には、情報端末装置10のOSやアプリケーションソフトウェアといったプログラム、プログラムの設定情報およびプログラムの状態情報が記憶されている。
ここで、OSには、スクリーンセーバに対応するプログラムが含まれている。また、アプリケーションソフトウェアには、電話の機能を有するアプリケーションソフトウェアの一つとしてソフトフォンプログラムが含まれている。ソフトフォンプログラムは、ソフトフォン機能を提供し、処理するVoIP(Voice over Internet Protocol)に対応する。具体的なソフトフォン機能は、電話帳機能、電話発着信機能、通話機能、通話したい相手の在席確認を提供するプレゼンス機能等の電話の機能を有効にする。
さらに、ソフトフォン機能は、電気通信事業者が提供する有線加入電話や移動体加入電話に接続して電話できるものであればよい。この場合、加入電話に係わる信号を伝播する回線は、アナログ回線またはデジタル回線のいずれでもよく、ソフトフォン機能は接続する回線に応じて自律的に対応する。
通信インタフェース部18は、情報端末装置10に対して信号線44またはアンテナ46を介して、図示しないアナログ回線やデジタル回線のネットワークに接続する外部の装置と通信接続する機能を有する。通信インタフェース部10は、一般的なPCのNIC(Network Interface Card)や無線用カードのように、IPインタフェースを有し、CPU 12の制御に基づき外部のネットワークに接続して、通信する。
入出力装置20は、情報端末装置10の特徴的な情報処理、扱う情報の入力/出力機能を有する。入出力装置20には、一般的な入出力機能であるキーボード、タッチパネル、ポインティングデバイス、およびディスプレイがあり、内蔵または外部からシステムバス22を介して、CPU 12に接続されている。ポインティングデバイスには、マウス、十字キーまたはテンキーがある。これらは、CPU 12により入出力が制御される。本実施例において利用者は、これら入出力機能を利用してソフトフォン機能を操作する。
次に情報端末装置10におけるメモリ14内のScS制御機能部34について記述する。図1のコーデック調査機能部36は、OSに含まれているコーデック処理に関するライブラリを調べる機能を有する。そして、コーデック調査機能部36は、ライブラリ調査処理結果として、ライブラリ名の一覧データをストレージ16に与える。
ここで、ライブラリとは、他のプログラムから利用する関数を含み、関数のソースファイルがコンパイルされたオブジェクトの単体または集合の機能部である。すなわち、ライブラリは、あるプログラムがあるライブラリの関数によりある処理を実行可能にするものである。たとえばマイクロソフト社のWindows(登録商標)にはDLL(Dynamic Link Library)のライブラリが用いられている。DLLは、プログラムの実行中にダイナミックリンクによりライブラリをプログラムのメモリ空間に呼び出して、ライブラリを利用したり、呼び出したライブラリを開放して利用したりするものであることが知られている。
ある処理を実行するものがプログラムならば、ライブラリを呼び出すプログラムはプログラムであり、プログラムにより呼び出されるライブラリもプログラムであるといえる。しかしながら、たとえばWindows(登録商標)の場合、拡張子が“exe”などのエントリポイントを含むプログラムは独立して実行できる。また、この場合、拡張子が“dll”のようなライブラリは、別のプログラムから呼び出され実行されるものである。
具体的に、コーデック調査機能部36には、図2に示すように、ライブラリ調査処理を実行する機能として、一覧調査機能部48および50がある。したがって、コーデック調査機能部36は、一覧調査機能部48および50においてこれら2つのライブラリ調査処理が実行される。
一覧調査機能部48は、OSが保持するシステム管理プログラムを呼び出し、システム管理プログラムが管理する、コーデック処理に関するライブラリ一覧から識別情報として、たとえばライブラリ名、ライブラリファイル名、コンポーネント識別子などを取得し、ライブラリ名の一覧を生成する機能を有する。
この場合、コーデック調査機能部36は、システム管理プログラムを呼び出すルーチンを有している。このルーチンは、システム管理プログラムの呼出し、システム管理プログラムが管理するコーデック処理に関するライブラリ一覧の問合せ、および呼び出したシステム管理プログラムの開放といったような手続処理を含んでいる。
このような手続処理を含むことから、一覧調査機能部48は、システム管理プログラムを呼び出し、コーデック処理に関するライブラリ一覧を問い合わせ、ライブラリ一覧からライブラリ名を取得し、ライブラリ名の一覧を生成し、呼び出したシステム管理プログラムを開放する処理を実行することができる。
ここで、システム管理プログラムとは、OSがあらかじめに保持しているプログラムで、OSがインストールされた情報端末装置10におけるCPU情報、バッテリ残量、メモリ容量およびOSバージョンといったシステム概要情報を管理するものである。より詳細に記述すると、システム管理プログラムは、ハードウェアリソース、コンポーネントおよびソフトウェア環境を管理するものである。
ハードウェアリソースは、I/O(Input/Output)ポート、IRQ(Interrupt ReQuest)およびメモリアドレス等の情報を扱う。コンポーネントは、ハードウェアおよびソフトウェアの構成要素、ならびにコーデック等の情報を扱う。ソフトウェア環境は、システムドライバおよび読み込まれているモジュール等の情報を扱う。
一覧調査機能部48は、OSのシステム管理プログラムが管理する、コーデック処理に関するライブラリ一覧からライブラリ名を取得し、ライブラリ名の一覧を生成するから、ライブラリ調査処理結果として、情報端末装置10に含まれるコーデック処理に関するライブラリのうち、OSがコーデック処理に関するライブラリと認識しているライブラリ名を取得できる。これにより、後述するコーデックローディング監視機能部40の呼出し監視機能部52および54において、OSまたはシステム管理プログラムがコーデック処理に関するライブラリと認識しているライブラリを基に生成されたライブラリ名の一覧に照らし合わせることから、後述するOS設定機能部42は、OS設定処理を、OSまたはシステム管理プログラムがコーデック処理に関するライブラリと認識しているライブラリの呼出し時、またはライブラリの開放時だけの実施に限られる。
ここで、OSがコーデック処理に関するライブラリとの認識は、OSが認定、認証、承認および保証に対して正式に対応することを意味する。
図2の一覧調査機能部50は、OSが保持する管理情報を参照し、参照した管理情報に含まれるコーデック処理に関するライブラリ名、ライブラリファイル名、コンポーネント識別子等の識別情報を取得し、ライブラリ名の一覧を生成する機能を有する。
この場合、コーデック調査機能部36は、管理情報にアクセスするインタフェースを有する。また、コーデック調査機能部36は、管理情報を参照する際に用いるキーワードも有している。このキーワードはコーデック処理に関連する“G.711”や“H.264”や“コーデック”等といった文字である。
ここで、このキーワードは、EUC(Extended Unix Code)-JP(日本拡張ユニックスコード)やシフトJIS等のそれぞれの文字コードに対応する形式を有している。キーワードは、情報端末装置10のOSが対応する文字コードと同形式の文字コードにより管理情報を参照することができるようになっている。すなわち、コーデック調査機能部36は、情報端末装置10のOSがシフトJISの文字コードに対応するとき、シフトJISの文字コードの形式のキーワードを用いて管理情報を参照する。
このことから、一覧調査機能部50は、管理情報にアクセスし、キーワードを用いて管理情報を参照してコーデック処理に関するライブラリ名等を取得し、ライブラリ名一覧を生成する処理を実行することができる。
ここで、管理情報とは、OSが保持しているレジストリ、初期設定ファイルおよびシステム設定ファイル等であり、OS、プログラムの状態および設定情報を管理する情報である。たとえば、情報端末装置10に新たなプログラムがインストールされると、情報端末装置10には、新たなプログラムの起動に係わる管理情報が自動に設定される。このように設定することで、新たなプログラムは、自動に設定された管理情報を基に起動することができるようになる。たとえば、インストールされる新たなプログラムがコーデック処理を実行するプログラムの場合、管理情報には、コーデック処理を実行するために呼び出すライブラリが設定されている。この管理情報によって設定されるライブラリには、図示しないが、2通りある。
第1のライブラリはOSがコーデック処理に関するライブラリと認識しているライブラリであり、第2のライブラリはOSがコーデック処理に関するライブラリと認識していないライブラリである。第1のライブラリは、前述したように、システム管理プログラムで管理されている。また、第2のライブラリは、システム管理プログラムで管理されず、OS上でライブラリとすら認識されていないこともある。このような第2のライブラリは、メーカー独自のライブラリのようなものが挙げられる。
一覧調査機能部50は、OSが保持する管理情報に含まれるコーデック処理に関する情報をキーワードで絞り込みながら、ライブラリ名の一覧を参照している。これにより、一覧調査機能部50は、ライブラリ調査処理結果として、情報端末装置10に含まれるコーデック処理に関するライブラリのうち、OSがコーデック処理に関するライブラリと認識していないライブラリのライブラリ名も取得できる。
一覧調査機能部50を用いることで、後述するコーデックローディング監視機能部40の呼出し監視機能部52および54において、OSがコーデック処理に関するライブラリと認識していないライブラリを含めて生成されたライブラリ名の一覧に照らし合わせるから、後述するコーデックローディング監視機能部40は、OS設定機能部42においてOSがコーデック処理に関するライブラリと認識していないライブラリを呼出し時、またはライブラリの開放時も実施される。
ここで、OSがコーデック処理に関するライブラリと認識していないということは、OSが認定、認証、承認および保証に対して正式に対応しないことを意味する。
本実施例は、一覧調査機能部48を適用した場合について例示する。また、コーデック調査機能部36は、ライブラリの調査タイミングを、この機能の活性化時として記述するが、コーデック調査機能部36にあらかじめに調査間隔を設定することで、周期的にライブラリ調査するようにもできる。
具体的には、コーデック調査機能部36は、調査間隔が“10sec(秒)”に設定されている場合、10秒毎にライブラリを調査する。これにより、コーデック処理に関する新たなプログラムや新たなライブラリが情報端末装置10にインストールされても、コーデック調査機能部36が新たなライブラリに関する情報を含めてライブラリ名の一覧を生成し、この一覧を更新することができるようになる。
なお、コーデック調査機能部36は、活性化の後に時間計測を開始し、調査間隔と照らし合わせることで周期的にライブラリを調査している。
また、一覧調査機能部48および50の調査を切り換えて適用することもできる。この場合、コーデック調査機能部36は、一覧調査機能部48および50の切換間隔を設定しておくことで、周期的にライブラリの調査を切り換える。具体的に、コーデック調査機能部36は、“ライブラリ調査3回”と回数が設定されている場合、ライブラリの調査を3回実施すると、ライブラリ調査を一覧調査機能部48および50の間で切り換える。
なお、コーデック調査機能部36は、活性化後に時間計測を開始し、切換間隔と照らし合わせることで周期的にライブラリの調査を切り換えている。すなわち、コーデック調査機能部36で一覧調査機能部48を適用し、調査間隔“10sec”、調査回数“ライブラリ調査3回”と設定されている場合、コーデック調査機能部36は活性化後、10秒経過時、20秒経過時、30秒経過時の3回にて一覧調査機能部48を実行して、ライブラリ調査を一覧調査機能部50に切換える。この後、コーデック調査機能部36は、活性化後、40秒、50秒、60秒経過時にて一覧調査機能部50を実行して、ライブラリ調査を再び、一覧調査機能部48に切り換える。
このようにコーデック調査機能部36は、活性化してから60秒で、一覧調査機能部48によるライブラリの調査を3回、一覧調査機能部50による調査を3回、計6回のライブラリを調査する。
コーデック一覧保持機能部38は、コーデック調査機能部36から供給されたライブラリ名の一覧を保持する機能を有する。具体的に、コーデック一覧保持機能部38は、供給されたライブラリ名の一覧を保持するために用いる領域をメモリ14内に確保し、この領域にライブラリ名の一覧を記憶させて保持する。
コーデックローディング監視機能部40は、情報端末装置10内で実行されるプログラムが呼び出すライブラリを監視し、プログラムが使用するライブラリ名を取得し、コーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、使用するライブラリ名がコーデック名の一覧に含まれているか否かを判断する機能を有する。
コーデックローディング監視機能部40は、図3に示すように、ライブラリにおける呼出し監視機能部52および54、ならびに開放監視機能部56および58を含む。
図3の呼出し監視機能部52は、プログラムがライブラリを呼び出すことによりOSで処理するファンクションをフック機能部60によりフック処理し、プログラムが呼び出したライブラリのライブラリ名、ライブラリファイル名、コンポーネント識別子等を識別情報として取得し、取得したライブラリ名のような識別情報をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、取得したライブラリ名がライブラリ名の一覧に含まれているか否かを判断する機能を有する。
ここで、フックとは、プログラムが実行するルーチンを横取りする処理として知られている。フック処理は、フック機能部60で実行される。このフックを用いることで、たとえばOSなどのプログラムに適宜に機能の変更や追加が可能となる。したがって、呼出し監視機能部52は、フック処理として、プログラムがライブラリを呼び出すことによりOSで処理するファンクションを横取りし、プログラムが呼び出したライブラリのライブラリ名、ライブラリファイル名、コンポーネント識別子等を取得する。
この場合、コーデックローディング監視機能部40は、フック処理を実行するルーチンとしてフック機能部60を有している。コーデックローディング監視機能部40が活性化すると、OSに対してフック処理、すなわちフック機能部60をインストールする。フック処理は、プログラムが呼び出したライブラリのライブラリ名といった情報の取得、取得した情報の通知およびプログラムが呼び出したライブラリの呼び出し等の手続きである。
したがって、呼出し監視機能部52は、フック機能部60をOSにインストールし、プログラムがライブラリを呼び出すことによりOSでファンクションが処理されるときにフック機能部60を実行し、実行したフック機能部60によりプログラムが呼び出したライブラリのライブラリ名を取得する。そして、呼出し監視機能部52は、取得したライブラリ名をコーデックローディング監視機能部40に通知する。フック機能部60は、プログラムが呼び出したライブラリを呼び出して、ローディングする。この後、コーデックローディング監視機能部40は、通知されたライブラリ名をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、通知されたライブラリ名がライブラリ名の一覧に含まれているかを判断する。
このような一連の処理により、呼出し監視機能部52は、プログラムがライブラリを呼び出すことによりOSで処理するファンクションをフック機能部60でフック処理するから、情報端末装置10に含まれるコーデック処理に関するライブラリを呼び出す際、プログラムが呼び出すライブラリ名を自動に取得できる。
図3の呼出し監視機能部54は、OSが保持するシステム管理プログラムを呼び出し、システム管理プログラムが管理する、現在の情報端末装置10内で読み込まれているライブラリの一覧からライブラリ名、ライブラリファイル名、コンポーネント識別子等を識別情報として取得し、取得したライブラリ名をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、取得したライブラリ名がライブラリ名の一覧に含まれているか否かを判断する機能を有する。
この場合、コーデックローディング監視機能部40は、システム管理プログラムを呼び出すルーチンとして、コール機能部62を有する。このコール機能部62は、システム管理プログラムを呼び出し、システム管理プログラムが管理するコーデック処理に関するライブラリ一覧の問合せおよびシステム管理プログラムの開放等の手続きを実行するものである。
したがって、呼出し監視機能部54は、コール機能部62でシステム管理プログラムを呼び出し、現在の情報端末装置10内で読み込まれているライブラリの一覧を問い合わせてライブラリ名を取得し、取得したライブラリ名をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、取得したライブラリ名がライブラリ名の一覧に含まれているか否かを判断する。
呼出し監視機能部54は、OSのシステム管理プログラムが管理する、プログラムがライブラリの呼出しに成功し、現在の情報端末装置10内で読み込まれているモジュールの一覧から、情報端末装置10に含まれるコーデック処理に関するライブラリ名を取得できる。
なお、呼出し監視機能部54は、コーデックローディング監視機能部40にあらかじめに監視間隔を設定しておくことにより、ライブラリ呼出し監視におけるタイミングを周期的に実行させている。
また、コーデックローディング監視機能部40は、情報端末装置10内で実行されるプログラムが呼び出したライブラリの開放を監視し、プログラムが開放するライブラリ名を取得し、取得したライブラリ名がコーデックローディング監視機能部40の保持するコーデック名の一覧に照らし合わせ、取得したライブラリ名がライブラリ名の一覧に含まれているか否かを判断する。
図3の開放監視機能部56は、プログラムがライブラリを開放することによりOSで処理するファンクションをフック機能部60によりフック処理し、プログラムが開放したライブラリのライブラリ名、ライブラリファイル名およびコンポーネント識別子等を識別情報として取得し、取得したライブラリ名等をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、取得したライブラリ名がライブラリ名の一覧に含まれているか否かを判断し、ライブラリ開放を監視する機能を有する。
したがって、この監視処理におけるフック処理とは、プログラムがライブラリを開放することによりOSで処理するファンクションを横取りして、プログラムが開放したライブラリのライブラリ名、ライブラリファイル名およびコンポーネント識別子等を取得する。
この場合、コーデックローディング監視機能部40は、フック処理を実行するルーチンとしてフック機能部60を有している。フック機能部60は、フック処理を実行するルーチンである。コーデックローディング監視機能部40が活性化すると、OSに対しフック処理をインストールする。フック処理は、プログラムが開放したライブラリのライブラリ名といった情報の取得、取得した情報の通知、およびプログラムが開放したライブラリの開放等の手続きである。
したがって、開放監視機能部56は、フック機能部60をOSにインストールし、プログラムがライブラリを開放することによりOSでファンクションが処理されるときフック機能部60を実行し、実行したフック機能部60によりプログラムが開放したライブラリのライブラリ名を取得する。そして、開放監視機能部56は、取得したライブラリ名をコーデックローディング監視機能部40に通知する。フック機能部60は、プログラムが開放したライブラリを開放して、アンローディングする。この後、コーデックローディング監視機能部40は、通知されたライブラリ名をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、通知されたライブラリ名がライブラリ名の一覧に含まれているか否かを判断する。
このような一連の処理により、開放監視機能部56は、プログラムがライブラリを開放することによりOSで処理するファンクションをフック機能部60でフック処理するから、情報端末装置10に含まれるコーデック処理に関するライブラリを開放する際に、プログラムが開放するライブラリ名を自動に取得できる。
図3の開放監視機能部58は、OSが保持するシステム管理プログラムを呼び出し、システム管理プログラムが管理する、現在の情報端末装置10内で読み込まれているライブラリの一覧からライブラリ名、ライブラリファイル名およびコンポーネント識別子等を識別情報として取得し、取得したライブラリ名等をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、取得したライブラリ名がライブラリ名の一覧に含まれているか否かを判断し、ライブラリ開放を監視する機能を有する。
この場合、コーデックローディング監視機能部40は、システム管理プログラムを呼び出すルーチンをコール機能部62として有している。このコール機能部62は、システム管理プログラムの呼出し、システム管理プログラムが管理するコーデック処理に関するライブラリ一覧の問合せおよびシステム管理プログラムの開放等の手続きを実行するルーチンである。
したがって、開放監視機能部58は、システム管理プログラムを呼び出し、現在の情報端末装置10内で読み込まれているライブラリの一覧を問い合わせてライブラリ名を取得し、取得したライブラリ名をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、取得したライブラリ名がライブラリ名の一覧に含まれているかを判断する。
なお、開放監視機能部58は、コーデックローディング監視機能部40にあらかじめ監視間隔を設定しておくことにより、ライブラリ開放の監視におけるタイミングを周期的に実行させている。
ここで、コーデックローディング監視機能部40は、コーデック一覧保持機能部38がライブラリ名の一覧を保持することにより、ライブラリの呼出しに対する監視を開始し、ライブラリの呼出し監視処理において取得したライブラリ名がライブラリ名の一覧に含まれているか否かを判断する処理を開始する。
なお、本実施例では、ライブラリの呼出し監視において、呼出し監視機能部56を適用した場合を示す。
次にOS設定機能部42が、API(Application Programming Interface)/レジストリを設定し、コーデックローディング監視機能部40の判断結果を基にスクリーンセーバ機能におけるオン/オフ制御の関係について、簡単に、図4Aないし図4Eに示す。ライブラリ名の一覧64は、図4Aに示すように、“ライブラリ名A、BおよびC”を含むものと仮定している。
OS設定機能部42は、図4Bに示すように、呼出し監視機能部52の判断結果を基にスクリーンセーバ機能におけるオン/オフを判断し、オン/オフを制御する。OS設定機能部42の制御において、呼出し監視機能部52は、プログラムがライブラリを呼び出して監視する際に、フック処理が起動するように制御信号66をフック機能部60に供給して制御する。フック機能部60は、プログラムが呼び出したライブラリのライブラリ名、ライブラリファイル名、コンポーネント識別子等を取得する機能により、情報取得処理68を実行し、“ライブラリ名A”を取得し、取得した情報70、“ライブラリ名A”を呼出し監視機能部52に供給する。呼出し監視機能部52は、取得した“ライブラリ名A”とライブラリ名の一覧を照らし合わせる。呼出し監視機能部52は、この結果、“ライブラリ名A”がライブラリ名の一覧に含まれていると判断する。この判断結果を受けて、OS設定機能部42は、OSに対しスクリーンセーバ機能をオフに制御する。
同様に、呼出し監視機能部52は、フック機能部60で取得した“ライブラリ名Z”を受けて、ライブラリ名の一覧に照らし合わせる。この結果、呼出し監視機能部52は、“ライブラリ名Z”がライブラリ名の一覧に含まれていないと判断する。この判断を受けて、OS設定機能部42は、OSに対しスクリーンセーバ機能をオフに制御しない。
換言すると、OS設定機能部42は、呼出し監視機能部52で取得したライブラリ名がライブラリ名の一覧に含まれていると判断されたことで、コーデック処理に関するライブラリが呼び出されているとき、OSに対するスクリーンセーバ機能をオフに制御することを意味する。
また、OS設定機能部42は、図4Cに示すように、呼出し監視機能部54の判断結果を基にスクリーンセーバ機能オン/オフを判断し、制御する。OS設定機能部42の制御において、呼出し監視機能部54は、OSが保持するシステム管理プログラムを呼び出し、システム管理プログラムが管理するコール機能部62に制御信号72を供給する。コール機能部62は、現在の情報端末装置10内でコールおよび管理処理74を実行して読み込まれているライブラリ名“ライブラリ名A、Z”を情報として取得する。コール機能部62は、取得した情報76、“ライブラリ名A、Z”を呼出し監視機能部54に供給する。呼出し監視機能部54は、供給された情報76、“ライブラリ名A、Z”とライブラリ名の一覧を照らし合わせる。呼出し監視機能部54は、ライブラリ名の一覧に照らし合わせた結果、ライブラリ名の一覧に“ライブラリ名A”が含まれていると判断する。この判断結果を受けて、OS設定機能部42は、OSに対しスクリーンセーバ機能をオフに制御する。
同様に、呼出し監視機能部54は、コール機能部62で取得した“ライブラリ名X、Z”を受けて、ライブラリ名の一覧に照らし合わせる。この結果、呼出し監視機能部54は、“ライブラリ名X、Z”がライブラリ名の一覧に含まれていないと判断する。この判断結果を受けて、OS設定機能部42は、OSに対しスクリーンセーバ機能をオフに制御しない。
換言すると、OS設定機能部42は、ライブラリ呼出し監視機能部54で取得したライブラリ名がライブラリ名の一覧に含まれていると判断されたことで、コーデック処理に関するライブラリが呼び出されているとき、OSに対しスクリーンセーバ機能をオフに制御することを意味する。
OS設定機能部42は、図4D示すように、開放監視機能部56の判断結果を基にスクリーンセーバ機能オン/オフを判断し、制御する。OS設定機能部42の制御において、開放監視機能部56は、プログラムがライブラリを開放して監視する際に、フック処理が起動するように制御信号78をフック機能部60に供給して、制御する。フック機能部60は、定義のように、OSで処理するファンクションを横取りして、プログラムが開放したライブラリのライブラリ名等を取得する情報取得処理80を実行して、開放したライブラリから“ライブラリ名A”を取得する。フック機能部60は、取得した情報82、“ライブラリ名A”を開放監視機能部56に供給する。開放監視機能部56は、取得した情報82、“ライブラリ名A”とライブラリ名の一覧に照らし合わせる。開放監視機能部56は、この結果、“ライブラリ名A”がライブラリ名の一覧に含まれていると判断する。この判断結果を受けて、OS設定機能部42は、OSに対しスクリーンセーバ機能をオンに制御する。
同様に、開放監視機能部56は、フック機能部60で取得した“ライブラリ名Z”を受けて、ライブラリ名の一覧に照らし合わせる。この結果、開放監視機能部56は、“ライブラリ名Z”がライブラリ名の一覧に含まれていないと判断する。この判断を受けて、OS設定機能部42は、OSに対しスクリーンセーバ機能をオンに制御しない。
換言すると、OS設定機能部42は、開放監視機能部56において取得したライブラリ名がライブラリ名一覧に含まれていると判断されたことで、コーデック処理に関するライブラリが開放されたとき、OSに対しスクリーンセーバ機能をオンに制御することを意味する。
さらに、OS設定機能部42は、図4Eに示すように、開放監視機能部58の判断結果を基にスクリーンセーバ機能オン/オフを判断し、制御する。開放監視機能部58は、OSが保持するシステム管理プログラムを呼び出し、システム管理プログラムが管理するコール機能部62に制御信号84を供給する。コール機能部62は、現在の情報端末装置10内でコールおよび管理処理86を実行して読み込まれているライブラリ名“ライブラリ名A、Z”を取得する。コール機能部62は、取得した情報88、“ライブラリ名A、Z”を開放監視機能部58に供給する。開放監視機能部58は、取得した情報88、“ライブラリ名A、Z”とライブラリ名の一覧に照らし合わせる。開放監視機能部58は、ライブラリ名の一覧に照らし合わせた結果、ライブラリ名の一覧に“ライブラリ名A”が含まれていると判断する。この判断結果を受けて、OS設定機能部42は、OSに対しスクリーンセーバ機能をオンに制御しない。
同様に、開放監視機能部58は、コール機能部62で取得した“ライブラリ名X、Z”を受けて、ライブラリ名の一覧に照らし合わせる。この結果、開放監視機能部58は、“ライブラリ名X、Z”がライブラリ名の一覧に含まれていないと判断する。この判断結果を受けて、OS設定機能部42は、OSに対しスクリーンセーバ機能をオンに制御する。
換言すると、OS設定機能部42は、開放監視機能部58で取得したライブラリ名がライブラリ名の一覧に含まれていないと判断されたことで、コーデック処理に関するライブラリが開放されたとき、OSに対しスクリーンセーバ機能をオンに制御することを意味する。
OS設定機能部42は、コーデックローディング監視機能部40の判断を基にOSを設定する。本実施例におけるOS設定機能部42のOS設定は、OSに対しスクリーンセーバ機能のオン/オフを施すことである。
OS設定機能部42は、コーデックローディング監視機能部40のライブラリ呼出し監視機能部52および54、ならびにライブラリ開放監視機能部56および58のそれぞれに対応し、得られた判断を基にOSを設定する。
OS設定機能部42は、スクリーンセーバのオン/オフ制御処理において、図5に示すように、具体的にScS制御機能部90および92の2つを有し、それぞれ適用できる。
ScS制御機能部90は、OSがあらかじめスクリーンセーバのオン/オフを処理するAPI(Application Program Interface)をコールする機能を有する。この場合、OS設定機能部42は、スクリーンセーバのオン/オフ処理するAPIをコールするルーチンを含むAPIコール機能部94を有している。このAPIコール機能部94は、スクリーンセーバオン/オフ処理APIに対しオンまたはオフのメッセージを含めてコールする手続きを実行する機能である。
ScS制御機能部90は、スクリーンセーバのオン/オフ処理において、APIコール機能部94によりOSがあらかじめ有するスクリーンセーバのオン/オフを処理するAPIをコールして、瞬時に、スクリーンセーバのオン/オフを制御することができる。
また、ScS制御機能部92は、OSが保持する管理情報であるレジストリや初期設定ファイルやシステム設定ファイル等を参照し、スクリーンセーバのオン/オフに関する内容を更新する機能を有する。この場合、OS設定機能部42は、管理情報にアクセスするインタフェースを有し、管理情報を参照する際のキーワードを有するAPIコール/レジストリ機能部96を含む。このキーワードは、管理情報内でスクリーンセーバのオン/オフを規定するセクションを示す文字である。
ScS制御機能部92は、スクリーンセーバのオン/オフ処理において、OSの管理情報にアクセスし、恒久的にスクリーンセーバのオン/オフを制御することができる。
なお、本実施例では、ScS制御機能部64によるオン/オフ制御処理の場合について記述する。
次に情報端末装置10におけるScS制御について、図6の状態遷移を用いて記述する。利用者は情報端末装置10の図示しない電源ボタンを押圧操作する。この起動操作にともない、CPU 12の制御により、ストレージ16からOSをメモリ14にローディングして、OSを起動し、情報端末装置10の起動が完了する。この状態が起動状態100である。情報端末装置10は、OSの起動に応じて、ソフトフォンプログラムを自動に実行する。
コーデック調査機能部36、コーデック一覧保持機能部38、コーデックローディング監視機能部40およびOS設定機能部42のそれぞれは、プログラムとして情報端末装置10のメモリ14にあらかじめ、ローディングして記憶し、実行することで各機能が活性化して処理を開始する。情報端末装置10は、起動状態100から状態遷移102により起動後状態104に遷移する。
情報端末装置10は、この起動後、起動後状態104にて利用者はキーボードやマウスを操作し、ソフトフォンプログラムの実行により提供されるソフトフォンを操作できる。さらに、情報端末装置10は、情報端末装置10が含むその他のアプリケーションソフトウェアも適宜に実行し、利用が可能になる。
なお、上述した機能部36ないし42の機能ごとをそれぞれのプログラムとするか、それとも1つのプログラムに、上述した機能部36ないし42の機能を含めるかは適宜に選択できる。
情報端末装置10は、起動後状態104とScS機能オフ状態106の状態を取ることができる。
起動後状態104において、コーデック調査機能部36は、OSが含むコーデック処理に関するライブラリを調べて、ライブラリ名を取得し、ライブラリ名の一覧を作成する。コーデック調査機能部36は、この調査結果として、ライブラリ名の一覧をコーデック一覧保持機能部38に与える。コーデック一覧保持機能部38は、供給されたライブラリ名の一覧を保持する。
より詳細に記述すると、コーデック調査機能部36は、調査に適用する一覧調査機能部48においてOSが保持するシステム管理プログラムを呼び出し、コーデック処理に関するライブラリ一覧を問い合わせて、ライブラリの一覧から図4Aに示したライブラリ名A、ライブラリ名B、ライブラリ名Cを取得し、ライブラリ名の一覧を生成し、システム管理プログラムを開放している。生成したライブラリ名の一覧はコーデック一覧保持機能部38に供給される。
以降、コーデック調査機能部36は、自身に、たとえば“10sec”と設定された調査間隔に基づいて周期的にライブラリを調査する。この周期的な調査は、ルーチン108である。この調査に続けて、コーデック一覧保持機能部38は、コーデック調査機能部36から与えられたライブラリ名の一覧を保持する。
ここで、コーデックローディング監視機能部40は、コーデック一覧保持機能部38がライブラリ名の一覧を保持することで呼出し監視機能部52の呼出し監視を開始する。
このとき、コーデックローディング監視機能部40は、呼出し監視機能部52の呼出し監視を開始することによりフック機能部60をOSに対しインストールし、プログラムが呼び出したライブラリのライブラリ名を取得できるようにする。
具体例を記述する。ある時点で、利用者が情報端末装置10でテキストエディタプログラムを起動する。テキストエディタプログラムは、起動時にテキストエディットに関する機能を発揮する“ライブラリ名Z”のライブラリを呼び出す。OSではテキストエディタプログラムが“ライブラリ名Z”のライブラリを呼び出すファンクションが処理されるとき、フック機能部60でテキストエディタプログラムが呼び出したライブラリの“ライブラリ名Z”を取得する。情報端末装置10は、取得した“ライブラリ名Z”をコーデックローディング監視機能部40に通知し、テキストエディタプログラムが呼び出した“ライブラリ名Z”のライブラリを呼び出す。
このように監視して、情報端末装置10は、テキストエディタプログラムが呼び出すライブラリのライブラリ名を取得しつつ、テキストエディタプログラムが呼び出した“ライブラリ名Z”のライブラリを呼び出すから、テキストエディタプログラムは処理が継続される。
コーデックローディング監視機能部40は、フック機能部60から通知された“ライブラリ名Z”を、コーデック一覧保持機能部38が保持する、図4Aに示したライブラリ名の一覧に照らし合わせ、図4Bに示したように、ライブラリ名の一覧に含まれていないと判断する。
起動後状態104でOS設定機能部42は、該当するライブラリ名の入力なしという判断を基にOSに対しスクリーンセーバ機能をオフに制御しない。すなわち、スクリーンセーバ機能をオンに制御する。この制御は、前述した図4B、4Cおよび4Eの制御に対応している。また、該当する入力がない場合、スクリーンセーバ機能は、オフに制御する。
引き続き、情報端末装置10は、OS、コーデック調査機能部36、コーデック一覧保持機能部38、コーデックローディング監視機能部40およびOS設定機能部42のいずれかがシャットダウンされない場合、監視を繰り返す。
ただし、すでに、OSに対しフック機能部60はインストール済みであるから、フック機能部60は、インストールされず、OSでライブラリを呼び出すファンクションが処理されるときフック処理の実施からを繰り返されることになる。
あるとき、利用者が情報装置でソフトフォンを操作し、電話を発信する。このとき、ScS制御機能部90はオンに制御している。利用者が電話を発信操作すると、ソフトフォンは、通話を確立する処理を開始する。ソフトフォンプログラムは電話の発信先との間で呼制御信号を通信し、通話に適用する音声コーデックを決める。ソフトフォンプログラムは、音声コーデックが決まると、音声コーデック処理に関する“ライブラリ名A”のライブラリを呼び出す。
呼出しに際して、OSではソフトフォンプログラムが“ライブラリ名A”のライブラリを呼び出すファンクションが処理されるときフック機能部60によりフック処理が実施される。フック機能部60は、ソフトフォンプログラムが呼び出したライブラリの“ライブラリ名A”を取得し、取得した“ライブラリ名A”をコーデックローディング監視機能部40に通知し、ソフトフォンプログラムが呼び出した“ライブラリ名A”のライブラリを呼び出す。
このように監視して、ソフトフォンプログラムが呼び出すライブラリのライブラリ名を取得しつつ、ソフトフォンプログラムが呼び出した“ライブラリ名A”のライブラリを呼び出すから、ソフトフォンプログラムは処理が継続される。
すなわち、ソフトフォンプログラムは、電話発信先との間で、呼び出された音声コーデック処理に関する“ライブラリ名A”を利用し、音声を送受信して通話中になる。
コーデックローディング監視機能部40は、フック機能部60から通知された“ライブラリ名A”をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせる。情報端末装置10は、“ライブラリ名A”がライブラリ名の一覧に含まれていると判断する。
この判断を受けて、情報端末装置10は、状態遷移110を経て、ScS制御オフ状態106に移る。OS設定機能部42において、ScS制御機能部90は、ScS制御オフ状態106で、該当するライブラリ名が存在する“入力あり”という判断を基にOSに対しスクリーンセーバ機能をオフに制御する。
引き続き、上述したように、情報端末装置10は、OS、コーデック調査機能部36、コーデック一覧保持機能部38、コーデックローディング監視機能部40およびOS設定機能部42のいずれかがシャットダウンされない場合、ルーチン112としてこの監視を繰り返す。
また、コーデックローディング機能部40は、呼出し監視機能部52および54のいずれかにおいて取得したライブラリ名Aがライブラリ名の一覧に含まれていると判断すると、ルーチン112の処理として開放監視機能部56および58のいずれかにより開放監視を開始する。
この開放監視に際して、コーデックローディング機能部40は、プログラムがライブラリを開放することによりOSで処理するファンクションを横取りするフック機能部60をOSに対しインストールし、プログラムが開放したライブラリのライブラリ名を取得できるようにする。
利用者が通話中のソフトフォンプログラムで通話を終了(通話切断)する。ソフトフォンプログラムで通話を終了すると、ソフトフォンプログラムは通話を切断するための処理を開始する。ソフトフォンプログラムは、電話発信先との間で呼制御信号を通信し、通話を切断し、音声コーデック処理に関する“ライブラリ名A”のライブラリを開放する。
この開放時に、OSではソフトフォンプログラムが“ライブラリ名A”のライブラリを開放するファンクションが処理されるとき、フック機能部60が実行され、フック処理によりソフトフォンプログラムが開放したライブラリの“ライブラリ名A”を取得し、取得した“ライブラリ名A”をコーデックローディング機能部40に通知し、ソフトフォンプログラムが開放した“ライブラリ名A”のライブラリを開放する。
このように監視して、ソフトフォンプログラムが開放するライブラリのライブラリ名を取得しつつ、ソフトフォンプログラムが呼び出した“ライブラリ名A”のライブラリを開放するから、ソフトフォンプログラムは処理が継続される。
コーデックローディング機能部40は、フック機能部60から通知された“ライブラリ名A”をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、“ライブラリ名A”がライブラリ名の一覧に含まれていると判断する。これは、図4Dに対応している。
この判断結果を受けて、OS設定機能部42は、OSに対しスクリーンセーバ機能をオンに制御する。情報端末装置10は、ScS制御オフ状態106からスクリーンセーバ機能をオンに制御して、状態遷移114を経て、起動後状態104に移る。
引き続き、上述したように、情報端末装置10は、OS、コーデック調査機能部36、コーデック一覧保持機能部38、コーデックローディング監視機能部40およびOS設定機能部42のいずれかがシャットダウンされない場合、呼び出し監視のルーチン108としてこの監視を繰り返す。
ソフトフォンプログラムが音声処理する音声コーデックの呼出しまたは開放に基づいて自動にスクリーンセーバの起動をオン/オフできるようになる。
次に情報端末装置10における異なる動作手順について記述する。本実施例は、ソフトフォンプログラムが音声処理するコーデックの呼出しまたは開放に際して、所定のプログラムが実行されているか否かを判断した後に、自動にスクリーンセーバの起動をオン/オフする手順を記述する。本実施例の情報端末装置10は、図1の構成要素を含む。本実施例は、OS設定機能部42の処理だけが先の実施例と相違し、他の処理は先の実施例と同じである。
本実施例のOS設定機能部42は、所定のプログラムが実行されているか否かを判断する実行調査機能部116を有し、所定プログラムが実行中と判断した際にOS設定を実行する。
具体的には、所定プログラム実行調査処理とは、OS設定機能部42がOS上で実行されているプログラムを調査することである。また、本実施例のOS設定機能部42は、図7に示すように、ScS制御機能部90および92、APIコール機能部94、APIコール/レジストリ機能部96、ならびに実行調査機能部116を含む。実行調査機能部116は、調査する対象の所定プログラムの一覧を、あらかじめ保持する機能を有している。
ここで、所定プログラムの一覧とは、所定のプログラムを示すファイル名やプログラム名やプロセスID(IDentification)などである。ファイル名やプログラム名は、OSがプログラムを識別する識別子である。所定プログラムの一覧には、単に、ファイル名やプログラム名を示す場合と、ディレクトリ構造を含めた絶対パスまたは相対パスで示す場合が適用できる。また、プロセスIDは、OSが実行中のプログラムを識別する識別子である。
OS設定機能部42は、所定プログラムの一覧として、あらかじめ、“所定プログラムD、E、F”を保持しているとして記述する。また、本実施例の動作手順は、先の実施例との相違を明確化するため、図8のフローチャートを用いて記述する。
まず、コーデック調査機能部36でライブラリを調査する(ステップS10)。この調査では、ライブラリ名を取得し、取得したライブラリ名の一覧を生成する。生成したライブラリ名の一覧は、コーデック一覧保持機能部38に供給される。コーデック一覧保持機能部38では、供給されたライブラリ名の一覧を保持する(ステップS12)。
次に一覧の保持にともない、コーデックローディング監視機能部40における呼出し監視機能部52の動作を開始する(ステップS14)。呼出し監視機能部52は、フック機能部60で通知された“ライブラリ名A”を、コーデック一覧保持機能部38が保持するライブラリ名一覧に照らし合わせ、“ライブラリ名A”がライブラリ名一覧に含まれているか否かを判断する(ステップS16)。これは、図4Bの判断だけでなく、図4Cおよび図4Eの判断にも対応している。図4Cおよび図4Eの場合、コール機能部62による情報取得を基にした呼出し監視機能部54による判断、およびコール機能部62による情報取得を基にした開放監視機能部58による判断が行なわれる。
“ライブラリ名A”がライブラリ名一覧に含まれていると判断した場合(YES)、OS上で実行中のプログラム調査判断処理に進む(ステップS18へ)。また、“ライブラリ名A”がライブラリ名一覧に含まれていないと判断した場合(NO)、スクリーンセーバ制御をオンにする処理に進む(ステップS20へ)。これは、図4Dに対応している。すなわち、フック機能部60による情報取得を基にした呼出し監視機能部52による判断が行なわれる。
OS設定機能部42にてOS上で実行中のプログラムを調査し、所定プログラム一覧“所定プログラムD、EおよびF”に含まれるプログラムが実行中か否か判断する(ステップS18)。プログラムが実行中であると判断した場合(YES)、スクリーンセーバ制御をオフにする処理に進む(ステップS22へ)。また、プログラムが実行中にないと判断した場合(NO)、スクリーンセーバ制御をオンにする処理に進む(ステップS20へ)。
ScS制御機能部90では、プログラムの実行中に応じてオフに制御する(ステップS22)。したがって、スクリーンセーバは機能しない。また、プログラムが実行中にないとき、ScS制御機能部90では、プログラムの実行中に応じてオンに制御する(ステップS20)。この制御ではスクリーンセーバを機能させる。
ScS制御オン/オフ後、情報端末装置10の動作を継続するか否かを判断する(ステップS24)。OS、コーデック調査機能部36、コーデック一覧保持機能部38、コーデックローディング監視機能部40およびOS設定機能部42のいずれかがシャットダウンされないとき、継続と判断する場合(YES)、開放監視処理に進む(ステップS26へ)。継続しない場合(NO)、終了する。
次に開放監視機能部56の動作を開始し、先の実施例のように、たとえばソフトフォンでの通話切断処理を開始する。ソフトフォンプログラムは、電話発信先との間で呼制御信号を通信し、通話を切断し、音声コーデック処理に関する“ライブラリ名A”のライブラリを開放する(ステップS26)。ソフトフォンプログラムが開放するライブラリのライブラリ名を取得しつつ、ソフトフォンプログラムが呼び出した“ライブラリ名A”のライブラリを開放するから、ソフトフォンプログラムは処理が継続される。
次に取得した“ライブラリ名A”をコーデック一覧保持機能部38が保持するライブラリ名の一覧に照らし合わせ、取得した“ライブラリ名A”がライブラリ名の一覧に含まれているか否かを判断する(ステップS28)。“ライブラリ名A”がライブラリ名の一覧に含まれていると判断した場合(YES)、スクリーンセーバ制御をオンにする処理に進む(ステップS30へ)。また、“ライブラリ名A”がライブラリ名の一覧に含まれていないと判断した場合(NO)、OS上で実行中のプログラム調査判断処理に進む(ステップS32へ)。
OS設定機能部42にてOS上で実行中のプログラムを調査し、所定プログラム一覧“所定プログラムD、EおよびF”に含まれるプログラムが実行中か否か判断する(ステップS32)。プログラムが実行中であると判断した場合(YES)、スクリーンセーバ制御をオフにする処理に進む(ステップS34へ)。また、プログラムが実行中にないと判断した場合(NO)、スクリーンセーバ制御をオンにする処理に進む(ステップS30へ)。
ScS制御機能部90では、プログラムの実行中に応じてオフに制御する(ステップS34)。したがって、スクリーンセーバは機能しない。また、プログラムが実行中にないとき、ScS制御機能部90では、プログラムの実行中に応じてオンに制御する(ステップS30)。この制御ではスクリーンセーバを機能させる。
ScS制御オン/オフ後、情報端末装置10は、呼出し監視を実行する所定の時間経過したか否かを判断する(ステップS36)。たとえば設定した10秒が未だに経過していない場合(NO)、動作を継続判断処理に戻る(ステップS24へ)。また、設定した10秒が経過した場合(YES)、コーデック調査に戻る(ステップS10へ)。
ただし、コーデック調査に戻った場合、呼出し監視機能部52および54の再インストールが実行されないことは言うまでもない。このような手順を経てScS制御を繰り返す。
このように本実施例は、先の実施例に、OS設定機能部42にて所定のプログラム実行判断処理(ステップS18およびS32)を含むことで自動にスクリーンセーバの起動を有効にオン/オフ制御することができる。すなわち、ソフトフォン起動後の通話時にスクリーンセーバ機能を動作させないで動作させることができる。
本実施例の動作手順は、第1のライブラリに対するScS制御について記述したが、第1のライブラリにおいても、一覧調査機能部48および50、呼出し監視機能部52および54、開放監視機能部56および58、フック機能部60、コール機能部62、ScS制御機能部92、APIコール機能部94、ならびにAPIコール/機能部96を適用して、図6の状態遷移を実行させると、第2のライブラリに対するScS制御も動作させないで動作させることができる。さらに、実行調査機能部116を上述した構成要素に追加して適用し、図8の手順を実行すると、ライブラリの実行に応じてScS制御も動作させないで動作させることができる。
第1および第2のライブラリの両方に対応させる場合、これらの処理手順を、たとえば所定の時間間隔で切り換えて動作させるとよい。
本実施の形態では、ライブラリとして電話の音声コーデックに着目したが、動画静止画像に係わるコーデックであってもよい。
また、本発明に係る情報処理装置を適用した情報端末装置10は、OS設定機能部42によりOSでのScS制御における条件を設定しているが、本発明はこれに限定されるものでなく、OS設定機能部42は、画像表示を切換表示させる機能や液晶表示装置のような表示装置におけるオン/オフの動作にも適用することができる。たとえば、このような表示系のオン/オフは、OSが保持しているレジストリ、初期設定ファイルおよびシステム設定ファイルといった管理情報に対する調査および監視を基に設定するとよい。
10 情報端末装置
12 CPU
14 メモリ
16 ストレージ
18 通信インタフェース部
20 入出力装置
34 ScS制御機能部
36 コーデック調査機能部
38 コーデック一覧保持機能部
40 コーデックローディング機能部
42 OS設定機能部

Claims (5)

  1. スクリーンセーバの動作を制御する機能を有するOS(Operation System)環境で実行するプログラムをメモリにライブラリとして呼び出して、実行処理し、呼び出したライブラリを開放して、所望の情報処理を実行する情報端末装置において、該装置は、
    前記OS上にスクリーンセーバの動作を制御する機能ブロックを備え、
    該スクリーンセーバの動作を制御する機能ブロックは、前記ライブラリについてライブラリ名、ライブラリファイル名およびコンポーネント識別子のいずれかを調査する調査機能ブロックと、
    該調査機能ブロックの調査結果をライブラリ一覧として保持する記憶機能ブロックと
    ログラムが呼び出すライブラリおよび前記プログラムが開放したライブラリを監視し、監視したライブラリが前記ライブラリ一覧に含まれるか否かを判断する監視機能ブロックと、
    該監視機能ブロックが前記ライブラリ一覧に、監視したライブラリを含むか否かの判断に応じて前記スクリーンセーバのオン/オフ動作を設定する設定機能ブロックとを含むことを特徴とする情報端末装置。
  2. 請求項1に記載の装置において、前記調査機能ブロックが前記調査を繰り返すことを特徴とする情報端末装置。
  3. 請求項2に記載の装置において、前記調査機能ブロックが所定間隔で周期的に前記調査を繰り返すことを特徴とする情報端末装置。
  4. 請求項3に記載の装置において、前記調査機能ブロックが所定間隔で周期的に所定回数の前記調査を繰り返すことを特徴とする情報端末装置
  5. 請求項1ないしのいずれか一項に記載の装置において、該装置は、さらに記憶ブロックを含み、
    該記憶ブロックは、音声コーデック処理ライブラリまたは動画静止画処理ライブラリである前記ライブラリを記憶し、
    前記プログラムは、通話機能プログラムであることを特徴とする情報端末装置。
JP2010078074A 2010-03-30 2010-03-30 情報処理装置およびそのスクリーンセーバ制御方法 Active JP5750831B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010078074A JP5750831B2 (ja) 2010-03-30 2010-03-30 情報処理装置およびそのスクリーンセーバ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010078074A JP5750831B2 (ja) 2010-03-30 2010-03-30 情報処理装置およびそのスクリーンセーバ制御方法

Publications (2)

Publication Number Publication Date
JP2011209569A JP2011209569A (ja) 2011-10-20
JP5750831B2 true JP5750831B2 (ja) 2015-07-22

Family

ID=44940689

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010078074A Active JP5750831B2 (ja) 2010-03-30 2010-03-30 情報処理装置およびそのスクリーンセーバ制御方法

Country Status (1)

Country Link
JP (1) JP5750831B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6849883B2 (ja) 2016-11-18 2021-03-31 キヤノン株式会社 画像形成装置及びその制御方法とプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4365897B2 (ja) * 1997-02-21 2009-11-18 キヤノン株式会社 Tv会議システムおよびtv会議システムのための方法
JP2000163034A (ja) * 1998-11-30 2000-06-16 Nec Corp スクリーンセーバーの制御方法およびそのプログラムを記録した記録媒体
JP2005020165A (ja) * 2003-06-24 2005-01-20 Nec Corp ユーザ辞書を用いたテロップ監視システム
JP2006031515A (ja) * 2004-07-20 2006-02-02 Vodafone Kk 移動体通信端末、アプリケーションプログラム、画像表示制御装置及び画像表示制御方法
JP4703214B2 (ja) * 2005-02-24 2011-06-15 株式会社東芝 医療装置
JP2007164372A (ja) * 2005-12-12 2007-06-28 Toshiba Corp 医用装置及びスクリーンロック制御プログラム
JP5196745B2 (ja) * 2006-07-25 2013-05-15 キヤノン株式会社 画像データ出力装置及びプログラム

Also Published As

Publication number Publication date
JP2011209569A (ja) 2011-10-20

Similar Documents

Publication Publication Date Title
KR101087865B1 (ko) 사용자 프로파일을 콜러 id와 연관시키는 방법 및 시스템
AU2010327451B2 (en) Mobile device and control method thereof
US7779363B2 (en) Enabling user control over selectable functions of a running existing application
US8910138B2 (en) Hot pluggable extensions for access management system
US20120173682A1 (en) Dynamic device configuration using predicates
EP1808004B1 (en) Providing a service framework at an endpoint
US9237214B2 (en) User interface
US20100227605A1 (en) Control Of A Remote Mobile Device
RU2008127911A (ru) Программируемый мультимедийный контроллер с программируемыми функциями
KR20070093133A (ko) 이동 장치에서 단축 키의 보유
US9553901B2 (en) VOIP service with streamlined call transfer options
US7984455B2 (en) Enhanced native contact book application
CN106027631B (zh) 一种数据传输方法及装置
AU2014290799A1 (en) System and method for providing additional functionality to existing software in an integrated manner
JP5750831B2 (ja) 情報処理装置およびそのスクリーンセーバ制御方法
CN106980481B (zh) 一种图像显示方法及设备
US8635276B2 (en) System and network terminal for IP communications
US10848908B2 (en) Proximity based communication information sharing
US20080263475A1 (en) Apparatus having voice packet network call function and control method thereof
US8667484B2 (en) Method and related management architecture for managing bundles in an open services gateway initiative service platform
CN111447692B (zh) 多系统终端的通话方法、装置、电子设备及存储介质
KR102109609B1 (ko) 인터넷 프로토콜 기반 통화 서비스를 위한 단말 장치 및 그의 착신 알람 제공 방법, 그리고 그의 인터넷 프로토콜 기반 통화 서비스 시스템
GB2465768A (en) Launching applications by executing two operations at the same time
JP2006245651A (ja) 音声通話装置、音声通話方法および音声通話プログラム
CN117785229A (zh) 一种基于ippbx实现tapi驱动程序管理的方法、设备及介质

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20120813

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140407

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141021

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141222

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150421

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150504

R150 Certificate of patent or registration of utility model

Ref document number: 5750831

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150