デバイスドライバー、デバイスマネージャー及びアプリケーションを含むシステムに対する例外処理テスト装置において、欠陥モデル及びデバイスマネージャーから獲得した情報に基づき変形されたデバイスドライバーを生成する生成モジュール、前記変形されたデバイスドライバーを利用して前記デバイスドライバーをフッキングするフッキングモジュール、前記アプリケーションが動作する間、フッキングされ前記変形されたデバイスドライバーから前記アプリケーションに返還されるテスト情報を収集するスキャニングモジュール、及び前記スキャニングモジュールにより収集されたテスト情報を分析する分析モジュールを含むことを特徴とする例外処理テスト装置。前記欠陥モデルは、アプリケーションとデバイスとの間の連結、デバイスオープン、連結解除、デバイス閉鎖、ヌルNULLデータ、データ誤謬、デバイス電源、及び処理遅延のうちの少なくとも一つであることを特徴とする請求項1に記載の例外処理テスト装置。前記テスト情報は、前記変形されたデバイスドライバーのオペレーション返還値、前記デバイスマネージャーで発生する例外コード値、前記アプリケーションの返還値、及びシステム異常コードのうちの少なくとも一つであることを特徴とする請求項1に記載の例外処理テスト装置。前記テスト情報が欠陥の発生を意味する場合、前記アプリケーションは前記発生した欠陥に従い例外処理を行うことを特徴とする請求項1に記載の例外処理テスト装置。前記例外処理が正常に行われない場合、前記分析モジュールは前記テスト情報を全体システムダウン、一部プロセスダウン、一部プロセスの非正常的な終了、一部プロセスの非正常的な動作、非正常リターンしてエラーコードなし、及び正常リターンして不正確なエラーコード返還のうちの少なくとも一つを分析することを特徴とする請求項4に記載の例外処理テスト装置。前記欠陥モデルは、テスト対象となるデバイス及びデバイスドライバーに従い変更されることを特徴とする請求項1に記載の例外処理テスト装置。デバイスドライバー、デバイスマネージャー及びアプリケーションを含むシステムに対する例外処理テスト方法において、欠陥モデル及び前記デバイスマネージャーから獲得した情報に基づき変形されたデバイスドライバーを生成する生成段階、前記変形されたデバイスドライバーを利用して前記デバイスドライバーをフッキングするフッキング段階、前記アプリケーションが動作する間、フッキングされ前記変形されたデバイスドライバーから前記アプリケーションに返還されるテスト情報を収集するスキャニング段階、及び収集されたテスト情報を分析する分析段階を含むことを特徴とする例外処理テスト方法。前記欠陥モデルは、アプリケーションとデバイスとの間の連結、デバイスオープン、連結解除、デバイス閉鎖、ヌルNULLデータ、データ誤謬、デバイス電源、及び処理遅延のうち少なくとも一つであることを特徴とする請求項7に記載の例外処理テスト方法。前記テスト情報は、前記変形されたデバイスドライバーのオペレーション返還値、前記デバイスマネージャーで発生する例外コード値、前記アプリケーションの返還値、及びシステム異常コードのうちの少なくとも一つであることを特徴とする請求項7に記載の例外処理テスト方法。前記テスト情報が欠陥の発生を意味する場合、前記アプリケーションは前記発生した欠陥に伴い例外処理を行うことを特徴とする請求項7に記載の例外処理テスト方法。前記例外処理が正常に行われない場合、前記分析段階は前記テスト情報を全体システムダウン、一部プロセスダウン、一部プロセスの非正常的な終了、一部プロセスの非正常的な動作、非正常リターンしてエラーコードなし、及び正常リターンして不正確なエラーコード返還のうちの少なくとも一つを分析することを特徴とする請求項10に記載の例外処理テスト方法。前記欠陥モデルは、テスト対象となるデバイス及びデバイスドライバーに従い変更されることを特徴とする請求項7に記載の例外処理テスト方法。本発明の目的は、フッキング技術を利用して変形されたデバイスドライバーをシステムに挿入し、前記変形されたデバイスドライバーにより発生する欠陥を確認し、確認された欠陥に伴う例外処理の良否を確認することにより、実運営されるシステムに対するテストが可能であり、テスト資源のオーバーヘッドを最小化することができる例外処理テスト装置及び方法を提供することにある。本発明は例外処理テスト装置に関し、欠陥モデル及びデバイスマネージャーから獲得した情報に基づき変形されたデバイスドライバーを生成する生成モジュール、前記変形されたデバイスドライバーを利用して前記デバイスドライバーをフッキングするフッキングモジュール、アプリケーションが動作する間、フッキングされた前記変形されたデバイスドライバーから前記アプリケーションに返還されるテスト情報を収集するスキャニングモジュール、及びスキャニングモジュールにより収集されたテスト情報を分析する分析モジュールを含む。本発明は例外処理テスト方法に関し、欠陥モデル及びデバイスマネージャーから獲得した情報に基づき変形されたデバイスドライバーを生成する生成段階、前記変形されたデバイスドライバーを利用して前記デバイスドライバーをフッキングするフッキング段階、前記アプリケーションが動作する間、フッキングされた前記変形されたデバイスドライバーから前記アプリケーションに返還されるテスト情報を収集するスキャニング段階、及び収集されたテスト情報を分析する分析段階を含む。本発明によれば、ソースコードでない実運営されるコードを対象にするので、システムが実際に運用される間にデバイスマネージャーを利用した例外処理テストを行うことができる。さらに、それぞれのプロセスに対する個別的なコード挿入ではない所定のメモリ空間のプロセスコンテクスト情報を活用したフッキング方法を利用するので、システムのオーバーヘッドを最小化することができる。さらに、プロセス間の共有資源が制限された場合にも、リアルタイムでテスト情報を収集してテスト結果を確認することができる。本発明は、システムが実運営される環境でのテストに係り、システムの始動から終了までの動的状況の中でシステムをテストすることができる装置及び方法に関する。本発明は、コード挿入技術の一種であるフッキングを利用し、システム内で動作する全てのプロセスに対するテストを行うことができる。より詳しくは、システム内で動作するデバイスから発生可能な欠陥類型及び前記欠陥に対する例外処理テストを行うことができる。図1は、本発明の一実施例に係わる例外処理テスト装置が利用される全体システムを示す図である。図1に示したように、全体システムは例外処理テスト装置100、システム200、入力装置300、格納装置400及び出力装置500を含む。例外処理テスト装置100は、システム200に含まれたアプリケーションとデバイスとの間の通信過程で発生する欠陥類型、及び前記欠陥に対する例外処理をテストするための装置である。例外処理テスト装置100は、システムに含まれたデバイスを管理するデバイスマネージャーを利用して変形されたデバイスドライバーを生成し、前記変形されたデバイスドライバーを利用して欠陥を生成することによりシステムをテストすることができる。前記例外処理テスト装置100は、図1で示したようにシステム200と独立に備えられてもよく、システム200の内部に含まれる形態で具現されてもよい。前記システム200は、マルチプロセスが通信する全てのエンベデッドシステム及びコンピュータシステムであって、例えば、インフォテインメントシステム、マルチメディアシステム、有無線ネットワークシステムなどである。例えば、システム200が車両インフォテインメントシステムの場合、システム200はAVNAudioVideoNavigation機能を中心にTDMBTerrestrialDigitalMultimediaBroadcasting、TPEGTransportProtocolExpertGroup、IPOD、USB、ブルートゥースBluetooth、VRVoiceRecognition、PGSParkingGuidanceSystem、RDSRadioDataSystem、VCDCVehicleCDC、DISDriverInformationSystem、RSERearSeatEntertainment、HEVHybridElectricVehicledisplay、AHUAirHandlingUnitdisplayなどを含む。さらに、前記システム200はデバイス、前記デバイスとアプリケーションとの間のデータ送受信のためのデバイスドライバー、前記デバイスを管理するためのデバイスマネージャー及び前記デバイスマネージャーと連結されデバイスを利用して所定のプログラムを実行するアプリケーションを含む。したがって、例外処理テスト装置100はデバイスマネージャーを利用して現在活性化されたデバイスドライバーを確認し、前記デバイスドライバーに対応する変形されたデバイスドライバーを生成し、前記変形されたデバイスドライバーを利用してデバイスドライバーをフッキングすることにより、例外処理テストを行う。ここで、デバイスはUSB、マルチメディアプレーヤーなどのハードウェアデバイスであって、アプリケーションが動作する装置と物理的に分離された装置であってもよい。本発明のシステム200は、物理的に分離されたデバイス及びアプリケーションが動作する装置を含む概念である。入力装置300は、例外処理テスト装置100及びシステム200を駆動させるための使用者入力装置である。入力装置300はキーボード又はタッチスクリーンに具現されてもよく、入力装置300を介して入力される信号に応じてシステム200に含まれるアプリケーションが実行され、例外処理テスト装置100により変形されたデバイスドライバーがフッキングされたシステム200が動作する。格納装置400は、例外処理テスト装置100により収集された情報を格納する。前記例外処理テスト装置100は格納装置400と一つの装置に具現され、テスト情報を収集及び分析するとともに収集されたテスト情報を格納する。出力装置500は、例外処理テスト装置100により収集されたテスト情報又は分析されたテスト結果を、イメージ又は音声で出力する装置である。図2は、本発明の一実施例に係わる例外処理テスト装置の構成を示す図である。図2に示したように、例外処理テスト装置100は生成モジュール101、フッキングモジュール103、スキャニングモジュール105及び分析モジュール107を含む。例外処理テスト装置100と連結されたシステム200はデバイス図示省略、前記デバイスとアプリケーションとの間のデータ送受信のためのデバイスドライバー図示省略、前記デバイスを管理するデバイスマネージャー201及び前記デバイスマネージャー201と連結され、前記デバイスを介して所定の機能を具現するためのアプリケーション202を含む。例外処理テスト装置100は二つ以上のデバイス図示省略、及びアプリケーション202に対する例外処理テストを行う。デバイスマネージャー201は、システム200に含まれた全てのデバイスドライバーに対するランタイム実行情報を有する。ここで、ランタイム実行情報とは、システム200が動作するあいだ全てのデバイスとプロセスとの間の実行情報を意味する。即ち、デバイスマネージャー201はシステム200内で活性化されたデバイス名及びデバイスドライバー、各デバイスドライバーで利用されるオペレーション及びそのオペレーションのスタートアドレス、デバイスドライバーがローディングされたメモリアドレス、メモリ空間などに対する情報を管理する。したがって、全てのシステム内で前記言及した情報を含むデータ構造又は装置は、本発明で意味するデバイスマネージャー201に該当する。生成モジュール101は、デバイスマネージャー201を利用してシステム200で現在動作しているデバイスドライバーに対する情報を収集し、欠陥モデル及び収集したデバイスドライバーに対する情報に従い変形されたデバイスドライバーを生成する。前記欠陥モデルは下記の図3に関連して詳しく説明する。前記変形されたデバイスドライバーは、デバイスと送受信するデータを変形させてシステム動作の欠陥を発生させる。即ち、変形されたデバイスドライバーは各オペレーションで利用されるプロトコルデータをデバイスに従い分析し、デバイスを通過するデータを変形規則に従い変形させることにより、変形したデータをアプリケーションとデバイスとの間の通信過程で利用し、システム動作の欠陥を発生させる。変形規則の一実施例として、デバイスと送受信するデータが損失されるようにする変形規則、デバイスと送受信するデータに有効範囲の境界に該当する値を追加するようにする変形規則、データ送信障害によりデータ値が入りまじるようにする変形規則などがある。入力装置300によりテスト対象が先ず選択された後、テスト対象となるデバイスドライバーに対する情報を収集してもよく、現在動作しているデバイスドライバーに対する情報を収集した後、テスト対象となるデバイスドライバーを選択してもよい。フッキングモジュール103は、原本デバイスドライバーを前記生成モジュール101により生成され変形されたデバイスドライバーでフッキングする。即ち、フッキングモジュール103は生成モジュール101により収集された情報を利用して原本デバイスドライバーをフッキングする。例えば、デバイスマネージャー201により管理される情報のうちテスト対象となるデバイスドライバーのオペレーションスタートアドレスを変形されたデバイスドライバーのオペレーションスタートアドレスに変更することにより、原本デバイスドライバーをフッキングする。したがって、システムが動作するあいだ原本デバイスドライバーが呼び出される代わりに、変形されたデバイスドライバーが呼び出される。スキャニングモジュール105は、デバイスとアプリケーションが動作する間、変形されたデバイスドライバーにより実行されアプリケーションに返還されるテスト情報を収集する。例えば、デバイスドライバーのオペレーション返還値、デバイスマネージャー201で発生する例外コード値、アプリケーションの返還値又はシステム異常コードなどを収集する。さらに、スキャニングモジュール105はアプリケーション202が動作する間、欠陥判定に必要なシステム動的状態情報、例えば、関数パラメーター及び返還値、性能測定値などを収集する。即ち、スキャニングモジュール105は変形されたデバイスドライバーにより変形されたデータを利用することにより発生するシステム動作の欠陥類型を収集し、前記欠陥に対するシステムの例外処理結果を確認する。分析モジュール107は、前記スキャニングモジュール105により収集された例外及び例外処理結果を分析する。即ち、収集された情報に基づきアプリケーションが例外処理を正常に動作したのかしないのかが判断される。例えば、例外処理結果がPASSの場合、システムが発生した例外に対し好適な例外コードを出力し、適切な処理を行ったと分析され、例外処理結果がFAILの場合、システムが発生した例外に対して適宜処理できなかったと分析される。前記例外処理結果がFAILの場合は、全体システムダウンCatastrophic、一部プロセスダウンRestart、一部プロセスの非正常的な終了Abort、一部プロセスの非正常的な動作Abnormal、非正常リターンしてエラーコードなしSilent、及び正常リターンして不正確なエラーコード返還Hinderingに分類される。図3は、本発明の一実施例に係わる例外処理テスト方法を示すフローチャートである。図3は、アプリケーションとデバイスとの間の通信過程で発生する欠陥、及び前記欠陥に対する例外処理テストを行うための例外処理テスト方法を示す。先ず、欠陥モデルが定義されるS110。ここで、欠陥モデルとは、欠陥類型に従いテストされなければならないデバイス及びデバイスドライバーの欠陥発見/復旧のための情報を意味する。欠陥モデルは、テスト対象となるデバイス及びデバイスドライバーに従い変更される。定義された欠陥モデルに従い、システム200が正常に動作する間にテスト情報を収集できる、変形されたデバイスドライバーが生成される。ここで、アプリケーションとデバイスとの間の通信過程で発生する欠陥類型は、アプリケーションとデバイスとの間の連結CONNECTION、デバイスオープンOPEN、連結解除DISCONNECTION、デバイス閉鎖CLOSE、データ入出力と関連してヌルデータNULLDATAとデータ誤謬ILLEGALDATAと処理遅延TIMING、又はデバイス電源POWERと関連した欠陥を発生させるコードである。前記欠陥類型は下記でより詳しく説明する。次に、S110段階で定義された欠陥モデル、及びシステム200で現在動作しているデバイスドライバーに対する情報に基づき、変形されたデバイスドライバーが生成されるS120。次に、原本デバイスドライバーが前記変形されたデバイスドライバーにフッキングされるS130。即ち、原本デバイスドライバーが呼び出される時点で、原本デバイスドライバーの代わりに変形されたデバイスドライバーが呼び出される。次に、前記デバイスマネージャー201と連結されたアプリケーション202が駆動され、前記アプリケーション202が動作するに伴い、デバイスマネージャー201及びデバイス図示省略が共に動作するS140。アプリケーション202が動作する間、変形されたデバイスドライバーにより実行された結果、即ち、システム動作で発生した欠陥及び前記欠陥に対するシステムの例外処理結果が収集されるS150。S150段階で収集されるテスト情報は現在コールスタック情報、デバイスドライバー情報及びプロセス情報を含む。コールスタック情報を利用し、処理フロー中に如何なる問題が発生したのかが確認される。デバイスドライバー情報はリターン値、誤謬IDなどを含み、プロセス情報はプロセスID及び名前を含む。次に、S150段階で収集されたテスト情報が分析されるS160。S160段階の分析結果に従い、アプリケーションが例外処理を正常に動作させたか否かを確認することができる。本発明に係わる欠陥モデルは、アプリケーションとデバイスとの間の連結、デバイスオープン、連結解除、デバイス閉鎖、データ入出力と関連してヌルデータNULLとデータ誤謬及び処理遅延、又はデバイス電源に係わる欠陥などを含む。連結に係わる欠陥は、デバイス連結初期化失敗、デバイスオープン失敗に分類される。連結解除に係わる欠陥は、デバイス終了化失敗、デバイス連結解除失敗に分類される。デバイス閉鎖に係わる欠陥は、デバイス閉鎖失敗に定義される。ヌルNULLデータに係わる欠陥は、デバイスからのデータ読み取り失敗、デバイスへのデータ書き込み失敗、デバイスへのデータ探索失敗、デバイスからのIOCTLデータ伝達失敗に分類される。データ誤謬に係わる欠陥は、デバイスからの誤ったデータ読み取り、デバイスへの誤ったデータ読み取り、デバイスへの誤ったデータ探索、デバイスへの誤った値のIOCTL送信、デバイスからの誤った値のIOCTL送信に分類され得る。デバイス電源に係わる欠陥は、デバイスパワーアップ失敗、デバイスパワーダウン失敗に分類される。本発明は、プロセッサが読み取り可能な記録媒体に、プロセッサが読み取り可能なコードとして具現できる。プロセッサが読み取り可能な記録媒体は、プロセッサが読み取り可能なデータが格納される全ての種類の記録装置を含む。プロセッサが読み取り可能な記録媒体の例にはROM、RAM、CD-ROM、磁気テープ、フロッピーディスク、光データ格納装置などがある。さらに、プロセッサが読み取り可能な記録媒体はネットワークで連結したコンピュータシステムに分散され、プロセッサが読み取り可能なコードが分散方式で格納され実行される。本発明は、前述した一実施例に限定されず、特許請求範囲で記載された本発明の要旨を外れることなく、当該発明の属する技術分野の当業者により多様な変形実施が可能であり、このような変形実施等は本発明の技術的思想や展望から個別に理解されてはならない。