(57)【要約】【課題】処理を妨げずコンピュータウイルスによる被害を出す前にウイルス検出の要否を判定することができるジョブ処理システムおよび画像処理装置を提供する。【解決手段】複合機は、ジョブを実行する前にウイルスチェックの要否判定を開始し（Ｓ１０１）、そのジョブのジョブデータに基づいて異常の有無を検知する（Ｓ１０５）。たとえば、生成されたジョブデータと、操作部でジョブの設定完了を受けたときの設定情報が一致しない場合や、ジョブデータに含まれているデータ値（印刷部数／送信宛先数）が所値以上の場合などは、コンピュータウイルスによってジョブデータが改竄されている可能性がある。このような場合は、異常を検知し（Ｓ１０６；Ｙｅｓ）、ウイルスチェックが必要であると判定して（Ｓ１０７）、ウイルスチェックを実行する（Ｓ１０８）。【選択図】図６
2011039599.tif 000002
【特許請求の範囲】
【請求項１】
ジョブの設定を受ける操作部と、
前記操作部で設定完了を受けたジョブの設定に係る設定情報に基づいてジョブデータを生成する生成部と、
生成されたジョブデータを記憶する第１の記憶部と、
ジョブデータに基づいてジョブを実行する実行部と、
当該ジョブ処理システム内のコンピュータウイルスを検出する検出部と、
ジョブに係るジョブデータに基づいて前記検出部による前記検出の要否を判定する制御部と、
を備えたジョブ処理システム。
【請求項２】
前記ジョブに係るジョブデータは、前記実行部による実行前のジョブに係るジョブデータである
ことを特徴とする請求項１に記載のジョブ処理システム。
【請求項３】
前記制御部は、前記ジョブデータに基づいて異常を検知した場合に、前記検出部による前記検出が必要であると判定し、
前記検出部は、前記異常が検知された場合に前記検出を実行する
ことを特徴とする請求項１または２に記載のジョブ処理システム。
【請求項４】
前記操作部で前記設定完了を受けたときの設定情報を記憶する第２の記憶部を備え、
前記制御部は、前記検出の要否判定を、前記第１の記憶部に記憶されているジョブデータと、前記第２の記憶部に記憶されている設定情報とを比較した結果に基づいて行い、前記比較した結果が一致しない場合に、前記異常を検知する
ことを特徴とする請求項３に記載のジョブ処理システム。
【請求項５】
前記ジョブの設定には、ジョブの種類を示す動作モードの設定が含まれ、
前記制御部は、前記比較を、前記ジョブデータにおける動作モードと、前記設定情報における動作モードとについて行う
ことを特徴とする請求項４に記載のジョブ処理システム。
【請求項６】
前記比較は、前記ジョブデータに含まれる所定数のデータと、前記設定情報に含まれる前記所定数のデータに対応する所定数の情報とを比較する第１の比較と、前記ジョブデータに含まれる前記所定数よりも多数のデータと、前記設定情報に含まれる前記多数のデータに対応する多数の情報とを比較する第２の比較とを含み、
前記制御部は、前記第１の比較と前記第２の比較のいずれを行うかを所定の条件に基づいて決定する
ことを特徴とする請求項４に記載のジョブ処理システム。
【請求項７】
前記所定の条件は、前記決定を行う時点での前記検出の要否を判定するために使用されるリソースの余裕度を含み、
前記制御部は、前記第１の比較と前記第２の比較のいずれを行うかを前記リソースの余裕度に基づいて決定する
ことを特徴とする請求項６に記載のジョブ処理システム。
【請求項８】
前記リソースの余裕度は、前記リソースの残使用量および前記リソースの残使用率のうちの少なくとも一方で構成される
ことを特徴とする請求項７に記載のジョブ処理システム。
【請求項９】
前記所定の条件は、前記設定完了を受けたときの設定情報を含み、
前記制御部は、前記第１の比較と前記第２の比較のいずれを行うかを前記設定完了を受けたときの設定情報に基づいて決定する
ことを特徴とする請求項６に記載のジョブ処理システム。
【請求項１０】
前記ジョブの設定には、ジョブの種類を示す動作モードの設定が含まれ、
前記第１の比較および前記第２の比較で比較する前記データと前記情報には、前記動作モードが含まれる
ことを特徴とする請求項６〜９のいずれか１項に記載のジョブ処理システム。
【請求項１１】
前記制御部が前記第１の比較を行う決定をした場合には、前記第２の記憶部には前記設定完了を受けたときの設定情報における前記動作モードを含む前記所定数の情報のみが記憶される
ことを特徴とする請求項１０に記載のジョブ処理システム。
【請求項１２】
前記制御部は、前記検出の要否判定を、前記ジョブデータが前記設定完了を受けて生成されたジョブデータであるか否かに基づいて行い、前記設定完了を受けて生成されたジョブデータでないと判断した場合に、前記異常を検知する
ことを特徴とする請求項３に記載のジョブ処理システム。
【請求項１３】
前記制御部は、前記設定完了を受けた時点からの経過時間を計測し、前記設定完了を受けた時点から所定時間以上経過して生成されたジョブデータを、前記設定完了を受けて生成されたジョブデータでないと判断する
ことを特徴とする請求項１２に記載のジョブ処理システム。
【請求項１４】
前記ジョブの設定には、ジョブの種類を示す動作モードの設定が含まれ、
前記制御部は、前記第２の記憶部に前記設定情報における動作モードが記憶されていない状態で生成されたジョブデータを、前記設定完了を受けて生成されたジョブデータでないと判断する
ことを特徴とする請求項１２に記載のジョブ処理システム。
【請求項１５】
前記動作モードは、前記ジョブの設定において前記操作部で選択操作を受けて選択設定され、
前記第２の記憶部には、前記選択設定された動作モードが前記設定情報における動作モードとして記憶される
ことを特徴とする請求項５、１０、１１および１４のいずれか１項に記載のジョブ処理システム。
【請求項１６】
前記ジョブの設定では、前記動作モード別に設けられた複数種類の設定モードが前記操作部で動作モードの選択操作を受けて切り換えられると共に、切り換えられた動作モードに対応する設定モードで前記設定を受け付け、
前記第２の記憶部には、前記ジョブデータが生成されるときの設定モードが前記設定情報における動作モードとして記憶される
ことを特徴とする請求項５、１０、１１および１４のいずれか１項に記載のジョブ処理システム。
【請求項１７】
前記制御部は、前記検出の要否判定を、前記ジョブデータに含まれているデータ値に基づいて行い、前記データ値が所定の閾値以上である場合に、前記異常を検知する
ことを特徴とする請求項３に記載のジョブ処理システム。
【請求項１８】
前記ジョブは、印刷ジョブを含み、
前記印刷ジョブに係るジョブデータには、前記データ値として印刷部数が含まれる
ことを特徴とする請求項１７に記載のジョブ処理システム。
【請求項１９】
前記ジョブは、送信ジョブを含み、
前記送信ジョブに係るジョブデータには、前記データ値として送信宛先数が含まれる
ことを特徴とする請求項１７に記載のジョブ処理システム。
【請求項２０】
前記制御部は、前記検出部による前記検出が必要であると判定した場合に、前記実行部による実行中のジョブがあるか否かを確認し、前記実行中のジョブがある場合は該ジョブの実行完了まで前記検出部に前記検出を実行させない
ことを特徴とする請求項１〜１９のいずれか１項に記載のジョブ処理システム。
【請求項２１】
前記制御部は、前記検出部による前記検出が必要であると判定した場合に、更に前記実行部による実行待ちのジョブがあるか否かも確認し、前記実行待ちのジョブもある場合は前記実行中のジョブの実行完了後に前記実行待ちのジョブの実行を保留して前記検出部に前記検出を実行させる
ことを特徴とする請求項２０に記載のジョブ処理システム。
【請求項２２】
前記ジョブの設定には、ジョブの実行開始のタイマーの設定が含まれ、
前記制御部は、前記タイマーが設定されたジョブデータに基づく前記検出の要否判定では、前記検出が不要であると判定する
ことを特徴とする請求項１〜２１のいずれか１項に記載のジョブ処理システム。
【請求項２３】
前記制御部は、前記操作部で設定を受け付け不可能な種類のジョブに係るジョブデータに基づく前記検出の要否判定では、前記検出が不要であると判定する
ことを特徴とする請求項１〜２１のいずれか１項に記載のジョブ処理システム。
【請求項２４】
請求項１〜２３のいずれか１項に記載のジョブ処理システムに含まれると共に、前記ジョブを画像データに対するジョブとして実行する画像処理装置であって、
前記操作部と、前記記憶部と、前記実行部と、前記制御部と、
を備え、
前記制御部は、前記検出部による前記検出が必要であると判定した場合に、当該画像処理装置内のコンピュータウイルスの検出を前記検出部に依頼する
ことを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブ処理を行う当該システム内のコンピュータウイルスを検出するジョブ処理システム、および、そのジョブ処理システムに含まれる画像処理装置に関する。
【背景技術】
【０００２】
近年の複合機は、汎用のオペレーティングシステムが搭載されたコンピュータ（パーソナルコンピュータ）を制御システムに用いるものが多くなっており、ネットワークにも対応している。このようなパソコン化によって、複合機はコンピュータウイルスに感染する危険性や他機器に感染を拡大させてしまう可能性が高まっており、ウイルス対策が施されている。
【０００３】
たとえば、コンピュータウイルスは外部の端末やサーバなどへ感染を拡大させる挙動を取ることが多いことから、複合機が外部への通信動作に基づいて、ウイルス感染の有無を検知するようにした技術がある。詳細には、複合機内の制御システムが外部装置への通信頻度を監視し、予め設定されている閾値と通信頻度を比較することで異常な通信動作を察知するようにし、通信頻度が閾値を超過した場合はコンピュータウイルスに感染していると判断して、その検出および駆除を行うようにしている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−３０２６５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記のように、実際の動作を監視してウイルス感染の有無を検知する方法では、複合機が既にウイルス感染している場合は感染状態で動作し、コンピュータウイルスによる被害をもたらすおそれがある。たとえば、通信頻度を閾値と比較する検知方法では、複合機が感染状態であっても通信頻度が閾値を越えるまでの間はウイルス感染を検知せずに通信を行うので、通信頻度が閾値を越えてウイルス感染を検知したときには、既に感染データを送信していて感染を拡大させてしまう可能性がある。そのため、この技術ではウイルス対策として十分でない。
【０００６】
また、ウイルス検出をプログラムによって行う場合は、ウイルスコード内の特徴的な部分をパターンとして取り出してデータベース化しておき、記憶領域に格納されたデータ（ウイルス検出対象のデータ）に対して、データベースと照合してコンピュータウイルスを見つけ出すパターンマッチングなどの手法が一般的である。
【０００７】
しかし、上述した複合機などの組み込み機器は、汎用のパーソナルコンピュータとは異なり、コストを低減するためにＣＰＵ（Central Processing Unit）やメモリなどのリソースが潤沢でない。ジョブの処理中やユーザの操作中などに、ウイルスチェックプログラムによる処理負荷の高いウイルススキャンを実行すると、処理速度が著しく低下してしまうことになる。そのため、ジョブやユーザ操作などによる処理にかかわらず、ウイルスチェックを定期的かつ頻繁に行うことが困難であり、コンピュータウイルスに感染してしまった場合は、その検出が遅れる可能性がある。
【０００８】
したがって、組み込み機器においては、ウイルス感染の有無にかかわらずにウイルスチェックを定期的かつ頻繁に実行するというのではなく、処理を妨げず、かつ、コンピュータウイルスによる被害を出す前にウイルス感染の可能性があることを検知し、適切なタイミングでウイルスチェックを実行する、というように効率よくウイルスチェックを実行できる技術が望まれる。
【０００９】
また組み込み機器に限らず、リソースの比較的豊富なジョブ処理装置などにおいても、ウイルスチェックプログラムを実行すると処理（パフォーマンス）の低下を招きやすくなることから、同様に効率よくウイルスチェックを実行できることが望ましい。
【００１０】
本発明は、上記の問題を解決しようとするものであり、処理を妨げずコンピュータウイルスによる被害を出す前にウイルス検出の要否を判定することができるジョブ処理システムおよび画像処理装置を提供することを目的としている。
【課題を解決するための手段】
【００１１】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
【００１２】
［１］ジョブの設定を受ける操作部と、
前記操作部で設定完了を受けたジョブの設定に係る設定情報に基づいてジョブデータを生成する生成部と、
生成されたジョブデータを記憶する第１の記憶部と、
ジョブデータに基づいてジョブを実行する実行部と、
当該ジョブ処理システム内のコンピュータウイルスを検出する検出部と、
ジョブに係るジョブデータに基づいて前記検出部による前記検出の要否を判定する制御部と、
を備えたジョブ処理システム。
【００１３】
上記発明では、ユーザからジョブの設定および完了の操作を受けると、その設定に係る設定情報に基づいてジョブデータが生成される。設定情報は、ユーザ操作による設定内容（操作内容）に応じたジョブの処理条件を規定する情報である。ジョブデータは、設定情報に基づき、設定内容に応じたジョブの処理条件を含む制御データとして生成される。生成されたジョブデータは、第１の記憶部に記憶される。実行部は、このユーザ操作により生成されたジョブデータや外部装置から入力されたジョブに係るジョブデータなどに対し、ジョブデータに基づいてジョブを実行する。
【００１４】
ジョブ処理システム内にコンピュータウイルスが存在する場合は、コンピュータウイルスによって非正規のジョブ（ジョブデータ）が生成されたり、正規のジョブに係るジョブデータが改竄されたりする可能性がある。また、不正に生成されたり改竄されたりしたジョブデータも、コンピュータウイルスに感染している可能性がある。
【００１５】
このジョブ処理システムでウイルス検出を実行する必要があるか否かの判定は、ジョブデータに基づいて行う。実存するジョブデータに基づく判定であれば、ジョブを実行して動作を監視するなどしなくてもウイルス検出の要否（ウイルス感染の可能性の有無）を判定することができ、動作状況に左右されることなく、ジョブの実行前であろうと実行中であろうと、即時判定が可能である。仮に、コンピュータウイルスが関与したジョブの実行開始後に判定を行ったとしても、直後や短時間のうちなどであれば、その判定時点で直ぐに判定結果を得られるので、コンピュータウイルスによる被害を抑えることができる。これにより、ジョブ処理システムが既にコンピュータウイルスに感染していたり、コンピュータウイルスがジョブに関与していたりする場合でも、ジョブデータに基づく即時判定によって、コンピュータウイルスによる被害を出す前にウイルス検出の要否を判定することができる。
【００１６】
そして、要否判定の結果、必要と判定した場合はウイルス検出を実行し、コンピュータウイルスを検出した場合は駆除する、といった対応（処置）をコンピュータウイルスによる被害を出す前に行うことができる。ウイルス検出の対象となるのは、たとえば、ジョブデータや各種の保存データなどである。
【００１７】
また、ジョブデータに基づく判定であれば、判定処理自体は簡素で処理負荷を抑えられる。たとえば、先行ジョブの実行中やユーザの操作中などに判定処理を行ったとしても、現行処理に与える負荷は小さくて済む。これにより、現行処理を妨げずにウイルス検出の要否を判定することができる。
【００１８】
［２］前記ジョブに係るジョブデータは、前記実行部による実行前のジョブに係るジョブデータである
ことを特徴とする［１］に記載のジョブ処理システム。
【００１９】
上記発明では、ジョブを実行する前にウイルス検出の要否を判定するので迅速な対応が可能となり、特にコンピュータウイルスが関与したジョブに対しては実行前に処置することができて好適である。
【００２０】
［３］前記制御部は、前記ジョブデータに基づいて異常を検知した場合に、前記検出部による前記検出が必要であると判定し、
前記検出部は、前記異常が検知された場合に前記検出を実行する
ことを特徴とする［１］または［２］に記載のジョブ処理システム。
【００２１】
上記発明では、ジョブデータに基づいて異常が検知された場合は、ウイルス検出が実行される。
【００２２】
［４］前記操作部で前記設定完了を受けたときの設定情報を記憶する第２の記憶部を備え、
前記制御部は、前記検出の要否判定を、前記第１の記憶部に記憶されているジョブデータと、前記第２の記憶部に記憶されている設定情報とを比較した結果に基づいて行い、前記比較した結果が一致しない場合に、前記異常を検知する
ことを特徴とする［３］に記載のジョブ処理システム。
【００２３】
上記発明では、ユーザからジョブの設定および完了の操作を受けると、その設定完了時の設定内容を示す設定情報が第２の記憶部に記憶される。第２の記憶部は、生成されたジョブデータを記憶する第１の記憶部と異なる記憶部でもよく、同じ記憶部でもよい。
【００２４】
たとえば、ユーザによるジョブの設定過程で設定情報（設定項目毎の個々の情報）が随時保持され、設定完了を受けて設定情報が確定されるような構成であれば、設定完了時（確定時）に保持されている設定情報が第２の記憶部に記憶された設定情報であるとしてもよい。また、設定完了時に保持されている設定情報を別の記憶部に記憶・保存する構成であれば、この記憶部に記憶された設定情報が第２の記憶部に記憶された設定情報であるとしてもよい。後者の記憶・保存された設定情報は、設定完了時に保持されている設定情報から複製されたものとなる。
【００２５】
ジョブデータは、コンピュータウイルスによる異常な動作などを除いた正常な動作においては、すなわち、ユーザからジョブの設定および完了の操作を受けた通常動作においては、ジョブの設定完了時の設定内容を示す設定情報に基づいて生成される。ジョブデータの生成に用いる設定情報は、上記の前者の構成では設定完了時に保持されている設定情報となり、後者の構成では設定完了時に保持されている設定情報でもよく、これとは別に記憶（複製・保存）された設定情報でもよい。
【００２６】
なお、通常動作ではユーザによるジョブの設定完了時の設定情報に基づいてジョブデータが生成され第１の記憶部に記憶されるように構成されていても、コンピュータウイルスによる異常な動作などで非正規のジョブが不正に生成される場合には、上記の正しい設定情報によらずにジョブデータ（非正規のジョブデータ）が生成・記憶される可能性もある。たとえば、ユーザからジョブの設定を受けることなく、あるいは、ユーザからジョブの設定を受けている途中などに、コンピュータウイルスによって非正規のジョブデータが生成・記憶されるような可能性もある。
【００２７】
ここでは、生成されて第１の記憶部に記憶されているジョブデータと、ジョブの設定完了を受けたときの設定内容を示す、第２の記憶部に記憶されている設定情報とを比較することで、異常を検知する。なお、設定完了時に保持されている設定情報を別の記憶部（第２の記憶部）に記憶する構成においては、ジョブデータをこの別に記憶された設定情報と比較する他に、保持されている元の設定情報とも比較するようにしてもよい。
【００２８】
たとえば、ジョブデータが生成時や第１の記憶部への記憶後などにコンピュータウイルスによって改竄された場合は、第２の記憶部に記憶されている、ジョブの設定完了を受けたときの設定内容を示す設定情報と一致しなくなり、このようなデータ改竄による異常を検知することができる。
【００２９】
また、ジョブの設定完了後に設定情報（設定完了時の設定内容）自体がコンピュータウイルスによって改竄される危険性もある。これに対しては、上述したように、ジョブの設定完了時に保持している設定情報を別の記憶部（第２の記憶部）に記憶・保存する構成であれば、そのような改竄を受ける危険性を低下させることができて好適である。
【００３０】
［５］前記ジョブの設定には、ジョブの種類を示す動作モードの設定が含まれ、
前記制御部は、前記比較を、前記ジョブデータにおける動作モードと、前記設定情報における動作モードとについて行う
ことを特徴とする［４］に記載のジョブ処理システム。
【００３１】
上記発明では、生成されて第１の記憶部に記憶されているジョブデータにおける動作モードと、ジョブの設定完了を受けたときの設定内容を示す、第２の記憶部に記憶されている設定情報における動作モードを比較することで、異常を検知する。ジョブの種類を示す動作モードがコンピュータウイルスによって改竄された場合、種類（ジョブ種）によっては大きな被害をもたらすおそれがある。たとえば、非送信に分類される動作モードから送信に分類される動作モードへ改竄された場合は、送信先の外部装置への感染拡大や情報漏洩といった大きな被害をもたらすおそれがあるが、そのような悪質な改竄を検知して被害を未然に防止することができる。
【００３２】
また、動作モードのみの比較であれば、たとえば、ジョブデータ内の多数または全てのデータ値と、そのデータ値に対応する設定情報（設定情報に含まれる個々の情報）とを比較するような場合に比べて、比較処理自体を簡素化できて処理負荷を低減できる。
【００３３】
［６］前記比較は、前記ジョブデータに含まれる所定数のデータと、前記設定情報に含まれる前記所定数のデータに対応する所定数の情報とを比較する第１の比較と、前記ジョブデータに含まれる前記所定数よりも多数のデータと、前記設定情報に含まれる前記多数のデータに対応する多数の情報とを比較する第２の比較とを含み、
前記制御部は、前記第１の比較と前記第２の比較のいずれを行うかを所定の条件に基づいて決定する
ことを特徴とする［４］に記載のジョブ処理システム。
【００３４】
上記発明では、ジョブデータと設定情報を比較した結果に基づいて異常を検知する（ウイルス検出の要否を判定する）際に、比較するデータと情報の数を少なくして簡素に比較する第１の比較と、比較するデータと情報の数を多くして詳細に比較する第２の比較のいずれを行うかを所定の条件に基づいて決定する。第１の比較では、比較に係る処理負荷を低減することができ、第２の比較では、異常の発生をより正確に検知することができる。
【００３５】
［７］前記所定の条件は、前記決定を行う時点での前記検出の要否を判定するために使用されるリソースの余裕度を含み、
前記制御部は、前記第１の比較と前記第２の比較のいずれを行うかを前記リソースの余裕度に基づいて決定する
ことを特徴とする［６］に記載のジョブ処理システム。
【００３６】
上記発明では、第１の比較と第２の比較のいずれを行うかは、その決定を行う時点での、ウイルス検出の要否を判定するために使用されるリソース（資源）の余裕度に基づいて決定する。余裕度とは、対象となる処理（この場合はウイルス検出の要否判定に係る処理）に使用されるリソースの余裕の大きさを指す。この余裕度には、リソース自体が上記の決定を行う時点で有している絶対的な余裕度が含まれる。また、対象となる処理の処理量（処理プログラムの大きさや処理で扱うデータのサイズなど）が変動する場合には、その変動する処理量に応じて変化する相対的な余裕度を含むようにしてもよい。
【００３７】
たとえば、ウイルス検出の要否を判定するために使用されるリソースの余裕度が小さい場合（たとえば、所定値未満の場合）には、このリソースを使用して現在実行されている他の処理（現行処理）に対して遅延、停滞、中断などの悪影響を与えないようにするために、ジョブデータと設定情報を簡素に比較する第１の比較を行い、リソースの余裕度が大きい場合（たとえば、所定値以上の場合）には、現行処理に悪影響を与える可能性が低いので、ジョブデータと設定情報を詳細に比較する第２の比較を行うなどしてもよい。この場合は、リソースの余裕度に応じた（現行処理に配慮した）第１または第２の適宜な比較を行うことができる。
【００３８】
［８］前記リソースの余裕度は、前記リソースの残使用量および前記リソースの残使用率のうちの少なくとも一方で構成される
ことを特徴とする［７］に記載のジョブ処理システム。
【００３９】
上記発明では、リソース自体が現時点（第１の比較と第２の比較のいずれを行うか決定する時点）で有している絶対的な余裕度には、現行処理に使用されていないリソースの残りの大きさを示す残使用量および残使用率が含まれ、これらのいずれか一方または両方に基づいて、第１の比較と第２の比較のいずれを行うかが決定される。
【００４０】
［９］前記所定の条件は、前記設定完了を受けたときの設定情報を含み、
前記制御部は、前記第１の比較と前記第２の比較のいずれを行うかを前記設定完了を受けたときの設定情報に基づいて決定する
ことを特徴とする［６］に記載のジョブ処理システム。
【００４１】
上記発明では、第１の比較と第２の比較のいずれを行うかは、ジョブの設定完了を受けたときの設定情報に基づいて決定する。ジョブの設定情報には、ジョブの動作モードを含む各種の処理条件が含まれており、たとえば、この動作モードや各種の処理の内容などに基づいて決定する。
【００４２】
動作モードの場合は、たとえば、動作モードによって示される外部への送信と非送信の区別などで決定するようにしてもよい。外部送信の場合は詳細な第２の比較を行い、外部非送信の場合は簡素な第１の比較を行うなどの決定をするようにしてもよい。処理の内容の場合は、たとえば、処理量や送信宛先の種類などで決定するようにしてもよい。処理量であれば、たとえば、印刷枚数や送信宛先数が多い場合（たとえば、所定値以上の場合）は詳細な第２の比較を行い、印刷枚数や送信宛先数が少ない場合（たとえば、所定値未満の場合）は簡素な第１の比較を行うなどの決定をするようにしてもよい。送信宛先の種類であれば、送信宛先に特定の宛先（重要度の高い宛先など）が含まれている場合は詳細な第２の比較を行い、送信宛先に特定の宛先が含まれていない場合は簡素な第１の比較を行うなどの決定をするようにしてもよい。
【００４３】
［１０］前記ジョブの設定には、ジョブの種類を示す動作モードの設定が含まれ、
前記第１の比較および前記第２の比較で比較する前記データと前記情報には、前記動作モードが含まれる
ことを特徴とする［６］〜［９］のいずれか１項に記載のジョブ処理システム。
【００４４】
上記発明では、ジョブデータと設定情報に対する第１の比較および第２の比較では、動作モードは少なくとも比較する。ジョブの種類を示す動作モードがコンピュータウイルスによって改竄された場合は被害が大きくなるおそれがあるが、簡素な第１の比較においても動作モードは最低限比較することで、動作モードの改竄による被害を未然に防止することができる。詳細な第２の比較においても動作モードは比較対象にすることで、同様に動作モードの改竄による被害を未然に防止することができる。
【００４５】
［１１］前記制御部が前記第１の比較を行う決定をした場合には、前記記憶部には前記ジョブの設定完了を受けたときの設定情報における前記動作モードを含む前記所定数の情報のみが記憶される
ことを特徴とする［１０］に記載のジョブ処理システム。
【００４６】
上記発明では、簡素な第１の比較を行う決定をした場合には、ジョブの設定完了を受けたときの設定情報における動作モードを含む所定数の情報のみを記憶する。記憶する情報を、最低限必要な所定数の情報のみにすることで、必要記憶容量を低減することができる。
【００４７】
［１２］前記制御部は、前記検出の要否判定を、前記ジョブデータが前記設定完了を受けて生成されたジョブデータであるか否かに基づいて行い、前記設定完了を受けて生成されたジョブデータでないと判断した場合に、前記異常を検知する
ことを特徴とする［３］に記載のジョブ処理システム。
【００４８】
上記発明では、ユーザ操作ではなく他の要因（コンピュータウイルス）によってジョブ（ジョブデータ）が生成された場合は、それは非正規なジョブであると判断され、異常が検知される。
【００４９】
［１３］前記制御部は、前記設定完了を受けた時点からの経過時間を計測し、前記設定完了を受けた時点から所定時間以上経過して生成されたジョブデータを、前記設定完了を受けて生成されたジョブデータでないと判断する
ことを特徴とする［１２］に記載のジョブ処理システム。
【００５０】
上記発明では、ユーザからジョブの設定完了操作を受けた場合は直ちにそのジョブデータが生成されるが、設定完了時点から長時間が経過して生成されたジョブデータは、非正規なジョブデータであると判断される。このような設定完了時点からの経過時間とジョブ（ジョブデータ）の生成タイミングに基づくことで、ユーザ操作によらない非正規なジョブが識別可能であり、異常を検知することができる。
【００５１】
［１４］前記ジョブの設定には、ジョブの種類を示す動作モードの設定が含まれ、
前記制御部は、前記第２の記憶部に前記設定情報における動作モードが記憶されていない状態で生成されたジョブデータを、前記設定完了を受けて生成されたジョブデータでないと判断する
ことを特徴とする［１２］に記載のジョブ処理システム。
【００５２】
上記発明では、ユーザからジョブの設定完了を受けたときの設定情報が記憶される構成において、この設定情報における動作モードが記憶されていない状態で生成されたジョブデータは、非正規なジョブデータであると判断される。このような設定情報（動作モード）の記憶の有無に基づくことで、ユーザ操作によらない非正規なジョブが識別可能であり、異常を検知することができる。また、設定情報のうちの代表的な動作モードの記憶の有無確認のみであるため、たとえば、多数または全ての設定情報（設定情報に含まれる個々の情報）の記憶の有無確認を行うような場合に比べて、記憶確認処理自体を簡素化できて処理負荷を低減できる。
【００５３】
また、設定情報の記憶では、設定情報における動作モードのみを記憶するようにしてもよい。この場合は、たとえば、多数または全ての設定情報を記憶するような場合に比べて、設定情報のうちの代表的な動作モードのみの記憶であるため、必要記憶容量を低減することができる。
【００５４】
［１５］前記動作モードは、前記ジョブの設定において前記操作部で選択操作を受けて選択設定され、
前記第２の記憶部には、前記選択設定された動作モードが前記設定情報における動作モードとして記憶される
ことを特徴とする［５］、［１０］、［１１］および［１４］のいずれか１項に記載のジョブ処理システム。
【００５５】
上記発明では、動作モードはユーザによるジョブの設定操作にて選択され、ユーザによるジョブの設定完了操作に伴い記憶される。このように、ユーザが実際に操作を行って指定（選択）した動作モードを利用して、異常を検知することができる。
【００５６】
［１６］前記ジョブの設定では、前記動作モード別に設けられた複数種類の設定モードが前記操作部で動作モードの選択操作を受けて切り換えられると共に、切り換えられた動作モードに対応する設定モードで前記設定を受け付け、
前記第２の記憶部には、前記ジョブデータが生成されるときの設定モードが前記動作モードとして記憶される
ことを特徴とする［５］、［１０］、［１１］および［１４］のいずれか１項に記載のジョブ処理システム。
【００５７】
上記発明では、ユーザによるジョブの設定操作で、動作モードが選択されると設定モードが切り換えられる。設定モードは、ジョブの設定を受け付けるときの状態（操作部の状態）であり、動作モード別に複数種類設けられている。この設定モードは、ジョブデータが生成されるときに動作モードとして記憶される。このような設定モードを利用して、異常を検知することができる。
【００５８】
また、ジョブデータを生成するために用いる設定情報はジョブデータと関連しているため、コンピュータウイルスによってジョブデータが改竄される場合は、それに伴い設定情報自体も改竄される危険性がある。これに対し、ジョブデータと直接的には関連しない設定モードを動作モードに置き換えて記憶しておくことにより、ユーザからジョブの設定完了を受けた場合には、ユーザの指定した動作モードを、設定モードを利用して正確かつ安全に保存することができ、そのような設定情報（動作モード）の改竄による異常も検知することができる。
【００５９】
［１７］前記制御部は、前記検出の要否判定を、前記ジョブデータに含まれているデータ値に基づいて行い、前記データ値が所定の閾値以上である場合に、前記異常を検知する
ことを特徴とする［３］に記載のジョブ処理システム。
【００６０】
上記発明では、ジョブデータに含まれているデータ値がコンピュータウイルスによって所定の閾値以上に改竄された場合に、異常であることを検知する。このように、ジョブデータのみに基づいて、異常を検知することもできる。
【００６１】
［１８］前記ジョブは、印刷ジョブを含み、
前記印刷ジョブに係るジョブデータには、前記データ値として印刷部数が含まれる
ことを特徴とする［１７］に記載のジョブ処理システム。
【００６２】
上記発明では、印刷ジョブにおいてはジョブデータに含まれている印刷部数（データ値）が所定の閾値以上である場合に、異常であることを検知する。印刷ジョブの場合は、このように印刷部数に基づいて、異常を検知することができる。
【００６３】
［１９］前記ジョブは、送信ジョブを含み、
前記送信ジョブに係るジョブデータには、前記データ値として送信宛先数が含まれる
ことを特徴とする［１７］に記載のジョブ処理システム。
【００６４】
上記発明では、送信ジョブにおいてはジョブデータに含まれている送信宛先数（データ値）が所定の閾値以上である場合に、異常であることを検知する。送信ジョブの場合は、このように送信宛先数に基づいて、異常を検知することができる。
【００６５】
［２０］前記制御部は、前記検出部による前記検出が必要であると判定した場合に、前記実行部による実行中のジョブがあるか否かを確認し、前記実行中のジョブがある場合は該ジョブの実行完了まで前記検出部に前記検出を実行させない
ことを特徴とする［１］〜［１９］のいずれか１項に記載のジョブ処理システム。
【００６６】
上記発明では、ウイルス検出が必要であると判定した場合に実行中のジョブが存在すれば、そのジョブの処理を優先して処理完了までウイルス検出を行わないようにする。これにより、実行中のジョブの処理がウイルス検出の実行によって妨げられることを回避できる。
【００６７】
［２１］前記制御部は、前記検出部による前記検出が必要であると判定した場合に、更に前記実行部による実行待ちのジョブがあるか否かも確認し、前記実行待ちのジョブもある場合は前記実行中のジョブの実行完了後に前記実行待ちのジョブの実行を保留して前記検出部に前記検出を実行させる
ことを特徴とする［２０］に記載のジョブ処理システム。
【００６８】
上記発明では、ウイルス検出が必要であると判定した場合に実行中のジョブと実行待ちのジョブが存在すれば、実行中のジョブの処理完了後に実行待ちのジョブを保留にしてウイルス検出を行うようにする。これにより、実行中のジョブの処理を妨げず、実行待ちのジョブを実行する前のできるだけ早いタイミングに（仮にコンピュータウイルスに感染していた場合はその被害を出す前に）、ウイルス検出を行うことができる。
【００６９】
［２２］前記ジョブの設定には、ジョブの実行開始のタイマーの設定が含まれ、
前記制御部は、前記タイマーが設定されたジョブデータに基づく前記検出の要否判定では、前記検出が不要であると判定する
ことを特徴とする［１］〜［２１］のいずれか１項に記載のジョブ処理システム。
【００７０】
上記発明では、実行開始のタイマーが設定されたタイマージョブのジョブデータに基づくウイルス検出の要否判定では、検出が不要であると判定される。
【００７１】
［２３］前記制御部は、前記操作部で設定を受け付け不可能な種類のジョブに係るジョブデータに基づく前記検出の要否判定では、前記検出が不要であると判定する
ことを特徴とする［１］〜［２１］のいずれか１項に記載のジョブ処理システム。
【００７２】
上記発明では、ユーザ操作で設定を受け付け不可能な種類のジョブ、たとえば、受信ジョブなどに係るジョブデータに基づくウイルス検出の要否判定では、検出が不要であると判定される。
【００７３】
［２４］［１］〜［２３］のいずれか１項に記載のジョブ処理システムに含まれると共に、前記ジョブを画像データに対するジョブとして実行する画像処理装置であって、
前記操作部と、前記記憶部と、前記実行部と、前記制御部と、
を備え、
前記制御部は、前記検出部による前記検出が必要であると判定した場合に、当該画像処理装置内のコンピュータウイルスの検出を前記検出部に依頼する
ことを特徴とする画像処理装置。
【００７４】
上記発明では、画像処理装置の制御部は、ジョブデータに基づくウイルス検出の要否判定で装置内のウイルス検出が必要であると判定した場合は、外部の検出部、たとえば、検出部を備えたサーバなどに対して、装置内のウイルス検出を依頼する。画像処理装置からウイルス検出の依頼を受けた外部の検出部は、画像処理装置内のウイルス検出を実行する。このように、装置内のウイルス検出を外部の検出部に依頼する画像処理装置においても、処理を妨げずコンピュータウイルスによる被害を出す前にウイルス検出の要否を判定することができる。画像処理装置が装置内のウイルス検出を必要であると判定した場合は、外部の検出部によって装置内のウイルス検出を実行することができる。
【発明の効果】
【００７５】
本発明のジョブ処理システムおよび画像処理装置によれば、処理を妨げずコンピュータウイルスによる被害を出す前にウイルス検出の要否を判定することができる。そして、必要と判定した適切なタイミングでウイルス検出を実行することができる。したがって、処理の低下を避けるためにウイルス検出を定期的かつ頻繁に行うことが困難な場合などでも、効率よくウイルス検出を実行できるようになり、コンピュータウイルスによる被害を未然に防止することができる。
【図面の簡単な説明】
【００７６】
【図１】本発明の第１の実施形態に係る画像処理装置としての複合機と他機器とが通信回線を介して接続された全体の概略構成を示す全体構成図である。
【図２】複合機の概略構成を示すブロック図である。
【図３】複合機における制御部の機能構成を示す機能ブロック図である。
【図４】ウイルスチェック要否判定の簡易／詳細を複合機におけるリソースの残使用量に基づいて決定するための管理テーブルの構成を示す図である。
【図５】ウイルスチェック要否判定の簡易／詳細を複合機におけるリソースの残使用率に基づいて決定するための管理テーブルの構成を示す図である。
【図６】複合機による動作の概要を示す流れ図である。
【図７】複合機によるジョブの設定操作・生成・キュー登録要求の動作を示す流れ図である。
【図８】複合機の表示部に表示されたタイマー送信設定画面を示す図である。
【図９】複合機によるタイマージョブのキュー登録要求の動作を示す流れ図である。
【図１０】複合機によるジョブのキュー登録要求に対する動作を示す流れ図である。
【図１１】図１０におけるウイルスチェック要否判定のサブルーチンを示す流れ図である。
【図１２】図１０におけるウイルスチェック実行確認のサブルーチンを示す流れ図である。
【図１３】複合機の表示部に表示された確認画面を示す図である。
【図１４】複合機におけるジョブの管理および処理状態を模式的に示す図である。
【図１５】複合機の表示部に表示されたジョブ削除通知画面を示す図である。
【図１６】本発明の第２の実施形態に係るジョブの設定操作・生成・キュー登録要求の動作を示す流れ図である。
【図１７】本発明の第２の実施形態に係るウイルスチェック要否判定のサブルーチン（１／２）を示す流れ図である。
【図１８】本発明の第２の実施形態に係るウイルスチェック要否判定のサブルーチン（２／２）を示す流れ図である。
【発明を実施するための形態】
【００７７】
以下、図面に基づき本発明の実施形態を説明する。
【００７８】
［第１の実施形態］
図１は、本発明の第１の実施形態に係る画像処理装置としての複合機（Multi Function Peripheral/Multi Function Printer；ＭＦＰ）１０と、他機器（外部装置）とが通信回線２を介して接続された全体の概略構成を示す全体構成図である。他機器は、パーソナルコンピュータ（Personal Computer；ＰＣ）からなる端末１１と、ファクシミリ機１２と、他の複合機１３などである。通信回線２に接続された複合機１０（ＭＦＰ１）と他機器（ＰＣ、ＦＡＸ、ＭＦＰ２など）とは、通信回線２を通じて相互通信可能とされている。
【００７９】
複合機１０は、原稿画像を光学的に読み取ってその複製画像を記録紙に印刷して出力するコピー機能、読み取った原稿の画像データ（スキャンデータ）をファイルにして保存したり端末１１やサーバなどへ送信したりするスキャン機能、端末１１から受信した印刷データ（プリントデータ）に係る画像や当該複合機１０に保存されている画像データに係る画像を記録紙に印刷して出力するプリンタ機能、ファクシミリ機１２や他の複合機１３などと画像データ（ファクシミリデータ）を送受信するファクシミリ機能、外部装置との間で画像データを電子メールに添付して送受信する電子メール機能、データ保存用に確保された記憶領域であるボックス（フォルダ）に各種の画像データを保存するボックス機能などを備えている。ボックスに保存される各種の画像データは、スキャンデータ、プリントデータ、受信したファクシミリデータや電子メール添付の画像データ、ＵＳＢ（Universal Serial Bus）メモリなどの外部記憶装置が接続されて入力された画像データなどである。またファクシミリ機能には、ファクシミリ送信を実行する時刻をタイマー設定によって指定するタイマー機能（タイマージョブ実行機能）が設けられている。
【００８０】
また複合機１０は、ユーザから上記の各種機能によるジョブの設定および完了（実行指示）の操作を操作パネルで受け付ける機能、ジョブの設定においては動作モードの選択およびその選択された動作モードに係る各種項目に対する設定を受け付ける機能を備えている。「動作モード」とは、ジョブの種類（最上位のカテゴリ）を示すモードのことである。ここでは、コピー、スキャン、プリント、ファクシミリ、ボックスなどのモードである。
【００８１】
さらに複合機１０は、ユーザによるジョブの設定過程で逐次設定（選択）された動作モードや各種項目の設定値（パラメータ）などを示す個々の情報（設定情報）を随時保持し、設定完了操作を受けるとそのジョブの設定内容を確定して設定完了時に保持している設定情報を記憶する機能、設定完了時（設定内容の確定時）に保持している設定情報に基づいてジョブデータを生成して記憶する機能、このユーザ操作により生成されたジョブデータや外部装置から入力されたジョブに係るジョブデータなどに対し、ジョブデータに基づいてジョブを実行する機能、ジョブの履歴情報を記憶する機能を備えている。「設定情報」は、ユーザ操作による設定内容（操作内容）に応じたジョブの処理条件を規定する情報である。
【００８２】
ユーザ操作によるジョブ（動作モードが選択されるジョブ）は、コピージョブ、スキャンジョブ、複合機１０内や接続された外部記憶装置内の画像データを印刷出力するプリントジョブ、ファクシミリ送信ジョブ、ボックスジョブなどである。外部装置から入力されるジョブは、端末１１などから印刷データを受信して依頼されるプリントジョブ（ＰＣプリントジョブ）、ファクシミリ受信ジョブなどである。
【００８３】
さらに複合機１０は、自機内に存在するコンピュータウイルスを検出する機能、実行前のジョブに係るジョブデータに基づいてウイルス検出の要否を判定する機能、この要否判定においてジョブデータに基づいて異常を検知した場合に、ウイルス検出が必要であると判定してそれを実行する機能を備えている。
【００８４】
また、ジョブデータに基づくウイルス検出の要否判定では、生成されたジョブデータと、記憶されている設定情報とを比較した結果（一致／不一致）に基づいて要否判定を行う場合がある。この比較の仕方（比較方法）には、簡易な比較（第１の比較）と詳細な比較（第２の比較）の２種類が設けられており、いずれの比較を行うかは装置設定（デフォルト設定）やテーブル（管理テーブル）に基づいて決定するようになっている（比較方法の切換制御）。
【００８５】
図２は、複合機１０の概略構成を示すブロック図である。複合機１０は、制御部としてのＣＰＵ（Central Processing Unit）２１に、バス２２を介してＲＯＭ（Read Only Memory）２３と、ＲＡＭ（Random Access Memory）２４と、不揮発メモリ２５と、ハードディスク装置２６と、表示部２７と、操作部２８と、認証部２９と、スキャナ部３０と、画像処理部３１と、プリンタ部３２と、ファクシミリ通信部３３と、ネットワーク通信部３４とを接続して構成される。
【００８６】
ＣＰＵ２１は、ＲＯＭ２３に格納されているプログラムに基づいて複合機１０の動作を制御する。ＲＡＭ２４は、ＣＰＵ２１がプログラムを実行する際に各種データを一時的に格納するワークメモリとして使用されるほか、画像データを一時的に保存するための画像メモリなどにも使用される。
【００８７】
不揮発メモリ２５は、電源がオフされても記憶が保持されるメモリであり、装置固有の情報や各種の設定情報、ユーザの認証情報、表示部２７に表示する各種画面の表示用データ、ジョブデータと設定情報の比較方法を決定する際に参照される管理テーブル３６（図４（３６ａ）および図５（３６ｂ）参照）、ジョブ履歴テーブル３７、ウイルス定義ファイル３８などが記憶される。ハードディスク装置２６は、各種の保存データを格納するほか、原稿のスキャンやコピーにおいて原稿を読み取って取得された画像データ、端末１１から受信して依頼されたプリントジョブに含まれている印刷データ（画像データ）、受信したファクシミリデータや電子メール添付の画像データ、外部記憶装置が接続されて入力された画像データなども保存する。ハードディスク装置２６には、これらの各種画像データを保存するボックス３９が設けられる。なお、管理テーブル３６、ジョブ履歴テーブル３７、ウイルス定義ファイル３８は、不揮発メモリ２５ではなくハードディスク装置２６に保存するようにしてもよい。
【００８８】
ジョブ履歴テーブル３７には、ジョブの履歴に関する各種の履歴情報が記憶され、記憶された履歴情報は後述する通知画面（図１５参照）の情報表示などに使用される。ジョブ履歴テーブル３７に記憶される履歴情報は、ユーザ操作によるジョブの場合は、たとえば、ジョブの設定および実行を指示したユーザ（認証ユーザ）のユーザＩＤ（ユーザ名）、ジョブの実行指示を受けてＣＰＵ２１が発行したジョブＩＤ、ジョブの作成日時、ステータス（キュー登録前／実行待ち／実行中／実行済み／エラー終了／削除など）、ジョブの実行日時、ジョブの設定情報などである。ジョブの設定情報については、動作モードを含む全ての項目に対する設定情報を記憶するようにしてもよく、少なくとも動作モードを含む一部のみの設定情報を記憶するようにしてもよい。これらの履歴情報は、ジョブ毎に対応付けられてジョブ単位でジョブ履歴テーブル３７に記憶される。
【００８９】
ウイルス定義ファイル３８は、コンピュータウイルスを検出するために使用される、コンピュータウイルスの特徴（特徴的なパターン）を収録したファイルである（パターンファイル）。ウイルス定義ファイル３８は、複合機１０が専用のサーバにアクセスするなどして随時更新される。
【００９０】
表示部２７は、液晶ディスプレイなどで構成され、操作画面、設定画面、確認画面、通知画面などの各種の画面を表示する。操作部２８は、設定するジョブの動作モード（ジョブ種）を選択するモード選択キー、スタートキー、ストップキー、キャンセルキー、テンキーなどの各種のボタン類と、液晶ディスプレイの表面に設けられて押下された座標位置を検出するタッチパネルなどで構成され、ユーザが複合機１０に対して行う各種の操作を受け付ける。これらの表示部２７と操作部２８は、複合機１０の操作パネル３５に設けられている。
【００９１】
認証部２９は、ユーザが入力した認証情報と、複合機１０に記憶されている照合用の認証情報とを比較するなどによりユーザの識別（特定）および認証を行う。
【００９２】
スキャナ部３０は、原稿を光学的に読み取って画像データを取得する。スキャナ部３０は、たとえば、原稿に光を照射する光源と、その反射光を受けて原稿を幅方向に１ライン分読み取るラインイメージセンサと、ライン単位の読取位置を原稿の長さ方向に順次移動させる移動手段と、原稿からの反射光をラインイメージセンサに導いて結像させるレンズやミラーなどからなる光学経路と、ラインイメージセンサの出力するアナログ画像信号をデジタルの画像データに変換する変換部などを備えて構成される。
【００９３】
画像処理部３１は、端末１１から受信した印刷データ（ベクタ形式の印刷データ）に対してラスタライズ処理を施したり、画像データに対して、画像補正、回転、拡大／縮小、圧縮／伸張など各種の画像処理を施したりする。
【００９４】
プリンタ部３２は、画像データに基づく画像を電子写真プロセスによって記録紙上に形成して出力する。プリンタ部３２は、たとえば、記録紙の搬送装置と、感光体ドラムと、帯電装置と、入力される画像データに応じて点灯制御されるＬＤ（Laser Diode）と、ＬＤから射出されたレーザ光を感光体ドラム上で走査させる走査ユニットと、現像装置と、転写分離装置と、クリーニング装置と、定着装置とを有する、いわゆるレーザープリンタとして構成されている。レーザ光に代えてＬＥＤ（Light Emitting Diode）で感光体ドラムを照射するＬＥＤプリンタのほか他の方式のプリンタであってもかまわない。
【００９５】
ファクシミリ通信部３３は、ファクシミリ機能を備えた外部装置と公衆回線（通信回線２）を通じて画像データを送受信する。ネットワーク通信部３４は、ＬＡＮ（Local Area Network）などのネットワーク（通信回線２）を通じて外部装置と通信を行う。
【００９６】
図３は、制御部としてのＣＰＵ２１における機能構成を示す機能ブロック図である。制御部（ＣＰＵ２１）は、操作処理部４１と、表示処理部４２と、状態管理部４３と、ジョブ管理部４４と、ジョブ処理部４５と、挙動監視部４６と、ウイルスチェック部４７などの各機能部を備えている。
【００９７】
操作処理部４１は、操作部２８で受けた操作に対する処理（操作に対応する動作に関する処理）を行う機能を果たす。表示処理部４２は、表示部２７への画面表示に関する処理を行う機能を果たす。状態管理部４３は、複合機１０の状態に関する管理（装置ステータス管理）を行う機能を果たす。ジョブ管理部４４は、ジョブに関する管理（ジョブステータス管理）を行う機能を果たす。ジョブ処理部４５は、ジョブに関する処理（ジョブ処理）を行う機能を果たす。
【００９８】
詳細には、操作処理部４１は、操作パネル３５のモード選択キー（コピー、スキャン、プリント、ファクシミリ、ボックスなど）に対する押下操作を受けると、その押下（選択）された動作モードを示す情報を状態管理部４３へ入力する。状態管理部４３は、操作パネル３５の状態を、入力された情報が示す動作モードのジョブに対する設定を受け付ける状態に切り換える。すなわち、選択されたジョブ種の設定を受け付ける状態（ジョブ種毎の設定モード）に切り換える。この操作パネル３５の状態を「パネルモード」と呼ぶ。パネルモードは、動作モード別に複数種類設けられている。
【００９９】
なお、パネルモードは、ジョブの設定に係るもの以外に、装置自体の設定を受け付けるパネルモード（装置設定パネルモード）、初期画面が表示されるパネルモード（デフォルトパネルモード）、ユーザ認証などの操作を受け付けるパネルモード（ユーザ認証パネルモード）などの各種の操作用のパネルモードなども設けられている。
【０１００】
また状態管理部４３は、切り換えたパネルモードで動作するように、表示処理部４２と操作処理部４１へ動作指令を入力する。これを受けて、表示処理部４２は表示部２７に当該パネルモード（動作モード）の設定画面を表示する。たとえば、動作モードとしてコピーが選択された場合はコピー設定画面を表示し、スキャンが選択された場合はスキャン設定画面を表示し、プリントが選択された場合はプリント設定画面を表示し、ファクシミリが選択された場合はファクシミリ設定画面を表示し、ボックスが選択された場合はボックス設定画面を表示するなどの画面表示を行う。操作処理部４１は、テンキーや設定画面に表示されたソフトボタン（タッチパネル）などを当該パネルモード（動作モード）に対する設定を受け付ける操作部として動作させる。操作パネル３５は、このパネルモード毎に、パネルモードに対応する動作モードのジョブの各種項目の設定を受け付けるように動作する。
【０１０１】
各種項目については、たとえば、ユーザ操作によるコピージョブとプリントジョブでは、印刷部数などの項目に対する設定を受け付けるようになっている。スキャンジョブとボックスジョブでは、画像データを電子メールに添付して送信できるようになっており、そのメール送信設定や複数の宛先設定（同報送信）などを受け付けるようになっている。ファクシミリ送信ジョブでは、複数の宛先設定（同報送信）や送信時刻のタイマー設定などを受け付けるようになっている。なお、タイマー設定では、送信時刻に代えて、設定時点からの経過時間を設定（指定）できるように構成してもよい。
【０１０２】
ＣＰＵ２１は、このパネルモード毎（動作モード毎）のジョブの設定で、ユーザから操作パネル３５を通じて各種項目の設定を受けると、その設定内容に応じたジョブの処理条件を規定する設定情報を保持する。詳細には、操作パネル３５を通じて各種項目の設定を受けるたびに、その項目の設定値を示す個々の情報（設定情報）を随時保持する。
【０１０３】
ユーザから操作パネル３５のスタートキーに対する押下操作を受けると、ＣＰＵ２１はジョブの設定内容を確定してその設定完了時に保持している設定情報を記憶する。たとえば、ＲＡＭ２４のワークメモリ領域または不揮発メモリ２５などに設定情報を記憶する。また、設定完了時（設定内容の確定時）に保持している設定情報に基づいて、設定内容（動作モードおよび各種項目の設定値）に応じたジョブの処理条件を含む制御用のデータ形式のジョブデータを生成し記憶する。たとえば、ＲＡＭ２４のワークメモリ領域または不揮発メモリ２５などにジョブデータを記憶する。
【０１０４】
タイマー設定がなされたジョブ（タイマージョブ）の場合は、そのタイマー・オンや送信時刻（または設定時点からの指定経過時間）を示すデータがジョブデータに付加される、あるいは、ジョブデータの拡張情報として保持されるようになっている。またＣＰＵ２１は、生成したジョブデータ（ジョブ）を識別するためのジョブＩＤを発行する。
【０１０５】
ジョブ管理部４４は、生成されたのが非タイマージョブである場合には、生成直後にジョブキューへの登録要求を行い、登録可能であればまたは登録可能になり次第、生成されたジョブ（ジョブＩＤ）をジョブキューに登録して管理する。生成されたのがタイマージョブである場合には、生成されたジョブ（ジョブＩＤ）を一旦、タイマージョブ実行リストに登録して管理し、送信時刻（または設定時点からの指定経過時間）になるとジョブキューへの登録要求を行い、登録可能であればまたは登録可能になり次第、タイマージョブ実行リストからジョブキューに登録して管理する。
【０１０６】
ジョブ処理部４５は、ジョブキューに登録されているジョブが実行可能になり次第（基本的には登録順に）、ジョブデータに基づいてジョブ処理を行うようになっている。ジョブ処理には、たとえば、ジョブデータに含まれている処理条件でジョブを実行するために動作させる複合機１０の各部（図２の各ブロック）の制御などが含まれる。制御対象となるのは、たとえば、スキャナ部３０、画像処理部３１、プリンタ部３２、ファクシミリ通信部３３、ネットワーク通信部３４、ハードディスク装置２６などである（ジョブ実行部）。
【０１０７】
挙動監視部４６は、ジョブ処理に関連する複合機１０の各部の挙動を監視すると共に、実行前のジョブに係るジョブデータに基づいてウイルスチェック（ウイルス検出）の要否を判定する機能を果たす。ウイルスチェックが必要であると判定した場合は、ウイルスチェック実行要求をウイルスチェック部４７へ入力する。ウイルスチェック部４７は、挙動監視部４６からウイルスチェック実行要求を受けると、ウイルスチェックプログラムに従い、ウイルス定義ファイル３８を用いてウイルスチェックを実行する機能を果たす。
【０１０８】
またＣＰＵ２１は、ウイルスチェック部４７によるウイルスチェックによってコンピュータウイルスが検出された場合は、ウイルス駆除プログラムに従い、ウイルス駆除を実行する機能を備えている。このウイルス駆除は、ウイルスチェック部４７が実行するように構成してもよい。
【０１０９】
次に、ウイルスチェックの要否判定において、ジョブデータと設定情報の比較方法（判定モード）を決定する際に参照する管理テーブルについて説明する。
【０１１０】
図４および図５に管理テーブル３６（３６ａ、３６ｂ）の一例を示す。本実施形態の複合機１０には、ウイルスチェックの要否判定モードとして、生成されたジョブデータと記憶されている設定情報を簡易に比較する「簡易判定」と、詳細に比較する「詳細判定」とが設けられている。簡易判定とは、ジョブデータと設定情報の動作モードのみを比較する判定モードである。詳細判定とは、ジョブデータと設定情報の全内容を比較する判定モードである。
【０１１１】
この要否判定モードは、簡易判定および詳細判定をユーザが指定して一方に固定する「固定」または自動で切り換える「切換」をユーザが予め設定できるようになっている（装置設定）。要否判定モードに係る固定／切換の設定情報は、不揮発メモリ２５に記憶される。固定の場合には、複合機１０は要否判定モードをユーザによって指定された簡易判定または詳細判定に決定する。切換の場合には、複合機１０は管理テーブル３６を参照し、要否判定モードをリソースの余裕度に基づいて簡易判定または詳細判定に決定する。詳細には、要否判定モードを決定する時点でのウイルスチェックの要否を判定するために使用されるリソースの余裕度が小さい（所定値未満）である場合には簡易判定に決定し、同余裕度が大きい（所定値以上）である場合には詳細判定に決定するようになっており、管理テーブル３６にはその決定を行うための情報が格納されている。
【０１１２】
本実施形態では、リソースはＣＰＵ２１とＲＡＭ２４を対象にしている。余裕度はリソース（ＣＰＵ／ＲＡＭ）の残使用量や残使用率によって構成することができる。残使用量は、現在実行されている処理に使用されていない、リソースの残りの大きさを量で表すものである（残使用量＝リソース全量−使用量）。残使用率は、現在実行されている処理に使用されていない、リソースの残りの大きさを比率で表すものである（残使用率＝残使用量÷リソース全量）。
【０１１３】
残使用量のみを用いる場合には、たとえば、ＣＰＵ２１の残使用量とＲＡＭ２４の残使用量によりリソースの余裕度を規定して要否判定モードを決定することができる。残使用率のみを用いる場合には、たとえば、ＣＰＵ２１の残使用率とＲＡＭ２４の残使用率によりリソースの余裕度を規定して要否判定モードを決定することができる。
【０１１４】
なお、リソースはＣＰＵ２１とＲＡＭ２４のいずれか一方のみを対象にするようにしてもよい。余裕度は残使用量と残使用率を併用して構成するようにしてもよい。
【０１１５】
図４は、要否判定モードをリソースの残使用量に基づいて決定する際に参照される管理テーブル３６ａの一例を示す図である。本テーブルは、ＣＰＵ２１の残使用量（ＧＨｚ）とＲＡＭ２４の残使用量（ＧＢｙｔｅ）の組み合わせに対応する要否判定モード（簡易判定／詳細判定）をマトリックス状に格納したテーブルである。横方向（列方向）の項目欄には、ＣＰＵ２１の残使用量が複数段階に区切られて格納され、縦方向（行方向）の項目欄には、ＲＡＭ２４の残使用量が複数段階に区切られて格納されており、これらの各段階による複数種類の組み合わせに対応する「簡易判定」または「詳細判定」がテーブル欄にマトリックス状に格納されている。ここでは、ＣＰＵ２１とＲＡＭ２４の残使用量のうちの少なくとも一方が低い値（所定値未満）となる組み合わせには簡易判定が割り当てられており、高い値（所定値以上）となる組み合わせには詳細判定が割り当てられている。
【０１１６】
具体的には、ＣＰＵ２１の残使用量およびＲＡＭ２４の残使用量はそれぞれ、「２．５以上」、「２．４〜２．０」、「１．９〜１．５」、「１．４〜１．０」、「１．０未満」の各段階が格納されている。双方が１．５以上の組み合わせと、一方が１．０以上で他方が２．０以上の組み合わせには（重複あり）、詳細判定が割り当てられている。それ以外の組み合わせには、すなわち、少なくとも一方が１．０未満の組み合わせと、一方が１．５未満（≒１．４以下）で他方が２．０未満（≒１．９以下）の組み合わせには（重複あり）、簡易判定が割り当てられている。なお、図中では詳細判定と簡易判定の境界を破線で示している。
【０１１７】
この管理テーブル３６ａでは、ＣＰＵ２１の残使用量とＲＡＭ２４の残使用量の組み合わせによってリソースの余裕度が表され、余裕度が所定値未満となる組み合わせには簡易判定が割り当てられ、余裕度が所定値以上となる組み合わせには詳細判定が割り当てられている。
【０１１８】
図５は、要否判定モードをリソースの残使用率に基づいて決定する際に参照される管理テーブル３６ｂの一例を示す図である。本テーブルは、ＣＰＵ２１の残使用率（％）とＲＡＭ２４の残使用率（％）の組み合わせに対応する要否判定モード（簡易判定／詳細判定）をマトリックス状に格納したテーブルである。横方向（列方向）の項目欄には、ＣＰＵ２１の残使用率が複数段階に区切られて格納され、縦方向（行方向）の項目欄には、ＲＡＭ２４の残使用率が複数段階に区切られて格納されており、これらの各段階による複数種類の組み合わせに対応する「簡易判定」または「詳細判定」がテーブル欄にマトリックス状に格納されている。ここでは、ＣＰＵ２１とＲＡＭ２４の残使用率のうちの少なくとも一方が低い値（所定値未満）となる組み合わせには簡易判定が割り当てられており、高い値（所定値以上）となる組み合わせには詳細判定が割り当てられている。
【０１１９】
具体的には、ＣＰＵ２１の残使用率およびＲＡＭ２４の残使用率はそれぞれ、「７０％以上」、「６９〜５０％」、「４９〜４０％」、「３９〜３０％」、「３０％未満」の各段階が格納されている。双方が４０％以上の組み合わせと、一方が３０％以上で他方が５０％以上の組み合わせには（重複あり）、詳細判定が割り当てられている。それ以外の組み合わせには、すなわち、少なくとも一方が３０％未満の組み合わせと、一方が４０％未満（≒３９％以下）で他方が５０％未満（≒４９％以下）の組み合わせには（重複あり）、簡易判定が割り当てられている。なお、図中では詳細判定と簡易判定の境界を破線で示している。
【０１２０】
この管理テーブル３６ｂでは、ＣＰＵ２１の残使用率とＲＡＭ２４の残使用率の組み合わせによってリソースの余裕度が表され、余裕度が所定値未満となる組み合わせには簡易判定が割り当てられ、余裕度が所定値以上となる組み合わせには詳細判定が割り当てられている。
【０１２１】
次に、複合機１０の動作について説明する。
【０１２２】
複合機１０内に格納されているデータなどがコンピュータウイルスに感染した場合は、そのコンピュータウイルスによって異常な動作（挙動）が引き起こされる可能性がある。たとえば、ユーザ操作により生成された正規のジョブに係るジョブデータが改竄されたり、非正規なジョブ（ジョブデータ）が生成されたりする可能性がある。ジョブデータの改竄では、被害が大きくなるように悪質に改竄される可能性がある。たとえば、コピーからファクシミリ送信などへ動作モードが変えられたり、印刷部数や送信宛先数などが大幅に増加されたりする可能性がある。また、これらの改竄あるいは不正に生成されたジョブデータもコンピュータウイルスに感染している可能性が高い。
【０１２３】
ここでは、ジョブを実行する前にジョブデータに基づいてウイルスチェック（ウイルス検出）の要否を判定するようにしているが、ジョブデータに基づいて異常（異常挙動）を検知した場合は、コンピュータウイルスに感染している可能性があり、ウイルスチェックが必要であると判定して実行するようにしている。ウイルスチェックの要否判定を行うタイミングは、ジョブの生成直後としている。詳細には、生成されたジョブをジョブキューに登録するタイミング（キュー登録要求時）としている。
【０１２４】
対象となるジョブは、ユーザ操作によるジョブであり、コピージョブ、スキャンジョブ、プリントジョブ（複合機１０内や接続された外部記憶装置内の画像データの印刷出力）、ファクシミリ送信ジョブ、ボックスジョブなどである。ただし、送信タイマーが設定されたファクシミリ送信ジョブは、生成直後にキュー登録要求が行われず、タイマージョブ実行リストに一旦登録されて設定タイマー時刻になるとキュー登録要求が行われるので、対象外としている。また、外部装置から入力されるジョブ（受信ジョブ）、たとえば、ＰＣプリントジョブやファクシミリ受信ジョブなども対象外としている。ただし、対象外となるジョブに係るジョブデータや画像データなどが複合機１０内に保存されていれば、それらのデータが印刷、送信、表示などで出力処理される際はチェック対象になる。
【０１２５】
対象ジョブに係るジョブデータに基づく異常の検知は、以下の項目を確認して行うようにしている。
【０１２６】
（１）生成されたジョブデータと、ジョブの設定完了を受けたときの設定情報の比較（簡易判定：動作モードのみ／詳細判定：全内容）⇒不一致の場合は異常検知（ジョブデータ改竄の可能性あり）
（２）ジョブデータに含まれているデータ値（印刷部数／送信宛先数）の確認⇒データ値が所定値以上の場合は異常検知（ジョブデータ改竄の可能性あり）
（３）設定情報（動作モード）の記憶の有無⇒記憶なしの場合は異常検知（不正ジョブ生成の可能性あり）
（４）ユーザ操作による設定完了時点からの経過時間（ジョブデータの生成タイミング）⇒所定時間以上経過して生成されたジョブデータは異常検知（不正ジョブ生成の可能性あり）
【０１２７】
なお、ジョブデータを生成するために用いる設定情報はジョブデータと関連しているため、コンピュータウイルスによる異常挙動でジョブデータが改竄される場合は、それに伴い設定情報自体も改竄される危険性がある。そこで、（１）および（３）における設定情報に含まれる動作モードは、設定完了時点でのパネルモードを動作モードとして記憶することにより、ジョブデータと直接的には関連しないパネルモードを代用して動作モードとして記憶するようにしている。具体的には、（１）ではジョブデータ内の動作モードと、設定完了時点で記憶されたパネルモード（＝動作モード）とを比較するようにしており、（３）ではパネルモード（＝動作モード）の記憶の有無を確認するようにしている。
【０１２８】
まず、複合機１０によるウイルスチェック要否判定の概要（全体の流れ）を説明し、その後に詳細を説明する。
【０１２９】
図６は、複合機１０によるウイルスチェック要否判定動作の概要の流れを示す図である。
【０１３０】
複合機１０は、ジョブを生成または外部装置から受信すると、本動作を開始する（Ｓｔａｒｔ）。複合機１０で生成されるジョブは、ユーザ操作で生成される正規のジョブの他に、複合機１０がコンピュータウイルスに感染している場合には、コンピュータウイルスによって生成される非正規のジョブが有り得る。受信ジョブは、ファクシミリ機１２などから受信するファクシミリ受信ジョブや端末１１などから受信するＰＣプリントジョブなどがある。
【０１３１】
ＣＰＵ２１（挙動監視部４６）は、ジョブを実行する前にウイルスチェックの要否判定を開始し（ステップＳ１０１）、当該ジョブが対象であるか否かを確認する（ステップＳ１０２）。受信ジョブおよびタイマージョブは対象外であり、これらのジョブの場合は（ステップＳ１０２；Ｎｏ）、ウイルスチェックが不要であると判定する（ステップＳ１０３）。ＣＰＵ２１（ジョブ処理部４５）は、ジョブを実行して（ステップＳ１０４）、本動作を終了する（Ｅｎｄ）。
【０１３２】
タイマージョブを除くユーザ操作によるジョブは対象であり、この場合は（ステップＳ１０２；Ｙｅｓ）、ＣＰＵ２１（挙動監視部４６）は、ジョブデータに基づいて上述した（１）〜（４）の項目を確認し（詳細は後述）、異常の有無を検知する（ステップＳ１０５）。異常を検知しない場合は（ステップＳ１０６；Ｎｏ）、ウイルスチェックが不要であると判定する（ステップＳ１０３）。ＣＰＵ２１（ジョブ処理部４５）は、ジョブを実行して（ステップＳ１０４）、本動作を終了する（Ｅｎｄ）。
【０１３３】
異常を検知した場合は（ステップＳ１０６；Ｙｅｓ）、ＣＰＵ２１（挙動監視部４６）はウイルスチェックが必要であると判定する（ステップＳ１０７）。ＣＰＵ２１（ウイルスチェック部４７）は、複合機１０内に格納されているデータなどに対して、ウイルス定義ファイル３８との照合（パターンマッチング）によるウイルスチェックを実行する（ステップＳ１０８）。ウイルスチェックの対象となるのは、たとえば、実行前のジョブに係るジョブデータ、コンピュータウイルスに感染する可能性のあるプログラムやファイル、各種の保存データなどである。
【０１３４】
このウイルスチェックにより、コンピュータウイルスを検出しない場合は（ステップＳ１０９；Ｎｏ）、ＣＰＵ２１（ジョブ処理部４５）は、ジョブを実行して（ステップＳ１０４）、本動作を終了する（Ｅｎｄ）。コンピュータウイルスを検出した場合は（ステップＳ１０９；Ｙｅｓ）、ＣＰＵ２１は、ウイルス駆除を実行して（ステップＳ１１０）、本動作を終了する（Ｅｎｄ）。
【０１３５】
続いて、図７〜図１５を用いて詳細な動作を説明する。
【０１３６】
図７は、複合機１０によるジョブの設定操作・生成・キュー登録要求の動作を示す流れ図である。ここでは、図４に示したリソースの残使用量に係る管理テーブル３６ａを用いる場合で説明する。
【０１３７】
本動作は、操作パネル３５に設けられた操作部２８のいずれかのキー（ボタン）が押下操作を受けるたびに行われる。
【０１３８】
ＣＰＵ２１は、操作部２８のいずれかのキーが押下操作を受けると、本動作を開始する（Ｓｔａｒｔ）。押下されたキーの種別がモード選択キーである場合は（ステップＳ１１１；モード選択）、ＣＰＵ２１（状態管理部４３／操作処理部４１／表示処理部４２）は操作パネル３５の状態を、選択された動作モードに対応するパネルモードに切り換え（ステップＳ１１２）、本動作を終了する（Ｅｎｄ）。なお、ＣＰＵ２１は、パネルモードの切り換えを行った以降はその現状のパネルモードを示す情報を保持（一時記憶）している。
【０１３９】
押下されたキーの種別が他の設定操作に係るキーである場合は（ステップＳ１１１；その他の設定操作）、ＣＰＵ２１は、選択された動作モードに対応するパネルモードにて、その動作モードのジョブに対して操作に応じた設定を行い（ステップＳ１１３）、本動作を終了する（Ｅｎｄ）。
【０１４０】
押下されたキーの種別がスタートキーである場合は（ステップＳ１１１；ジョブ生成）、ジョブの生成動作へ移行する。ＣＰＵ２１は、スタートキーの押下時点（設定完了時点）でのパネルモードを動作モードとしてＲＡＭ２４または不揮発メモリ２５に記憶し（ステップＳ１１４）、不揮発メモリ２５に記憶されている、ウイルスチェックの要否判定モードに係る設定情報を確認する（ステップＳ１１５）。
【０１４１】
設定情報から要否判定モードの固定を確認した場合には（ステップＳ１１６；固定）、ＣＰＵ２１はその設定情報に含まれている簡易判定または詳細判定を示す情報から、要否判定モードを簡易判定または詳細判定に決定し（ステップＳ；１１７）、ステップＳ１２１へ移行する。
【０１４２】
設定情報から要否判定モードの切換を確認した場合には（ステップＳ１１６；切換）、ＣＰＵ２１は現時点でのリソース（ＣＰＵ２１／ＲＡＭ２４）の残使用量を取得し（ステップＳ１１８）、不揮発メモリ２５から管理テーブル（３６ａ）を読み込み（ステップＳ１１９）、リソースの残使用量を管理テーブルに照らし合わせて要否判定モードを簡易判定または詳細判定に決定し（ステップＳ；１２０）、ステップＳ１２１へ移行する。
【０１４３】
なお、図５に示したリソースの残使用率に係る管理テーブル３６ｂを用いる場合には、ＣＰＵ２１が現時点でのリソース（ＣＰＵ２１／ＲＡＭ２４）の残使用量を取得して残使用率を算出し、不揮発メモリ２５から管理テーブル（３６ｂ）を読み込み、リソースの残使用率を管理テーブルに照らし合わせて要否判定モードを簡易判定または詳細判定に決定するなどの動作にすればよい。
【０１４４】
要否判定モードを詳細判定に決定した場合には（ステップＳ；１２１；詳細）、ＣＰＵ２１は、スタートキーの押下時点（設定完了時点）で保持している設定情報（動作モードを除く）をＲＡＭ２４または不揮発メモリ２５に記憶し（ステップＳ１２２）、ステップＳ１２３へ移行する。要否判定モードを簡易判定に決定した場合には（ステップＳ；１２１；簡易）、そのままステップＳ１２３へ移行する。
【０１４５】
タイマー設定がなされてない場合は（ステップＳ１２３；Ｎｏ（非タイマージョブ））、ＣＰＵ２１は、スタートキーが押下されてからの経過時間を計測するスタートタイマーをリセットする（ステップＳ１２４）。スタートタイマーは、たとえば、タイムカウントを常時続行するように構成されたタイマー（タイムカウンター）であり、リセットされるとカウント値を「０」に戻し（ゼロリセット）、以降は一定時間間隔で「１」カウントずつカウントアップしていく。
【０１４６】
またＣＰＵ２１は、ジョブを生成する（ステップＳ１２５）。詳細には、スタートキーの押下時点（設定完了時点）で保持している設定情報に基づいてジョブデータを生成しＲＡＭ２４または不揮発メモリ２５に記憶する。さらに、生成したジョブの履歴情報をジョブ履歴テーブル３７に記憶する。記憶する履歴情報は、ユーザＩＤ、ジョブＩＤ、ジョブ作成日時、ステータス、ジョブ設定情報などである。後にジョブを実行終了した場合は、ジョブ実行日時も記憶することになる。またここでは、履歴情報におけるジョブのステータスは、「キュー登録前」を記憶する。そしてＣＰＵ２１は、生成したジョブのキュー登録要求を実行し（ステップＳ１２６）、本動作を終了する（Ｅｎｄ）。
【０１４７】
タイマー設定がなされている場合は（ステップＳ１２３；Ｙｅｓ（タイマージョブ））、ＣＰＵ２１はステップＳ１２５と同様にジョブを生成し（ステップＳ１２７）、生成したジョブの履歴情報をジョブ履歴テーブル３７に記憶する。履歴情報におけるジョブのステータスは、「キュー登録前」を記憶する。そしてＣＰＵ２１は、生成したジョブをタイマージョブ実行リストに登録し（ステップＳ１２８）、本動作を終了する（Ｅｎｄ）。なお、ジョブをタイマージョブ実行リストに登録した際に、ジョブ履歴テーブル３７におけるこのジョブのステータスを「タイマーリスト登録」などに更新するようにしてもよい。
【０１４８】
図８は、複合機１０の表示部２７に表示されたタイマー送信設定画面５０の一例を示す図である。ＣＰＵ２１（表示処理部４２／操作処理部４１）は、操作部２８でタイマー送信の設定開始操作を受け付けると、表示部２７にタイマー送信設定画面５０を表示する。
【０１４９】
タイマー送信設定画面５０には、現在時刻５１と、操作パネル３５のテンキーなどの操作により分単位で入力される送信時刻５２と、入力した送信時刻の情報クリアを受け付けるクリアボタン５３と、タイマー送信設定のキャンセルを受け付けるキャンセルボタン５４と、タイマー送信設定の確定を受け付ける設定確定ボタン５５とが表示される。ユーザは、このタイマー送信設定画面５０に表示されたボタンや操作パネル３５のテンキーなどの操作を通じて、タイマー送信を行うファクシミリ送信ジョブの送信時刻の入力、入力した送信時刻の情報クリア、設定のキャンセル、設定の確定を行うことができる。
【０１５０】
図９は、複合機１０によるタイマージョブのキュー登録要求の動作を示す流れ図である。本動作は、分単位の時刻を更新するたびに行われる。
【０１５１】
ＣＰＵ２１は、図示しない時計部にて分単位で時刻が更新されると、本動作を開始する（Ｓｔａｒｔ）。ＣＰＵ２１（ジョブ管理部４４）は、タイマージョブ実行リストにジョブが登録されているか否かを確認する（ステップＳ１３１）。登録されていない場合は（ステップＳ１３１；Ｎｏ）、本動作を終了する（Ｅｎｄ）。
【０１５２】
登録されている場合は（ステップＳ１３１；Ｙｅｓ）、更新された現在の時刻がタイマージョブのジョブデータに係る送信時刻（ファクシミリ・タイマー送信時刻）であるか否かを確認する（ステップＳ１３２）。送信時刻でない場合は（ステップＳ１３２；Ｎｏ）、本動作を終了する（Ｅｎｄ）。送信時刻である場合は（ステップＳ１３２；Ｙｅｓ）、そのジョブに対するキュー登録要求を実行し（ステップＳ１３３）、本動作を終了する（Ｅｎｄ）。
【０１５３】
図１０〜図１２は、複合機１０によるジョブのキュー登録要求に対する動作を示す流れ図である。詳細には、図１０は本動作のメインルーチンを示す流れ図である。図１１は、ウイルスチェック要否判定のサブルーチンを示す流れ図であり、図１２は、ウイルスチェック実行確認のサブルーチンを示す流れ図である。ここでは、図１０〜図１２の流れをまとめて説明する。また、メインルーチンの動作は、ジョブのキュー登録要求が実行されるたびに行われる。
【０１５４】
ＣＰＵ２１は、ジョブのキュー登録要求が実行されると、図１０に示すメインルーチンの動作を開始し（Ｓｔａｒｔ）、ウイルスチェック要否判定をサブルーチンで行う（ステップＳ１４１）。
【０１５５】
図１１に示すサブルーチンでは、ＣＰＵ２１（ジョブ管理部４４）は、キュー登録要求の対象が受信ジョブであるか否かを確認する（ステップＳ１５１）。受信ジョブである場合は（ステップＳ１５１；Ｙｅｓ）、ＣＰＵ２１（挙動監視部４６）は、ウイルスチェックが不要であると判定し（ステップＳ１６５）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。
【０１５６】
続いてＣＰＵ２１（ジョブ管理部４４）は、キュー登録要求の対象がタイマージョブであるか否かを確認する（ステップＳ１５２）。タイマージョブである場合は（ステップＳ１５２；Ｙｅｓ）、ＣＰＵ２１（挙動監視部４６）は、ウイルスチェックが不要であると判定し（ステップＳ１６５）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。
【０１５７】
それ以外のジョブ（タイマージョブを除いたユーザ操作によるジョブ）である場合は（ステップＳ１５２；Ｎｏ）、ＣＰＵ２１（挙動監視部４６）は、スタートタイマーのカウント値を確認する（ステップＳ１５３）。スタートタイマーのカウント値が所定値以上である場合は（ステップＳ１５３；Ｙｅｓ）、異常を検知してウイルスチェックが必要であると判定し（ステップＳ１６４）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。
【０１５８】
スタートタイマーのカウント値が所定値未満である場合は（ステップＳ１５３；Ｎｏ）、ＣＰＵ２１（ジョブ管理部４４）は、キュー登録要求の対象がコピージョブまたはプリントジョブであるか否かを確認する（ステップＳ１５４）。該当ジョブでない場合は（ステップＳ１５４；Ｎｏ）、ステップＳ１５６へ移行する。該当ジョブである場合は（ステップＳ１５４；Ｙｅｓ）、ＣＰＵ２１（挙動監視部４６）は、ジョブデータにおける印刷部数を確認する（ステップＳ１５５）。印刷部数が所定値以上である場合は（ステップＳ１５５；Ｙｅｓ）、異常を検知してウイルスチェックが必要であると判定し（ステップＳ１６４）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。印刷部数が所定値未満である場合は（ステップＳ１５５；Ｎｏ）、ステップＳ１５６へ移行する。
【０１５９】
上記の印刷部数における所定値（所定の閾値）は、たとえば、複合機１０による印刷部数の設定上限値や、部署で予め設定している印刷部数の制限値などにしてもよい。また、過去の履歴における最高部数に基づいて決定するようにしてもよい。最高部数に対して非常に大きな値、たとえば、最高部数に所定係数を乗算した値（所定倍数値）や最高部数に所定部数を加算した値（所定部数加算値）などにしてもよい。具体的には、たとえば、過去の履歴における最高部数が２０部である場合は、所定係数＝５を乗算した１００部などにしたり、所定部数＝１００部を加算した１２０部などにしたりしてもよい。
【０１６０】
ステップＳ１５６では、ＣＰＵ２１（ジョブ管理部４４）は、キュー登録要求の対象がファクシミリ送信ジョブ（ＦＡＸジョブ）であるか否かを確認する（ステップＳ１５６）。該当ジョブでない場合は（ステップＳ１５６；Ｎｏ）、ステップＳ１５７へ移行する。該当ジョブである場合は（ステップＳ１５６；Ｙｅｓ）、ステップＳ１５９へ移行する。
【０１６１】
ステップＳ１５７では、ＣＰＵ２１（ジョブ管理部４４）は、キュー登録要求の対象がスキャンジョブまたはボックスジョブであるか否かを確認する（ステップＳ１５７）。該当ジョブでない場合は（ステップＳ１５７；Ｎｏ）、ステップＳ１６０へ移行する。該当ジョブである場合は（ステップＳ１５７；Ｙｅｓ）、メール送信設定があるか否かを確認する（ステップＳ１５８）。メール送信設定がない場合は（ステップＳ１５８；Ｎｏ）、ステップＳ１６０へ移行する。メール送信設定がある場合は（ステップＳ１５８；Ｙｅｓ）、ステップＳ１５９へ移行する。
【０１６２】
なお、ステップＳ１５８では送信設定の確認を行う対象（送信処理の種類）の一例として、メール送信を挙げているが、他の種類の送信処理、たとえば、ＦＴＰ（File Transfer Protocol）などによるファイル送信を対象にするようにしてもよい。
【０１６３】
ステップＳ１５９では、ＣＰＵ２１（挙動監視部４６）は、ジョブデータにおける送信宛先数を確認する（ステップＳ１５９）。送信宛先数が所定値以上である場合は（ステップＳ１５９；Ｙｅｓ）、異常を検知してウイルスチェックが必要であると判定し（ステップＳ１６４）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。送信宛先数が所定値未満である場合は（ステップＳ１５９；Ｎｏ）、ステップＳ１６０へ移行する。
【０１６４】
上記の送信宛先数における所定値（所定の閾値）は、たとえば、複合機１０による送信宛先数の登録上限値や、予め登録されている全送信宛先数などにしてもよい。
【０１６５】
ステップＳ１６０では、ＣＰＵ２１（挙動監視部４６）は、動作モードが記憶されているか否かを確認する（ステップＳ１６０）。操作部２８を通じてジョブの設定を受けスタートキーの押下を受けて正常にジョブが生成されていれば、図７のステップＳ１１４で設定完了時のパネルモードが動作モードして記憶されているはずであり、ここではその記憶されているはずである設定完了時のジョブの動作モード（＝パネルモード）の記憶の有無を確認する。
【０１６６】
動作モードが記憶されていない場合は（ステップＳ１６０；Ｎｏ）、異常を検知してウイルスチェックが必要であると判定し（ステップＳ１６４）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。動作モードが記憶されている場合は（ステップＳ１６０；Ｙｅｓ）、ＣＰＵ２１は、ウイルスチェックの要否判定モードが簡易判定であるか詳細判定であるかを確認する（ステップＳ１６１）。
【０１６７】
要否判定モードが簡易判定である場合には（ステップＳ１６１；簡易）、ＣＰＵ２１（挙動監視部４６）は、生成されたジョブデータにおける動作モードと、記憶されている動作モード、すなわち、設定完了時のジョブの動作モード（＝パネルモード）を比較し、一致するか否かを確認する（ステップＳ１６２）。
【０１６８】
一致する場合は（ステップＳ１６２；Ｙｅｓ）、ウイルスチェックが不要であると判定し（ステップＳ１６５）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。一致しない場合は（ステップＳ１６２；Ｎｏ）、異常を検知してウイルスチェックが必要であると判定し（ステップＳ１６４）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。
【０１６９】
要否判定モードが詳細判定である場合には（ステップＳ１６１；詳細）、ＣＰＵ２１（挙動監視部４６）は、生成されたジョブデータと、記憶されている設定情報（動作モードを含む）、すなわち、設定完了時のジョブの設定内容を示す設定情報（動作モード＝パネルモードを含む）を比較し、一致するか否かを確認する（ステップＳ１６３）。
【０１７０】
一致する場合は（ステップＳ１６３；Ｙｅｓ）、ウイルスチェックが不要であると判定し（ステップＳ１６５）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。一致しない場合は（ステップＳ１６３；Ｎｏ）、異常を検知してウイルスチェックが必要であると判定し（ステップＳ１６４）、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。
【０１７１】
図１０に示すメインルーチンでは、ウイルスチェック要否判定を終えると、ＣＰＵ２１（挙動監視部４６）は判定結果を確認する（ステップＳ１４２）。ウイルスチェックが不要であると判定した場合は（ステップＳ１４２；Ｎｏ）、ＣＰＵ２１（ジョブ管理部４４）は、ジョブをジョブキューに登録し（ステップＳ１４３）、ジョブ履歴テーブル３７におけるこのジョブのステータスを「実行待ち」に更新して、本動作を終了する（Ｅｎｄ）。その後は、このジョブが実行開始されると、ジョブ履歴テーブル３７におけるこのジョブのステータスを「実行中」に更新し、ジョブが実行終了すると、同ステータスを「実行済み」に更新する。さらに、ジョブ履歴テーブル３７におけるこのジョブの履歴情報に「実行日時」を記憶する。
【０１７２】
ウイルスチェックが必要であると判定した場合は（ステップＳ１４２；Ｙｅｓ）、ＣＰＵ２１は、ウイルスチェック実行確認をサブルーチンで行う（ステップＳ１４４）。
【０１７３】
図１２に示すサブルーチンでは、ウイルスチェックの実行前に、ユーザに対して、ジョブの削除およびウイルスチェックを実行する旨を確認画面の表示によって報知する。ウイルスチェックは、ユーザが本画面で確認ボタンを押下することにより実行される。またここでは、確認ボタンが押下されない場合でも一定時間が経過すると、ウイルスチェックを実行するようにしている。
【０１７４】
詳細には、ＣＰＵ２１（表示処理部４２）は、表示部２７に確認画面を表示する（ステップＳ１７１）。図１３は、複合機１０の表示部２７に表示された確認画面６０の一例を示す図である。
【０１７５】
確認画面６０には、ユーザに対してジョブの削除およびウイルスチェックを実行する旨を報知するメッセージ６１と、ウイルスチェックの対象となるジョブの設定情報６２と、ユーザから確認したことの意思表示を受け付ける確認ボタン６３とが表示される。ユーザは、この確認画面６０に表示されたメッセージ６１およびジョブの設定情報６２を見て、自分の実行しようとしたジョブの情報と異常（ウイルス感染の可能性大）を把握することができる。また、確認ボタン６３を押下操作することで、ジョブの削除およびウイルスチェックの実行に対し、確認したことの意思表示を行うことができる。
【０１７６】
図１２に示すサブルーチンでは、ＣＰＵ２１（操作処理部４１／表示処理部４２）は、確認画面６０における確認ボタン６３の押下操作を監視する。確認ボタン６３の押下を受けた場合は（ステップＳ１７３；Ｙｅｓ）、確認画面６０の表示を停止し、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。確認ボタン６３の押下を受けずに一定時間を経過した場合も（ステップＳ１７２；Ｙｅｓ）、確認画面６０の表示を停止し、本サブルーチンを終了してメインルーチンへ戻る（Ｒｅｔｕｒｎ）。
【０１７７】
図１０に示すメインルーチンでは、ウイルスチェック実行確認を終えると、ＣＰＵ２１（ウイルスチェック部４７）は、ウイルスチェックを実行する（ステップＳ１４５）。ウイルスチェックによりコンピュータウイルスを検出しなかった場合は（ステップＳ１４６；Ｎｏ）、ＣＰＵ２１（ジョブ管理部４４）は、ジョブをジョブキューに登録し（ステップＳ１４３）、本動作を終了する（Ｅｎｄ）。その後は、このジョブが実行開始されると、ジョブ履歴テーブル３７におけるこのジョブのステータスを「実行中」に更新し、ジョブが実行終了すると、同ステータスを「実行済み」に更新する。さらに、ジョブ履歴テーブル３７におけるこのジョブの履歴情報に「実行日時」を記憶する。
【０１７８】
ウイルスチェックによりコンピュータウイルスを検出し、実行前のジョブ（ジョブキューに登録されている実行待ちのジョブやキュー登録要求を行った生成ジョブ）がコンピュータウイルスに感染している場合は（ステップＳ１４６；Ｙｅｓ）、そのジョブを削除することになる。ＣＰＵ２１（ジョブ管理部４４）は、削除の対象となるジョブを履歴に保存し（ステップＳ１４７）、対象ジョブを削除する（ステップＳ１４８）。履歴の保存は、ジョブ履歴テーブル３７に記憶されている対象ジョブの削除時点でのステータス（「キュー登録前」／「実行待ち」）を保存すると共に、「削除」を追加して対応付けて記憶することにより行う。そして、ＣＰＵ２１（表示処理部４２）は、ジョブ履歴テーブル３７に記憶されているジョブの履歴情報を用いて、表示部２７にジョブ削除通知画面を表示し（ステップＳ１４９）、本動作を終了する（Ｅｎｄ）。
【０１７９】
図１４は、ジョブの管理および処理状態を模式的に示す図である。ウイルスチェックの実行に当たっては、既にジョブの実行中である場合や、ジョブキューにジョブが１つ以上登録されている場合が想定される。たとえば、図１４に示すように、ジョブ０が実行中で、ジョブキュー７０にはジョブ１およびジョブ２の２つのジョブが登録されていて実行待ちであり、生成されてキュー登録要求が行われたジョブ３にてウイルスチェックが必要であると判定されたような場合である。
【０１８０】
このような場合は、ウイルスチェックを直ちに実行すると、実行中のジョブの処理が低下してしまうことになるため、たとえば、実行中のジョブの処理を完了してから、次のジョブの実行を保留し、ウイルスチェックを開始する。そして、コンピュータウイルスを検出した場合は駆除する。また、キュー登録要求が行われたジョブやジョブキュー７０に登録されているジョブがコンピュータウイルスに感染している場合は、それらのジョブを削除する。たとえば、図１４に示す生成されたジョブ３に加えて、実行待ちのジョブ１、ジョブ２もコンピュータウイルスに感染している場合は、それら全てのジョブを削除する。
【０１８１】
図１５は、複合機１０の表示部２７に表示されたジョブ削除通知画面８０の一例を示す図である。
【０１８２】
ジョブ削除通知画面８０には、ユーザに対してコンピュータウイルスに感染したジョブを削除した旨を報知するメッセージ８１と、削除されたジョブに関する情報（履歴情報）が削除ジョブリスト８２として表示される。このジョブ削除通知画面８０の表示タイミングは、ウイルスチェック終了後でもよいし、ウイルス駆除中やウイルス駆除終了後でもよい。また、ユーザによるメニュー選択で表示するようにしてもよい。ユーザは、このジョブ削除通知画面８０に表示されたメッセージ８１および削除ジョブリスト８２を見て、ウイルス感染によって削除されたジョブの情報を把握することができる。
【０１８３】
このように、本実施形態に係る複合機１０では、ジョブの実行前にウイルスチェックの要否を判定することで、すなわち、複合機１０がコンピュータウイルスに感染していたりコンピュータウイルスがジョブに関与していたりする場合でも、そのジョブを実行せずにジョブデータに基づいてウイルスチェックの要否を判定することで、コンピュータウイルスによる被害を出す前にウイルスチェックの要否を判定することができる。また、ジョブデータに基づく判定であれば、即時判定が可能であると共に、判定処理自体は簡素で処理負荷を抑えられる。たとえば、先行ジョブの実行中などに、生成直後のジョブに係るジョブデータに基づいてウイルスチェックの要否判定を行ったとしても、現行処理に与える負荷は小さくて済む。これにより、処理を妨げずにウイルスチェックの要否を判定することができる。
【０１８４】
そして、ジョブデータに基づいて異常を検知したことによりウイルスチェックが必要であると判定した場合は、その適切なタイミングでウイルスチェックを実行し、コンピュータウイルスを検出した場合は駆除すると共に、コンピュータウイルスが関与（不正生成、データ改竄、感染）しているジョブは削除する、といった対応を、ジョブを実行する前に行えるようになる。これにより、処理の低下を避けるためにウイルスチェック（プログラム）を定期的かつ頻繁に行うことが困難な場合でも、効率よくウイルスチェックを実行できるようになり、コンピュータウイルスによる被害を未然に防止することができる。
【０１８５】
また、要否判定モードの自動切換を行う設定では、リソース（ＣＰＵ／ＲＡＭ）の余裕度（残使用量／残使用率）が小さい場合（所定値未満の場合）には、ジョブデータと設定情報の動作モードのみを比較する簡易判定に切り換えられるようになり、リソースの余裕度が大きい場合（所定値以上の場合）には、ジョブデータと設定情報の全内容を比較する詳細判定に切り換えられるようになる。これにより、現行処理に対して遅延、停滞、中断などの悪影響を与えないようにして、リソースの余裕度に応じた（現行処理に配慮した）簡易または詳細の適宜な比較を行うことができる。
【０１８６】
要否判定モードが簡易判定にされた場合には、動作モードのみが記憶および比較されるので、全ての設定情報（設定項目毎の個々の情報）を記憶してジョブデータ内の全てのデータ値と比較する詳細判定に比べて、必要記憶容量を低減できると共に、比較処理自体を簡素化できて処理負荷を低減できる。要否判定モードが詳細判定にされた場合には、ジョブデータと設定情報の全内容が詳細に比較されるので、異常の発生をより正確に検知することができる。
【０１８７】
また、簡易および詳細判定のいずれの場合も、ユーザ操作によるジョブの設定完了時点でのパネルモードを用いて、設定情報における動作モード（＝パネルモード）を記憶しておき、ジョブデータにおける動作モードと比較することで、異常を検知するようにしている。たとえば、コンピュータウイルスによって、ジョブデータにおける動作モードがコピーからファクシミリ（送信）などへ改竄された場合は、送信先の外部装置への感染拡大や情報漏洩といった大きな被害をもたらすおそれがあるが、そのような悪質な改竄を検知して被害を阻止することができる。
【０１８８】
特に本実施形態では、設定情報における動作モード自体がコンピュータウイルスによって改竄された場合でも、設定完了時点でのパネルモードを動作モードとして記憶しておくことにより、ユーザの指定した動作モードを、パネルモードを利用して正確かつ安全に保存することができ、そのような設定情報（動作モード）の改竄による異常も検知することができる。
【０１８９】
また、ユーザ操作によるジョブの設定完了時には、設定情報における動作モード（＝パネルモード）を記憶・保存している。ジョブデータは、このジョブの設定完了時点での設定情報に基づいて生成され、記憶された動作モード（＝パネルモード）と生成時に、間接的に対応付けられることになる。
【０１９０】
ユーザからジョブの設定完了を受けたときの設定情報が記憶される本実施形態の構成において、この設定情報における動作モードが記憶されていない状態で生成されたジョブデータは、設定情報に基づいて生成された正規のジョブデータではなく、コンピュータウイルスによって生成された可能性の高い非正規なジョブデータであると判断できる。このような動作モード（設定情報）の記憶の有無に基づくことで、ユーザ操作によらない非正規なジョブが識別可能であり、異常を検知することができる。
【０１９１】
また、ユーザからジョブの設定完了操作（スタートキーの押下操作）を受けた場合は直ちにそのジョブデータが生成されるが、設定完了時点から長時間（所定時間）が経過して生成されたジョブデータは、コンピュータウイルスによって生成された可能性の高い非正規なジョブデータであると判断できる。このような設定完了時点から経過時間（スタートタイマーのカウント値）とジョブ（ジョブデータ）の生成タイミングに基づくことで、ユーザ操作によらない非正規なジョブが識別可能であり、異常を検知することができる。
【０１９２】
また、ジョブデータに含まれているデータ値（印刷部数／送信宛先数）が所定値以上である場合は、データ値がコンピュータウイルスによって改竄された可能性が高いと判断できる。このように、ジョブデータのみに基づいて、ジョブデータの改竄を識別し、異常を検知することもできる。
【０１９３】
また、ウイルスチェックが必要であると判定した場合に実行中のジョブが存在すれば、そのジョブの処理が優先されて処理完了までウイルスチェックが行われないので、実行中のジョブの処理がウイルスチェックの実行によって妨げられることはない。さらに、実行待ちのジョブが存在すれば、実行中のジョブの処理完了後に実行待ちのジョブが保留にされてウイルスチェックが行われるので、実行中のジョブの処理を妨げず、実行待ちのジョブを実行する前のできるだけ早いタイミングに（仮にコンピュータウイルスに感染していた場合はその被害を出す前に）、ウイルスチェックを行うことができる。
【０１９４】
［第２の実施形態］
第２の実施形態は、第１の実施形態における図７で説明したジョブの設定操作・生成・キュー登録要求の動作、および、図１１で説明したウイルスチェック要否判定のサブルーチンの動作における処理ステップを一部変更した変形例である。詳細には、ジョブデータに基づいた異常の確認で使用する動作モード（パネルモード）の記憶タイミング、ウイルスチェックの要否判定モード（簡易判定／詳細判定）の設定の確認および決定タイミングなどを変更して、処理を簡素化した変形例である。他の動作や表示画面、複合機１０の構成（動作プログラムを除く）などは、第１の実施形態と同様である。
【０１９５】
図１６は、本実施形態に係るジョブの設定操作・生成・キュー登録要求の動作を示す流れ図であり、図１７および図１８は、本実施形態に係るウイルスチェック要否判定のサブルーチンの動作を示す流れ図である。ここでは、第１の実施形態と異なる点のみを説明する。
【０１９６】
図１６に示す動作では、第１の実施形態（図７）に対し、ステップＳ１１４〜ステップＳ１２２が削除された流れとなっている。第１の実施形態では、ユーザ操作によるジョブの設定で、スタートキーの押下操作を受けると、スタートキーの押下時点（設定完了時点）でのパネルモードを動作モードとしてＲＡＭ２４に記憶し（ステップＳ１１４）、ウイルスチェックの要否判定モード（簡易判定／詳細判定）の設定の確認および決定などを行うようにしていたが（ステップＳ１１５〜ステップＳ１２２）、第２の実施形態ではこの処理ステップを行わずに本動作を進めるようにしている。
【０１９７】
図１７および図１８に示す動作では、第１の実施形態（図１１）に対し、本動作の開始直後に、第１の実施形態における図７のステップＳ１１４に相当するステップＳ２５１、および、図７のＳ１１５〜ステップＳ１２２と同じ内容のステップＳ２５２〜ステップＳ２５９が追加されると共に（図１７参照）、第１の実施形態におけるステップＳ１６０が削除された流れとなっている（図１８参照）。
【０１９８】
詳細には、図１６の動作にて行っていない、現在のパネルモードを動作モードとしてＲＡＭ２４または不揮発メモリ２５に記憶する処理ステップ（ステップＳ２５１）と、ウイルスチェックの要否判定モード（簡易判定／詳細判定）の設定の確認および決定などを行う処理ステップ（ステップＳ２５２〜ステップＳ２５９）を、本動作の開始直後に行うようにしている。
【０１９９】
これにより、ステップＳ２５１では、ユーザによるジョブの設定完了を受けて生成されたジョブのキュー登録要求が実行された場合には（図１６のステップＳ２１１；ジョブ生成→ステップＳ２１６→ステップＳ２１７→図１０のステップＳ１４１→図１７のステップＳ２５１）、その設定完了時点（スタートキーの押下時点）のパネルモードが動作モードとして記憶・保存されるようになる。また、ユーザがジョブの設定を行っていないときなどに、コンピュータウイルスによって非正規なジョブが生成されて図１０のキュー登録要求が実行（開始）されたような場合には、ステップＳ１４１にて図１７および図１８のサブルーチンを開始し、ステップＳ２５１ではこの非正規なジョブが生成された時点（現時点）のパネルモードが動作モードとして記憶・保存されるようになる。たとえば、複合機１０がユーザ操作によるジョブの設定を受けていない状態（待機状態やジョブ実行中など）であり、操作パネル３５の表示部２７に初期画面が表示されたパネルモード（デフォルトパネルモード）となっているときに、非正規なジョブが生成されたような場合には、そのパネルモードが動作モードとして記憶・保存されるようになる。
【０２００】
このような場合は、ステップＳ２７０によるジョブデータの動作モードと、記憶されている動作モード（＝パネルモード）との比較による確認で、不一致となり（ステップＳ２７０；Ｎｏ）、異常を検知してウイルスチェックが必要であると判定されるようになる（ステップＳ２７２）。
【０２０１】
このように、パネルモードを動作モードとして記憶する処理ステップ（ステップＳ２５１）の実行タイミングなどを変更した本実施形態においても、第１の実施形態と同様に、ジョブデータがユーザ操作による設定完了を受けて生成されたジョブデータであるか否かに基づいてウイルスチェックの要否判定を行い、設定完了を受けて生成されたジョブデータでないと判断した場合に、異常を検知するようになっている。
【０２０２】
また、キュー登録要求が実行されてから（ジョブが生成されてから）、動作モード（＝パネルモード）を記憶していることにより、第１の実施形態で行っていた動作モード（＝パネルモード）の記憶の有無確認が不要となる（図１１のステップＳ１６０）。これにより、本実施形態では第１の実施形態に比べて処理が簡素化される。そして本実施形態による処理（動作の流れ）によっても、第１の実施形態と同様の効果が得られる。
【０２０３】
以上、本発明の実施形態を図面によって説明してきたが、具体的な構成は実施形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。
【０２０４】
たとえば、実行前のジョブに係るジョブデータに基づくウイルスチェックの要否判定（異常検知）において、ジョブデータと設定情報の簡易判定による比較では、設定情報における動作モードのみを記憶して比較する例を説明したが、動作モードを含む複数の情報（ただし、全ての情報は除く）を記憶して比較するようにしてもよい。また、設定情報の記憶の有無確認では、動作モードのみを対象にした例で説明したが、動作モードを含む複数の情報あるいは全ての情報などを対象にしてもよい。
【０２０５】
上記の比較や記憶の有無確認の対象となるジョブの属性（モード）については、ジョブ種を示す大カテゴリ（最上位のカテゴリ）の動作モード以外に、複数種類の設定項目を分類する基本モード／応用モードなどの中カテゴリのモード（所定の分類モード）などを用いるようにしてもよい。また、中カテゴリのモード別に複数種類のパネルモード（設定モード）が設けられている構成であれば、設定情報として記憶する中カテゴリのモードを、実施形態で説明したようにパネルモードで代用するようにしてもよい。この場合は、特許請求の範囲における請求項１６の構成と同様に、以下のように構成することもできる。
【０２０６】
ジョブの設定では、所定の分類モード（中カテゴリのモード）別に設けられた複数種類の設定モード（パネルモード）が操作部で分類モードの選択操作を受けて切り換えられると共に、切り換えられた分類モードに対応する設定モードで設定を受け付け、記憶部（第２の記憶部）には、ジョブデータが生成されるときの設定モードが設定情報における分類モードとして記憶されることを特徴とする。
【０２０７】
第１の実施形態では、ユーザ操作によるジョブの設定完了時点でのパネルモードを動作モードとして記憶するようにしているが、このようなパネルモードを利用せず、ユーザ操作により選択された動作モード（設定情報における動作モード）自体、あるいは、ユーザ操作により選択された上記の分類モード自体などを記憶するようにしてもよい。
【０２０８】
ジョブデータに含まれているデータ値の確認（ジョブデータ自体に基づく要否判定（異常検知））では、対象となるデータ値として印刷部数／送信宛先数を例に説明したが、確認するデータ値の対象はこれに限らない。印刷枚数に予め制限値（上限値）などが設定されている場合は、印刷枚数を対象にしてもよい。
【０２０９】
また、実施形態では対象となるデータ値が所定の閾値以上であるか否かを確認するようにしているが、データ値に対する確認内容はこれに限らない。たとえば、対象となるデータ値の有無（存在すべきデータ値の有無）や正確性、パラメータ間の整合性などを確認するようにしてもよい。
【０２１０】
具体的には、ジョブデータに、そのジョブデータを生成した（ジョブの設定および実行指示を行った）ユーザの識別情報（ユーザＩＤ）が含まれるような構成であれば、ユーザ操作によらない非正規のジョブデータにはそのユーザ識別情報が含まれていない可能性が高いと想定できるため、このような存在すべきデータ値の有無を確認するようにしてもよい。また、コンピュータウイルスによって偽造された偽ユーザ識別情報が含まれている可能性も想定できるため、対象となるデータ値の正確性を確認するようにしてもよい。また、たとえば、コピージョブのジョブデータの中にファクシミリジョブの設定項目に係るパラメータ（たとえば、送信宛先など）が存在するようなことは異常であり、このような１つのジョブデータの中に共存しないはずのパラメータ（異なる種類のジョブの共存しないはずのパラメータなど）が存在するか否かといったパラメータ間の不整合を確認するようにしてもよい。
【０２１１】
また、対象とするデータ値を複数にするようにしてもよく、確認内容を複数種類組み合わせるようにしてもよい。
【０２１２】
ウイルスチェックの要否判定モード（簡易判定／詳細判定）における自動切換は、リソースの余裕度などに基づく他に、ジョブの設定完了を受けたときの設定情報に基づいて行うように構成してもよい。
【０２１３】
また、実施形態ではジョブ実行前の要否判定に係るウイルスチェックのみを説明したが、これを定期的に実行するウイルスチェックと組み合わせて行うようにしてもよい。
【０２１４】
また、実施形態ではジョブを実行する前にウイルスチェックの要否判定を行う場合で説明したが、ジョブの実行開始後（実行中）に行うようにしてもよい。たとえば、コンピュータウイルスが関与したジョブに対して実行開始後に判定を行ったとしても、直後や比較的短時間のうちなどであれば、その判定時点で直ぐに判定結果を得られ、ジョブを中断してウイルスチェックを実行することができる。このように、ジョブの実行開始後にウイルスチェックの要否判定を行っても、コンピュータウイルスによる被害を十分抑えることができる。
【０２１５】
また、実施形態ではコンピュータウイルスを検出する検出部（ウイルスチェック部４７）を複合機（画像処理装置）が備えた構成としているが、この検出部はジョブ処理システムに含まれる外部装置（サーバなど）が備えるように構成してもよい。たとえば、複合機の制御部（ＣＰＵ２１）は、自機内のウイルスチェックが必要であると判定した場合は、検出部を備えたサーバに対して、自機内のウイルスチェックを依頼する。依頼を受けたサーバ（検出部）は、その複合機内のウイルスチェックを実行するなどの構成としてもよい。
【０２１６】
また、本発明に係るジョブ処理システムおよび画像処理装置は、実施形態で説明した複合機に限らず、複写機、スキャナ機、ファクシミリ機などの他のシステムおよび装置も対象にすることができる。
【符号の説明】
【０２１７】
２…通信回線
１０…複合機（ＭＦＰ１）
１１…端末（ＰＣ）
１２…ファクシミリ機（ＦＡＸ）
１３…複合機（ＭＦＰ２）
２１…ＣＰＵ
２２…バス
２３…ＲＯＭ
２４…ＲＡＭ
２５…不揮発メモリ
２６…ハードディスク装置
２７…表示部
２８…操作部
２９…認証部
３０…スキャナ部
３１…画像処理部
３２…プリンタ部
３３…ファクシミリ通信部
３４…ネットワーク通信部
３５…操作パネル
３６（３６ａ、３６ｂ）…管理テーブル
３７…ジョブ履歴テーブル
３８…ウイルス定義ファイル
３９…ボックス
４１…操作処理部
４２…表示処理部
４３…状態管理部
４４…ジョブ管理部
４５…ジョブ処理部
４６…挙動監視部
４７…ウイルスチェック部
５０…タイマー送信設定画面
５１…現在時刻
５２…送信時刻
５３…クリアボタン
５４…キャンセルボタン
５５…設定確定ボタン
６０…確認画面
６１…メッセージ
６２…ジョブの設定情報
６３…確認ボタン
７０…ジョブキュー
８０…ジョブ削除通知画面
８１…メッセージ
８２…削除ジョブリスト
【図１】
2011039599.tif 000003
【図２】
2011039599.tif 000004
【図３】
2011039599.tif 000005
【図４】
2011039599.tif 000006
【図５】
2011039599.tif 000007
【図６】
2011039599.tif 000008
【図７】
2011039599.tif 000009
【図８】
2011039599.tif 000010
【図９】
2011039599.tif 000011
【図１０】
2011039599.tif 000012
【図１１】
2011039599.tif 000013
【図１２】
2011039599.tif 000014
【図１３】
2011039599.tif 000015
【図１４】
2011039599.tif 000016
【図１５】
2011039599.tif 000017
【図１６】
2011039599.tif 000018
【図１７】
2011039599.tif 000019
【図１８】
2011039599.tif 000020