現在、MS-DOS互換のOSを使ってデータロガーを作っています。
そのシステムには簡単なUPSがついており、電源が落ちても
40ms程度遅延して落ちる構成になっています。
プログラムでは2ms周期で電源を監視しており、
本体の電源が落ちた場合、それを察知し、ファイルを閉じる処理をします。
私は、ファイルを閉じるのに数ms程度で終わると思っていましたが、
計測すると、70~80ms程度必要みたいで、
UPSの40msでは時間が足らないことがわかりました。
ファイルを開いたままで、安全に電源を切る方法をご存知の方がいましたら
お教え頂けないでしょうか?。
お手数ですが、宜しくお願いします。
システム
・MS-DOS互換OS(外国メーカーの物です)
・CPUボード(国内メーカの物です。BIOSはそのメーカが作ったものです)
・開発言語BorlandC++
誰もレスしてないようなので...
> そのシステムには簡単なUPSがついており、電源が落ちても
> 40ms程度遅延して落ちる構成になっています。
UPSにしては、あまりにも時間が短いような...
普通の電源でも消費電力によっては、これくらいは持つと思う
のですが...( 測定したみたわけではないのですが )
おそらく、コンデンサタイプのUPSなのでしょうから、素直に
コンデンサを増設しては?
> ファイルを開いたままで、安全に電源を切る方法をご存知の方がいましたら
> お教え頂けないでしょうか?。
無理だと思うのですが、
ダミーデータを大量に書き込めば、書き出し操作をしてくれるとは
思いますが、どのみち後で修復する必要があるでしょう。
K.Moriyama
「ファイルを(閉じずに)開いたままで」ということは、PCのメモ
リバッファに格納されている、まだHDDに書き込まれていない末尾
のデータ部分については、破棄してしまってもかまわないという趣
旨なのでしょうか?