(57)【要約】      （修正有）【課題】製品保証期間を満たせるか否かを早期且つ理知的に判断する。【解決手段】システム制御部１３２は、書き込み保証値を(Wmax)とし、書き込み総量を(Wsum)とし、差分の単位期間当たりの平均値を(Ave.)とし、単位期間当たりの書き込み予測量を(Wref)とし、残保証期間を(Dremain)としたとき、(Dremain)＝［(Wmax)−(Wsum)］／［(Ave.)＋(Wref)］の演算により、残保証期間を求め、さらに、経過期間を(Dpast)とし、使用可能予測期間を(Dprediction)としたとき、(Dprediction)＝(Dpast)＋(Dremain)の演算により、使用可能予測期間を求め、不揮発性メモリーが保証する保証期間を(Dguarantee)としたとき、(Dprediction)＜(Dguarantee)となる場合、過剰書き込みと判断する。【選択図】図１
2019128766.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶単位を有する不揮発性メモリーと、
製品保証期間を元にした単位期間当たりの前記記憶単位毎の書き込み予測量を設計値として管理する設計値管理テーブルと、
前記記憶単位毎の前記設計値の合計と前記記憶単位毎のデータの書き込み量の合計との差分を管理する差分管理テーブルと、
前記記憶単位毎の前記データの書き込み量を前記単位期間取得し、前記差分を前記差分管理テーブルに登録するシステム制御部とを備え、
前記システム制御部は、
前記不揮発性メモリーの書き込み開始からのデータの書き込み総量を取得し、
書き込み保証値を(Wmax)とし、前記書き込み総量を(Wsum)とし、前記差分の前記単位期間当たりの平均値を(Ave.)とし、前記単位期間当たりの書き込み予測量を(Wref)とし、残保証日数を(Dremain)としたとき、
(Dremain)＝［(Wmax)−(Wsum)］／［(Ave.)＋(Wref)］
の演算により、前記残保証期間を求め、
さらに、経過日数を(Dpast)とし、使用可能予測期間を(Dprediction)としたとき、
(Dprediction)＝(Dpast)＋(Dremain)
の演算により、前記使用可能予測期間を求め、
前記不揮発性メモリーが保証する保証期間を(Dguarantee)としたとき、
(Dprediction)＜(Dguarantee)となる場合、
過剰書き込みと判断する
ことを特徴とする電子機器。
【請求項２】
前記書き込み保証値より一定値少ない寿命事前通知閾値を設け、
前記システム制御部は、前記書き込み総量が前記寿命事前通知閾値を超えた状態において、前記過剰書き込みと判断した場合、前記保証期間を満たせない可能性が高いことを知らせる第１の警告を通知する
ことを特徴とする請求項１に記載の電子機器。
【請求項３】
前記システム制御部は、前記書き込み総量が前記寿命事前通知閾値を超えた状態において、前記過剰書き込みと判断しない場合、前記保証期間を満たせるが前記不揮発性メモリーの交換が近いことを知らせる第２の警告を通知することを特徴とする請求項２に記載の電子機器。
【請求項４】
複数の記憶単位を有する不揮発性メモリーを搭載する電子機器を制御するコンピューターに実行させるメモリー制御プログラムであって、
設計値管理テーブルにより、製品保証期間を元にした単位期間当たりの前記記憶単位毎の書き込み予測量を設計値として管理する工程と、
差分管理テーブルにより、前記記憶単位毎の前記設計値の合計と前記記憶単位毎のデータの書き込み量の合計との差分を管理する工程と、
システム制御部により、前記記憶単位毎の前記データの書き込み量を前記単位期間取得し、前記差分を前記差分管理テーブルに登録する工程とを有し、
前記システム制御部は、
前記不揮発性メモリーの使用開始からのデータの書き込み総量を取得し、
書き込み保証値を(Wmax)とし、前記書き込み総量を(Wsum)とし、前記差分の前記単位期間当たりの平均値を(Ave.)とし、前記単位期間当たりの書き込み予測量を(Wref)とし、残保証期間を(Dremain)としたとき、
(Dremain)＝［(Wmax)−(Wsum)］／［(Ave.)＋(Wref)］
の演算により、前記残保証期間を求め、
さらに、経過日数を(Dpast)とし、使用可能予測期間を(Dprediction)としたとき、
(Dprediction)＝(Dpast)＋(Dremain)
の演算により、前記使用可能予測期間を求め、
前記不揮発性メモリーが保証する保証期間を(Dguarantee)としたとき、
(Dprediction)＜(Dguarantee)となる場合、
過剰書き込みと判断する
ことを特徴とするメモリー制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリーの管理に適した電子機器及びメモリー制御プログラムに関する。
【背景技術】
【０００２】
たとえば、電子機器の一つである、複合機等のＭＦＰ(Multifunction Peripheral)である画像形成装置においては、ＨＤＤ(Hard Disk Drive)、ＳＳＤ（Solid State Drive）、ＳＤ（Secure Digital Card）カード、NOR  Flash、NAND Flash等の不揮発性メモリーの搭載が可能な機種がある。
【０００３】
ところで、これらの不揮発性メモリーのうち、ＨＤＤ、及びＳＳＤの場合、S.M.A.R.T.（Self-Monitoring, Analysis and Reporting Technology）と呼ばれる自己診断機能が搭載されている。また、自己診断機能が搭載されている不揮発性メモリーの場合、SATA（Serial Advanced Technology Attachment）インターフェースを使用することで、TBW（Tera Byte Written）と呼ばれる何テラバイトのデータを書き込んだかを示した書き込み量を取得できる。
【０００４】
これに対し、ＳＤカード、NOR  Flash、NAND Flash等の不揮発性メモリーの場合、S.M.A.R.T.と呼ばれる自己診断機能が搭載されていないため、TBWと呼ばれる書き込み保証値を取得できない。このように、書き込み保証値を取得できない場合、不揮発性メモリーの寿命を検知することが困難となる。また、書き込み保証値を取得できない不揮発性メモリーが使用中に寿命に達してしまうと、画像形成装置が正常動作を行えなくなってしまうことがある。
【０００５】
このような不具合を解消するものとして、特許文献１では、カウント手段により、書き込み保証値が示す保証回数の少ない第１不揮発性メモリーへのデータ書き込み回数をパーティション単位でカウントし、制御手段により、データを書き込むべき第１不揮発性メモリーのパーティションの書き込み回数が所定回数を超えると、書き込むべきデータを書き換え保証回数が多い第２不揮発性メモリーに記憶させるデータ記憶制御装置を提案している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−０４４２０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述した特許文献１でのデータ記憶制御装置では、書き換え保証回数の少ない第１不揮発性メモリーへのデータ書き込み回数をパーティション単位でカウントし、第１不揮発性メモリーが寿命に達する前に、書き換え保証回数の多い第２不揮発性メモリーにデータを書き込むため、データの信頼性を確保できる。
【０００８】
ところで、ＳＤカード、NOR  Flash、NAND Flash等の不揮発性メモリーの寿命は、製品保証年数によってある程度予測ができる。ただし、データの書換え回数、データの書き込み量、データの書き込み間隔等の使用条件によっては、不揮発性メモリーの寿命も変化する。
【０００９】
このため、特許文献１でのデータ記憶制御装置のように、第１不揮発性メモリーの寿命を、第１不揮発性メモリーのパーティションの書き込み回数のみで検知すると、書き込み回数が所定回数を超える前に第１不揮発性メモリーの寿命を検知できないことになる。このように、書き込み回数が所定回数を超える前に第１不揮発性メモリーの寿命を検知できないと、製品保証年数を満たせない状態となることを早期に予測できないという問題がある。
【００１０】
本発明は、このような状況に鑑みてなされたものであり、上記問題点を解消することができる電子機器及びメモリー制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の電子機器は、複数の記憶単位を有する不揮発性メモリーと、製品保証期間を元にした単位期間当たりの前記記憶単位毎の書き込み予測量を設計値として管理する設計値管理テーブルと、前記記憶単位毎の前記設計値の合計と前記記憶単位毎のデータの書き込み量の合計との差分を管理する差分管理テーブルと、前記記憶単位毎の前記データの書き込み量を前記単位期間取得し、前記差分を前記差分管理テーブルに登録するシステム制御部とを備え、前記システム制御部は、前記不揮発性メモリーの使用開始からのデータの書き込み総量を取得し、書き込み保証値を(Wmax)とし、前記書き込み総量を(Wsum)とし、前記差分の前記単位期間当たりの平均値を(Ave.)とし、前記単位期間当たりの書き込み予測量を(Wref)とし、残保証期間を(Dremain)としたとき、(Dremain)＝［(Wmax)−(Wsum)］／［(Ave.)＋(Wref)］の演算により、前記残保証期間を求め、さらに、経過期間を(Dpast)とし、使用可能予測期間を(Dprediction)としたとき、(Dprediction)＝(Dpast)＋(Dremain)の演算により、前記使用可能予測期間を求め、前記不揮発性メモリーが保証する保証期間を(Dguarantee)としたとき、(Dprediction)＜(Dguarantee)となる場合、過剰書き込みと判断することを特徴とする。
また、前記書き込み保証値より一定値少ない寿命事前通知閾値を設け、前記システム制御部は、前記書き込み総量が前記寿命事前通知閾値を超えた状態において、前記過剰書き込みと判断した場合、前記保証期間を満たせない可能性が高いことを知らせる第１の警告を通知することを特徴とする。
また、前記システム制御部は、前記書き込み総量が前記寿命事前通知閾値を超えた状態において、前記過剰書き込みと判断しない場合、前記保証日数を満たせるが前記不揮発性メモリーの交換が近いことを知らせる第２の警告を通知することを特徴とする。
本発明のメモリー制御プログラムは、複数の記憶単位を有する不揮発性メモリーを搭載する電子機器を制御するコンピューターに実行させるメモリー制御プログラムであって、設計値管理テーブルにより、製品保証期間を元にした単位期間当たりの前記記憶単位毎の書き込み予測量を設計値として管理する工程と、差分管理テーブルにより、前記記憶単位毎の前記設計値の合計と前記記憶単位毎のデータの書き込み量の合計との差分を管理する工程と、システム制御部により、前記記憶単位毎の前記データの書き込み量を前記単位期間取得し、前記差分を前記差分管理テーブルに登録する工程とを有し、前記システム制御部は、前記不揮発性メモリーの使用開始からのデータの書き込み総量を取得し、書き込み保証値を(Wmax)とし、前記書き込み総量を(Wsum)とし、前記差分の前記単位期間当たりの平均値を(Ave.)とし、前記単位期間当たりの書き込み予測量を(Wref)とし、残保証期間を(Dremain)としたとき、(Dremain)＝［(Wmax)−(Wsum)］／［(Ave.)＋(Wref)］の演算により、前記残保証期間を求め、さらに、経過期間を(Dpast)とし、使用可能予測期間を(Dprediction)としたとき、(Dprediction)＝(Dpast)＋(Dremain)の演算により、前記使用可能予測期間を求め、前記不揮発性メモリーが保証する保証期間を(Dguarantee)としたとき、(Dprediction)＜(Dguarantee)となる場合、過剰書き込みと判断することを特徴とする。
本発明の電子機器及びメモリー制御プログラムでは、設計値管理テーブルにより、製品保証期間を元にした単位期間当たりの前記記憶単位毎の書き込み予測量を設計値として管理し、差分管理テーブルにより、記憶単位毎の設計値の合計と記憶単位毎のデータの書き込み総量量の合計との差分を管理し、システム制御部により、記憶単位毎のデータの書き込み量を単位期間取得し、差分を差分管理テーブルに登録する。また、システム制御部は、前記不揮発性メモリーの使用開始からのデータの書き込み総量を取得し、書き込み保証値を(Wmax)とし、書き込み総量を(Wsum)とし、差分の単位期間当たりの平均値を(Ave.)とし、単位期間当たりの書き込み予測量を(Wref)とし、残保証期間を(Dremain)としたとき、(Dremain)＝［(Wmax)−(Wsum)］／［(Ave.)＋(Wref)］の演算により、残保証期間を求め、さらに、経過期間を(Dpast)とし、使用可能予測期間を(Dprediction)としたとき、(Dprediction)＝(Dpast)＋(Dremain)の演算により、使用可能予測期間を求め、不揮発性メモリーが保証する保証期間を(Dguarantee)としたとき、(Dprediction)＜(Dguarantee)となる場合、過剰書き込みと判断する。
これにより、使用可能予測期間(Dprediction)が保証期間(Dguarantee)に満たない場合、過剰書き込みと判断できる。
【発明の効果】
【００１２】
本発明の電子機器及びメモリー制御プログラムによれば、使用可能予測期間(Dprediction)が保証期間(Dguarantee)に満たない場合、過剰書き込みと判断できるので、製品保証期間を満たせるか否かを早期且つ理知的に判断できる。
【図面の簡単な説明】
【００１３】
【図１】本発明の電子機器をＭＦＰに適用した場合の一実施形態を説明するための図である。
【図２】図１のＳＳＤの構成の一例について説明するものであって、図２（ａ）はＳＳＤが有するパーティションを示す図であり、図２（ｂ）はそれぞれのパーティションを管理するカーネル管理領域を示す図である。
【図３】図１の不揮発性メモリーの管理情報を説明するものであって、図３（ａ）は設計値管理テーブルを示す図であり、図３（ｂ）は差分管理テーブルを示す図である。
【図４】図１の管理サーバー側での不揮発性メモリーの寿命予測の一例について説明するための図である。
【図５】図１の管理サーバー側での不揮発性メモリーの寿命予測の他の例について説明するための図である。
【図６】図１の不揮発性メモリーの管理における、差分管理と過剰書き込み検出とについて説明するためのフローチャートである。
【図７】図１の不揮発性メモリーの管理における、警告通知について説明するためのフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の電子機器の一実施形態を、図１〜図７を参照しながら説明する。なお、以下の説明においての電子機器の一例としては、たとえば印刷機能、コピー機能、ＦＡＸ機能、ネットワーク経由でのデータ送受信機能等を搭載した複合的な周辺機器であるＭＦＰ(Multifunction Peripheral)であるものとする。
【００１５】
まず、図１に示すように、ＭＦＰ１００は、インターネットや社内ＬＡＮ（Local Area Network）等のネットワーク３００を介し、ＭＦＰ１００を管理する管理サーバー２００に接続されている。管理サーバー２００は、ＭＦＰ１００から受け取った後述の図３（ｂ）に示す差分管理テーブル１１３の書き込み差分平均値(Ave.)を元に、TBW（Tera Byte Written）と呼ばれる寿命までに何テラバイトのデータを書き込みできるかを示した書き込み保証値を取得できない不揮発性メモリーの寿命予測等を行う。
【００１６】
ＭＦＰ１００は、スキャナー部１０１、プリンター部１０２、ＦＡＸ(Facsimile)部１０３、Ｉ／Ｆ（インターフェース）１０４、ＤＲＡＭ(Dynamic Random Access Memory)１０５、パネル部１０６、ＵＳＢ(Universal Serial Bus)メモリー１０７、ＳＳＤ(solid state drive)１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０を制御する制御部１２０を備えている。なお、不揮発性メモリーであるＵＳＢメモリー１０７は、ＭＦＰ１００の本体に対して挿抜自在となっている。これに対し、不揮発性メモリーであるＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０は、ＭＦＰ１００の本体に対し、抜き出しできないように装着されている。また、Flashメモリー（登録商標）１１０は、たとえばNOR  Flash、NAND Flash等を示す。また、図示しないＨＤＤ(Hard Disk Drive)を設けてもよい。
【００１７】
スキャナー部１０１は、イメージセンサ（図示省略）によって読み取られる、原稿の画像をデジタルの画像データに変換し、制御部１２０に入力するデバイスである。プリンター部１０２は、制御部１２０から出力される印刷データに基づき、用紙上に画像を印刷するデバイスである。ＦＡＸ部１０３は、制御部１２０から出力されるデータを、電話回線を通じ相手方となるファクシミリへと送信し、また、相手方ファクシミリからのデータを受信して制御部１２０に入力するデバイスである。
【００１８】
Ｉ／Ｆ１０４は、社内ＬＡＮ(Local Area Network)やインターネット等のネットワークを介し、管理サーバー２００、他のユーザー端末、コンテンツサーバー、ウェブサーバー等との通信を受け持つネットワークインターフェースカード等のデバイスである。ＤＲＡＭ１０５は、プログラムを実行するためのワークメモリーである。また、ＤＲＡＭ１０５は、後述の画像処理部１２７によって画像処理（ラスタライズ）された印刷データ等を記憶する。パネル部１０６は、たとえば不揮発性メモリーであるＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０に対する過剰書き込みの検知結果等を表示する。
【００１９】
ＵＳＢメモリー１０７は、各種設定情報や印刷データ等をＭＦＰ１００に登録したりする際に用いられる。ＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０は、後述の図２に示すユーザーデータやアプリケーションプログラム（以下、アプリという）データ等を記憶するパーティションを有している。なお、ＳＳＤ１０８の場合、S.M.A.R.T.（Self-Monitoring, Analysis and Reporting Technology）と呼ばれる自己診断機能が搭載されている。また、自己診断機能が搭載されている不揮発性メモリーの場合、SATA（Serial Advanced Technology Attachment）インターフェースを使用することで、TBW（Tera Byte Written）と呼ばれる何テラバイトのデータを書き込んだかを示した書き込み量を取得できる。これに対し、ＳＤカード１０９や、Flashメモリー（登録商標）１１０の場合、S.M.A.R.T.と呼ばれる自己診断機能が搭載されていないため、TBWと呼ばれる書き込み量を取得できない。ただし、本実施形態では、SATAインターフェースを搭載していないため、ＳＳＤ１０８からのTBWを取得できないことから、過剰書き込みの検知対象を、不揮発性の半導体メモリー（以降、単に「不揮発性メモリー」と記述する。）であるＳＳＤ１０８、ＳＤカード１０９、及びFlashメモリー（登録商標）１１０とする。
【００２０】
制御部１２０は、画像形成プログラムや制御プログラム等を実行してＭＦＰ１００全体の動作を制御するプロセッサーである。制御部１２０は、スキャナー制御部１２１、プリンター制御部１２２、ＦＡＸ制御部１２３、通信制御部１２４、ＤＲＡＭ制御部１２５、ＲＯＭ(Read-Only Memory)１２６、画像処理部１２７、パネル操作制御部１２８、USBHOST制御部１２９、ＳＤ制御部１３０、Flash制御部１３１、システム制御部１３２を備えている。また、これらは、データバス１３３に接続されている。
【００２１】
スキャナー制御部１２１は、スキャナー部１０１の読み取り動作を制御する。プリンター制御部１２２は、プリンター部１０２の印刷動作を制御する。ＦＡＸ制御部１２３は、ＦＡＸ部１０３によるデータの送受信動作を制御する。通信制御部１２４は、Ｉ／Ｆ１０４を介し、ネットワーク経由でのデータ等の送受信の制御を行う。
【００２２】
ＤＲＡＭ１０５は、プログラムを実行するためのワークメモリーである。また、ＤＲＡＭ１０５は、画像処理部１２７によって画像処理（ラスタライズ）された印刷データ等を記憶する。ＲＯＭ１２６には、各部の動作チェック等を行う制御プログラムが記憶されている。画像処理部１２７は、たとえばスキャナー部１０１が読み取った画像データに対する画像処理（ラスタライズ）を行う。パネル操作制御部１２８は、パネル部１０６の表示動作を制御する。また、パネル操作制御部１２８は、パネル部１０６を介し、印刷、コピー、ＦＡＸ、インターネット経由でのデータ送受信等の開始等を受け付ける。また、パネル操作制御部１２８は、システム制御部１３２がたとえば不揮発性メモリーであるＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０に対する過剰書き込みを検知すると、システム制御部１３２の指示に従い、過剰書き込みに伴う製品保証期間を満たせない状態となることを知らせる警告等を表示させる。
【００２３】
USBHOST制御部１２９は、ＵＳＢメモリー１０７及びＳＳＤ１０８に対するデータの読み出し及び書き込み等を制御する。ＳＤ制御部１３０は、ＳＤカード１０９に対するデータの読み出し及び書き込み等を制御する。Flash制御部１３１は、Flashメモリー（登録商標）１１０に対するデータの読み出し及び書き込み等を制御する。システム制御部１３２は、各部の連携動作等を制御する。また、システム制御部１３２は、詳細については後述するが、後述の図３（ａ）に示す設計値管理テーブル１１２と、同図３（ｂ）に示す差分管理テーブル１１３とを管理し、たとえば不揮発性メモリーであるＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０に対する過剰書き込みを検知し、パネル操作制御部１２８を介し、パネル部１０６に過剰書き込みに伴う製品保証期間を満たせない状態となることを知らせる警告等を表示させる。
【００２４】
次に、図２を参照し、ＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０の構成について説明する。なお、以下では、ＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０の構成がほぼ同じであるため、ＳＳＤ１０８を代表させて説明する。
【００２５】
まず、図２（ａ）に示すＳＳＤ１０８は、記憶単位としてパーティションＡ〜Ｅを有している。なお、パーティションＡ〜Ｅの数は任意であり、図示のように５個に限定されるものではない。図２（ｂ）に示すカーネル管理領域１１１は、システム制御部１３２が管理するものであり、ＳＳＤ１０８のパーティションＡ〜Ｅを管理する領域を示している。すなわち、システム制御部１３２は、各パーティションＡ〜Ｅに対するマウント処理を実行し、たとえばパーティションＡをユーザーデータ領域１１１ａとして管理し、パーティションＢをアプリデータ領域１１１ｂとして管理し、パーティションＣをデータベース領域１１１ｃとして管理し、パーティションＤをテンポラリ領域１１１ｄとして管理し、パーティションＥを予約領域１１１ｅとして管理する。なお、予約領域１１１ｅとして管理されているＳＳＤ１０８のパーティションＥは、たとえばいずれかのパーティションＡ〜Ｄに過剰書き込みが発生した場合、代替書き込み領域として使用される。
【００２６】
次に、図３を参照し、システム制御部１３２が管理するＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０のテーブルについて説明する。なお、以下においては、ＳＳＤ１０８がパーティションＡ〜Ｅを有し、ＳＤカード１０９がパーティションＡ〜Ｂを有し、Flashメモリー（登録商標）１１０がパーティションＡ〜Ｅを有しているものとする。
【００２７】
まず、図３（ａ）は、ＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０の設計値管理テーブル１１２の一例を示している。設計値管理テーブル１１２は、ＵＳＢメモリー１０７及びＳＳＤ１０８に記憶されている。設計値管理テーブル１１２は、ＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０の製品保証期間としての製品保証年数（たとえば５年）に基づいた単位期間（本実施形態では１日）の書き込み予測量を示す設計値を管理する。すなわち、ＳＳＤ１０８の場合、パーティションＡを２００ＭＢ、パーティションＢを３００ＭＢ、パーティションＣを１５０ＭＢ、パーティションＤを２００ＭＢ、パーティションＥを３００ＭＢとした設計値を管理する。ＳＤカード１０９の場合、パーティションＡを５０ＭＢ、パーティションＢを１００とした設計値を管理する。Flashメモリー（登録商標）１１０の場合、パーティションＡを３ＭＢ、パーティションＢを２５ＭＢ、パーティションＣを１ＭＢ、パーティションＤを１０ＭＢ、パーティションＥを５ＭＢとした設計値を管理する。なお、単位期間については、日数に限定されるものではなく、任意に変更可能である。また、それぞれのパーティションでの設計値については、図３（ａ）の容量に限定されるものではなく、任意に変更可能である。
【００２８】
次に、図３（ｂ）は、たとえばＳＳＤ１０８についての１０日分のパーティションＡ〜Ｅ全体の設計値に対する差分量の平均値を管理する差分管理テーブル１１３の一例を示している。差分管理テーブル１１３は、ＵＳＢメモリー１０７及びＳＳＤ１０８に記憶されている。差分管理テーブル１１３は、それぞれのパーティションＡ〜Ｅでのデータの書き込み量の合計と、それぞれのパーティションＡ〜Ｅの設計値の合計との差分と、差分の単位期間（１日）当たりの平均値とを管理する。すなわち、ＳＳＤ１０８に対するデータの書き込み量は、たとえばＭＦＰ１００の電源ONに伴うシステム起動開始から２日毎（つまり１日置き）に取得される。つまり、１日目のデータの書き込み量は、システム起動開始日の翌日に取得し、以降１日置きに順次取得する。なお、システム管理部１３２は、それぞれのパーティションＡ〜Ｅへのデータの書き込み発生時の書き込み量をＵＳＢメモリー１０７及びＳＳＤ１０８に記憶し、単位期間中、パーティションＡ〜Ｅ毎に積算して管理する。
【００２９】
なお、パーティションＡ〜Ｅ全体の設計値に対する差分の単位期間（１日）当たりの平均値の取得は、たとえば特定回数（本実施形態では１０回（１０日））分のデータの書き込み量の取得があった時点で実行される。また、差分の単位期間当たりの平均値が取得は、単位期間の整数倍の期間毎に行えばよいが、少なくとも特定回数に対応する期間毎には行う必要がある。また、特定回数は、１０回（１０日）分に限るものではなく、任意に変更可能である。特に、使用状況によってはいずれかのパーティションＡ〜Ｅにおいてのデータの書き込み量が一時的に設計値よりさらに高い値を示すことがある。この場合、平均値の取得を１０回（１０日）分から２０回（２０日）分のように長くすることで、一時的に高くなったデータの書き込み量による影響を避けることができる。また、データの書き込み量の取得の間隔（取得間隔）は、２日毎（１日置き）に限るものではなく、任意に変更可能である。また、データの書き込み量の取得は、間隔を取らず毎日行われてもよい。また、データの書き込み量の取得開始のタイミングは、電源ONに伴うシステム起動開始に限らず、ＭＦＰ１００が有するシステム時刻に基づいてもよい。
【００３０】
ここで、差分管理テーブル１１３は、１０日分の差分量の合計の平均値が-40030[KB]である場合を示している。このように、平均値がマイナスとなった場合、システム制御部１３２は製品保証年数を満たすと判断する。これに対し、平均値がプラスとなった場合、システム制御部１３２は過剰書き込みであると判断する。この場合、製品保証年数を満たせない状態になると予測する。
【００３１】
次に、図４は、ＭＦＰ１００を管理する管理サーバー２００による不揮発性メモリーの寿命予測の一例を示している。すなわち、図４は、ＭＦＰ１００から得られる、各パーティションＡ〜Ｅへの書き込み量の合計の累計値、すなわち、不揮発性メモリーの書き込み開始（すなわち、使用開始）からのデータの書き込み総量の推移を示している。なお、システム管理部１３２は、それぞれの各パーティションＡ〜Ｅへのデータの書き込み量の合計とデータの書き込み量の取得間隔とに基づいて、データ書き込み総量を更新し、ＵＳＢメモリー１０７及びＳＳＤ１０８に記憶する。データ書き込み総量の更新は、少なくとも、パーティションＡ〜Ｅ全体の設計値に対する差分の単位期間当たりの平均値の取得のタイミングで実行すればよい。
【００３２】
また、図４において、直線ａは製品保証年数（たとえば５年）を保証する推移を示している。図３（ｂ）の差分管理テーブル１１３で示す平均値がゼロ又はマイナスで推移する場合、製品保証年数（たとえば５年）が保証されることを示している。
【００３３】
これに対し、折れ線ｂは、製品保証年数（たとえば５年）を満たせない状態となることを予測する推移を示している。つまり、図３（ｂ）の差分管理テーブル１１３で示す平均値がマイナスで推移する場合、直線ｂ１のような推移となり、途中で平均値がプラスで推移すると、直線ｂ２のような推移となり、製品保証年数（たとえば５年）を満たせない状態となることを予測する。
【００３４】
ただし、折れ線ｃ、ｄは、製品保証年数（たとえば５年）を満たせる状態となることを予測する推移を示している。つまり、折れ線ｃは、図３（ｂ）の差分管理テーブル１１３で示す平均値がプラスで推移する場合、直線ｃ１のような推移となり、途中で平均値がマイナスで推移すると、直線ｃ２のような推移となり、製品保証年数（たとえば５年）を満たせる状態となることを予測する。また、折れ線ｄは、図３（ｂ）の差分管理テーブル１１３で示す平均値がマイナスで推移する場合、直線ｄ１のような推移となり、途中で平均値がプラスで推移すると、直線ｄ２のような推移となり、さらに途中で平均値がマイナスで推移すると、直線ｄ３のような推移となり、製品保証年数（たとえば５年）を満たせる状態となることを予測する。
【００３５】
ここで、折れ線ｂ、ｃ、ｄのように、不揮発性メモリーの使用状況によっては、書き込み状況が変化することがある。特に、折れ線ｂのように、途中で平均値がプラスで推移すると、製品保証年数（たとえば５年）を満たせない状態となることがある。この場合、詳細については後述するが、後述のように、システム制御部１３２は、使用可能予測日数(Dprediction)を求め、求めた使用可能予測日数(Dprediction)と不揮発性メモリーが保証する保証日数(Dguarantee)とを比較し、(Dprediction)＜(Dguarantee)となる場合、過剰書き込みと判断する。
【００３６】
なお、システム制御部１３２は、過剰書き込みかどうかを判断する場合、次のような演算を行う。すなわち、システム制御部１３２は、書き込み保証値を(Wmax)とし、書き込み総量を(Wsum)とし、差分の平均値を(Ave.)とし、1日当たりの書き込み予測量を(Wref)とし、残保証日数を(Dremain)としたとき、(Dremain)＝［(Wmax)−(Wsum)］／［(Ave.)＋(Wref)］の演算により、前記残保証日数を求める。さらに、システム制御部１３２は、経過日数を(Dpast)とし、使用可能予測日数を(Dprediction)としたとき、(Dprediction)＝(Dpast)＋(Dremain)の演算により、使用可能予測日数を求める。また、システム制御部１３２は、不揮発性メモリーが保証する保証日数を(Dguarantee)としたとき、(Dprediction)＜(Dguarantee)となる場合、過剰書き込みと判断する。具体的には、直線ｂ２、ｃ１、及びｄ２の期間中において、過剰書き込みと判断されることになる。
【００３７】
ただし、システム制御部１３２が過剰書き込みと判断した場合でも、まだ書き込み総量がまだ少なく、今後の使用状況によっては、製品保証日数を満たせる可能性がある。この場合、システム制御部１３２は、書き込み保証値(Wmax)より一定値少ない寿命事前通知閾値(t)を元に、書き込み総量(Wsum)が寿命事前通知閾値(t)を超えた状態において、過剰書き込みと判断した場合、保証日数(Dguarantee)を満たせない可能性が高いことを知らせる第１の警告を通知する。この第１の警告は、折れ線ｂのように、製品保証年数（たとえば５年）より前に寿命事前通知閾値(t)を超えるような推移となると、通知される。この場合、保証日数(Dguarantee)を満たせない可能性が高いことを知らせる第１の警告は、パネル部１０６に表示されたり、管理サーバー２００に通知されたりする。
【００３８】
一方、システム制御部１３２は、書き込み保証値(Wmax)より一定値少ない寿命事前通知閾値(t)を元に、書き込み総量(Wsum)が寿命事前通知閾値(t)を超えた状態において、過剰書き込みと判断しない場合、保証日数(Dguarantee)を満たせるが不揮発性メモリーの交換が近いことを知らせる第２の警告を通知する。この第２の警告は、折れ線ｃ、ｄのように、製品保証年数（たとえば５年）より後に寿命事前通知閾値(t)を超えるような推移となると、通知される。この場合、保証日数(Dguarantee)を満たせるが不揮発性メモリーの交換が近いことを知らせる第２の警告は、パネル部１０６に表示されたり、管理サーバー２００に通知されたりする。
【００３９】
ここで、寿命事前通知閾値(t)としては、不揮発性メモリーが寿命で動作しなくなる前に、開発者、販社、又はサービスマン等による不揮発性メモリーの交換等に関する適切な対応を受けることができる日数であることが望ましい。また、開発者、販社、又はサービスマン等による不揮発性メモリーの交換等に関する対応については、ある程度の日数に余裕を持たせておくことが好ましい。この場合、寿命事前通知閾値(t)は、書き込み保証値(Wmax)に対してたとえば３０日前とした値とすることができる。ここで、書き込み保証値(Wmax)に対してたとえば３０日前とは、たとえば直線ａで示す製品保証年数（たとえば５年）を保証する推移を基準とした日数とすることができる。
【００４０】
なお、図４の折れ線ｂ、ｃ、ｄから分かる通り、寿命事前通知閾値(t)を超える前後において、それぞれの書き込み差分平均値(Ave.)が異なることで、それぞれの傾きが異なっている。この場合、図４のように、それぞれの折れ線ｂ、ｃ、ｄに共通の寿命事前通知閾値(t)を設けると、折れ線ｂ、ｃ、ｄの傾きによっては３０日以内に書き込み保証値(Wmax)に達する場合と、３０日以降に書き込み保証値(Wmax)に達する場合とが生じる。特に、３０日以内に書き込み保証値(Wmax)に達する場合では、開発者、販社、又はサービスマン等による不揮発性メモリーの交換等に関する対応に対しての日数に余裕が無くなってしまうことがある。この場合、後述の図５のように、折れ線ｂ、ｃ、ｄ毎に、それぞれの傾きに応じた寿命事前通知閾値(t)を設けるようにすると、開発者、販社、又はサービスマン等による不揮発性メモリーの交換等に関する対応に対しての日数の余裕の減少等を防止できる。
【００４１】
図５は、ＭＦＰ１００を管理する管理サーバー２００による不揮発性メモリーの寿命予測について、折れ線ｂ、ｃ、ｄ毎に、それぞれの傾きに応じた寿命事前通知閾値(t)を設けた場合の他の例を示している。すなわち、図５に示すように、たとえば製品保証年数（たとえば５年）を保証する推移を示す直線ａに対する寿命事前通知閾値(t)の値をt0とし、この値t0を基準とする。ここで、折れ線ｂの場合、直線ｂ２のように傾きが大きくなることから、寿命事前通知閾値(t)の値をt0より小さいt1とする。また、折れ線ｃの場合、直線ｃ２のように傾きが小さくなることから寿命事前通知閾値(t)の値をt0より大きいt2とする。また、折れ線ｄの場合、直線ｄ３のように傾きが直線ａとほぼ同じとなることから、寿命事前通知閾値(t)の値をt0とする。これらの寿命事前通知閾値(t)の値t0、t1、t2は、いずれも製品保証年数（たとえば５年）を保証する推移を示す直線ａを基準とすることで、直線ａに対する傾きの差から求めることができる。
【００４２】
また、それぞれの寿命事前通知閾値(t)の値t0、t1、t2を求めるタイミングとしては、まず、それぞれの折れ線ｂ、ｃ、ｄの推移から残保証日数(Dremain)を求め、残保証日数(Dremain)が特定期間、たとえば６０日となったとき、１０日分の書き込み差分を平均した値である書き込み差分平均値(Ave.)を、１０日分からたとえば３日分に縮めた書き込み差分を平均した短縮平均値に変更する。さらに、製品保証年数（たとえば５年）を保証する推移を示す直線ａに対する短縮平均値のプラス又はマイナスの差に基づき、それぞれの折れ線ｂ、ｃ、ｄに対し、t0〜t1で示す寿命事前通知閾値(t)を設定する。これにより、折れ線ｂ、ｃ、ｄ毎に、それぞれの傾きである不揮発性メモリーの使用状況に応じた寿命事前通知閾値(t)を設定できるので、開発者、販社、又はサービスマン等による不揮発性メモリーの交換等に関する対応に対しての日数の余裕の減少等を防止できる。
【００４３】
次に、図６を参照し、不揮発性メモリーの管理について説明する。なお、以下では、不揮発性メモリーであるＳＳＤ１０８、ＳＤカード１０９、Flashメモリー（登録商標）１１０の構成がほぼ同じであるため、ＳＳＤ１０８を代表させて説明する。また、ＳＳＤ１０８の各パーティションＡ〜Ｅの１日の書き込み予測量を定めた設計値は、図３（ａ）の設計値管理テーブル１１２で管理されているとする。また、以下のステップＳ１０１〜Ｓ１０５までは差分管理の手順を示し、ステップＳ１０６〜Ｓ１１０までは過剰書き込み検出の手順を示している。
【００４４】
（ステップＳ１０１）
システム制御部１３２は、ＳＳＤ１０８の各パーティションＡ〜Ｅの書き込み量を取得する。
この場合、システム制御部１３２は、USBHOST制御部１２９を介し、ＳＳＤ１０８の各パーティションＡ〜Ｅに書き込まれたデータの書き込み量を取得する。
【００４５】
（ステップＳ１０２）
システム制御部１３２は、ＳＳＤ１０８の各パーティションＡ〜Ｅ全体の設計値に対する差分を求める。
この場合、システム制御部１３２は、たとえば１日目のＳＳＤ１０８の各パーティションＡ〜Ｅの書き込み量を取得すると、図３（ａ）の設計値管理テーブル１１２が示すＳＳＤ１０８の各パーティションＡ〜Ｅの設計値の合計と、取得したＳＳＤ１０８の各パーティションＡ〜Ｅの書き込み量の合計とを比較し、設計値の合計と書き込み量の合計との差分を求める。
【００４６】
（ステップＳ１０３）
システム制御部１３２は、求めた差分を記憶させる。
この場合、システム制御部１３２は、求めた差分を図３（ｂ）の差分管理テーブル１１３に登録する。
【００４７】
（ステップＳ１０４）
システム制御部１３２は、１０日分のデータが得られたかどうかを判断する。
この場合、システム制御部１３２は、図３（ｂ）の差分管理テーブル１１３を参照し、１０日分の差分が登録されていなければ１０日分のデータが得られないと判断し（ステップＳ１０４：Ｎｏ）、ステップＳ１０１に戻る。
これに対し、システム制御部１３２は、図３（ｂ）の差分管理テーブル１１３を参照し、１０日分の差分が登録されていれば１０日分のデータが得られたと判断し（ステップＳ１０４：Ｙｅｓ）、ステップＳ１０５に移行する。
【００４８】
（ステップＳ１０５）
システム制御部１３２は、ＳＳＤ１０８の各パーティションＡ〜Ｅの書き込み差分平均値(Ave.)を求める。
この場合、システム制御部１３２は、図３（ｂ）の差分管理テーブル１１３を参照し、１０日分の書き込み差分平均値(Ave.)を求め、差分管理テーブル１１３に登録する。
【００４９】
（ステップＳ１０６）
システム制御部１３２は、各パーティションＡ〜Ｅの書き込み総量(Wsum)を更新する。
この場合、システム制御部１３２は、書き込み開始からの書き込み総量(Wsum)に１０日分の各パーティションＡ〜Ｅの書き込み量の合計を加算するして、最新の書き込み総量(Wsum)を取得する。
【００５０】
（ステップＳ１０７）
システム制御部１３２は、残保証日数(Dremain)を更新する。
この場合、システム制御部１３２は、
残保証日数(Dremain)＝［書き込み保証値(Wmax)−書き込み総量(Wsum)］／［書き込み差分平均値(Ave.)＋1日当たりの書き込み予測量(Wref)］
とした演算により、残保証日数(Dremain)を求める。
【００５１】
（ステップＳ１０８）
システム制御部１３２は、使用可能予測日数(Dprediction)を求める。
この場合、システム制御部１３２は、
使用可能予測日数(Dprediction)＝経過日数(Dpast)＋残保証日数(Dremain)
とした演算により、使用可能予測日数(Dprediction)を求める。
【００５２】
（ステップＳ１０９）
システム制御部１３２は、使用可能予測日数(Dprediction)＜保証日数(Dguarantee)かどうかを判断する。
この場合、システム制御部１３２は、
保証日数(Dguarantee)＝３６５日×５年
とした演算により、保証日数(Dguarantee)を求める。
そして、システム制御部１３２は、ステップＳ１０８で求めた使用可能予測日数(Dprediction)が保証日数(Dguarantee)より多い場合、使用可能予測日数(Dprediction)＜保証日数(Dguarantee)でないと判断し（ステップＳ１０９：Ｎｏ）、ステップＳ１０１に移行する。
これに対し、システム制御部１３２は、使用可能予測日数(Dprediction)が保証日数(Dguarantee)より少ない場合、使用可能予測日数(Dprediction)＜保証日数(Dguarantee)であると判断し（ステップＳ１０９：Ｙｅｓ）、ステップＳ１１０に移行する。
【００５３】
（ステップＳ１１０）
システム制御部１３２は、過剰書き込みと判断する。
この場合、システム制御部１３２は、使用可能予測日数(Dprediction)が保証日数(Dguarantee)に満たないことから、過剰書き込みと判断する。
この場合、システム制御部１３２は、パネル操作制御部１２８を介し、パネル部１０６に過剰書き込みがあることを示す内容等を表示させてもよい。
【００５４】
次に、図７を参照し、不揮発性メモリーの管理における、警告通知について説明する。
【００５５】
（ステップＳ２０１）
システム制御部１３２は、残保証日数(Dremain)が一定日数以下かどうかを判断する。
この場合、システム制御部１３２は、図６のステップＳ１１０において、過剰書き込みと判断した場合であっても、書き込み総量(Wsum)が少なく、今後の使用状況によっては保証日数(Dguarantee)を満たせる可能性がある。
そこで、システム制御部１３２は、
残保証日数(Dremain)＝［書き込み保証値(Wmax)−書き込み総量(Wsum)］／［書き込み差分平均値(Ave.)＋1日当たりの書き込み予測量(Wref)］
とした演算により、残保証日数(Dremain)を求める。
また、システム制御部１３２は、求めた残保証日数(Dremain)がたとえば５０日以下でなければ、残保証日数(Dremain)が一定日数以下でないと判断し（ステップＳ２０１：Ｎｏ）、処理を終了する。
これに対し、システム制御部１３２は、求めた残保証日数(Dremain)がたとえば５０日以下であれば、残保証日数(Dremain)が一定日数以下であると判断し（ステップＳ２０１：Ｙｅｓ）、ステップＳ２０２に移行する。
【００５６】
（ステップＳ２０２）
システム制御部１３２は、寿命事前通知閾値(t)を超えているかどうかを判断する。
この場合、システム制御部１３２は、
使用可能予測日数(Dprediction)＝経過日数(Dpast)＋残保証日数(Dremain)
とした演算により、使用可能予測日数(Dprediction)を求める。
そして、システム制御部１３２は、使用可能予測日数(Dprediction)が寿命事前通知閾値(t)のたとえば３０日を超えていなければ寿命事前通知閾値(t)を超えていないと判断し（ステップＳ２０２：Ｎｏ）、処理を終了する。
これに対し、システム制御部１３２は、使用可能予測日数(Dprediction)が寿命事前通知閾値(t)のたとえば３０日を超えていれば寿命事前通知閾値(t)を超えていると判断し（ステップＳ２０２：Ｙｅｓ）、ステップＳ２０３に移行する。
【００５７】
（ステップＳ２０３）
システム制御部１３２は、警告を通知する。
この場合、システム制御部１３２は、たとえば図４の折れ線ｂのように、製品保証年数（たとえば５年）より前に寿命事前通知閾値(t)を超えるような推移となると、保証日数(Dguarantee)を満たせない可能性が高いことを知らせる第１の警告を通知する。なお、第１の警告は、パネル部１０６に表示されたり、管理サーバー２００に通知されたりする。
また、システム制御部１３２は、たとえば図４の折れ線ｃ、ｄのように、製品保証年数（たとえば５年）より後に寿命事前通知閾値(t)を超えるような推移となると、保証日数(Dguarantee)を満たせるが不揮発性メモリーの交換が近いことを知らせる第２の警告を通知する。なお、第２の警告は、パネル部１０６に表示されたり、管理サーバー２００に通知されたりする。
【００５８】
このように、本実施形態では、設計値管理テーブル１１２により、製品保証期間を元にした単位期間当たりの前記記憶単位毎の書き込み予測量を設計値として管理し、差分管理テーブル１１３により、記憶単位毎の設計値の合計と記憶単位毎のデータの書き込み総量量の合計との差分を管理し、システム制御部１３２により、記憶単位毎のデータの書き込み量を単位期間取得し、差分を差分管理テーブル１１３に登録する。また、システム制御部１３２は、書き込み保証値を(Wmax)とし、書き込み総量を(Wsum)とし、差分の平均値を(Ave.)とし、1日当たりの書き込み予測量を(Wref)とし、残保証日数を(Dremain)としたとき、(Dremain)＝［(Wmax)−(Wsum)］／［(Ave.)＋(Wref)］の演算により、残保証日数を求め、さらに、経過日数を(Dpast)とし、使用可能予測日数を(Dprediction)としたとき、(Dprediction)＝(Dpast)＋(Dremain)の演算により、使用可能予測日数を求め、不揮発性メモリーが保証する保証日数を(Dguarantee)としたとき、(Dprediction)＜(Dguarantee)となる場合、過剰書き込みと判断する。
【００５９】
これにより、使用可能予測日数(Dprediction)が保証日数(Dguarantee)に満たない場合、過剰書き込みと判断できるので、製品保証期間を満たせるか否かを早期且つ理知的に判断できる。
【００６０】
なお、本実施形態では、不揮発性メモリーの記憶単位をパーティションとしたが、不揮発性メモリーを構成するメモリーセルとしてもよい。その場合、「パーティション」を「メモリーセル」に読み替えて、本実施形態を準用すればよい。
【００６１】
なお、本実施形態では、電子機器をＭＦＰ１００とした場合で説明したが、この例に限らず、多機能プリンターやＰＣ(Personal Computer)等の他の電子機器に適用してもよい。
【符号の説明】
【００６２】
１００  ＭＦＰ
１０１  スキャナー部
１０２  プリンター部
１０３  ＦＡＸ部
１０４  Ｉ／Ｆ
１０５  ＤＲＡＭ
１０６  パネル部
１０７  ＵＳＢメモリー
１０８  ＳＳＤ
１０９  ＳＤカード
１１０  Flashメモリー（登録商標）
１１１  カーネル管理領域
１１１ａ  ユーザーデータ領域
１１１ｂ  アプリデータ領域
１１１ｃ  データベース領域
１１１ｄ  テンポラリ領域
１１１ｅ  予約領域
１１２  設計値管理テーブル
１１３  差分管理テーブル
１２０  制御部
１２１  スキャナー制御部
１２２  プリンター制御部
１２３  ＦＡＸ制御部
１２４  通信制御部
１２５  ＤＲＡＭ制御部
１２６  ＲＯＭ
１２７  画像処理部
１２８  パネル操作制御部
１２９  USBHOST制御部
１３０  ＳＤ制御部
１３１  Flash制御部
１３２  システム制御部
１３３  データバス
２００  管理サーバー
３００  ネットワーク
Ａ〜Ｅ  パーティション
ａ、ｂ１、ｂ２、ｃ１、ｃ２、ｄ１、ｄ２、ｄ３  直線
ｂ、ｃ、ｄ  折れ線
【図１】
2019128766.tif 000003
【図２】
2019128766.tif 000004
【図３】
2019128766.tif 000005
【図４】
2019128766.tif 000006
【図５】
2019128766.tif 000007
【図６】
2019128766.tif 000008
【図７】
2019128766.tif 000009