(57)【要約】【課題】シリコンディスクなど書き換え回数に限界がある記憶装置が接続された計算機において、オペレーティングシステムなどにより頻繁にシリコンディスクへの書き込みが行われるので、寿命を保つことは困難であった。本発明の目的は、使用者がシリコンディスクへの書き込み周期を制御でき、産業機器の保障期間はシリコンディスクの寿命を確保することにある。【解決手段】計算機上で動作するプログラムからのシリコンディスク１０３への書込み要求をシリコンディスクアクセスプログラム１０２が受付け、書込み要求の書込み先アドレスと書込みデータをメモリ１０４に確保されたバッファ１０５に蓄積し、書き出し周期設定プログラム１０９により、使用者が設定した周期で、シリコンディスクアクセスプログラム１０２がバッファ１０５に蓄積されたデータをシリコンディスク１０３に書き出すようにした。【選択図】図１
2008052313.tif 000002
【特許請求の範囲】
【請求項１】
シリコンディスクとメモリを具備した記憶装置と、該シリコンディスクとメモリの書き込み、読み出し制御を行うシリコンディスクアクセスプログラムと、計算機の使用者が設定する書き込み周期に基づき書き出し周期で前記シリコンディスクアクセスプログラムを制御する書き出し周期設定プログラムを備え、前記書き出し周期でない場合には、計算機上で動作する他のプログラムからの前記シリコンディスクへの書き換え要求時に、前記シリコンディスクアクセスプログラムの書込み処理ルーチンにより、シリコンディスクの書込み先アドレスと書込みデータを前記メモリのバッファに書込むシリコンディスク記憶装置のアクセス制御方法。
【請求項２】
前記書き込み処理ルーチンは、前記バッファに記録されているアドレスを検索し、書込み要求の書込み先アドレスと同一のアドレスが記録されている場合は、そのアドレスに対応するバッファ内のデータを書込み要求の書込みデータに書き換え、同一のアドレスが記録されていない場合は、書込み要求の書込み先アドレスと書込みデータを対で該バッファに記録する請求項１に記載のシリコンディスク記憶装置のアクセス制御方法。
【請求項３】
読込み処理部を有し、計算機上で動作する他のプログラムからのシリコンディスクへの読込み要求を受付け、前記バッファに記録されているアドレスを検索し、読込み要求の読込みアドレスと同一のアドレスが記録されている場合は、そのアドレスに対応するバッファ内のデータを読み取り、同一のアドレスが記録されていない場合は、シリコンディスクから読み込み要求の読込みアドレスのデータを読み込む請求項１に記載のシリコンディスク記憶装置のアクセス制御方法。
【請求項４】
前記書き出し周期設定プログラムは、書き出し周期入力画面を表示し、使用者の入力を受付け、入力された周期を前記シリコンディスクアクセスプログラムに通知する請求項１に記載のシリコンディスク記憶装置のアクセス制御方法。
【請求項５】
前記書き込み処理ルーチンは、前記書き出し周期設定プログラムから設定された周期だけ処理をスリープし、スリープ終了後、前記バッファに記録されている全てのデータを対応する前記シリコンディスクのアドレスに書き出し、書き出し完了後、バッファをクリアする請求項１に記載のシリコンディスク記憶装置のアクセス制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シリコンディスクなど書き換え回数に限界がある記憶装置が接続された計算機において、シリコンディスクへの書き換え要求発行を制御し、所望の寿命となるように制御するシリコンディスク記憶装置のアクセス制御方法に関する。
【背景技術】
【０００２】
近年、産業機器の分野でも、パーソナルコンピュータ（以下、ＰＣという）が使われ始めている。ＰＣの記憶装置として、主としてハードディスクが使用されているが、振動の影響を受けやすいため、産業機器の分野では、記憶装置に耐震性に優れたシリコンディスクを適用することが検討されている。
【０００３】
しかし、シリコンディスクには書き換え回数が約１,０００,０００回という限界があり、記憶装置として使用するため、この書き換え回数の限界内で使用しなければならない制限がある。
【０００４】
そのため、〔特許文献１〕に記載のように、メモリチップのエリアに対する書込回数の累積値が制限値に達したとき、ＣＰＵによるアクセスの対象として空きエリア内の他のエリアが設定されて切り換えられ、それ以後そのエリアに情報を書き込むようにするもの、〔特許文献２〕に記載のように、各記憶領域の使用頻度が均一になるように記憶領域間でデータのスワッピングを行うスワッピング制御手段を具備したもの、〔特許文献３〕に記載のように、プリンタに電源が投入されるとＥＥＰＲＯＭのデータを読出し、これをDRAMの作業領域にコピーし、これ以降、電源が切断されるまでは、ＭＰＵは必要に応じて作業領域の情報を参照、或いは更新し、電源供給の切断指示があった時点で両者の内容が一致しなければ、ＥＥＰＲＯＭへの書込み制御が行われるようにしている。
【０００５】
【特許文献１】特開平６−３６５７９号公報
【特許文献２】特許第３１７８９０９号公報
【特許文献３】特開２０００−９４７６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ＰＣ上で動作するプログラムをハードディスクに記憶する従来の技術では、オペレーティングシステムによる書き換え要求で書き換えが行われ、もともと記憶装置の書き換え回数を制限する必要がないものである。
【０００７】
産業機器のように書込みが頻繁に発生するものでは、〔特許文献１〕に記載のように、メモリチップのエリアに対する書込回数の累積値が制限値に達したとき、ＣＰＵによるアクセスの対象として空きエリア内の他のエリアが設定されて切り換えても、使用者の意図に関係なく書き換えが発生して書き換え回数に限界に達するため、産業機器の補償期間までの寿命を確保することが困難であった。又、〔特許文献２〕に記載のように、各記億領域の使用頻度が均一になるように記憶領域間でデータのスワッピングを行うスワッピング制御手段を具備しても、使用者の意図に関係なく書き換えが発生して書き換え回数に限界に達するため、産業機器の補償期間までの寿命を確保することが困難であった。
【０００８】
又、〔特許文献３〕に記載のものは、更新回数が所定回数を超えないように定められたタイミング、例えばプリンタ装置のパワーオフ指示時にＤＲＡＭの作業領域の情報を
ＥＥＰＲＯＭへ書き込むようにして長寿命化を図っているが、書き込むタイミングはユーザが自由に設定できないものであり、ＥＥＰＲＯＭの記憶領域のサイズとＤＲＡＭの記憶領域のサイズは同じ大きさである必要があり、産業機器のように大きい領域が必要なものでは、装置が大型化し、高価になるという問題がある。〔特許文献３〕に記載の技術は、プリンタ装置のような使用頻度がそれほど高くなく、作業領域も小さいようなものに適用できるものであった。
【０００９】
本発明の第１の目的は、産業機器の補償期間の間シリコンディスクの寿命を確保できるシリコンディスク記憶装置及びそのアクセス制御方法を提供することにある。
【００１０】
本発明の第２の目的は、使用者が所望のシリコンディスクの寿命を設定できるシリコンディスク記憶装置及びそのアクセス制御方法を提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明のシリコンディスク記憶装置のアクセス制御方法は、シリコンディスクへの書き込み要求を受け取り、シリコンディスクへの書込み処理を行うシリコンディスアクセスプログラムと、シリコンディスクへの書込み処理を実施する周期を設定するプログラムとを有し、前記シリコンディスクアクセスプログラムは、アプリケーションプログラムやシステム管理プログラムからのシリコンディスクへの書き換え要求受信時に、計算機のメモリ上に、書き込むデータとアドレスを記録するように構成したものである。
【００１２】
また、前記シリコンディスクアクセスプログラムは、書込み周期設定プログラムを介して使用者が設定した時間が経過した場合、前記メモリ上の領域に記録されているデータを、シリコンディスクのデータに対応したアドレスに書き込むように構成したものである。
【発明の効果】
【００１３】
本発明によれば、シリコンディスクアクセスプログラムと書き出し周期設定プログラムにより、使用者は周期を設定して、書き換え回数をシリコンディスクの書き換え制限回数以内に設定することができる。
【発明を実施するための最良の形態】
【００１４】
本発明の一実施例を図１から図５により説明する。図１は本実施例の計算機の構成図である。
【００１５】
本実施例の計算機は、記憶装置として、ＲＡＭ等の書き込み回数に制限のないメモリ
１０４と、書き込み回数に制限のあるシリコンディスク１０３が設けられ、メモリ１０４とシリコンディスク１０３の書き込み、読出し制御を行うためのシリコンディスクアクセスプログラム１０２が設けられている。シリコンディスクアクセスプログラム１０２は、計算機上で動作する他のプログラム、例えばシリコンディスク１０３又はメモリ１０４からシステム管理プログラム１００又はアプリケーションプログラム１０１への読込み処理を行う読込み処理ルーチン１０７、計算機上で動作する他のプログラム、例えばシステム管理プログラム１００又はアプリケーションプログラム１０１からメモリ１０４に書込み処理を行う書込み処理ルーチン１０６，メモリ１０４からシリコンディスク１０３に書出し処理を行うバッファ書出しルーチン１０８で構成される。書き出し周期設定プログラム１０９は、シリコンディスクアクセスプログラム１０２に書き出し周期を通知する機能を有し、バッファ書き出しルーチン１０８には書き出し周期設定プログラム１０９の信号が入力されるようになっている。
【００１６】
メモリ１０４にはバッファ１０５が設けられ、バッファ１０５には、シリコンディスク１０３へ書込むデータとそのアドレスを記録されている。このように、バッファ１０５にアドレスとデータを記録しているので、頻繁に変化するデータに対して対応するアドレスのデータを書き換えることで記憶領域のサイズを小さくできる。
【００１７】
図２は、書込み処理ルーチン１０６の処理フローを示す図である。ステップ１２０では、アプリケーションプログラムやシステム管理プログラムからのシリコンディスクへの書き換え要求受信時には、書込み処理ルーチン１０６に、システム管理プログラム１００やアプリケーションプログラム１０１からシリコンディスク１０３の書込み先アドレスと書込みデータが入力され、バッファ１０５に書込み先アドレスと同一のアドレスが記録されている否かがチェックされる。
【００１８】
書込み先アドレスと同一のアドレスが記録されていないと判断された場合は、ステップ１２１で、バッファ１０５に書込み先アドレスと書込みデータを追加で記録する。バッファ１０５に書込み先アドレスと同一のアドレスが記録されていると判断された場合は、ステップ１２２で、バッファ１０５内のこのアドレスに記録されているデータを書込みデータに書き換える。
【００１９】
このようにして、シリコンディスク１０３への書込みデータをバッファ１０５に蓄積し、その都度、シリコンディスク１０３へデータを書込みしないでもよいようになっている。
【００２０】
図３は、読込み処理ルーチン１０７の処理フローを示す図である。ステップ１３０では、読込み処理ルーチン１０７に、システム管理プログラム１００やアプリケーションプログラム１０１からシリコンディスク１０３の読込みアドレスが入力され、バッファ１０５に読込みアドレスと同一のアドレスが記録されている否かがチェックされる。
【００２１】
バッファ１０５に読込みアドレスと同一のアドレスが記録されていない場合は、ステップ１３１で、シリコンディスク１０３から読込みアドレスのデータを読込む。バッファ
１０５に読込みアドレスと同一のアドレスが記録されている場合は、ステップ１３２で、バッファ１０５内のこのアドレスに対応したデータを読込む。
【００２２】
これにより、シリコンディスク１０３にデータが書き込まれず、バッファ１０５に蓄積されているデータをシリコンディスク１０３に書き込まれているように見せかける。
【００２３】
図４は、書出し周期設定プログラム１０９の処理フローを示す図である。ステップ140
では、シリコンディスクアクセスプログラム１０２に設定している書出し周期を入力する画面を表示し、ステップ１４１で入力待ちを行う。この入力待ちでは、入力があるか否かを判断し、入力があるまで待ち状態を持続する。計算機の使用者が書出し周期を入力したと判断されると、ステップ１４２で、その入力値をシリコンディスク１０３の書出し周期としてシリコンディスクアクセスプログラム１０２に通知する。
【００２４】
図５は、バッファ書出しルーチン１０８の処理フローを示す図である。ステップ１５０では、書出し周期設定プログラム１０９により設定された周期だけスリープし、スリープが完了すると、ステップ１５１で、バッファ１０５に記録されている全てのデータをシリコンディスク１０３の対応するアドレスに書込む処理を行う。書込み処理が完了すると、ステップ１５２で、バッファ１０５内のアドレスとデータを全てクリアする。
【００２５】
このように、シリコンディスク１０３への書込みを使用者が設定した周期で纏めて行うことができ、使用者は、産業機器のような変化の多いデータを取り込みつつ、シリコンディスク１０３の書き換え制限回数の寿命を保つことができる。すなわち、シリコンディスクアクセスプログラム１０２と書き出し周期設定プログラム１０９により、使用者は周期を設定して、書き換え回数をシリコンディスクの書き換え制限回数以内に設定することができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施例である計算機の構成図である。
【図２】書込み処理ルーチンの処理フロー図である。
【図３】処理ルーチンの処理フロー図である。
【図４】書き出し周期設定プログラムの処理フロー図である。
【図５】バッファ書き出しルーチンの処理フロー図である。
【符号の説明】
【００２７】
１００…システム管理プログラム、１０１…アプリケーションプログラム、１０２…シリコンディスクアクセスプログラム、１０３…シリコンディスク、１０４…メモリ、105…バッファ、１０６…書込み処理ルーチン、１０７…読込み処理ルーチン、１０８…バッファ書き出しルーチン、１０９…書き出し周期設定プログラム。
【図１】
2008052313.tif 000003
【図２】
2008052313.tif 000004
【図３】
2008052313.tif 000005
【図４】
2008052313.tif 000006
【図５】
2008052313.tif 000007