オペレーティングシステムの制御の下にプログラムモジュールを実行する情報処理装置であって、操作に関する情報を収集するログモードに設定するログモード設定部と、前記オペレーティングシステムと、ハードウェア資源との間のアクセス要求に応じて、該アクセス要求に関する情報をログとして出力させるためのプログラムモジュールをロードするログモード制御部と、該ログモード制御部によりロードされたプログラムモジュールに従って、前記アクセス要求に関する情報をログとして収集するログ収集部とを有し、前記ログモード制御部は、前記オペレーティングシステムの起動の際に、前記ログモード設定部によりログモードに設定されている場合に、前記プログラムモジュールをロードする、情報処理装置。請求項1に記載の情報処理装置において、当該情報処理装置を休止状態に移行させる際に、当該情報処理装置が正常系の処理により休止状態に移行したことを表す動作履歴を保持する動作履歴保持部を有し、前記ログモード設定部は、前記動作保持部に動作履歴が保持されていない場合に、前記ログモードに設定する、情報処理装置。請求項2に記載の情報処理装置において、ユーザによる所定の操作に従って、前記動作履歴保持部に保持されるべき動作履歴を無効化する動作履歴初期化部を有し、前記ログモード設定部は、前記動作保持部に、前記動作履歴初期化部により無効化されるべき動作履歴が保持されている場合、前記ログモードに設定する、情報処理装置。請求項1又は2に記載の情報処理装置において、前記オペレーティングシステムと、前記ハードウェア資源との間の命令に応じて、該オペレーティングシステム又は該ハードウェア資源に該命令を実行させるための第1のプログラムモジュールと、前記第1のプログラムモジュールにより前記命令を実行させる際に、前記オペレーティングシステムと、前記ハードウェア資源との間のアクセス要求に関する操作情報をログとして出力させるための第2のプログラムモジュールとを格納する記憶部を有し、前記ログモード制御部は、前記オペレーティングシステムの起動の際にロードされるべき第1のプログラムモジュールを初期化する際に、前記ログモード設定部によりログモードに設定されている場合に、前記第2のプログラムモジュールをロードする、情報処理装置。請求項1又は2に記載の情報処理装置において、前記オペレーティングシステムと、前記ハードウェア資源との間の命令に応じて、該オペレーティングシステム又は該ハードウェア資源に該命令を実行させるための第1のプログラムモジュールと、前記第1のプログラムモジュールにより前記命令を実行させる際に、前記オペレーティングシステムと、前記ハードウェア資源との間へのアクセス要求に関する操作情報をログとして出力させるための第2のプログラムモジュールとを格納する記憶部を有し、前記ログモード制御部は、前記オペレーティングシステムの起動の際にロードされるべき第2のプログラムモジュールを初期化する際に、前記ログモード設定部によりログモードに設定されていない場合に、前記第2のプログラムモジュールをアンロードする、情報処理装置。オペレーティングシステムの制御の下にプログラムモジュールを実行する情報処理装置におけるログ出力の制御方法であって、操作に関する情報を収集するログモードに設定するログモード設定ステップと、前記オペレーティングシステムと、ハードウェア資源との間のアクセス要求に応じて、該アクセス要求に関する情報をログとして出力させるためのプログラムモジュールをロードするログモード制御ステップと、該ログモード制御ステップによりロードされたプログラムモジュールに従って、前記アクセス要求に関する情報をログとして出力するログ出力ステップとを有し、前記ログモード制御ステップは、前記オペレーティングシステムの起動の際に、前記ログモード設定ステップによりログモードに設定されている場合に、前記プログラムモジュールをロードする、ログ出力の制御方法。オペレーティングシステムの制御の下にプログラムモジュールを実行する携帯端末装置であって、当該装置への操作に関する情報を収集する動作状態であるログモードに移行すべき状態にあるか否かを判定する、状態判定部と、前記判定においてログモードとすべき状態にあることを判定した場合、前記オペレーティングシステムとハードウェア資源との間でのアクセス要求に応じて、当該アクセス要求に関する情報をログに出力する命令を有するプログラムモジュールを、前記オペレーティングシステムの起動処理においてロードさせる、ログモード制御部と、を備えることを特徴とする携帯端末装置。引用文献1では、ログ出力命令を受けた際に、取得されるべきログと、所定の基準レベルとを比較することにより、実際にログとして出力すべきかどうかが判断される。ログとして出力すべきかどうかが判断されることにより、出力されるログの情報量を調整することができる。しかし、ログ出力命令は、アプリケーションプログラムに含まれる。従って、ログ出力命令の数が多くなるに従って、アプリケーションプログラムの容量が増加する。アプリケーションプログラムの容量は、該アプリケーションプログラムを格納する補助記憶媒体の消費量や、該アプリケーションプログラムを実行する際に消費される主記憶媒体の容量に影響する。さらに、アプリケーションプログラムの容量は、補助記憶媒体から、主記憶媒体へのロード時間にも影響する。このため、補助記憶媒体や、主記憶媒体等のハードウェア資源を効率的に使用するという市場の要求を満たすため、ログ出力命令の数を少なくしたプログラムモジュールがインストールされた状態で、工場から出荷される製品が多い。従って、工場から出荷された製品に障害が発生した場合、アプリケーションプログラムに含まれるログ出力命令に従って出力されるログだけでは、該障害の発生原因を解析するのに十分な情報を得ることができない場合がある。十分な情報を得ることができないことにより、有効な解決策を検討することができないことがある。さらに、ログ出力命令に応じて取得されるべきログと、所定の基準レベルとが比較されるため、該比較のために、演算負荷が生じる。該演算負荷により、ハードウェア資源の効率的な使用という市場の要求を満たすことができず、製品としての魅力が損なわれることになる。引用文献2では、オペレーティングシステムからHDDへのアクセス要求に応じて、HDDドライバーからHDDに発行されるべきコマンドと、該コマンドに対するレスポンスとを監視する監視用のドライバーが設けられる場合がある。この場合、アプリケーションプログラムに含まれるべきログ出力命令により、ログ以外の情報を取得することが可能になる。しかし、HDDへのアクセス要求などは、頻繁に生じるコマンドであるため、運用段階にある製品において、HDDアクセス要求、及び該コマンドに対するレスポンスを常に監視することは、アクセス要求が生じる度に監視のために演算が実行されるため、装置に演算負荷がかかる。該演算負荷により、ハードウェア資源の効率的な使用という市場の要求を満たすことができず、製品としての魅力が損なわれることになる。開示の情報処理装置は、ハードウェア資源を効率的に使用しつつ、障害の解決に資するログを収集することを目的とする。開示の一実施例の情報処理装置は、オペレーティングシステムの制御の下にプログラムモジュールを実行する情報処理装置であって、操作に関する情報を収集するログモードに設定するログモード設定部と、前記オペレーティングシステムと、ハードウェア資源との間のアクセス要求に応じて、該アクセス要求に関する情報をログとして出力させるためのプログラムモジュールをロードするログモード制御部と、該ログモード制御部によりロードされたプログラムモジュールに従って、前記アクセス要求に関する情報をログとして収集するログ収集部とを有し、前記ログモード制御部は、前記オペレーティングシステムの起動の際に、前記ログモード設定部によりログモードに設定されている場合に、前記プログラムモジュールをロードする。開示の実施例によれば、ハードウェア資源を効率的に使用しつつ、障害の解決に資するログを収集することができる。以下、図面に基づいて、実施例を説明する。なお、実施例を説明するための全図において、同一機能を有するものは同一符号を用い、繰り返しの説明は省略する。<第1の実施例><携帯端末>図1は、携帯端末100の一実施例を示す。図1には、主にハードウェア構成が示される。本携帯端末100は、中央演算処理装置102と、記憶装置104と、入力装置106と、出力装置108とを有する。各装置は、バス150により接続される。本実施例では、一例として、携帯端末100について説明される。携帯端末に限らず、ログ出力機能を有する機器やシステムに適用できる。より一般的には、情報処理装置に適用できる。例えば、携帯情報端末等に適用できる。中央演算処理装置102は、記憶装置104、入力装置106、及び出力装置108の制御を行う。中央演算処置装置102は、記憶装置104に記憶されたプログラムに従って機能し、所定の処理を行う。記憶装置104は、各種アプリケーションと、各種サービスと、オペレーティングシステムと、各種ドライバーとを有する。例えば、記憶装置104は、コンピュータ内でデータやプログラムを記憶する外部記憶装置である。例えば、ハードディスクやフレキシブルディスク、MO、CDR、磁気テープなどが含まれる。アプリケーションは、ユーザが携帯端末100上で実行する作業を実施する機能を有するソフトウェアである。例えば、アプリケーションには、ワードプロセッサ、表計算ソフト、データベース管理システム、メディアプレーヤーなどが含まれてもよい。サービスは、オペレーティングシステムからの情報をサービスに変換して、アプリケーションに通知する。オペレーティングシステムは、本携帯端末100において、ハードウェアを抽象化したインターフェースをアプリケーションソフトウェアに提供するソフトウェアである。各種ドライバーは、オペレーティングシステム222として機能する中央演算処理装置102に対して、デバイス層との間のインターフェースを提供するためのソフトウェアである。入力装置106は、例えば、キーボードやタッチパネル等により構成され、当該携帯端末100への指示や、データの入力を行うための装置である。該指示は、オペレーティングシステムに対するものや、アプリケーションに対するものが含まれる。出力装置108は、例えば、ディスプレイにより構成され、当該携帯端末100による処理状態や処理結果を表示する。該処理状態や処理結果には、オペレーティングシステムやアプリケーションによるものが含まれる。ディスプレイには、液晶ディスプレイ、CRTディスプレイ、プラズマディスプレイ、有機ELディスプレイなどが含まれる。<携帯端末の機能>図2は、本携帯端末100の一実施例を示す。図2には、主にソフトウェア構成が示される。図2に示される携帯端末100は、デバイス層と、ドライバー層と、オペレーティングシステムと、サービス層/ミドル層と、アプリケーション層とにより表される。<デバイス層>デバイス層には、キー202が含まれる。該キー202は、入力装置108に含まれる。キー202は、キードライバー210に、ユーザにより押下げられたキーに対応する信号を入力する。該信号には、押下げられたキーを表す情報が含まれてもよい。デバイス層には、タッチパネル204が含まれる。該タッチパネル204は、入力装置108に含まれる。タッチパネル204は、ユーザがタッチパネル上の表示に接触した場合、タッチパネルドライバー214に、該表示に対応する信号を入力する。該信号には、タッチパネル上の指示位置を表す情報が含まれてもよい。デバイス層には、記憶デバイス206が含まれる。記憶デバイス206は、記憶装置104に含まれる。記憶デバイス206は、記憶装置104の所定の記憶領域により実現させてもよい。記憶デバイス206は、ファイルシステム領域であってもよい。該記憶デバイス206には、1又は複数のログファイルが含まれる。図2に示される例では、2のログファイル、つまりログファイルA2062、ログファイルB2064が示される。該記憶デバイス206は、OSのファイルシステムにより読み書き可能な領域である。該記憶デバイス206は、携帯端末100が工場出荷状態にされた場合には、初期化されることもある。デバイス層には、記憶デバイス208が含まれる。記憶デバイス208は、記憶装置104に含まれる。記憶デバイス208は、記憶装置104の所定の記憶領域により実現されてもよい。記憶デバイス208は、リザーブ領域であってもよい。該記憶デバイス208には、1又は複数のログファイルと、1又は複数のフラグとが含まれる。図2に示される例では、不具合情報を含むログが格納される、不具合情報ありログファイル2082と、前回の終了の際に正常に終了したかどうかを表す、前回正常終了フラグ2084と、ログを取得するログモードに設定されたかどうかを表す、トレースモードフラグ2086と、ログのバックアップをとるかどうかを表す、ログバックアップフラグ2088とが示される。リザーブ領域は、OSのファイルシステムからは読み出し、書き込みできない領域である。該記憶デバイス208は、携帯端末100が工場出荷状態にされた場合にも、初期化されない。すなわち、工場出荷時と同程度の初期状態を復元する処理において、記憶デバイス208に格納されている本実施例に係る各種情報は初期化対象とされない。ここで、ログモードとは、携帯端末100の動作に関する情報を、履歴として取得することを表す。動作に関する情報は、操作により携帯端末が操作されたことに起因した情報であってもよい。また、動作に関する情報は、他の装置からの要求に起因した情報であってもよい。他の装置からの要求には、当該携帯端末100への着信などが含まれてもよい。また、動作に関する情報は、当該携帯端末100により自動的に実行される動作に起因した情報であってもよい。当該携帯端末100により自動的に実行される動作には、当該携帯端末100に搭載されたソフトウェアのアップデート等が含まれてもよい。これらの動作が実行される際には、OSと、ハードウェア資源との間のアクセス要求が実行される。従って、動作に関する情報は、OSと、ハードウェア資源との間のアクセス要求に関する情報であってもよい。<ドライバー層>ドライバー層には、キードライバー210が含まれる。キードライバー210は、デバイス層からの割り込みを検知して、OS222に通知する。つまり、キードライバー210は、キー202が押下げられた際に、OS222に、押下げられたキーのコードを表す情報を通知する処理を中央演算処理装置102に実行させるためのプログラムモジュールであってもよい。ドライバー層には、トレースモード用キードライバー212が含まれる。トレースモード用キードライバー212は、デバイス層からの割り込みを検知して、OS222に通知する処理に加え、さらに、デバイス層からの割り込みをログに出力する。つまり、トレースモード用キードライバー212は、キードライバー210の機能を含み、さらに、デバイス層からの割り込みをログに出力する処理を中央演算処理装置102に実行させるためのプログラムモジュールであってもよい。具体的には、キー202が押下げられた際に、OS222に、押下げられたキーのコードを表す情報を通知する。さらに、トレースモード用キードライバー212は、押下げられたキーのコードを表す情報をフラッシュドライバー218に出力する。トレースモード用キードライバー212は、キーが押下げられたことを表す情報をフラッシュドライバー218に出力するようにしてもよい。この場合、トレースモード用キードライバー212は、キードライバー210に代ってロードされる。また、トレースモード用キードライバー212は、デバイス層からの割り込みをログに出力する機能を有するようにしてもよい。つまり、トレースモード用キードライバー212は、デバイス層からの割り込みをログに出力する処理を中央演算処理装置102に実行させるためのプログラムモジュールであってもよい。この場合、トレースモード用キードライバー212は、サブキードライバーと呼ばれることもある。トレースモード用キードライバー212は、キードライバー210とともに動作することにより、デバイス層からの割り込みをログに出力する。具体的には、キー202が押下げられた際に、キードライバー210は、OS222に、押下げられたキーのコードを表す情報を通知する。トレースモード用キードライバー212は、キードライバー210による押下げられたキーのコードを表す情報の通知に応じて、押下げられたキーのコードを表す情報をフラッシュドライバー218に出力する。トレースモード用キードライバー212は、キードライバー210による押下げられたキーのコードを表す情報の通知に応じて、キーが押下げられたことを表す情報をフラッシュドライバー218に出力するようにしてもよい。以下の説明では、一例として、主に、トレースモード用キードライバー212が、デバイス層からの割り込みをログに出力する機能を有する場合について説明する。<トレースモード用キードライバーの起動その1>トレースモード用キードライバー212は、デバイス層からの割り込みをログに出力する機能を有する。この場合、トレースモード用キードライバー212は、OS222の起動の際に、キードライバー210によりロードするかどうかが判定されるようにしてもよい。具体的には、ブートローダの起動の際に、記憶デバイス208に格納された前回正常終了フラグ2084がチェックされる。前回正常終了フラグ2084がオンでない場合、つまり、前回正常に終了しなかった場合には、トレースモードフラグ2086と、ログバックアップフラグ2088とがオンにされる。前回正常に終了しなかった場合に、トレースモードフラグ2086、及びログバックアップフラグ2088の少なくとも一方がオンにされるようにしてもよい。さらに、前回正常終了フラグ2084がオフにされる。OS222が起動される際に、各種デバイスドライバーの初期化が実行される。該初期化の際に、キードライバー210の初期化も行われる。該キードライバー210の初期化の際に、キードライバー210は、トレースモードフラグ2086がオンであるかどうかを判定し、トレースモードフラグ2086がオンであると判定された場合に、トレースモード用キードライバー212がロードされるようにしてもよい。<トレースモード用キードライバーの起動その2>トレースモード用キードライバー212は、デバイス層からの割り込みをログに出力する機能を有する。この場合、トレースモード用キードライバー212は、OS222の起動の際に、トレースモード用キードライバー212によりアンロードするかどうかが判定されるようにしてもよい。具体的には、ブートローダの起動の際に、記憶デバイス208に格納された前回正常終了フラグ2084がチェックされる。前回正常終了フラグ2084がオンでない場合、つまり、前回正常に終了しなかった場合には、トレースモードフラグ2086と、ログバックアップフラグ2088とがオンにされる。前回正常に終了しなかった場合に、トレースモードフラグ2086、及びログバックアップフラグ2088の少なくとも一方がオンにされるようにしてもよい。さらに、前回正常終了フラグ2084がオフにされる。OS222が起動される際に、各種デバイスドライバーの初期化が実行される。該初期化の際に、キードライバー210の初期化とともにトレースモード用キードライバー212の初期化も行われる。トレースモード用キードライバー212の初期化の際には、トレースモード用キードライバー212がロードされ、トレースモードフラグ2086がオフであるかどうかが判定される。トレースモードフラグ2086がオフでない、つまり、オンであると判定された場合には、トレースモード用キードライバー212はアンロードされない。つまり、トレースモード用キードライバー212の起動が成功する。トレースモードフラグ2086がオフであると判定される場合には、トレースモード用キードライバー212がアンロードされる。キードライバー210、又はトレースモード用キードライバー212によりトレースモード用キードライバー212を起動するかどうかが判定されることにより、OSの変更を行うことなく、トレースモード用キードライバー212を起動させることができる。ドライバー層には、タッチパネルドライバー214が含まれる。タッチパネルドライバー214は、デバイス層からの割り込みを検知して、OS222に通知する。つまり、タッチパネルドライバー214は、タッチパネル204に接触された際に、OS222に、接触された位置の座標を表す情報を通知する処理を中央演算処理装置102に実行させるためのプログラムモジュールであってもよい。ドライバー層には、トレースモード用タッチパネルドライバー216が含まれる。トレースモード用タッチパネルドライバー216は、デバイス層からの割り込みを検知して、OS222に通知する処理に加え、さらに、デバイス層からの割り込みをログに出力する。つまり、トレースモード用タッチパネルドライバー216は、タッチパネルドライバー214の機能を含み、さらに、デバイス層からの割り込みをログに出力する処理を中央演算処理装置102に実行させるためのプログラムモジュールであってもよい。具体的には、タッチパネル204に接触された際に、OS222に、該接触された位置の座標を表す情報を通知する。さらに、トレースモード用タッチパネルドライバー216は、接触された位置の座標を表す情報をフラッシュドライバー218に出力する。トレースモード用タッチパネルドライバー216は、タッチパネルに接触されたことを表す情報をフラッシュドライバー218に出力するようにしてもよい。この場合、トレースモード用タッチパネルドライバー216は、タッチパネルドライバー214に代ってロードされる。また、トレースモード用タッチパネルドライバー216は、デバイス層からの割り込みをログに出力する機能を有するようにしてもよい。つまり、トレースモード用タッチパネルドライバー216は、デバイス層からの割り込みをログに出力する処理を中央演算処理装置102に実行させるためのプログラムモジュールであってもよい。この場合、トレースモード用タッチパネルドライバー216は、サブタッチパネルドライバーと呼ばれることもある。トレースモード用タッチパネルドライバー216は、タッチパネルドライバー214とともに動作することにより、デバイス層からの割り込みをログに出力する。具体的には、タッチパネル204に接触された際に、タッチパネルドライバー214は、OS222に、該接触された位置の座標を表す情報を通知する。トレースモード用タッチパネルドライバー216は、タッチパネルドライバー214による接触された位置の座標を表す情報の通知に応じて、該接触された位置の座標を表す情報をフラッシュドライバー218に出力する。トレースモード用タッチパネルドライバー216は、タッチパネルドライバー214による接触された位置を表す情報の通知に応じて、タッチパネルが接触されたことを表す情報をフラッシュドライバー218に出力するようにしてもよい。以下の説明では、一例として、主に、トレースモード用タッチパネルドライバー216が、デバイス層からの割り込みをログに出力する機能を有する場合について説明する。<トレースモード用タッチパネルドライバーの起動その1>トレースモード用タッチパネルドライバー216は、デバイス層からの割り込みをログに出力する機能を有する。この場合、トレースモード用タッチパネルドライバー216は、OS222の起動の際に、タッチパネルドライバー214によりロードするかどうかが判定されるようにしてもよい。具体的には、ブートローダの起動の際に、記憶デバイス208に格納された前回正常終了フラグ2084がチェックされる。前回正常終了フラグ2084がオンでない場合、つまり、前回正常に終了しなかった場合には、トレースモードフラグ2086と、ログバックアップフラグ2088とがオンにされる。前回正常に終了しなかった場合に、トレースモードフラグ2086、及びログバックアップフラグ2088の少なくとも一方がオンにされるようにしてもよい。さらに、前回正常終了フラグ2084がオフにされる。OS222が起動される際に、各種デバイスドライバーの初期化が実行される。該初期化の際に、タッチパネルドライバー214の初期化も行われる。該タッチパネルドライバー214の初期化の際に、タッチパネルドライバー214は、トレースモードフラグ2086がオンであるかどうかを判定し、トレースモードフラグ2086がオンであると判定された場合に、トレースモード用タッチパネルドライバー216がロードされるようにしてもよい。<トレースモード用タッチパネルドライバーの起動その2>トレースモード用タッチパネルドライバー216は、デバイス層からの割り込みをログに出力する機能を有する。この場合、トレースモード用タッチパネルドライバー216は、OS222の起動の際に、トレースモード用タッチパネルドライバー216によりアンロードするかどうかが判定されるようにしてもよい。具体的には、ブートローダの起動の際に、記憶デバイス208に格納された前回正常終了フラグ2084がチェックされる。前回正常終了フラグがオンでない場合、つまり、前回正常に終了しなかった場合には、トレースモードフラグ2086と、ログバックアップフラグ2088がオンにされる。前回正常に終了しなかった場合に、トレースモードフラグ2086、及びログバックアップフラグ2088の少なくとも一方がオンにされるようにしてもよい。さらに、前回正常終了フラグ2084がオフにされる。OS222が起動される際に、各種デバイスドライバーの初期化が実行される。該初期化の際に、タッチパネルドライバー214の初期化とともにトレースモード用タッチパネルドライバー216の初期化も行われる。トレースモード用タッチパネルドライバー216の初期化の際には、トレースモード用タッチパネルドライバー216がロードされ、トレースモードフラグ2086がオフであるかどうかが判定される。トレースモードフラグ2086がオフでない、つまり、オンであると判定された場合には、トレースモード用タッチパネルドライバー216がアンロードされない。つまり、トレースモード用タッチパネルドライバー216の起動が成功する。トレースモードフラグ2086がオフであると判定される場合には、トレースモード用タッチパネルドライバー216がアンロードされる。タッチパネルドライバー214、又はトレースモード用タッチパネルドライバー216によりトレースモード用タッチパネルドライバー216を起動するかどうかが判定されるため、既存のOSの実装に変更を加えることなく、トレースモード用タッチパネルドライバー216を起動させることができる。ドライバー層には、フラッシュドライバー218が含まれる。該フラッシュドライバー218は、OS222からの書き込みの要求に応じて、記憶デバイス206に書き込む。つまり、フラッシュドライバー218は、記憶デバイス206に、OS222のファイル管理部2224により入力されるべきログを書き込む。さらに、該フラッシュドライバー218は、トレースモード用キードライバー212、及びトレースモード用タッチパネルドライバー216からの書き込みの要求に応じて、記憶デバイス206に書き込む。つまり、フラッシュドライバー218は、記憶デバイス206に、トレースモード用キードライバー212、及びトレースモード用タッチパネルドライバー216により入力されるべきログを書き込む。さらに、フラッシュドライバー218は、ファイル管理部2224からログファイルA2062又はログファイルB2064に格納される情報が容量を超えること、格納された情報に不具合のログが含まれることが通知された場合に、フラッシュドライバー220に、不具合のログを入力する。フラッシュドライバー220は、不具合情報ログファイル2082に、フラッシュドライバー218により入力された不具合のログを格納する。ドライバー層には、フラッシュドライバーリザーブ領域用220が含まれる。該フラッシュドライバー220は、OS222からの要求に応じてフラッシュドライバー218から入力されるべき、不具合情報を含むログを、記憶デバイス208の不具合情報ありログファイル2082に書き込む。つまり、フラッシュドライバー220は、記憶デバイス208に、不具合情報ありログファイル2082を書き込む。さらに、フラッシュドライバー220は、前回終了フラグ、トレースモードフラグ、ログバックアップフラグのオン、オフを設定する。<オペレーティングシステム>オペレーティングシステム222は、入力装置106により実行される入力機能、出力装置108により実行される出力機能、記憶装置104により実行されるファイルシステム管理機能など、アプリケーションから共通して利用される機能を実行することにより、携帯端末100全体を管理する。オペレーティングシステム222は、デバイス管理部2222を有する。デバイス管理部2222は、サービス/ミドル層に、キードライバー210からの押下げられたキーのコードを表す情報、タッチパネルドライバー214からの接触された位置の座標を表す情報を通知する。さらに、デバイス管理部2222は、アプリケーション層に、キードライバー210からの押下げられたキーのコードを表す情報、タッチパネルドライバー214からの接触された位置の座標を表す情報を通知する。また、トレースモード用キードライバー212がキードライバー210の機能を有し、トレースモード用タッチパネルドライバー216がタッチパネルドライバー214の機能を有する場合に、デバイス管理部2222は、サービス/ミドル層に、トレースモード用キードライバー212により入力されるべき押下げられたキーのコードを表す情報、トレースモード用タッチパネルドライバー216により入力されるべき接触された位置の座標を表す情報を通知する。さらに、デバイス管理部2222は、アプリケーション層に、トレースモード用キードライバー212により入力されるべき押下げられたキーのコードを表す情報、トレースモード用タッチパネルドライバー216により入力されるべき接触された位置の座標を表す情報を通知する。オペレーティングシステム222は、ファイル管理部2224を有する。ファイル管理部2224は、フラッシュドライバー218に、アプリケーション層、サービス/ミドル層から通知されるべきログを通知する。さらに、ファイル管理部2224は、記憶デバイス206、及び記憶デバイス208に格納されるべき情報を管理する。例えば、ログファイルA2062又はログファイルB2064に格納されるべき情報が、該ログファイルA2062又はログファイルB2064の容量を超えるかどうかを判定する。さらに、ファイル管理部2224は、容量を超えると判定した場合に、格納された情報に不具合のログが含まれるかどうかを判定する。さらに、ファイル管理部2224は、格納された情報に不具合のログが含まれると判定した場合、フラッシュドライバー218に、ログファイルA2062又はログファイルB2064の容量を超えること、不具合のログが含まれることを通知する。<サービス/ミドル層>サービス/ミドル層には、キーパットサービス224が含まれる。該キーパッドサービス224は、OS222から通知されるべき押下げられたキーのコードを表す情報を、サービスに変換する。キーパットサービス224は、アプリケーション層に、サービスに変換された押下げられたキーのコードを表す情報を通知する。サービス/ミドル層には、マウスパットサービス226が含まれる。該マウスパッドサービス226は、OS222から通知されるべき接触された位置の座標を表す情報を、サービスに変換する。マウスパットサービス226は、アプリケーション層に、サービスに変換された接触された位置の座標を表す情報を通知する。例えば、接触された位置の座標に基づいて、該位置がメールを起動することを表すアイコンに該当する場合、メーラに通知する。また、例えば、接触された位置の座標に基づいて、該位置がインターネットを起動することを表すアイコンに該当する場合、ブラウザに通知する。サービス/ミドル層には、ログサービス228が含まれる。該ログサービス228は、ユーザにより利用されたアプリケーションのログを収集する。該ログサービス228は、ユーザにより利用されたアプリケーションのログをファイルシステム管理部2224に通知する。<アプリケーション層>アプリケーション層には、1又は複数のアプリケーション230nnは、n>0の整数が含まれる。図2には、一例として、n=4の場合について示される。nは、1-3であってもよいし、4以上であってもよい。該アプリケーション230nは、サービス/ミドル層から、サービスを表す情報を取得する。該アプリケーション230nは、OS222から、押下げられたキーのコードを表す情報、接触された位置の座標を表す情報を取得する。該アプリケーション230nは、取得された情報に従って、所定の処理を実行する。<携帯端末の動作その1>図3は、本携帯端末100の処理の一実施例を示す。図3に示されるフローチャートでは、携帯端末100においてログを取得するログモードに設定すべきかどうかが判断される。例えば、携帯端末100の起動の際に、前回の終了の際に正常に終了したかどうかに応じて、ログモードに設定するかどうかが判定される。つまり、前回の終了の際に、正常に終了しなかった場合に、ログモードに設定すると判定される。正常に終了しなかった場合に、詳細なログ情報を取得する必要があるためである。携帯端末100が起動されるステップS302。つまり、ユーザにより所定の操作が実行されることにより、携帯端末100が起動する。携帯端末100は、前回の終了の際に正常に終了したかどうかを判定するステップS304。つまり、キードライバー210、及びトレースモード用キードライバー212の少なくとも一方は、記憶デバイス208に格納された前回正常フラグ2084を参照し、前回の終了の際に正常に終了したかどうかを判定する。前回の終了の際に正常に終了したと判定されない場合ステップS304:NO、携帯端末100は、ログモードに設定するステップS306。つまり、キードライバー210又はトレースモード用キードライバー212は、前回の終了の際に正常に終了したと判定されない場合、ログモードに設定すると判定する。具体的には、前回の終了の際に正常に終了したと判定されない場合、キードライバー210は、トレースモード用キードライバー212をロードすると判定する。デバイス管理部2222は、キードライバー210による判定に従って、トレースモード用キードライバー212をロードする。トレースモード用キードライバー212がロードされることによりログモードに設定される。また、前回の終了の際に正常に終了したと判定されない場合、トレースモード用キードライバー212は、当該トレースモード用キードライバー212をアンロードしないと判定する。デバイス管理部2222は、トレースモード用キードライバー212による判定に従って、トレースモード用キードライバー212をアンロードしない。トレースモード用キードライバー212がロードされたままであることによりログモードに設定される。ステップS304により前回の終了の際に正常に終了したと判定された場合ステップS304:YES、又はステップS306によりログモードに設定された場合、ユーザにより、携帯端末100が操作されるステップS308。ログモードに設定されている場合には、ログとして、ユーザの操作に応じて、オペレーティングシステムと、ハードウェア資源との間のアクセス要求に関する情報が収集される。ユーザにより携帯端末100を終了させる操作が行われるステップS310。ユーザが所定の操作を行うことにより、携帯端末100を終了させる。携帯端末100が正常に終了する場合、携帯端末100は、正常に終了したことを設定するステップS312。つまり、各種ドライバーのアンロードが行われる際に、フラッシュドライバー220は、記憶デバイス208に格納されるべき前回正常フラグ2084をオンに設定する。一方、携帯端末100が正常に終了しない場合、携帯端末100は、正常に終了しなかったことを設定する。つまり、各種ドライバーのアンロードが行われる際に、フラッシュドライバー220は、記憶デバイス208に格納されるべき前回正常フラグ2084をオフに設定する。例えば、携帯端末100に不具合が発生した場合、該不具合により操作不能となった場合、強制的に電源をオフにした場合、バッテリー着脱や自動リブートを行うことにより復旧させた場合等の場合には、前回正常フラグ2084をオフに設定する。携帯端末100の電源がオフにされるステップS314。<携帯端末の起動処理の詳細>図4、図5は、携帯端末100の起動処理の詳細を示すフローチャートである。<携帯端末の起動処理その1>図4は、キードライバー210により、トレースモード用キードライバー212がロードされるかどうかが判定され、さらにタッチパネルドライバー214により、トレースモード用タッチパネルドライバー216がロードされるかどうかが判定される例を示す。携帯端末100の電源キーが押下げられるステップS402。携帯端末100は、CPU102を初期化するステップS404。携帯端末100は、ブートローダを起動するステップS406。携帯端末100は、メモリを初期化するステップS408。つまり、ブートローダは、メモリを初期化する。携帯端末100は、フラッシュROMを初期化するステップS410。つまり、ブートローダは、フラッシュROMを初期化する。携帯端末100は、ディスプレイを初期化するステップS412。つまり、ブートローダは、ディスプレイを初期化する。携帯端末100は、低レベルキードライバーを初期化するステップS414。つまり、ブートローダは、低レベルキードライバーを初期化する。該低レベルキードライバーは、キードライバー210の一部であってもよい。携帯端末100は、特定のキーが押下げられたかどうかを判定するステップS416。つまり、低レベルキードライバーは、キー202の特定のキーが押下げられたかどうかを判定する。ブートローダによりキー202の特定のキーが押下げられたかどうかが判定されてもよい。ユーザは、ログモードに設定したい場合には、ブートローダの起動の際に、特定のキーを押下げることにより、ログモードに手動で設定できる。特定のキーが押下げられたと判定された場合ステップS416:YES、携帯端末100は、前回正常終了フラグ2084をオフにするステップS418。つまり、低レベルキードライバーは、キー202の特定のキーが押下げられたと判定した場合、フラッシュドライバー220に、記憶デバイス208の前回正常終了フラグ2084をオフにするように通知する。キー202の特定のキーが押下げられたと判定された場合、ブートローダから、フラッシュドライバー220に、記憶デバイス208の前回正常終了フラグ2084をオフにするように通知されてもよい。フラッシュドライバー220は、低レベルキードライバーからの通知に従って、記憶デバイス208の前回正常終了フラグ2084をオフにする。ステップS416により特定のキーが押下げられたと判定されない場合ステップS416:NO、又はステップS418により前回正常終了フラグ2084がオフにされた場合、携帯端末100は、前回正常フラグ2084がオンにされているかどうかを判定するステップS420。つまり、低レベルキードライバーは、前回正常終了フラグ2084がオンにされているかどうかを判定する。ブートローダにより前回正常終了フラグ2084がオンにされているかどうかが判定されてもよい。前回正常終了フラグがオンにされていると判定されない場合ステップS420:NO、携帯端末100は、トレースモードフラグをオンにするステップS422。つまり、低レベルキードライバーは、トレースモードフラグをオンにする。この場合、低レベルキードライバーは、フラッシュドライバー220に、トレースモードフラグをオンにするように通知する。ブートローダによりトレースモードフラグがオンされてもよい。この場合、ブートローダは、フラッシュドライバー220に、トレースモードフラグをオンにするように通知する。フラッシュドライバー220は、低レベルキードライバーからの通知に従って、トレースモードフラグをオンにする。さらに、携帯端末100は、ログバックアップフラグ2088をオンにするステップS424。つまり、低レベルキードライバーは、ログバックアップフラグ2088をオンにする。低レベルキードライバーは、フラッシュドライバー220に、ログバックアップフラグ2088をオンにするように通知する。ブートローダによりログバックアップフラグ2088がオンされてもよい。この場合、ブートローダは、フラッシュドライバー220に、ログバックアップフラグ2088をオンにするように通知する。フラッシュドライバー220は、低レベルキードライバーからの通知に従って、ログバックアップフラグ2088をオンにする。さらに、携帯端末100は、前回正常終了フラグ2084をオフにするステップS426。つまり、低レベルキードライバーは、前回正常終了フラグ2084をオフにする。低レベルキードライバーは、フラッシュドライバー220に、前回正常終了フラグ2084をオフにするように通知する。ブートローダにより前回正常終了フラグ2084がオフされてもよい。この場合、ブートローダは、フラッシュドライバー220に、前回正常終了フラグ2084をオフにするように通知する。フラッシュドライバー220は、低レベルキードライバーからの通知に従って、前回正常終了フラグ2084をオフにする。前回正常終了フラグ2084がオンにされていると判定された場合ステップS420:YES、又はステップS426により前回正常終了フラグがオフにされた場合、携帯端末100は、OSを起動するステップS428。カーネルが初期化されるステップS430。つまり、OS222のデバイス管理部2222は、カーネルを初期化する。ファイルシステムが初期化されるステップS432。つまり、OS222のデバイス管理部2222は、ファイルシステムを初期化する。デバイスドライバーが初期化されるステップS434。つまり、OS222のデバイス管理部2222は、デバイスドライバーを初期化する。通信ドライバーが初期化されるステップS436。つまり、OS222のデバイス管理部2222は、通信ドライバーを初期化する。キードライバー210が初期化されるステップS438。つまり、OS222のデバイス管理部2222は、キードライバー210を初期化する。携帯端末100は、トレースモードフラグがオンにされているかどうかを判定するステップS440。つまり、キードライバー210は、トレースモードフラグがオンにされているかどうかを判定する。トレースモードフラグがオンにされていると判定された場合ステップS440:YES、携帯端末100は、サブキードライバーをロードするステップS442。つまり、デバイス管理部2222は、トレースモード用キードライバー212をロードする。トレースモードフラグ2086がオンにされていないと判定された場合ステップS440:NO、又はステップS442によりサブキードライバーがロードされた場合、携帯端末100は、タッチパネルドライバー214を初期化するステップS444。つまり、デバイス管理部2222は、タッチパネルドライバー214を初期化する。携帯端末100は、トレースモードフラグ2086がオンにされているかどうかを判定するステップS446。つまり、タッチパネルドライバー210は、トレースモードフラグ2086がオンにされているかどうかを判定する。トレースモードフラグがオンにされていると判定された場合ステップS446:YES、携帯端末100は、サブタッチパネルドライバーをロードするステップS448。トレースモードフラグ2086が設定されていないと判定された場合ステップS446:NO、又はステップS448によりサブタッチパネルドライバーがロードされた場合、その他のデバイスが初期化されるステップS450。つまり、OS222のデバイス管理部2222は、その他のデバイスを初期化する。携帯端末100は、サービスを初期化するステップS452。キーパットが初期化されるステップS454。マウスパットが初期化されるステップS456。シェルが初期化されるステップS458。GUIが初期化されるステップS460。その他のサービスが初期化されるステップS462。起動処理が完了するステップS464。<携帯端末の起動処理その2>図5は、トレースモード用キードライバー210により、トレースモード用キードライバー212がアンロードされるどうかが判定され、さらにトレースモード用タッチパネルドライバー216により、トレースモード用タッチパネルドライバー216がアンロードされるかどうかが判定される例を示す。図5に示されるフローチャートのステップS502-S538の処理は、図4に示されるフローチャートのステップS402-S438の処理と同様であるので、その説明を省略する。携帯端末100は、サブキードライバーを初期化するステップS540。つまり、デバイス管理部2222は、サブキードライバーを初期化する。携帯端末100は、トレースモードフラグがオフにされているかどうかを判定するステップS542。つまり、トレースモード用キードライバー212は、トレースモードフラグがオフにされているかどうかを判定する。トレースモードフラグがオフにされていると判定された場合ステップS542:YES、携帯端末100は、サブキードライバーをアンロードするステップS544。つまり、デバイス管理部2222は、トレースモード用キードライバー212をアンロードする。ステップS542によりトレースモードフラグがオフにされていると判定されない場合ステップS542:NO、又はステップS544によりサブキードライバーのアンロードがされた場合、携帯端末100は、タッチパネルドライバー214を初期化するステップS546。つまり、デバイス管理部2222は、タッチパネルドライバー214を初期化する。携帯端末100は、サブタッチパネルドライバーを初期化するステップS548。つまり、デバイス管理部2222は、トレースモード用タッチパネルドライバー216を初期化する。携帯端末100は、トレースモードフラグがオフにされているかどうかを判定するステップS550。つまり、トレースモード用タッチパネルドライバー216は、トレースモードフラグがオフにされているかどうかを判定する。トレースモードフラグがオフにされていると判定された場合ステップS550:YES、携帯端末100は、サブタッチパネルドライバーをアンロードするステップS552。つまり、デバイス管理部2222は、トレースモード用タッチパネルドライバー216をアンロードする。ステップS550によりトレースモードフラグがオフにされていると判定されない場合ステップS550:NO、又はステップS552によりサブタッチパネルドライバーのアンロードがされた場合、携帯端末100は、その他のデバイスを初期化するステップS554。ステップS556-S568の処理は、図4のステップS452-S464と同様であるため、説明を省略する。<携帯端末の動作その2>図6は、本携帯端末100の処理の一実施例を示す。図6に示されるフローチャートでは、ログモードに設定された携帯端末100により不具合情報を含むログが取得された場合の処理について説明される。該不具合には、操作の順番により操作不能になることにより生じる不具合や、機能が同時に実行された場合に操作不能になることにより生じる不具合が含まれる。記憶デバイス206に含まれる複数のログファイルをローテーションさせて使用することにより、世代管理が行われる。各ログファイルのサイズには上限がある。書き込まれる情報量が上限を超える場合、一番古い世代のログファイルに格納された情報の削除又は廃棄が行われる。該削除又は廃棄が行われたログファイルに新たに、情報が書き込まれる。図6に示されるフローチャートでは、2個のログファイル、つまりログファイルA2062、ログファイルB2064により世代管理が行われる。本携帯端末100は、新たに、ログファイルに情報を書き込む際に、削除又は廃棄されるべきログファイルに不具合を含むログ情報が含まれるかどうかを判定する。削除又は廃棄されるべきログファイルに不具合を含むログ情報が含まれる場合、記憶デバイス208に、該不具合を含むログ情報を記憶デバイス208の不具合情報ありログファイル2082に格納する。ユーザにより携帯端末100の操作が行われるステップS602。ログ情報が出力されるステップS604。つまり、オペレーティングシステムとハードウェア資源との間のアクセス要求に応じて、ログとして、該アクセス要求に関する情報が出力される。例えば、キードライバー210からデバイス管理部2222へのアクセス要求に関する情報、タッチパネルドライバー214からデバイス管理部2222へのアクセス要求に関する情報、アプリケーション230nからファイルシステム管理部2224へのアクセス要求に関する情報、ログサービスからファイルシステム管理部2224へのアクセス要求に関する情報が出力される。該アクセス要求に関する情報は、フラッシュドライバー218により、記憶デバイス206のログファイルに書き込まれる。例えば、ログファイルA2062に書き込まれる。ログ情報には、日時、時刻、ドライバー名、メッセージ等の情報が含まれてもよい。具体的には、メッセージには、キーコードを表す情報、又は画面の座標を表す情報が含まれてもよい。例えば、キードライバー210から、フラッシュドライバー218に出力される情報として、1により表されるものが出力されてもよい。20100107125509KYDpressandholdkey0×1F11において、KYDはドライバー名を表し、pressandholdkey0×1Fはメッセージを表す。また、例えば、タッチパネルドライバー214から、フラッシュドライバー218に出力される情報として、2により表されるものが出力されてもよい。20100107125509TPDtappanelx120y15022において、TPDはドライバー名を表し、tappanelx120y150はメッセージを表す。携帯端末100は、ログファイルA2062のサイズは上限のサイズ以下であるかどうかを判定するステップS606。つまり、ファイルシステム管理部2224は、ログファイルA2062に格納されたログ情報の総容量がログファイルA2062の容量の上限以下であるかどうかを判定する。ログファイルA2062のサイズが上限サイズを超えると判定された場合ステップS606:NO、携帯端末100は、ログファイルA2062に格納されたログ情報に、不具合を含むログ情報が含まれているかどうかを判定するステップS608。つまり、ファイル管理部2224は、記憶デバイス206に格納されているログファイルA2062を参照し、不具合を含むログ情報が含まれているかどうかを判定する。ログファイルA2062に不具合を含むログ情報が含まれると判定された場合ステップS608:YES、携帯端末100は、該ログファイルA2062を不具合情報ありログファイル2082に格納するステップS610。つまり、ファイルシステム管理部2224は、ログファイルA2062に不具合を含むログ情報が含まれると判定した場合、フラッシュドライバー218に、ログファイルA2062のサイズが上限サイズを超えること、ログファイルA2062に不具合情報が含まれることを通知する。フラッシュドライバー218と、フラッシュドライバー220との間で、記憶デバイス208に格納されている不具合情報ありログファイル2082に、該ログファイルA2062を格納する処理が行われる。不具合情報ありログファイル2082には、不具合を含むログ情報を格納するようにしてもよいし、ログファイルA2062に格納された全情報を格納してもよい。ログファイルA2062に不具合を含むログ情報が含まれないと判定された場合ステップS608:NO、又はログファイルA2062に格納されたログ情報を不具合情報ありログファイル2082に格納した場合ステップS610、携帯端末100は、ログファイルB2064に格納されたログ情報を削除するステップS612。つまり、ファイルシステム管理部2224は、記憶デバイス206に格納されたログファイルB2064に格納されたログ情報を削除する。携帯端末100は、ログファイルB2064として、ログファイルA2062に含まれるログ情報を保存するステップS614。携帯端末100は、ログファイルA2062を新規に作成するステップS616。ステップS606によりログファイルA2062のサイズが上限のサイズ以下であると判定された場合ステップS606:YES、又はステップS616によりログファイルA2062を、ログ情報を格納するためのファイルとして設定した場合、携帯端末100は、ログファイルA2062にログ情報を書き込むステップS618。つまり、ファイルシステム管理部2224は、トレースモード用キードライバー212からの押下げられたキーのコードを表す情報、トレースモード用タッチパネルドライバー216からの接触された位置の座標を表す情報、ファイルシステム管理部2224からのアプリケーション層、サービス/ミドル層からの情報をログ情報として、ログファイルAに格納する。ステップS602に戻り、ユーザによる操作等に従って同様の処理が継続される。<携帯端末の動作その3>図7は、携帯端末100に対して、電源をオフにする操作がされた場合の処理が示される。携帯端末100に対して、電源をオフにする操作が行われるステップS702。携帯端末100は、各種サービスを終了するステップS704。携帯端末100は、各種ドライバーをアンロードするステップS706。携帯端末100は、正常に終了する場合、前回正常終了フラグをオンにするステップS708。つまり、各ドライバーは、正常に終了する場合には、記憶デバイス208に格納されるべき前回正常終了フラグをオンにするように、フラッシュドライバー220に命令する。携帯端末100の電源がオフにされるステップS710。本実施例によれば、前回の終了の際に正常に終了しなかった場合や、ユーザによる操作に従って、必要に応じてログ情報を蓄積できる。このため、記憶容量を増加させることなく、必要なログを収集できる。携帯端末100により収集されたログを利用することにより、不具合の解析や、原因の究明の効率を向上させることができる。<第2の実施例><携帯端末>本携帯端末100のハードウェア構成は、図1に示される携帯端末と略同一である。<携帯端末の機能>図8は、本携帯端末100の一実施例を示す。図8には、主にソフトウェア構成が示される。図8に示される携帯端末100は、デバイス層と、仮想化層と、ドライバー層と、オペレーティングシステムと、サービス層/ミドル層と、アプリケーション層とにより表される。オペレーティングシステム、サービス/ミドル層、アプリケーション層については、図2に示されるオペレーティングシステム、サービス/ミドル層、アプリケーション層と略同一である。本携帯端末100では、仮想環境が実現される。該仮想環境では、ローダの起動の際に、デバイスドライバー232が初期化され、ログモードに設定される場合には、トレースモード用仮想ドライバー238が起動される。該トレースモード用仮想ドライバー238は、押下げられたキーのコードを表す情報をフラッシュドライバー218に出力する。さらに、該トレースモード用仮想ドライバー238は、接触された位置の座標を表す情報をフラッシュドライバー218に出力する。さらに、本携帯端末100は、ハイパーバイザー234を起動する。ハイパーバイザー234は、ユーザにより操作されたデバイスに対応するドライバーを起動する。つまり、ハイパーバイザー234は、ユーザによりキー202の操作が行われた場合にはキードライバー210を起動する。また、ハイパーバイザー234は、ユーザによりタッチパネル204の操作が行われた場合にはタッチパネルドライバー214を起動する。<携帯端末の動作>本携帯端末100の動作については、図3、図6、及び図7と略同一である。<携帯端末の起動処理の詳細>図9は、携帯端末100の起動処理の詳細を示すフローチャートである。携帯端末100の電源キーが押下げられるステップS902。携帯端末100は、CPU102を初期化するステップS904。携帯端末100は、ローダを起動するステップS906。携帯端末100は、メモリを初期化するステップS908。つまり、ローダは、メモリを初期化する。携帯端末100は、フラッシュROMを初期化するステップS910。つまり、ローダは、フラッシュROMを初期化する。携帯端末100は、ディスプレイを初期化するステップS912。つまり、ローダは、ディスプレイを初期化する。携帯端末100は、デバイスドライバー232を初期化するステップS914。つまり、ローダは、デバイスドライバーを初期化する。携帯端末100は、特定のキーが押下げられたかどうかを判定するステップS916。つまり、デバイスドライバー232は、キー202の特定のキーが押下げられたかどうかを判定する。ローダにより、キー202の特定のキーが押下げられたかどうかが判定されてもよい。特定のキーが押下げられたと判定された場合ステップS916:YES、携帯端末100は、前回正常終了フラグ2084をオフにするステップS918。つまり、デバイスドライバー232は、キー202の特定のキーが押下げられたと判定した場合、記憶デバイス208の前回正常終了フラグ2084をオフにする。キー202の特定のキーが押下げられたと判定した場合、ローダにより、記憶デバイス208の前回正常終了フラグ2084がオフにされてもよい。ステップS916により特定のキーが押下げられたと判定されない場合ステップS916:NO、又はステップS918により前回正常終了フラグ2084がオフにされた場合、携帯端末100は、前回正常フラグ2084がオンにされているかどうかを判定するステップS920。つまり、デバイスドライバー232は、前回正常終了フラグ2084がオンにされているかどうかを判定する。ローダにより、前回正常終了フラグ2084がオンにされているかどうかが判定されてもよい。前回正常終了フラグがオンにされていないと判定された場合ステップS920:NO、携帯端末100は、トレースモードフラグ2086をオンにするステップS922。つまり、デバイスドライバー232は、トレースモードフラグ2086をオンにする。ローダにより、トレースモードフラグ2086がオンにされてもよい。さらに、携帯端末100は、ログバックアップフラグ2088をオンにするステップS924。つまり、デバイスドライバー232は、ログバックアップフラグ2088をオンにする。ローダにより、ログバックアップフラグ2088がオンにされてもよい。さらに、携帯端末100は、前回正常終了フラグ2084をオフにするステップS926。つまり、デバイスドライバー232は、前回正常終了フラグ2084をオフにする。ローダにより、前回正常終了フラグ2084がオフにされてもよい。前回正常終了フラグ2084がオンにされていると判定された場合ステップS920:YES、又はステップS926により前回正常終了フラグ2084がオフにされた場合、携帯端末100は、トレースモードフラグ2086がオンであるかどうかを判定するステップS928。つまり、デバイスドライバー232は、トレースモードフラグ2086がオンであるかどうかを判定する。ローダにより、トレースモードフラグ2086がオンであるかどうかが判定されてもよい。トレースモードフラグ2086がオンであると判定された場合ステップS928:YES、携帯端末100は、トレースモード用仮想ドライバー238をロードするステップS930。つまり、デバイスドライバー232は、トレースモードフラグ2086がオンであると判定した場合、トレースモード用仮想ドライバー238をロードする。ローダにより、トレースモードフラグ2086がオンであると判定された場合、トレースモード用仮想ドライバー238をロードするようにしてもよい。トレースモードフラグ2086がオフであると判定された場合ステップS928:NO、携帯端末100は、仮想ドライバー236をロードする。つまり、デバイスドライバー232は、トレースモードフラグ2086がオフであると判定した場合、仮想ドライバー236をロードする。ローダにより、トレースモードフラグ2086がオフであると判定された場合、仮想ドライバー236がロードされてもよい。ステップS930によりトレースモード用仮想ドライバー238がロードされた場合、又はステップS932により仮想ドライバー236がロードされた場合、携帯端末100は、ハイパーバイザーを起動するステップS934。つまり、デバイスドライバー232は、ハイパーバイザーを起動する。ローダにより、ハイパーバイザーが起動されてもよい。携帯端末100は、OSを起動するステップS936。カーネルが初期化されるステップS938。つまり、OS222のデバイス管理部2222は、カーネルを初期化する。ファイルシステムが初期化されるステップS940。つまり、OS222のデバイス管理部2222は、ファイルシステムを初期化する。デバイスドライバーが初期化されるステップS942。つまり、OS222のデバイス管理部2222は、デバイスドライバーを初期化する。通信ドライバーが初期化されるステップS944。つまり、OS222のデバイス管理部2222は、通信ドライバーを初期化する。キードライバー210が初期化されるステップS946。つまり、OS222のデバイス管理部2222は、キードライバー210を初期化する。タッチパネル204が初期化されるステップS948。つまり、OS222のデバイス管理部2222は、タッチパネル204を初期化する。その他のデバイスが初期化されるステップS950。つまり、OS222のデバイス管理部2222は、その他のデバイスを初期化する。携帯端末100は、サービスを初期化するステップS952。キーパットが初期化されるステップS954。マウスパットが初期化されるステップS956。シェルが初期化されるステップS958。GUIが初期化されるステップS960。その他のサービスが初期化されるステップS962。起動処理が完了するステップS964。本実施例によれば、仮想環境においても、前回の終了の際に正常に終了しなかった場合や、ユーザによる操作に従って、必要に応じてログ情報を蓄積できる。このため、記憶容量を増加させることなく、必要なログを収集できる。携帯端末100により収集されたログを利用することにより、不具合の解析や、原因の究明の効率を向上させることができる。以上の実施例を含む実施形態に関し、更に以下の付記を開示する。付記1オペレーティングシステムの制御の下にプログラムモジュールを実行する情報処理装置であって、操作に関する情報を収集するログモードに設定するログモード設定部と、前記オペレーティングシステムと、ハードウェア資源との間のアクセス要求に応じて、該アクセス要求に関する情報をログとして出力させるためのプログラムモジュールをロードするログモード制御部と、該ログモード制御部によりロードされたプログラムモジュールに従って、前記アクセス要求に関する情報をログとして収集するログ収集部とを有し、前記ログモード制御部は、前記オペレーティングシステムの起動の際に、前記ログモード設定部によりログモードに設定されている場合に、前記プログラムモジュールをロードする、情報処理装置。付記2付記1に記載の情報処理装置において、当該情報処理装置を休止状態に移行させる際に、当該情報処理装置が正常系の処理により休止状態に移行したことを表す動作履歴を保持する動作履歴保持部を有し、前記ログモード設定部は、前記動作保持部に動作履歴が保持されていない場合に、前記ログモードに設定する、情報処理装置。付記3付記2に記載の情報処理装置において、ユーザによる所定の操作に従って、前記動作履歴保持部に保持されるべき動作履歴を無効化する動作履歴初期化部を有し、前記ログモード設定部は、前記動作保持部に、前記動作履歴初期化部により無効化されるべき動作履歴が保持されている場合、前記ログモードに設定する、情報処理装置。付記4付記1又は2に記載の情報処理装置において、前記オペレーティングシステムと、前記ハードウェア資源との間の命令に応じて、該オペレーティングシステム又は該ハードウェア資源に該命令を実行させるための第1のプログラムモジュールと、前記第1のプログラムモジュールにより前記命令を実行させる際に、前記オペレーティングシステムと、前記ハードウェア資源との間のアクセス要求に関する操作情報をログとして出力させるための第2のプログラムモジュールとを格納する記憶部を有し、前記ログモード制御部は、前記オペレーティングシステムの起動の際にロードされるべき第1のプログラムモジュールを初期化する際に、前記ログモード設定部によりログモードに設定されている場合に、前記第2のプログラムモジュールをロードする、情報処理装置。付記5付記1又は2に記載の情報処理装置において、前記オペレーティングシステムと、前記ハードウェア資源との間の命令に応じて、該オペレーティングシステム又は該ハードウェア資源に該命令を実行させるための第1のプログラムモジュールと、前記第1のプログラムモジュールにより前記命令を実行させる際に、前記オペレーティングシステムと、前記ハードウェア資源との間のアクセス要求に関する操作情報をログとして出力させるための第2のプログラムモジュールとを格納する記憶部を有し、前記ログモード制御部は、前記オペレーティングシステムの起動の際にロードされるべき第2のプログラムモジュールを初期化する際に、前記ログモード設定部によりログモードに設定されていない場合に、前記第2のプログラムモジュールをアンロードする、情報処理装置。付記6オペレーティングシステムの制御の下にプログラムモジュールを実行する情報処理装置におけるログ出力の制御方法であって、操作に関する情報を収集するログモードに設定するログモード設定ステップと、前記オペレーティングシステムと、ハードウェア資源との間のアクセス要求に応じて、該アクセス要求に関する情報をログとして出力させるためのプログラムモジュールをロードするログモード制御ステップと、該ログモード制御ステップによりロードされたプログラムモジュールに従って、前記アクセス要求に関する情報をログとして出力するログ出力ステップとを有し、前記ログモード制御ステップは、前記オペレーティングシステムの起動の際に、前記ログモード設定ステップによりログモードに設定されている場合に、前記プログラムモジュールをロードする、ログ出力の制御方法。付記7付記1に記載の情報処理装置において、前記ログモード設定部は、直近の動作において異常が検出された場合に、前記ログモードに設定する、情報処理装置。付記8付記1に記載の情報処理装置において、前記ログモード設定部は、ユーザによる所定の操作に従って、前記ログモードに設定する、情報処理装置。付記9付記1に記載の情報処理装置において、前記プログラムモジュールには、デバイスドライバーが含まれる、情報処理装置。付記10付記1に記載の情報処理装置において、前記プログラムモジュールには、仮想ドライバーが含まれる、情報処理装置。付記11オペレーティングシステムの制御の下にプログラムモジュールを実行する携帯端末装置であって、当該装置への操作に関する情報を収集する動作状態であるログモードに移行すべき状態にあるか否かを判定する、状態判定部と、前記判定においてログモードとすべき状態にあることを判定した場合、前記オペレーティングシステムとハードウェア資源との間でのアクセス要求に応じて、当該アクセス要求に関する情報をログに出力する命令を有するプログラムモジュールを、前記オペレーティングシステムの起動処理においてロードさせる、ログモード制御部と、を備えることを特徴とする携帯端末装置。