(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-19
(45)【発行日】2022-12-27
(54)【発明の名称】画像形成装置、情報処理装置及びプログラム
(51)【国際特許分類】
G06F 21/56 20130101AFI20221220BHJP
【FI】
G06F21/56 340
(21)【出願番号】P 2018217009
(22)【出願日】2018-11-20
【審査請求日】2021-09-15
(73)【特許権者】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】100117651
【氏名又は名称】高垣 泰志
(72)【発明者】
【氏名】橋本 晋弥
【審査官】岸野 徹
(56)【参考文献】
【文献】特開2006-293557(JP,A)
【文献】特開2002-032258(JP,A)
【文献】特開2016-206853(JP,A)
【文献】特開2010-009474(JP,A)
【文献】特開2010-176246(JP,A)
【文献】国際公開第2004/084071(WO,A1)
【文献】特開2002-196942(JP,A)
【文献】特開2016-018462(JP,A)
【文献】特開2015-127887(JP,A)
【文献】特開2011-039599(JP,A)
【文献】特開2013-161117(JP,A)
【文献】特開2016-086222(JP,A)
【文献】特開2007-006081(JP,A)
【文献】特開2002-328813(JP,A)
【文献】特開2011-065483(JP,A)
【文献】特開2010-086538(JP,A)
【文献】特開2008-047123(JP,A)
【文献】米国特許出願公開第2009/0240738(US,A1)
【文献】米国特許出願公開第2011/0032567(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/56
(57)【特許請求の範囲】
【請求項1】
受け取った印刷ジョブに基づいて印刷を行う画像形成装置であって、
受け取った印刷ジョブに対してウイルスの有無を
印刷を行う前に検出するためのパターンファイルを記憶する記憶手段と、
前記記憶手段に記憶されているパターンファイルを所定の記憶領域に展開し、前記所定の記憶領域に展開されたパターンファイルを参照してウイルス検出処理を実行するウイルス検出手段と、
新バージョンのパターンファイルをダウンロードして前記記憶手段に保存するダウンロード手段と、
前記ダウンロード手段によるダウンロードが完了した後、前記ウイルス検出手段によるウイルス検出処理が行われていないことを条件として
、旧バージョンのパターンファイルが展開されていた前記所定の記憶領域
に新バージョンのパターンファイル
を展開して更新するファイル更新手段と、
を備えることを特徴とする
画像形成装置。
【請求項2】
前記ファイル更新手段は、前記ウイルス検出手段を再起動させることより、前記記憶手段に記憶されている新バージョンのパターンファイルを前記所定の記憶領域に展開させることを特徴とする請求項1に記載の
画像形成装置。
【請求項3】
前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に前記ウイルス検出手段によるウイルス検出処理が行われている場合、パターンファイルの更新を保留することを特徴とする請求項1又は2に記載の
画像形成装置。
【請求項4】
前記ファイル更新手段は、パターンファイルの更新を保留している状態において、前記ウイルス検出手段によるウイルス検出処理が終了した後、パターンファイルの更新を開始することを特徴とする請求項3に記載の
画像形成装置。
【請求項5】
ウイルスの有無を検出するためのパターンファイルを記憶する記憶手段と、
前記記憶手段に記憶されているパターンファイルを所定の記憶領域に展開し、前記所定の記憶領域に展開されたパターンファイルを参照してウイルス検出処理を実行するウイルス検出手段と、
新バージョンのパターンファイルをダウンロードして前記記憶手段に保存するダウンロード手段と、
前記ダウンロード手段によるダウンロードが完了した後、前記ウイルス検出手段によるウイルス検出処理が行われていないことを条件として前記所定の記憶領域に展開されているパターンファイルを新バージョンのパターンファイルに更新するファイル更新手段と、
前記ウイルス検出処理が行われた後に前記ウイルス検出処理が行われたデータに基づいて予め指定された処理を実行するデータ処理手段
と、
を備え、
前記ファイル更新手段は、
前記ダウンロード手段によるダウンロード完了時に前記ウイルス検出手段による前記ウイルス検出処理が行われている場合、パターンファイルの更新を保留し、前記ウイルス検出手段による前記ウイルス検出処理が終了した後、前記データ処理手段による処理に要する時間が所定時間以上である場合にパターンファイルの更新を開始することを特徴とする情報処理装置。
【請求項6】
前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時にパターンファイルの更新を保留し、所定の動作状態へ移行するときにパターンファイルの更新を開始することを特徴とする請求項1乃至3のいずれかに記載の
画像形成装置。
【請求項7】
通電状態を通常通電状態から省電力状態に移行させる通電制御手段、
を更に備え、
前記ファイル更新手段は、前記通電制御手段によって通電状態が前記省電力状態へ移行するときにパターンファイルの更新を開始することを特徴とする請求項6に記載の
画像形成装置。
【請求項8】
ユーザーによって指定された
印刷ジョブを実行するジョブ制御手段、
を更に備え、
前記ファイル更新手段は、前記ジョブ制御手段による
印刷ジョブの実行状態へ移行するときにパターンファイルの更新を開始することを特徴とする請求項6に記載の
画像形成装置。
【請求項9】
ユーザーによって指定された
印刷ジョブを実行するジョブ制御手段、
を更に備え、
前記ファイル更新手段は、前記ジョブ制御手段による
印刷ジョブの実行が中断されるときにパターンファイルの更新を開始することを特徴とする請求項6に記載の
画像形成装置。
【請求項10】
前記ジョブ制御手段は、
印刷ジョブの実行中に
印刷ジョブの実行を継続させることができないエラーが発生した場合に
印刷ジョブの実行を中断することを特徴とする請求項9に記載の
画像形成装置。
【請求項11】
ウイルスの有無を検出するためのパターンファイルを記憶する記憶手段と、
前記記憶手段に記憶されているパターンファイルを所定の記憶領域に展開し、前記所定の記憶領域に展開されたパターンファイルを参照してウイルス検出処理を実行するウイルス検出手段と、
新バージョンのパターンファイルをダウンロードして前記記憶手段に保存するダウンロード手段と、
前記ダウンロード手段によるダウンロードが完了した後、前記ウイルス検出手段による前記ウイルス検出処理が行われていないことを条件として前記所定の記憶領域に展開されているパターンファイルを新バージョンのパターンファイルに更新するファイル更新手段と、
ジョブを受け付けるジョブ受付手段と、
前記ジョブ受付手段によって受け付けられたジョブを実行するジョブ制御手段と、
前記ジョブ制御手段によるジョブの実行中に前記ジョブ受付手段によってジョブが受け付けられた場合に待ち行列に登録してジョブを管理するジョブ管理手段と、
を備え、
前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に、前記待ち行列に前記ウイルス検出処理を行わないジョブが登録されている場合、前記ウイルス検出処理を行わないジョブを優先的に前記ジョブ制御手段に実行させ、前記ジョブ制御手段によって前記ウイルス検出処理を行わないジョブが実行されているときにパターンファイルの更新を行うことを特徴とす
る情報処理装置。
【請求項12】
前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に前記ウイルス検出手段によるウイルス検出処理が行われている場合、前記ウイルス検出処理を停止させ、前記ジョブ制御手段によって前記ウイルス検出処理を行わないジョブが実行されているときにパターンファイルの更新を行うことを特徴とする請求項11に記載の情報処理装置。
【請求項13】
印刷ジョブを受け付けるジョブ受付手段と、
前記ジョブ受付手段によって受け付けられた
印刷ジョブを実行するジョブ制御手段と、
を更に備え、
前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に、前記ジョブ受付手段に対して前記ウイルス検出処理を行う
印刷ジョブの受け付けを禁止してパターンファイルの更新を行うことを特徴とする請求項1乃至3のいずれかに記載の
画像形成装置。
【請求項14】
前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に前記ウイルス検出手段によるウイルス検出処理が行われている場合、前記ウイルス検出処理を停止させてパターンファイルの更新を行うことを特徴とする請求項13に記載の
画像形成装置。
【請求項15】
前記ウイルス検出手段は、前記ファイル更新手段によってパターンファイルの更新が行われた後に、停止させた前記ウイルス検出処理を再度実行することを特徴とする請求項
14に記載の
画像形成装置。
【請求項16】
前記ジョブ受付手段は、前記ファイル更新手段によって前記ウイルス検出処理を行う
印刷ジョブの受け付けが禁止されているとき、前記ウイルス検出処理を行わない
印刷ジョブを受け付けることが可能であり、
前記ジョブ制御手段は、前記ファイル更新手段によってパターンファイルの更新が行われているときに前記ジョブ受付手段によって前記ウイルス検出処理を行わない
印刷ジョブが受け付けられた場合、前記ファイル更新手段によるパターンファイルの更新と並行して前記ウイルス検出処理を行わない
印刷ジョブを実行することを特徴とする請求項13又は14に記載の
画像形成装置。
【請求項17】
前記ファイル更新手段は、前記ダウンロード手段によるダウンロードが完了した後においてユーザーによるファイル更新指示を検知した場合にパターンファイルの更新を開始することを特徴とする請求項
1,2,3,4,6、7,8,9,10,13,14,15,16のいずれか1つに記載の
画像形成装置。
【請求項18】
受け取った印刷ジョブに基づいて印刷を行う画像形成装置において実行されるプログラムであって、
前記画像形成装置に、
受け取った印刷ジョブに対してウイルスの有無を
印刷を行う前に検出するためのパターンファイルを予め所定の記憶手段に格納しておくステップと、
前記記憶手段に記憶されているパターンファイルを読み出して所定の記憶領域に展開し、前記所定の記憶領域に展開されたパターンファイルを参照してウイルス検出処理を実行するウイルス検出ステップと、
新バージョンのパターンファイルをダウンロードして前記記憶手段に保存するダウンロードステップと、
前記ダウンロードステップによるダウンロードが完了した後、前記ウイルス検出ステップによるウイルス検出処理が行われていないことを条件として
、旧バージョンのパターンファイルが展開されていた前記所定の記憶領域
に新バージョンのパターンファイル
を展開して更新するファイル更新ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置、情報処理装置及びプログラムに関し、特にウイルスの有無を検出するためのパターンファイルを更新する技術に関する。
【背景技術】
【0002】
オフィスに設置されるMFP(Multifunction Peripherals)などの情報処理装置は、複数のユーザーによって共有される装置であり、スキャン機能、印刷機能、コピー機能などの複数の機能を備えており、ユーザーによって選択された機能に対応するジョブを実行する。また、情報処理装置は、LAN(Local Area Network)などのネットワークに接続されており、ジョブの実行対象となるデータを外部から取得したり、ジョブの実行によって生成したデータや内部に保持しているデータを外部へ送信したりすることができる。
【0003】
このような情報処理装置が万一コンピュータウイルスに感染してしまうと、ネットワークに接続されている他の機器に対してウイルス感染を蔓延させてしまったり、或いは、顧客情報などの秘密情報を流出させてしまったりする可能性がある。そのため、近年では、MFPなどの情報処理装置においても、一般的なパーソナルコンピュータ(PC)などと同様に、ウイルス感染を防止するためのウイルス検出アプリケーションを常駐させておくことが望まれる。
【0004】
ウイルス検出アプリケーションは、ウイルスが定義されたパターンファイルをサーバーからダウンロードしておき、そのパターンファイルを参照することによってウイルス検出処理を実行する。一方、サーバーで管理されるパターンファイルは、新たに出現するウイルスを検出可能とするためにベンダーによって日々更新される。つまり、パターンファイルは、新たなウイルスを定義した情報が追加されることによって逐次バージョンアップされていく。そのため、ウイルス検出アプリケーションは、サーバーに対して定期的にアクセスし、サーバーで管理されているパターンファイルがバージョンアップされているか否かを確認する。その結果、パターンファイルがバージョンアップされている場合、ウイルス検出アプリケーションは、新バージョンのパターンファイルをサーバーからダウンロードし、ウイルス検出処理において参照するパターンファイルを更新する。これにより、ウイルス検出アプリケーションは、ウイルス検出処理において新バージョンのパターンファイルに定義されている新たなウイルスを検出することができるようになる。
【0005】
ところで、従来、旧バージョンのプログラムを新バージョンのプログラムに更新するために2つのメモリを使用する技術が提案されている(例えば特許文献1)。この従来技術では、2つのメモリのうちの一方のメモリをCPUが読み込んで実行するプログラムを格納するためのメモリとして使用し、他方のメモリを新バージョンのプログラムのダウンロード用メモリとして使用する。新バージョンのプログラムのダウンロードが完了すると、ユーザーによるリセット操作で装置を再起動したり、或いは、CPUの自己リセット機能を利用して装置を再起動することにより、新バージョンのプログラムがロードされるようになる。
【0006】
また、従来、ファームウェアをバージョンアップするためにメモリ領域を2面構成とする方法が提案されている(例えば特許文献2)。この従来技術では、2面構成の一方のメモリ領域に旧バージョンのファームウェアを記憶しておき、その旧バージョンのファームウェアによる制御の実行中に、新バージョンのファームウェアを他方のメモリ領域にダウンロードする。そして旧バージョンのファームウェアと新バージョンのファームウェアとをマルチタスク処理によって同時並行的に実行し、両バージョンのファームウェアの同期がとれたタイミングで新バージョンのファームウェアへ切り替えることにより、バージョンアップを行う手法が採用されている。
【先行技術文献】
【特許文献】
【0007】
【文献】特開平11-103400号公報
【文献】特開平11-7382号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
上述の従来技術はいずれも新バージョンのファイルをダウンロードすると、CPUが制御動作中に高速アクセスするメモリに保存するため、メモリ容量として、旧バージョンのファイルと新バージョンのファイルとの双方を記憶するのに十分な容量が必要である。しかしながら、ウイルス検出用のパターンファイルは、新たなウイルスを定義した情報が追加されることによってバージョンアップされるため、新バージョンのパターンファイルの容量が旧バージョンのパターンファイルの容量よりも大きくなるのが一般的である。そのため、新バージョンのパターンファイルを旧バージョンのパターンファイルと共にメモリに保存するようにすると、予め将来のバージョンアップを見込んでメモリを大容量化しておかなければならず、装置コストが上昇するという問題がある。
【0009】
また、MFPなどの情報処理装置は、ネットワークを介して外部の装置から印刷ジョブを受信すると、その印刷ジョブを実行し、印刷ジョブに含まれるデータに基づいて印刷出力を行う。この場合、ウイルス検出アプリケーションは、情報処理装置において印刷ジョブの実行が開始される前に、印刷ジョブに含まれるデータにウイルスが含まれているか否かを判別するためのウイルス検出処理を実行する。そのため、例えばウイルス検出処理の実行中に新バージョンのパターンファイルのダウンロードが完了し、新バージョンのパターンファイルを適用するためにウイルス検出アプリケーションの再起動が開始すると、現在実行中のウイルス検出処理が途中で停止してしまい、受信したデータに対するウイルス検出処理が未完のまま終了してしまうという問題がある。
【0010】
また、ウイルス検出処理が途中で停止した場合にはウイルス検出アプリケーションが再起動した後に再度ウイルス検出処理を行うようにすることも考えられる。しかし、その場合、情報処理装置が印刷ジョブを受信してから印刷ジョブの実行を開始するまでの時間が長くなり、ジョブの実行効率が低下するという問題がある。
【0011】
そこで本発明は、上述した課題を解決するためになされたものであり、装置コストを上昇させることなく、しかもジョブの実行効率を低下させることもなく、旧バージョンのパターンファイルを新バージョンに更新できるようにした画像形成装置、情報処理装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
上記目的を達成するため、請求項1に係る発明は、受け取った印刷ジョブに基づいて印刷を行う画像形成装置であって、受け取った印刷ジョブに対してウイルスの有無を印刷を行う前に検出するためのパターンファイルを記憶する記憶手段と、前記記憶手段に記憶されているパターンファイルを所定の記憶領域に展開し、前記所定の記憶領域に展開されたパターンファイルを参照してウイルス検出処理を実行するウイルス検出手段と、新バージョンのパターンファイルをダウンロードして前記記憶手段に保存するダウンロード手段と、前記ダウンロード手段によるダウンロードが完了した後、前記ウイルス検出手段によるウイルス検出処理が行われていないことを条件として、旧バージョンのパターンファイルが展開されていた前記所定の記憶領域に新バージョンのパターンファイルを展開して更新するファイル更新手段と、を備えることを特徴とする構成である。
【0013】
請求項2に係る発明は、請求項1の画像形成装置において、前記ファイル更新手段は、前記ウイルス検出手段を再起動させることより、前記記憶手段に記憶されている新バージョンのパターンファイルを前記所定の記憶領域に展開させることを特徴とする構成である。
【0014】
請求項3に係る発明は、請求項1又は2の画像形成装置において、前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に前記ウイルス検出手段によるウイルス検出処理が行われている場合、パターンファイルの更新を保留することを特徴とする構成である。
【0015】
請求項4に係る発明は、請求項3の画像形成装置において、前記ファイル更新手段は、パターンファイルの更新を保留している状態において、前記ウイルス検出手段によるウイルス検出処理が終了した後、パターンファイルの更新を開始することを特徴とする構成である。
【0016】
請求項5に係る発明は、情報処理装置であって、ウイルスの有無を検出するためのパターンファイルを記憶する記憶手段と、前記記憶手段に記憶されているパターンファイルを所定の記憶領域に展開し、前記所定の記憶領域に展開されたパターンファイルを参照してウイルス検出処理を実行するウイルス検出手段と、新バージョンのパターンファイルをダウンロードして前記記憶手段に保存するダウンロード手段と、前記ダウンロード手段によるダウンロードが完了した後、前記ウイルス検出手段によるウイルス検出処理が行われていないことを条件として前記所定の記憶領域に展開されているパターンファイルを新バージョンのパターンファイルに更新するファイル更新手段と、前記ウイルス検出処理が行われた後に前記ウイルス検出処理が行われたデータに基づいて予め指定された処理を実行するデータ処理手段と、を備え、前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に前記ウイルス検出手段による前記ウイルス検出処理が行われている場合、パターンファイルの更新を保留し、前記ウイルス検出手段による前記ウイルス検出処理が終了した後、前記データ処理手段による処理に要する時間が所定時間以上である場合にパターンファイルの更新を開始することを特徴とする構成である。
【0017】
請求項6に係る発明は、請求項1乃至3のいずれかの画像形成装置において、前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時にパターンファイルの更新を保留し、所定の動作状態へ移行するときにパターンファイルの更新を開始することを特徴とする構成である。
【0018】
請求項7に係る発明は、請求項6の画像形成装置において、通電状態を通常通電状態から省電力状態に移行させる通電制御手段、を更に備え、前記ファイル更新手段は、前記通電制御手段によって通電状態が前記省電力状態へ移行するときにパターンファイルの更新を開始することを特徴とする構成である。
【0019】
請求項8に係る発明は、請求項6の画像形成装置において、ユーザーによって指定されたジョブを実行するジョブ制御手段、を更に備え、前記ファイル更新手段は、前記ジョブ制御手段による印刷ジョブの実行状態へ移行するときにパターンファイルの更新を開始することを特徴とする構成である。
【0020】
請求項9に係る発明は、請求項6の画像形成装置において、ユーザーによって指定された印刷ジョブを実行するジョブ制御手段、を更に備え、前記ファイル更新手段は、前記ジョブ制御手段による印刷ジョブの実行が中断されるときにパターンファイルの更新を開始することを特徴とする構成である。
【0021】
請求項10に係る発明は、請求項9の画像形成装置において、前記ジョブ制御手段は、印刷ジョブの実行中に印刷ジョブの実行を継続させることができないエラーが発生した場合に印刷ジョブの実行を中断することを特徴とする構成である。
【0022】
請求項11に係る発明は、情報処理装置であって、ウイルスの有無を検出するためのパターンファイルを記憶する記憶手段と、前記記憶手段に記憶されているパターンファイルを所定の記憶領域に展開し、前記所定の記憶領域に展開されたパターンファイルを参照してウイルス検出処理を実行するウイルス検出手段と、新バージョンのパターンファイルをダウンロードして前記記憶手段に保存するダウンロード手段と、前記ダウンロード手段によるダウンロードが完了した後、前記ウイルス検出手段による前記ウイルス検出処理が行われていないことを条件として前記所定の記憶領域に展開されているパターンファイルを新バージョンのパターンファイルに更新するファイル更新手段と、ジョブを受け付けるジョブ受付手段と、前記ジョブ受付手段によって受け付けられたジョブを実行するジョブ制御手段と、前記ジョブ制御手段によるジョブの実行中に前記ジョブ受付手段によってジョブが受け付けられた場合に待ち行列に登録してジョブを管理するジョブ管理手段と、を備え、前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に、前記待ち行列に前記ウイルス検出処理を行わないジョブが登録されている場合、前記ウイルス検出処理を行わないジョブを優先的に前記ジョブ制御手段に実行させ、前記ジョブ制御手段によって前記ウイルス検出処理を行わないジョブが実行されているときにパターンファイルの更新を行うことを特徴とする構成である。
【0023】
請求項12に係る発明は、請求項11の情報処理装置において、前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に前記ウイルス検出手段によるウイルス検出処理が行われている場合、前記ウイルス検出処理を停止させ、前記ジョブ制御手段によって前記ウイルス検出処理を行わないジョブが実行されているときにパターンファイルの更新を行うことを特徴とする構成である。
【0024】
請求項13に係る発明は、請求項1乃至3のいずれかの画像形成装置において、印刷ジョブを受け付けるジョブ受付手段と、前記ジョブ受付手段によって受け付けられた印刷ジョブを実行するジョブ制御手段と、を更に備え、前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に、前記ジョブ受付手段に対して前記ウイルス検出処理を行う印刷ジョブの受け付けを禁止してパターンファイルの更新を行うことを特徴とする構成である。
【0025】
請求項14に係る発明は、請求項13の画像形成装置において、前記ファイル更新手段は、前記ダウンロード手段によるダウンロード完了時に前記ウイルス検出手段によるウイルス検出処理が行われている場合、前記ウイルス検出処理を停止させてパターンファイルの更新を行うことを特徴とする構成である。
【0026】
請求項15に係る発明は、請求項14の画像形成装置において、前記ウイルス検出手段は、前記ファイル更新手段によってパターンファイルの更新が行われた後に、停止させた前記ウイルス検出処理を再度実行することを特徴とする構成である。
【0027】
請求項16に係る発明は、請求項13又は14の画像形成装置において、前記ジョブ受付手段は、前記ファイル更新手段によって前記ウイルス検出処理を行う印刷ジョブの受け付けが禁止されているとき、前記ウイルス検出処理を行わない印刷ジョブを受け付けることが可能であり、前記ジョブ制御手段は、前記ファイル更新手段によってパターンファイルの更新が行われているときに前記ジョブ受付手段によって前記ウイルス検出処理を行わない印刷ジョブが受け付けられた場合、前記ファイル更新手段によるパターンファイルの更新と並行して前記ウイルス検出処理を行わない印刷ジョブを実行することを特徴とする構成である。
【0028】
請求項17に係る発明は、請求項1,2,3,4,6、7,8,9,10,13,14,15,16のいずれか1つの画像形成装置において、前記ファイル更新手段は、前記ダウンロード手段によるダウンロードが完了した後においてユーザーによるファイル更新指示を検知した場合にパターンファイルの更新を開始することを特徴とする構成である。
【0029】
請求項18に係る発明は、受け取った印刷ジョブに基づいて印刷を行う画像形成装置において実行されるプログラムであって、前記画像形成装置に、受け取った印刷ジョブに対してウイルスの有無を印刷を行う前に検出するためのパターンファイルを予め所定の記憶手段に格納しておくステップと、前記記憶手段に記憶されているパターンファイルを読み出して所定の記憶領域に展開し、前記所定の記憶領域に展開されたパターンファイルを参照してウイルス検出処理を実行するウイルス検出ステップと、新バージョンのパターンファイルをダウンロードして前記記憶手段に保存するダウンロードステップと、前記ダウンロードステップによるダウンロードが完了した後、前記ウイルス検出ステップによるウイルス検出処理が行われていないことを条件として、旧バージョンのパターンファイルが展開されていた前記所定の記憶領域に新バージョンのパターンファイルを展開して更新するファイル更新ステップと、を実行させることを特徴とする構成である。
【発明の効果】
【0030】
本発明によれば、装置コストを上昇させることなく、しかもジョブの実行効率を低下させることもなく、旧バージョンのパターンファイルを新バージョンに更新することができるようになる。
【図面の簡単な説明】
【0031】
【
図1】情報処理システムの外観構成の一例を示す図である。
【
図2】情報処理装置のハードウェア構成の一例を示す図である。
【
図3】制御部の機能構成の一例を示すブロック図である。
【
図4】ウイルス検出処理が行われるジョブとウイルス検出処理が行われないジョブとを例示する図である。
【
図5】ダウンロード部による処理の概念を説明する図である。
【
図6】ファイル更新処理の概念を説明する図である。
【
図7】ウイルス検出プログラムのインストール時の処理手順を示すフローチャートである。
【
図8】ウイルス検出部による処理手順の一例を示すフローチャートである。
【
図9】ダウンロード部による処理手順の一例を示すフローチャートである。
【
図10】ファイル更新部による処理手順の一例を示すフローチャートである。
【
図11】ウイルス検出処理とファイル更新処理との関係を示すタイミングチャートである。
【
図12】ジョブ実行処理とファイル更新処理との関係を示すタイミングチャートである。
【
図13】第2実施形態のファイル更新部によるファイル更新処理の例を示すフローチャートである。
【
図14】第3実施形態のファイル更新部によるファイル更新処理の例を示すフローチャートである。
【
図15】第4実施形態のファイル更新部によるファイル更新処理の例を示すフローチャートである。
【発明を実施するための形態】
【0032】
以下、本発明に関する好ましい実施形態について図面を参照しつつ詳細に説明する。尚、以下に説明する実施形態において互いに共通する要素には同一符号を付しており、それらについての重複する説明は省略する。
【0033】
(第1実施形態)
図1は、本発明の第1実施形態である情報処理システム1の外観構成の一例を示す図である。情報処理システム1は、情報処理装置2と、外部装置3と、サーバー4とを備えており、これらがLANなどのネットワーク5を介して相互に通信を行うことができる構成である。情報処理装置2と外部装置3とは例えばオフィスなどのローカル環境に設置される。サーバー4は、情報処理装置2と同様のローカル環境に設置されていても良いし、インターネット上のクラウドに設置されていても良い。尚、サーバー4がクラウド上に設置される場合、ネットワーク5は図示を省略するルーターなどを介してインターネットに接続される構成とすれば良い。
【0034】
情報処理装置2は、例えばMFPなどの画像処理装置によって構成され、コピー機能、スキャン機能、印刷機能及びFAX機能など画像処理に関する複数の機能を有している。この情報処理装置2は、ユーザーが操作するための操作パネル7を備えている。情報処理装置2は、操作パネル7に対して行われるユーザーに操作に基づき、上述した複数の機能のうちから一つの機能を選択的に動作させ、ユーザーによって指定されたジョブを実行する。例えば、情報処理装置2は、操作パネル7に対するユーザーの操作に基づき、コピージョブやスキャンジョブ、印刷ジョブ、FAX送受信ジョブなどを行うことができる。
【0035】
また、情報処理装置2は、スキャナ部8とプリンタ部9とを備えている。スキャナ部8は、コピージョブ又はスキャンジョブの実行時にユーザーによってセットされた原稿を光学的に読み取って原稿に対応する画像データを生成するものである。プリンタ部9は、コピージョブ又は印刷ジョブの実行時に印刷対象となる画像データに基づいて印刷用紙などのシート材に画像形成を行うことにより印刷出力を行うものである。
【0036】
例えば、ユーザーによってコピージョブの実行が指示された場合、情報処理装置2は、スキャナ部8を駆動して原稿を読み取り、原稿の画像データをプリンタ部9へ出力する。そして情報処理装置2は、プリンタ部9を駆動して原稿の画像データに基づく印刷出力を行う。このようなコピージョブでは、情報処理装置2と外部装置3とのデータの送受信は行われない。
【0037】
また例えば、情報処理装置2は、ネットワーク5を介して外部装置3から印刷ジョブを受信すると、プリンタ部9を駆動して印刷ジョブを実行することにより、印刷ジョブに含まれるデータに基づく印刷出力を行うことができる。情報処理装置2が外部装置3から受信するデータは印刷ジョブに限られない。例えば、情報処理装置2は、外部装置3からFAX送信用のデータを受信することがある。FAX送信用のデータを受信すると、情報処理装置2は、そのデータに基づきFAX送信ジョブを実行する。また、情報処理装置2は、情報処理装置2において単に保存しておくためのデータを外部装置3から受信することもある。この場合、情報処理装置2は、外部装置3から保存用のデータを受信すると、そのデータを内部に保存する。
【0038】
また、情報処理装置2は、ウイルスを検出するウイルス検出機能を備えており、外部装置3からデータを受信すると、その受信データにウイルスが含まれているか否かを判定するためのウイルス検出処理を行う。情報処理装置2は、後述するように、ウイルスの有無を検出するためのパターンファイルを予め記憶しており、そのパターンファイルを参照することによってウイルス検出処理の対象となるデータにウイルスが含まれているか否かを判定する。
【0039】
例えば、情報処理装置2は、外部装置3から印刷ジョブを受信した場合、印刷ジョブの実行を開始する前にその印刷ジョブに含まれているデータを処理対象データとしてウイルス検出処理を行う。そして情報処理装置2は、ウイルス検出処理が終了した後、印刷ジョブに含まれるデータに基づいて印刷出力を行う。
【0040】
ウイルス検出処理においてデータからウイルスが検出された場合、情報処理装置2は、ユーザーに対して警告を行う。ただし、本実施形態では、印刷対象のデータからウイルスが検出されたとしても、情報処理装置2による印刷出力は制限されない。印刷出力は、ウイルスに感染しているデータそのものを外部装置3などへ出力するものではなく、描画されたシート材を出力するだけあるので、ウイルス感染を蔓延させる可能性がないからである。尚、印刷対象のデータからウイルスが検出された場合、そのデータに基づく印刷出力が完了した後、そのデータを情報処理装置2から削除するようにしても良い。
【0041】
外部装置3は、例えば一般的なパーソナルコンピュータ(PC)で構成され、情報処理装置2に対して印刷ジョブやその他のデータを送信することができる装置である。例えば、外部装置3には情報処理装置2に対応するドライバプログラムが予めインストールされている。外部装置3は、そのドライバプログラムを実行することにより、情報処理装置2に対して印刷ジョブなどのデータを送信することができる。尚、外部装置3は、パーソナルコンピュータに限られず、タブレット端末やスマートフォンなどで構成される装置であっても構わない。
【0042】
サーバー4は、ウイルス検出処理において参照されるパターンファイルを管理するサーバーである。サーバー4において管理されるパターンファイルは、新たなウイルスの出現に伴って逐次更新される。そのため、サーバー4は、新たなウイルスを検出可能とするための最新バージョンのパターンファイルを常に保持している。
【0043】
情報処理装置2は、サーバー4との通信を定期的に行い、サーバー4において管理されているパターンファイルのバージョンが更新されているか否かを確認する。情報処理装置2は、サーバー4に保持されているパターンファイルのバージョンが自機で保持しているパターンファイルのバージョンよりも新しい場合、パターンファイルが更新されたことを認識する。そして情報処理装置2は、サーバー4から新バージョンのパターンファイルを自動ダウンロードする。また、情報処理装置2は、新バージョンのパターンファイルのダウンロードが完了すると、自機で保持している旧バージョンのパターンファイルを新バージョンのパターンファイルに更新するファイル更新処理を行う。特に本実施形態の情報処理装置2は、ジョブの実行効率を低下させることがないタイミングでファイル更新処理を行うように構成される。以下、このような情報処理装置2について更に詳しく説明する。
【0044】
図2は、情報処理装置2のハードウェア構成の一例を示す図である。情報処理装置2は、そのハードウェア構成として、操作パネル7、スキャナ部8、プリンタ部9、FAX部10、制御部11、記憶部12、通信インタフェース13、画像メモリ14、通電制御部15、電源供給部16及びジョブ制御部17を備えており、これらがデータバス18を介して相互にデータの入出力を行うことができる構成である。
【0045】
操作パネル7は、表示部7aと操作部7bとを備えている。表示部7aは、例えばカラー液晶ディスプレイなどによって構成され、ユーザーに対して操作を促すための各種の操作画面を表示する。操作部7bは、表示部7aの画面上に配置されるタッチパネルキーや表示部7aの画面周囲に配置される押しボタンキーなどによって構成され、ユーザーによる操作を受け付ける。
【0046】
スキャナ部8及びプリンタ部9は、上述したものである。ここで、プリンタ部9は、定着部9aを備えている。定着部9aは、画像データに基づくトナー像が転写されたシート材に対して加熱処理及び加圧処理を施すことによってトナー像をシート材に定着させる機能を有している。印刷ジョブの実行中に定着部9aがトナー像を確実にシート材に定着させるためには、印刷ジョブの実行開始前に定着部9aを予めウォームアップさせておくことが必要である。このウォームアップにより、定着部9aは、所定温度へ昇温された状態となり、印刷ジョブの実行開始後にシート材に対する加熱処理を良好に行うことができるようになる。
【0047】
FAX部10は、図示を省略する公衆電話網を介してFAXデータの送受信を行うためのものである。
【0048】
制御部11は、情報処理装置2の各部の動作を制御するものである。制御部11は、CPU11aと、メモリ11bとを備えている。CPU11aは、記憶部12に記憶されている基本プログラム20及びウイルス検出プログラム21を読み出して実行する演算処理ユニットである。メモリ11bは、CPU11aが基本プログラム20及びウイルス検出プログラム21を実行することによって発生する一時的なデータを記憶したり、CPU11aが基本プログラム20及びウイルス検出プログラム21の実行中に参照するデータを記憶したりするものである。メモリ11bは記憶部12よりも高速アクセスが可能であるため、CPU11aは、基本プログラム20及びウイルス検出プログラム21の実行中にメモリ11bをワークエリアとして使用することにより、演算処理を効率的に行うことができる。
【0049】
記憶部12は、例えばハードディスクドライブ(HDD)又はソリッドステートドライブ(SSD)で構成される不揮発性の記憶手段である。この記憶部12には、上述した基本プログラム20とウイルス検出プログラム21とが記憶される。基本プログラム20は、情報処理装置2においてジョブを受け付けたり、ジョブを管理したりするための基本的なプログラムである。ウイルス検出プログラム21は、情報処理装置2にウイルス検出機能を付与するプログラムである。
【0050】
また記憶部12には、ウイルスの有無を検出するためのパターンファイルを記憶するためのパターンファイル記憶領域22と、ユーザーによって投入されたジョブを記憶するためのジョブ記憶領域23とが設けられる。パターンファイル記憶領域22には、サーバー4からダウンロードされるパターンファイルが保存される。このパターンファイル記憶領域22には、旧バージョンのパターンファイルと、新バージョンのパターンファイルとを保存することが可能である。また、ジョブ記憶領域23は、情報処理装置2において受け付けられたジョブであって、情報処理装置2において実行待ちのジョブを保存しておくための記憶領域である。
【0051】
通信インタフェース13は、情報処理装置2をネットワーク5に接続するためのインタフェースである。情報処理装置2は、この通信インタフェース13を介して、外部装置3やサーバー4と通信を行う。
【0052】
画像メモリ14は、印刷対象となる画像データや、スキャナ部8によって生成された画像データを記憶するためのメモリである。例えば、コピージョブの場合、スキャナ部8で生成された画像データが画像メモリ14に一旦保存され、その画像データに対して所定の画像処理が施された後、画像メモリ14からプリンタ部9へ画像データが出力される。
【0053】
電源供給部16は、各部に対して電力を供給するものである。通電制御部15は、情報処理装置2における通電状態を制御する処理部である。例えば通常通電状態のとき、通電制御部15は、電源供給部16に対して各部への電力供給を指示する。また省電力状態へ移行させるとき、通電制御部15は、電源供給部16に対して一部の電力供給を停止させることを指示する。例えば、通電制御部15は、操作パネル7、スキャナ部8、プリンタ部9及びジョブ制御部17への電力供給を停止させることにより、通電状態を省電力状態へ移行させる。
【0054】
ジョブ制御部17は、情報処理装置2におけるジョブの実行を制御するものである。すなわち、ジョブ制御部17は、スキャナ部8、プリンタ部9及びFAX部10を駆動して動作させることにより、ユーザーによって指定されたジョブの実行を制御する。このとき、ジョブ制御部17は、画像メモリ14を介してスキャナ部8、プリンタ部9及びFAX部10の相互間で画像データの受け渡しが行われるように制御する。また、ジョブ制御部17は、ジョブの実行に伴って取得されるデータに対するデータ処理を行うことも可能である。例えば、印刷ジョブの場合、ジョブ制御部17は、印刷ジョブに含まれるデータに基づいてRIP(Raster Image Processing)処理などの予め指定された処理を実行することができる。そのため、ジョブ制御部17は、ジョブの実行に伴って取得されるデータに対するデータ処理を行うデータ処理手段としても機能する。
【0055】
このようなジョブ制御部17によるジョブの実行の制御は、制御部11による動作からは独立して行われる。そのため、制御部11において何らの処理が行われている場合であっても、ジョブ制御部17は、制御部11において行われている処理と並行してジョブの実行を制御することができる。
【0056】
次にCPU11aが基本プログラム20及びウイルス検出プログラム21を実行したときの制御部11の機能構成について説明する。
図3は、制御部11の機能構成の一例を示すブロック図である。CPU11aが基本プログラム20を実行することにより、制御部11は、ジョブマネージャ30として機能する。また、CPU11aがウイルス検出プログラム21を実行することにより、制御部11は、ウイルス検出アプリケーション40として機能する。ジョブマネージャ30とウイルス検出アプリケーション40とはCPU11aのマルチタスク機能により同時並列的に動作することができる。
【0057】
ジョブマネージャ30は、ジョブ受付部31とジョブ管理部32とを備えている。ジョブ受付部31は、情報処理装置2において実行すべきジョブを受け付ける処理部である。例えば、ユーザーが操作パネル7を操作することによってコピージョブやスキャンジョブなどの実行を指示した場合、ジョブ受付部31は、ユーザーによって指定されたジョブを受け付ける。またジョブ受付部31は、通信インタフェース13を介して印刷ジョブを受信した場合、その印刷ジョブを受け付ける。
【0058】
ジョブ管理部32は、ジョブ受付部31によって受け付けられたジョブを管理し、ジョブ制御部17に対して実行すべきジョブを指示する処理部である。ジョブ管理部32は、ジョブ受付部31によってジョブが受け付けられると、そのジョブをジョブ記憶領域23に保存する。そしてジョブ管理部32は、ジョブ受付部31によって受け付けられたジョブを待ち行列に登録して管理する。待ち行列には、ジョブ受付部31によって受け付けられた順に複数のジョブを登録しておくことができる。
【0059】
例えば、ジョブ制御部17によってジョブが実行されているときにジョブ受付部31によってジョブが受け付けられると、ジョブ管理部32は、そのジョブを待ち行列に登録する。このとき、待ち行列に既にジョブが登録されていれば、ジョブ管理部32は、既に登録されているジョブの次に実行すべきジョブとして、受け付けられたジョブを登録する。そしてジョブ制御部17によって実行されていたジョブが終了し、次のジョブを実行することができる状態になると、ジョブ管理部32は、待ち行列に登録されている次のジョブの実行をジョブ制御部17に指示する。これにより、ジョブ制御部17は、待ち行列に登録されている順にジョブを読み出して実行する。
【0060】
ウイルス検出アプリケーション40は、ウイルス検出機能を動作させる処理部である。ウイルス検出アプリケーション40は、ウイルス検出部41と、ダウンロード部42と、ファイル更新部43とを備えている。
【0061】
ウイルス検出部41は、ウイルス検出の対象となるデータに対してウイルス検出処理を実行する処理部である。ウイルス検出部41は、その起動時に記憶部12のパターンファイル記憶領域22に保存されているパターンファイル22aを読み出し、メモリ11bにおける所定の記憶領域11xにパターンファイル22aを展開する。これにより、ウイルス検出部41は、ウイルス検出処理を行うときにメモリ11bに展開したパターンファイル22aを高速で参照することができるようになる。すなわち、ウイルス検出部41は、ウイルス検出の対象となるデータを取得すると、メモリ11bに展開したパターンファイル22aを参照することにより、そのデータにウイルスが含まれているか否かを判定するウイルス検出処理を実行する。尚、パターンファイル22aは、ウイルスが定義されたブラックリスト形式のファイルであっても良いし、ウイルスが存在しない安全なデータであることが定義されたホワイトリスト形式のファイルであっても構わない。
【0062】
例えば、ウイルス検出部41は、通信インタフェース13を介して外部装置3から印刷ジョブを受信した場合に、その印刷ジョブに含まれるデータをウイルス検出の対象として、ウイルス検出処理を実行する。このとき、印刷ジョブに含まれるデータは、ウイルス検出処理によって占有される。したがって、ジョブ管理部32は、ウイルス検出部41によるウイルス検出処理が終了するまでジョブ制御部17に印刷ジョブの実行を指示することができない。それ故、ジョブ管理部32は、ウイルス検出処理が終了した後にジョブ制御部17に対して印刷ジョブの実行を指示する。
【0063】
これに対し、ユーザーによってコピージョブの実行が指示された場合には、ウイルス検出部41は、ウイルス検出処理を実行しない。なぜなら、コピージョブの場合には情報処理装置2に対して外部からウイルスが入り込むことがないからである。そのため、ジョブ管理部32は、ユーザーによってコピージョブの実行が指示された場合には、ジョブ制御部17に対して速やかにジョブの実行を指示することができる。
【0064】
図4は、ウイルス検出部41によるウイルス検出処理が行われるジョブと、そうでないジョブとを例示する図である。まず
図4(a)に示すように、情報処理装置2が外部装置3から印刷ジョブD10を受信するときには、印刷ジョブD10に含まれるデータD11にウイルスが含まれている可能性がある。そのため、ウイルス検出部41は、印刷ジョブD10に含まれるデータD11に対するウイルス検出処理を実行する(プロセスP1)。そしてウイルス検出部41によるウイルス検出処理が終了した後にジョブ制御部17がジョブ実行処理を行い(プロセスP2)、印刷ジョブD10に含まれるデータD11に基づく印刷出力を行う。
【0065】
また、
図4(b)に示すように、ユーザーが操作パネル7を操作してコピージョブの実行を指示した場合(プロセスP5)、情報処理装置2に対してウイルスは入り込まない。そのため、情報処理装置2は、ウイルス検出部41によるウイルス検出処理を行うことなく、ジョブ制御部17にジョブの実行を指示し(プロセスP6)、ユーザーによって指定されたジョブの実行処理を行う(プロセスP7)。
【0066】
このようにウイルス検出部41は、外部装置3から印刷ジョブを取得した場合にはその印刷ジョブの実行が開始される前にウイルス検出処理を実行する。これに対し、ユーザーによってコピージョブの実行が指示された場合、ウイルス検出部41は、ウイルス検出処理を行わない。
【0067】
ダウンロード部42は、定期的にサーバー4にアクセスし、サーバー4から新バージョンのパターンファイルをダウンロードする処理部である。ダウンロード部42は、サーバー4にアクセスすると、メモリ11bに展開されているパターンファイル22aよりも新しいバージョンのパターンファイルがサーバー4に登録されているか否かを判別する。その結果、新バージョンのパターンファイルがサーバー4に登録されていれば、ダウンロード部42は、サーバー4から新バージョンのパターンファイルをダウンロードする。
【0068】
図5は、ダウンロード部42による処理の概念を説明する図である。
図5に示すように、ダウンロード部42は、サーバー4から新バージョンのパターンファイル22bをダウンロードするとき、そのパターンファイル22bを、記憶部12のパターンファイル記憶領域22へ格納する。このとき、ダウンロード部42は、旧バージョンのパターンファイル22aが保存されている領域とは異なる領域に新バージョンのパターンファイル22bを保存する。これにより、パターンファイル記憶領域22には、旧バージョンのパターンファイル22aと、新バージョンのパターンファイル22bとの2つのパターンファイルが格納されることになる。ただし、これに限られず、ダウンロード部42は、新バージョンのパターンファイル22bを旧バージョンのパターンファイル22aに上書きすることにより、新バージョンのパターンファイル22bだけをパターンファイル記憶領域22に保存するようにしても良い。そして新バージョンのパターンファイル22bの全てがパターンファイル記憶領域22に保存されると、ダウンロード部42によるダウンロード処理が完了する。
【0069】
ファイル更新部43は、ダウンロード部42による新バージョンのパターンファイル22bのダウンロードが完了した後に、新バージョンのパターンファイル22bを用いてウイルス検出処理を行うことができるように、メモリ11bに展開されているパターンファイル22aを新バージョンのパターンファイル22bに更新するファイル更新処理を行う。ファイル更新部43は、ファイル更新処理を開始すると、ウイルス検出部41を再起動させる。このとき、ファイル更新部43は、ウイルス検出部41に対し、記憶部12から新バージョンのパターンファイル22bを読み出してメモリ11bに展開することを指示する。したがって、ウイルス検出部41は、再起動時に記憶部12から新バージョンのパターンファイル22bを読み出してメモリ11bに展開するので、ウイルス検出処理を行うときには新バージョンのパターンファイル22bを参照することができるようになる。尚、ファイル更新部43は、ファイル更新処理によってウイルス検出部41だけを再起動させるようにしても良いし、ウイルス検出アプリケーション40の全体を再起動させるようにしても良い。
【0070】
図6は、ファイル更新処理の概念を説明する図である。
図6に示すように、ファイル更新部43がファイル更新処理を行うことによってウイルス検出部41を再起動させると、ウイルス検出部41は、記憶部12のパターンファイル記憶領域22から新バージョンのパターンファイル22bを選択的に読み出してメモリ11bの所定の記憶領域11xに展開する。このとき、旧バージョンのパターンファイル22aは、メモリ11bには展開されない。そのため、本実施形態では、パターンファイル22aを更新するときに、メモリ11bに対して旧バージョンのパターンファイル22aと新バージョンのパターンファイル22bとの双方が格納されることはなく、メモリ11bの記憶容量を従来よりも小さくすることができ、装置コストの上昇を抑えることができる。
【0071】
ファイル更新部43は、上記のようなファイル更新処理によってメモリ11bに新バージョンのパターンファイル22bが展開されると、記憶部12から旧バージョンのパターンファイル22aを削除するようにしても良い。これにより、記憶部12の記憶可能領域を拡げることができるという利点がある。
【0072】
また、本実施形態のファイル更新部43は、ダウンロード部42によるダウンロードが完了した後、ジョブの処理効率が低下しないタイミングを見計らって上述したファイル更新の実行を開始する。具体的に説明すると、ファイル更新部43は、ダウンロード部42によるダウンロードが完了した後、ウイルス検出部41によるウイルス検出処理が行われていないことを条件としてファイル更新処理を実行する。ウイルス検出部41によるウイルス検出処理が行われているときに、ファイル更新処理を開始してウイルス検出部41を再起動させてしまうと、それまでに行われたウイルス検出処理が無駄になる。また、ウイルス検出部41の再起動が完了した後に再び同一データに対するウイルス検出処理がはじめから開始されることになるため、情報処理装置2において印刷ジョブの実行が開始されるまでの時間が長くなり、ジョブの実行効率が低下する。これを防止するため、ファイル更新部43は、ウイルス検出部41によるウイルス検出処理が行われていないことを条件としてファイル更新処理を行うのである。
【0073】
例えば、ファイル更新部43は、ダウンロード部42によるダウンロード完了時にウイルス検出部41によるウイルス検出処理が行われている場合、ファイル更新処理の実行を一時的に保留する。そしてウイルス検出部41によるウイルス検出処理が終了した後に、ファイル更新部43は、ファイル更新処理の実行を開始する。したがって、印刷ジョブの受信に伴い、印刷ジョブに含まれるデータに対するウイルス検出処理が行われているときに新バージョンのパターンファイル22bのダウンロードが完了した場合には、ファイル更新処理が一時的に保留された状態となり、ウイルス検出処理が終了して印刷ジョブの実行が開始されたタイミングでファイル更新処理が実行されることになる。そのため、ファイル更新部43は、ジョブ制御部17によって印刷ジョブが実行されているときにウイルス検出部41を再起動させて新バージョンのパターンファイル22bをメモリ11bに展開させることができる。つまり、ジョブ制御部17は、ファイル更新部43によるファイル更新処理が行われているときにそれと並行して印刷ジョブを実行するので、効率的に印刷ジョブを実行することができる。
【0074】
また、ダウンロード部42によるダウンロード完了時にウイルス検出部41によるウイルス検出処理が行われていない場合、ファイル更新部43は、ダウンロード完了時にファイル更新処理の実行を開始する。すなわち、ダウンロード完了時にウイルス検出処理が行われていなければその直後に印刷ジョブが開始されることはない。そのため、ファイル更新部43は、ダウンロード部42によるダウンロードが完了したタイミングでファイル更新処理の実行を開始するのである。この場合も、ジョブの実行効率を低下させることなく、ファイル更新処理を行うことができる。
【0075】
次に本実施形態の情報処理装置2において行われる処理手順について説明する。
図7は、情報処理装置2がウイルス検出プログラム21をインストールする処理手順を示すフローチャートである。この処理は、例えば制御部11のCPU11aがウイルス検出プログラム21のインストーラを起動することによって行われる処理である。情報処理装置2は、この処理を開始すると、ウイルス検出プログラム21を記憶部12にインストールする(ステップS1)。例えば情報処理装置2は、通信インタフェース13を介してサーバー4にアクセスし、サーバー4からウイルス検出プログラム21をダウンロードしてインストールする。また、この他にも、例えば情報処理装置2は、CD-ROMやUSBメモリなどのコンピュータ読み取り可能な記録媒体からウイルス検出プログラム21を読み出して記憶部12にインストールするようにしても良い。
【0076】
情報処理装置2は、ウイルス検出プログラム21をインストールすると、次にサーバー4にアクセスし(ステップS2)、サーバー4に保存されている最新バージョンのパターンファイル22bをダウンロードする(ステップS3)。そして情報処理装置2は、そのパターンファイル22bを記憶部12のパターンファイル記憶領域22に保存する(ステップS4)。以上で、ウイルス検出プログラム21のインストール時の処理が終了する。
【0077】
上記のようにウイルス検出プログラム21がインストールされると、情報処理装置2は、ウイルス検出プログラム21を自動的に起動する。また、情報処理装置2は、その後、電源投入時に、ウイルス検出プログラム21を自動的に起動するようになる。すなわち、CPU11aがウイルス検出プログラム21を実行することにより、制御部11をウイルス検出アプリケーション40として機能させるのである。そして情報処理装置2は、ウイルス検出アプリケーション40を制御部11に常駐させた状態で稼働する。制御部11においてウイルス検出アプリケーション40が機能すると、上述したウイルス検出部41、ダウンロード部42及びファイル更新部43のそれぞれが動作し始める。
【0078】
図8は、ウイルス検出部41による処理手順の一例を示すフローチャートである。この処理は、ウイルス検出部41が起動されることに伴って開始される処理である。ここでは、記憶部12のパターンファイル記憶領域22に旧バージョンのパターンファイル22aのみが記憶されている場合について説明する。ウイルス検出部41は、
図8のフローチャートに基づく処理を開始すると、記憶部12のパターンファイル記憶領域22からパターンファイル22aを読み出し(ステップS10)、そのパターンファイル22aをメモリ11bに展開する(ステップS11)。これにより、パターンファイル22aに基づいてウイルス検出処理を行うことができる状態となる。
【0079】
ウイルス検出部41は、パターンファイル22aをメモリ11bに展開すると、ウイルス検出の対象となるデータが存在するか否かを判断する(ステップS12)。例えば、通信インタフェース13を介して印刷ジョブを受信している場合、ウイルス検出部41は、ウイルス検出の対象となるデータが存在すると判断する。ウイルス検出の対象となるデータが存在する場合(ステップS12でYES)、ウイルス検出部41は、ウイルス検出の対象となるデータに対するウイルス検出処理を実行する(ステップS13)。このとき、ウイルス検出部41は、起動時にメモリ11bに展開したパターンファイル22aを参照し、パターンファイル22aにおいて定義されている情報に基づき、ウイルス検出の対象であるデータにウイルスが含まれているか否かを判別する。
【0080】
ウイルス検出処理が終了すると、ウイルス検出部41は、ウイルスを検出したか否かを判断し(ステップS14)、ウイルスを検出していれば(ステップS14でYES)、警告処理を行う(ステップS15)。この警告処理では、例えば操作パネル7の表示部7aに、ウイルスを検出した旨の警告表示を行ったり、或いは、図示を省略するスピーカーから警告音を出力したりする。これに対し、ウイルスを検出しなかった場合(ステップS14でNO)、ウイルス検出部41は、警告処理を行わない。
【0081】
そしてウイルス検出部41は、ウイルス検出処理の終了したデータをジョブ管理部32へ出力する(ステップS16)。このとき、ウイルス検出部41は、ジョブ管理部32に対してウイルス検出処理が終了したことを通知する。これにより、ウイルス検出部41において印刷ジョブに含まれるデータに対するウイルス検出処理が行われた場合は、ジョブ管理部32に印刷ジョブの実行が可能な状態となったことを通知することができる。
【0082】
その後、ウイルス検出部41による処理はステップS12に戻る。そして上述した処理を繰り返す。したがって、ウイルス検出部41は、起動後、ウイルス検出の対象となるデータがあれば、その都度、メモリ11bに展開したパターンファイル22aを参照しながらウイルス検出処理を実行する。
【0083】
次に
図9は、ダウンロード部42による処理手順の一例を示すフローチャートである。この処理は、ダウンロード部42が起動されることに伴って開始される処理である。ダウンロード部42は、
図9のフローチャートに基づく処理を開始すると、まずダウンロードフラグをオフにセットする(ステップS20)。ダウンロードフラグは、新バージョンのパターンファイル22bのダウンロードが完了した場合にオンにセットされるフラグであり、ダウンロード部42の起動時にオフにセットされる。
【0084】
ダウンロードフラグをオフにして起動すると、ダウンロード部42は、サーバー4に新バージョンのパターンファイル22bが保存されているか否かを確認するタイミングであるか否かを判断する(ステップS21)。サーバー4に新バージョンのパターンファイル22bが保存されているか否かを確認するタイミングである場合(ステップS21でYES)、ダウンロード部42は、サーバー4にアクセスし(ステップS22)、新バージョンのパターンファイル22bが保存されているか否かを判断する(ステップS23)。その結果、新バージョンのパターンファイル22bが保存されている場合(ステップS23でYES)、ダウンロード部42は、新バージョンのパターンファイル22bをサーバー4からダウンロードし(ステップS24)、その新バージョンのパターンファイル22bを記憶部12へ保存する(ステップS25)。そして新バージョンのパターンファイル22bのダウンロードが完了すると、ダウンロード部42は、ダウンロードフラグをオンにセットする(ステップS26)。一方、サーバー4に新バージョンのパターンファイル22bが保存されているか否かを確認するタイミングでなかった場合(ステップS21でNO)、ステップS22~S26の処理はスキップする。また、サーバー4に新バージョンのパターンファイル22bが保存されていない場合(ステップS23でNO)、ステップS24~S26の処理はスキップする。
【0085】
次にダウンロード部42は、ダウンロードフラグがオンであるか否かを判断する(ステップS27)。ダウンロードフラグがオンである場合(ステップS27でYES)、ダウンロード部42は、更新完了フラグがオンにセットされているか否かを更に判断する(ステップS28)。更新完了フラグは、ウイルス検出処理において参照されるパターンファイルが新バージョンのパターンファイル22bに更新された場合にオンにセットされるフラグであり、更新されていない場合にはオフにセットされているフラグである。更新完了フラグがオンにセットされている場合(ステップS28でYES)、ダウンロードした新バージョンのパターンファイル22bが既にウイルス検出処理において参照可能な状態に反映されていることになる。したがって、ダウンロード部42は、ダウンロードフラグをオフにセットする(ステップS29)。尚、ダウンロードフラグがオフであった場合(ステップS27でNO)、或いは、更新完了フラグがオフであった場合(ステップS28でNO)、ステップS29の処理はスキップする。
【0086】
その後、ダウンロード部42による処理はステップS21に戻る。そして上述した処理を繰り返す。したがって、ダウンロード部42は、起動後、サーバー4において新バージョンのパターンファイル22bが保存されていれば、その新バージョンのパターンファイル22bをサーバー4からダウンロードして取得する処理を実行する。
【0087】
次に
図10は、ファイル更新部43による処理手順の一例を示すフローチャートである。この処理は、ファイル更新部43が起動されることに伴って開始される処理である。ファイル更新部43は、
図10のフローチャートに基づく処理を開始すると、まず更新完了フラグをオフにセットする(ステップS30)。つまり、ファイル更新部43は、その起動時に更新完了フラグをオフにセットしておくのである。
【0088】
ファイル更新部43は、起動が完了すると、ダウンロードフラグがオンであるか否かを判断する(ステップS31)。ダウンロードフラグがオンである場合(ステップS31でYES)、ファイル更新部43は、ウイルス検出部41によるウイルス検出処理の実行中であるか否かを判断する(ステップS32)。その結果、ウイルス検出部41によるウイルス検出処理の実行中である場合(ステップS32でYES)、ファイル更新部43は、ファイル更新処理を保留する(ステップS33)。したがって、現在実行中のウイルス検出処理は、旧バージョンのパターンファイル22aを参照しながら行われることになる。
【0089】
ファイル更新処理を保留すると、ファイル更新部43は、ウイルス検出処理が終了するまで待機する状態となる(ステップS34)。そしてウイルス検出処理が終了すると(ステップS34でYES)、ファイル更新部43は、ファイル更新処理の保留状態を解除し、ファイル更新処理を開始する(ステップS35)。すなわち、ファイル更新部43は、新バージョンのパターンファイル22bをメモリ11bに展開することを指定したうえでウイルス検出部41を再起動させるのである。これにより、ウイルス検出部41は、再起動を開始し、その再起動時において上述したステップS10,S11で新バージョンのパターンファイル22bを読み出してメモリ11bに展開する。そして再起動後には、新バージョンのパターンファイル22bを参照してウイルス検出処理を行うことができるようになる。
【0090】
一方、ダウンロードフラグがオンであることを確認したタイミングでウイルス検出処理が行われていない場合(ステップS32でNO)、ファイル更新部43は、そのタイミングでファイル更新処理を開始する(ステップS35)。
【0091】
ファイル更新処理を行うと、ファイル更新部43は、ウイルス検出部41の再起動が完了したことを確認し(ステップS36でYES)、更新完了フラグをオンにセットする(ステップS37)。そしてファイル更新部43は、ダウンロードフラグがオフにセットされたことを確認すると(ステップS38)、更新完了フラグをオフにセットする(ステップS39)。その後、ファイル更新部43による処理は、ステップS31に戻り、上述した処理を繰り返す。
【0092】
上記のような処理が行われることにより、情報処理装置2においてウイルス検出処理が行われていないときにファイル更新処理を行うことができるようになる。
図11は、ウイルス検出処理とファイル更新処理との関係を示すタイミングチャートである。まず、
図11(a)に示すように、新バージョンのパターンファイル22bのダウンロードが完了したタイミングT10においてウイルス検出処理が行われていないとき、ファイル更新部43は、そのタイミングT10でファイル更新処理を開始する。このファイル更新処理は、例えばタイミングT10から数十秒程度経過後のタイミングT11で終了する。したがって、ファイル更新部43によるファイル更新処理は、ウイルス検出処理を途中で停止させてしまうことがない。
【0093】
また
図11(b)に示すように、新バージョンのパターンファイル22bのダウンロード中であるタイミングT20においてウイルス検出処理が開始され、ダウンロードが完了したタイミングT21においてウイルス検出処理が継続して行われているとき、ファイル更新部43は、ダウンロードが完了したタイミングT21でファイル更新処理を開始せず、ウイルス検出処理が終了するまでファイル更新処理を保留する。そしてタイミングT22においてウイルス検出処理が終了すると、ファイル更新部43は、そのタイミングT22でファイル更新処理を開始する。この場合のファイル更新処理は、タイミングT23で終了する。したがって、この場合も、ファイル更新部43によるファイル更新処理は、ウイルス検出処理を途中で停止させてしまうことがない。
【0094】
次に
図12は、ジョブ実行処理とファイル更新処理との関係を示すタイミングチャートである。例えば
図12(a)に示すように、ジョブ制御部17によってジョブが実行されているときに、そのジョブの実行と並行して新バージョンのパターンファイル22bのダウンロードが行われている場合を想定する。この場合、ジョブの実行が終了していないタイミングT10でダウンロードが完了すると、ファイル更新部43は、そのタイミングT10でファイル更新処理を開始する。このファイル更新処理は、ジョブ制御部17によるジョブの実行と並行して行われることになる。したがって、ファイル更新部43によるファイル更新処理は、ジョブ制御部17によるジョブの実行効率を低下させることなく行われる。
【0095】
また、例えば
図12(b)に示すように、新バージョンのパターンファイル22bのダウンロード中であるタイミングT20において印刷ジョブが受信され、その印刷ジョブに含まれるデータに対するウイルス検出処理が開始された場合を想定する。この場合、ウイルス検出処理が終了していないタイミングT21でダウンロードが完了すると、ファイル更新部43は、ダウンロードが完了したタイミングT21でファイル更新処理を開始せず、ウイルス検出処理が終了するまでファイル更新処理を保留する。そしてタイミングT22においてウイルス検出処理が終了し、ジョブ制御部17による印刷ジョブの実行が開始されると、ファイル更新部43は、そのタイミングT22でファイル更新処理を開始する。このファイル更新処理は、ジョブ制御部17による印刷ジョブの実行と並行して行われることになる。したがって、ファイル更新部43によるファイル更新処理は、ジョブ制御部17による印刷ジョブの実行効率を低下させることなく行われる。
【0096】
また、ジョブ制御部17は、ファイル更新部43によるファイル更新処理と並行してジョブを実行することができる。そのため、ファイル更新部43によるファイル更新処理が行われているときにジョブ受付部31によってウイルス検出処理を行わないコピージョブが受け付けられた場合、ジョブ制御部17は、ファイル更新部43によるファイル更新処理と並行してウイルス検出処理を行わないコピージョブを実行することができる。この場合も、ファイル更新処理は、ジョブの実行効率を低下させることがない。
【0097】
以上のように本実施形態の情報処理装置2は、ウイルス検出部41の起動時にウイルス検出処理で参照するパターンファイルを1つだけメモリ11bに展開するようにしているので、メモリ11bを大容量化する必要がなく、装置コストの上昇を抑えることができる。また、本実施形態の情報処理装置2は、ファイル更新処理によって新バージョンのパターン22bを反映させるとき、ウイルス検出処理を途中で停止さないので受信したデータに対するウイルス検出処理が未完のまま終了してしまうという問題を解決することもできる。さらに、本実施形態の情報処理装置2は、ファイル更新処理を行うことによって、印刷ジョブを受信してから印刷ジョブの実行を開始するまでの時間が長くなることはない。そのため、ジョブの実行効率を低下させることなく、新バージョンのパターンファイル22bに更新することができるという利点がある。
【0098】
(第2実施形態)
次に本発明の第2実施形態について説明する。上述した第1実施形態では、新バージョンのパターンファイル22bのダウンロードが完了したとき、ウイルス検出処理が行われていなければ、ダウンロードが完了したタイミングでファイル更新処理の実行を開始する形態について説明した。ところが、第1実施形態では、ファイル更新部43によるファイル更新処理が行われているときに情報処理装置2が印刷ジョブを受信するケースが起こり得る。その場合、第1実施形態では、ファイル更新処理によるウイルス検出部41の再起動が完了するまで印刷ジョブに含まれるデータに対するウイルス検出処理を開始することができず、印刷ジョブの実行が開始されるまでの時間が長くなってしまう可能性がある。本実施形態では、そのような事態が生じないようにジョブの実行中にファイル更新処理を完了できるようにした動作について説明する。尚、本実施形態における情報処理システム1及び情報処理装置2のハードウェア構成及び機能構成は第1実施形態で説明したものと同様である。
【0099】
図13は、第2実施形態のファイル更新部43によるファイル更新処理の例を示すフローチャートである。この処理は、ファイル更新部43が起動されることに伴って開始される処理である。ファイル更新部43は、
図13のフローチャートに基づく処理を開始すると、まず更新完了フラグをオフにセットする(ステップS40)。そしてファイル更新部43は、ダウンロードフラグがオンであるか否かを判断し(ステップS41)、ダウンロードフラグがオンであれば(ステップS41でYES)、ファイル更新処理を保留する(ステップS42)。つまり、ファイル更新部43は、新バージョンのパターンファイル22bのダウンロードが完了すると、直ぐにはファイル更新処理を実行せず、ファイル更新処理の実行を保留する。
【0100】
そしてファイル更新部43は、ジョブ制御部17によってジョブの実行が開始されたか否かを判断する(ステップS43)。このとき、ジョブ制御部17によって実行されるジョブの種類は問わない。すなわち、ファイル更新部43は、ジョブ制御部17によってコピージョブ、スキャンジョブ、印刷ジョブ及びFAX送受信ジョブのいずれかの実行が開始されたか否かを判断する。ジョブ制御部17によってジョブの実行が開始されると(ステップS43でYES)、ファイル更新部43は、そのジョブの実行を終了するまでに所定時間以上を要するか否かを判断する(ステップS44)。この場合の所定時間は、ファイル更新処理に要する時間である。すなわち、ファイル更新部43は、ジョブ制御部17によって実行されるジョブが終了するまでの所要時間が、ファイル更新処理に要する時間以上であるか否かを判断するのである。
【0101】
例えば、ジョブ制御部17によって実行されるジョブが印刷ジョブである場合、ジョブの所要時間はシート材のサイズや印刷枚数などに基づいて算出することができる。これに対し、コピージョブやスキャンジョブ、FAX送信ジョブの場合は、スキャナ部8による原稿の読み取り動作が終了しない限り、ジョブの所要時間を正確に算出することができない。そのため、ファイル更新部43は、コピージョブやスキャンジョブ、FAX送信ジョブである場合には原稿枚数が所定枚数(例えば1枚)であると仮定してジョブの所要時間を算出する。また、ファイル更新部43は、新バージョンのパターンファイル22bのデータ量に応じてファイル更新処理に要する時間を算出することができる。したがって、ファイル更新部43は、ジョブの所要時間とファイル更新処理に要する時間とを比較することにより、ジョブの所要時間が、ファイル更新処理に要する時間以上であるか否かを判断する。
【0102】
ステップS44における判断の結果、ジョブの所要時間がファイル更新処理に要する時間よりも短い場合(ステップS44でNO)、ファイル更新部43による処理はステップS43に戻る。これに対し、ジョブの所要時間がファイル更新処理に要する時間以上である場合(ステップS44でYES)、ファイル更新部43は、ファイル更新処理を開始する(ステップS45)。この場合、ファイル更新処理は、ジョブ制御部17によるジョブの実行が完了するまでに終了する。
【0103】
ファイル更新処理を行うと、ファイル更新部43は、ウイルス検出部41の再起動が完了したことを確認し(ステップS46でYES)、更新完了フラグをオンにセットする(ステップS47)。そしてファイル更新部43は、ダウンロードフラグがオフにセットされたことを確認すると(ステップS48でYES)、更新完了フラグをオフにセットする(ステップS49)。その後、ファイル更新部43による処理は、ステップS41に戻り、上述した処理を繰り返す。
【0104】
上記のような処理が行われることにより、情報処理装置2は、ジョブの実行が開始されるときにファイル更新処理の実行を開始すると共に、ジョブの実行が完了するまでの間にファイル更新処理を終了させることができる。それ故、ファイル更新部43によるファイル更新処理が行われているときに情報処理装置2が新たな印刷ジョブを受信したとしても、その受信時には情報処理装置2において先のジョブが実行されているため、ユーザーに対して次の印刷ジョブの実行が開始されるまでの時間が長くなったという印象を与えることがない。また、本実施形態の情報処理装置2は、ジョブの実行中にファイル更新処理を完了させることができるため、ジョブの実行効率を低下させることなく、新バージョンのパターンファイル22bに更新することができる。
【0105】
上記においては、新バージョンのパターンファイル22bのダウンロードが完了すると、ファイル更新部43は、ファイル更新処理を保留し、ジョブ制御部17によってジョブの実行が開始されるときにファイル更新処理を開始する場合を例示した。しかし、ファイル更新処理を開始する条件はこれに限られるものではない。例えば、ファイル更新部43は、ウイルス検出部41によるウイルス検出処理が行われていないことを条件とし、その条件が成立している状態でジョブの実行が開始されるときに、ファイル更新処理を開始するようにしても良い。
【0106】
尚、本実施形態において上述した点以外については、第1実施形態で説明したものと同様であるため、説明を省略する。
【0107】
(第3実施形態)
次に本発明の第3実施形態について説明する。本実施形態では、新バージョンのパターンファイル22bのダウンロードが完了すると、ファイル更新処理を保留し、情報処理装置2が所定の動作状態へ移行するときにファイル更新部43がファイル更新処理を開始する動作の例について説明する。尚、本実施形態における情報処理システム1及び情報処理装置2のハードウェア構成及び機能構成についても第1実施形態で説明したものと同様である。
【0108】
図14は、第3実施形態のファイル更新部43によるファイル更新処理の例を示すフローチャートである。この処理は、ファイル更新部43が起動されることに伴って開始される処理である。ファイル更新部43は、
図14のフローチャートに基づく処理を開始すると、まず更新完了フラグをオフにセットする(ステップS50)。続いて、ファイル更新部43は、ダウンロードフラグがオンであるか否かを判断し(ステップS51)、ダウンロードフラグがオンであれば(ステップS51でYES)、ファイル更新処理を保留する(ステップS52)。つまり、ファイル更新部43は、ダウンロード完了後に直ぐにはファイル更新処理を実行せず、ファイル更新処理の実行を保留する。
【0109】
そしてファイル更新部43は、情報処理装置2が省電力状態へ移行するか否かを判断する(ステップS53)。例えば、ジョブ制御部17によってジョブの実行が行われておらず、しかも操作パネル7においてユーザーの操作が検知されない状態が所定時間以上継続すると、ジョブマネージャ30が通電制御部15に対して通電状態を省電力状態へ切り替えるように指示する。ファイル更新部43は、その指示を検知し、情報処理装置2が省電力状態へ移行することを検知する。
【0110】
通電状態が省電力状態へ移行しない場合(ステップS53でNO)、ファイル更新部43は、ジョブ制御部17によるジョブの実行中であるか否かを判断する(ステップS54)。そしてジョブの実行中である場合(ステップS54でYES)、ファイル更新部43は、そのジョブの実行中にジョブの実行を継続させることができないエラーが発生したか否かを判断し(ステップS55)、エラーが発生した場合には(ステップS55でYES)、そのエラーによってジョブの実行が中断したか否かを判断する(ステップS56)。この場合のエラーとしては、例えばシート材やトナーのエンプティエラーや、紙詰まりエラーなどがある。
【0111】
そしてファイル更新部43は、通電状態が省電力状態へ移行すると判断した場合(ステップS53でYES)、又は、ジョブの実行中にエラーが発生してジョブの実行が中断したと判断した場合(ステップS56でYES)、ファイル更新処理を開始する(ステップS57)。これに対し、通電状態が省電力状態へ移行せず(ステップS53でNO)、しかも、実行中のジョブが中断しない場合(ステップS56でNO)、ファイル更新部43は、ファイル更新処理の実行を保留した状態を継続させる。
【0112】
通電状態が省電力状態へ移行すると、上述したように操作パネル7、スキャナ部8、プリンタ部9及びジョブ制御部17への電力供給が停止するため、情報処理装置2は、ジョブを実行することができない状態となる。そのため、情報処理装置2が省電力状態において印刷ジョブを受信すると、通電状態を通常通電状態へ復帰させる処理を行う。この復帰処理によってプリンタ部9への電力供給が再開され、定着部9aのウォームアップが開始される。そして定着部9aのウォームアップが完了した後に、印刷ジョブの実行が開始される。つまり、情報処理装置2は、省電力状態のときに印刷ジョブを受信したとしても、その印刷ジョブを直ぐに実行することはできないのである。そのため、ファイル更新部43は、省電力状態へ移行するときにファイル更新処理を開始することにより、ジョブの実行効率を低下させることなく、旧バージョンのパターンファイル22aを新バージョンのパターンファイル22bに更新することができる。
【0113】
また、ジョブの実行途中でシート材やトナーのエンプティエラーや、紙詰まりエラーなどが発生してジョブの実行が中断すると、ユーザーによるメンテナンス作業が行われる。すなわち、シート材の補充や、トナーボトルの交換、紙詰まりしたシート材を取り除く作業などが行われる。ユーザーによってそのような作業が行われ、エラーが解消されるまでには一定の時間を要する。そのため、ファイル更新部43は、エラーが解消されるまでの期間中にファイル更新処理を行うのである。これにより、ジョブの実行効率に影響を与えることなく、旧バージョンのパターンファイル22aを新バージョンのパターンファイル22bに更新することができる。
【0114】
ファイル更新部43は、ファイル更新処理を行うと、ウイルス検出部41の再起動が完了したことを確認し(ステップS58でYES)、更新完了フラグをオンにセットする(ステップS59)。そしてファイル更新部43は、ダウンロードフラグがオフにセットされたことを確認すると(ステップS60でYES)、更新完了フラグをオフにセットする(ステップS61)。その後、ファイル更新部43による処理は、ステップS51に戻り、上述した処理を繰り返す。
【0115】
上記のような処理が行われることにより、情報処理装置2は、通電状態が省電力状態へ移行するときに、又は、実行中のジョブがエラーによって中断した状態となるときに、ファイル更新処理の実行を開始し、ジョブの実行に影響を与えることなく、ファイル更新処理を終了させることができる。
【0116】
上記においては、新バージョンのパターンファイル22bのダウンロードが完了すると、ファイル更新部43は、ファイル更新処理を保留し、省電力状態やエラーによるジョブ中断状態などの所定の動作状態へ移行するときにファイル更新処理を開始する場合を例示した。しかし、ファイル更新処理を開始する条件はこれに限られるものではない。例えば、ファイル更新部43は、ウイルス検出部41によるウイルス検出処理が行われていないことを条件とし、その条件が成立しているときに所定の動作状態へ移行する場合に、ファイル更新処理を開始するようにしても良い。
【0117】
尚、本実施形態において上述した点以外については、第1又は第2実施形態で説明したものと同様であるため、説明を省略する。
【0118】
(第4実施形態)
次に本発明の第4実施形態について説明する。本実施形態では、新バージョンのパターンファイル22bのダウンロードが完了すると、ウイルス検出処理を行わないジョブを優先的に実行し、ウイルス検出処理を行わないジョブを実行しているときに当該ジョブと並行してファイル更新処理を開始する動作の例について説明する。尚、本実施形態における情報処理システム1及び情報処理装置2のハードウェア構成及び機能構成についても第1実施形態で説明したものと同様である。
【0119】
図15は、第4実施形態のファイル更新部43によるファイル更新処理の例を示すフローチャートである。この処理は、ファイル更新部43が起動されることに伴って開始される処理である。ファイル更新部43は、
図15のフローチャートに基づく処理を開始すると、まず更新完了フラグをオフにセットする(ステップS70)。続いて、ファイル更新部43は、ダウンロードフラグがオンであるか否かを判断し(ステップS71)、ダウンロードフラグがオンであれば(ステップS71でYES)、ファイル更新処理を保留する(ステップS72)。
【0120】
続いてファイル更新部43は、ウイルス検出部41によるウイルス検出処理の実行中であるか否かを判断する(ステップS73)。ウイルス検出処理の実行中である場合(ステップS73でYES)、ファイル更新部43は、ウイルス検出部41によるウイルス検出処理を途中で停止させる(ステップS74)。尚、ウイルス検出処理が実行されていない場合(ステップS73でNO)、ステップS74はスキップする。
【0121】
次にファイル更新部43は、待ち行列に少なくとも1つのジョブが登録されているか否かを判断する(ステップS75)。待ち行列に少なくとも1つのジョブが登録されている場合(ステップS75でYES)、ファイル更新部43は、待ち行列に登録されている少なくとも1つのジョブの中にウイルス検出処理を行わないジョブ(コピージョブ)が含まれているか否かを判断する(ステップS76)。その結果、ウイルス検出処理を行わないジョブ(コピージョブ)が登録されている場合(ステップS76でYES)、ファイル更新部43は、ジョブ管理部32に対してウイルス検出処理を行わないジョブの優先実行を指示する(ステップS77)。これにより、待ち行列にウイルス検出を行うジョブ(印刷ジョブ)とウイルス検出処理を行わないジョブ(コピージョブ)とが登録されている場合、ジョブの受け付け順序にかかわらず、ウイルス検出処理を行わないジョブ(コピージョブ)がウイルス検出処理を行うジョブよりも優先的に実行されるようになる。
【0122】
一方、待ち行列にジョブが登録されていない場合(ステップS75でNO)、ファイル更新部43は、ジョブ受付部31に対し、ウイルス検出処理を行うジョブ(印刷ジョブ)の受け付け禁止を指示する(ステップS78)。これにより、情報処理装置2は、ウイルス検出処理を行わないジョブ(コピージョブ)だけを受け付ける状態となる。また、待ち行列に登録されているジョブの中にウイルス検出処理を行わないジョブ(コピージョブ)が含まれていない場合(ステップS76でNO)、ファイル更新部43は、待ち行列に登録されているジョブの実行を禁止し、上述したステップS78の処理を行う。したがって、情報処理装置2は、ウイルス検出処理を行わないジョブ(コピージョブ)だけを受け付けて実行する状態となる。
【0123】
次にファイル更新部43は、ジョブ制御部17によってジョブの実行が開始されたか否かを判断する(ステップS79)。ジョブ制御部17によってジョブの実行が開始されると(ステップS79でYES)、ファイル更新部43は、ファイル更新処理の実行を開始する(ステップS81)。つまり、ファイル更新部43は、ウイルス検出処理を行わないジョブの実行が開始されることに伴い、そのジョブと並行してファイル更新処理の実行を開始するのである。そしてファイル更新部43は、ウイルス検出処理を行わないジョブが優先的に実行されている間にファイル更新処理を終えることができる。
【0124】
またファイル更新部43は、ジョブの実行が開始されない場合(ステップS79でNO)、ユーザーによるファイル更新指示の有無を確認する(ステップS80)。例えば、ファイル更新指示は、操作パネル7に対してユーザーによって入力されるものであっても良いし、ネットワーク5を介して外部装置3から電子メールなどによって入力されるものであっても良い。そしてユーザーによるファイル更新指示を検出すると(ステップS80でYES)、ファイル更新部43は、ファイル更新処理の実行を開始する(ステップS81)。つまり、ファイル更新部43は、ウイルス検出処理を行わないジョブの実行が開始されない状態であってもユーザーによってファイル更新処理の実行が指示されれば、その指示に基づいてファイル更新処理の実行を開始するのである。この場合、ジョブの実行の有無にかかわらず、旧バージョンのパターンファイル22aを新バージョンのパターンファイル22bに更新することが可能であり、早期に新バージョンのパターンファイル22bを適用することができるようになる。そして早期に新バージョンのパターンファイル22bを適用することにより、情報処理装置2のウイルス感染リスクを早期に低減することができ、セキュリティを向上させることができる。
【0125】
ファイル更新部43は、ファイル更新処理を行うと、ウイルス検出部41の再起動が完了したことを確認し(ステップS82でYES)、更新完了フラグをオンにセットする(ステップS83)。そしてファイル更新部43は、ダウンロードフラグがオフにセットされたことを確認すると(ステップS84でYES)、更新完了フラグをオフにセットする(ステップS85)。またファイル更新部43は、ファイル更新処理を終了すると、ウイルス検出処理を行うジョブの受け付け禁止状態を解除する(ステップS86)。これにより、情報処理装置2は、ウイルス検出処理を行うジョブを再び受け付けることができる状態に戻る。尚、このとき、ウイルス検出処理を行わないジョブの優先実行設定を解除するようにしても良い。その後、ファイル更新部43による処理は、ステップS71に戻り、上述した処理を繰り返す。
【0126】
また、ステップS74において停止されたウイルス検出処理は、新バージョンのパターンファイル22bに更新された後に再開されることになる。このとき、ウイルス検出部41は、新バージョンのパターンファイル22bを参照してウイルス検出処理をはじめから実行するため、新バージョンのパターンファイル22bに定義されている新たなウイルスを検出することができるようになる。
【0127】
上記のような処理が行われることにより、情報処理装置2は、新バージョンのパターンファイル22bのダウンロード完了時に、待ち行列にウイルス検出処理を行わないジョブが登録されていれば、ウイルス検出処理を行わないジョブを優先的にジョブ制御部17に実行させ、ウイルス検出処理を行わないジョブが実行されているときにパターンファイルの更新を行うができる。
【0128】
また本実施形態では、ダウンロード完了時にウイルス検出部41によるウイルス検出処理が行われている場合、ファイル更新部43が、ウイルス検出処理を停止させ、ジョブ制御部17によってウイルス検出処理を行わないジョブが実行されているときにパターンファイルの更新を行う。そのため、第1実施形態よりも早期にパターンファイルの更新を行うことができるようになる。
【0129】
また本実施形態では、ファイル更新部43が、ダウンロードの完了後においてユーザーによるファイル更新指示を検知した場合に、ファイル更新処理を開始する。そのため、ユーザーが情報処理装置2に対して予めファイル更新指示を入力しておけば、ダウンロードの完了後直ぐにファイル更新処理を実行させることも可能である。尚、このような手法は、本実施形態だけではなく、上述した第1乃至第3実施形態のいずれにも適用可能な手法である。
【0130】
尚、本実施形態において上述した点以外については、第1乃至第3実施形態において説明したものと同様であるため、説明を省略する。
【0131】
(変形例)
以上、本発明に関する好ましい実施形態について説明した。しかし、本発明は、上記実施形態において説明した内容のものに限られるものではなく、種々の変形例が適用可能である。
【0132】
例えば上記実施形態では、情報処理装置2がMFPなどの画像処理装置によって構成される場合を例示したが、それに限られるものではない。すなわち、情報処理装置2は、画像処理装置以外の他の情報機器であっても構わない。そのような情報機器として、例えばパーソナルコンピュータやタブレット端末、スマートフォン、OA機器、FA機器などが挙げられる。
【符号の説明】
【0133】
2 情報処理装置
4 サーバー
11b メモリ
12 記憶部(記憶手段)
15 通電制御部(通電制御手段)
17 ジョブ制御部(データ処理手段、ジョブ制御手段)
22a,22b パターンファイル
31 ジョブ受付部(ジョブ受付手段)
32 ジョブ管理部(ジョブ管理手段)
41 ウイルス検出部(ウイルス検出手段)
42 ダウンロード部(ダウンロード手段)
43 ファイル更新部(ファイル更新手段)