(57)【要約】【課題】ＣＰＵ占有期間を一定に保ち、リアルタイムＯＳとしてのリアルタイム性を保証する事を目的とする。【解決手段】ＲＯＭ３９からデータを消去し、上記ＲＯＭ３９に新たなデータを書き込む処理をＣＰＵに命令するＦｉｌｅ管理部１０１と、上記Ｆｉｌｅ管理部１０１により命令されたＣＰＵがＲＯＭ３９からデータを消去し上記ＲＯＭ３９に新たなデータを書き込む間に、上記ＣＰＵがおこなうＲＯＭ３９からデータを消去し上記ＲＯＭ３９に新たなデータを書き込む処理を一端中止させ、上記処理から上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせるＯＳ４７とを備えている。【選択図】        図１
2004185506.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置からデータを消去し、上記記憶装置に新たなデータを書き込む処理をＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に命令する命令部と、
上記命令部により命令されたＣＰＵが記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む間に、上記ＣＰＵがおこなう記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理を一端中止させ、上記記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理から上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせるＣＰＵ解放部と
を備えたことを特徴とするデータ書き込み装置。
【請求項２】
上記ＣＰＵ解放部は、第１の信号を上記命令部に出力し、第２の信号を上記命令部から入力し、入力された第２の信号に基づいて、上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせ、
上記命令部は、上記ＣＰＵ解放部により出力された第１の信号を入力した後、所定の期間、上記記憶装置からデータを消去する処理と記憶装置に新たなデータを書き込む処理とのいずれかをＣＰＵに命令し、上記所定の期間経過後、上記第２の信号を上記ＣＰＵ解放部に出力することを特徴とする請求項１記載のデータ書き込み装置。
【請求項３】
上記ＣＰＵ解放部は、上記ＣＰＵが記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む間に、時刻を異にして複数の第１の信号を上記命令部に出力し、
上記命令部は、上記ＣＰＵ解放部により出力された複数の第１の信号を入力した後、上記複数の第１の信号の各第１の信号が入力される毎に、所定の期間、上記記憶装置からデータを消去する処理と記憶装置に新たなデータを書き込む処理とのいずれかをＣＰＵに命令し、上記所定の期間経過後、上記複数の第１の信号の各第１の信号毎に、上記第２の信号を上記ＣＰＵ解放部に出力することを特徴とする請求項２記載のデータ書き込み装置。
【請求項４】
上記ＣＰＵ解放部は、記憶装置からデータを消去し、上記記憶装置に新たなデータを書き込む処理よりも優先度の大きい処理が存在する場合に、上記優先度の大きい処理を上記ＣＰＵがおこなった後に、上記第１の信号を上記命令部に出力することを特徴とする請求項２記載のデータ書き込み装置。
【請求項５】
上記第１の信号は、データ消去完了情報とデータ存在情報とのいずれかを有し、
上記命令部は、上記ＣＰＵ解放部により出力された第１の信号がデータ消去完了情報を有している場合に、上記第１の信号を入力した後、所定の期間、上記記憶装置に新たなデータを書き込む処理をＣＰＵに命令し、上記ＣＰＵ解放部により出力された第１の信号がデータ存在情報を有している場合に、上記第１の信号を入力した後、所定の期間、上記記憶装置からデータを消去する処理をＣＰＵに命令することを特徴とする請求項２記載のデータ書き込み装置。
【請求項６】
上記命令部は、上記ＣＰＵ解放部により出力された第１の信号がデータ存在情報を有している場合に、１セクタ分のデータを消去し、上記ＣＰＵ解放部により出力された第１の信号がデータ消去完了情報を有している場合に、１セクタ分の新たなデータを書き込む処理をＣＰＵに命令することを特徴とする請求項５記載のデータ書き込み装置。
【請求項７】
上記データ書き込み装置は、さらに、上記所定の期間とは異なる第２の期間毎、周期的に記憶装置を監視し、ＣＰＵにおける障害監視を行う周期監視部を備え、
上記命令部は、上記周期監視部により障害監視がおこなわれる第２の期間より短い上記所定の期間、上記記憶装置からデータを消去する処理と記憶装置に新たなデータを書き込む処理とのいずれかをＣＰＵに命令することを特徴とする請求項２記載のデータ書き込み装置。
【請求項８】
記憶装置からデータを消去し、上記記憶装置に新たなデータを書き込む処理をＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に命令する命令処理と、
上記命令処理により命令されたＣＰＵが記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む間に、上記ＣＰＵがおこなう記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理を一端中止させ、上記記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理から上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせるＣＰＵ解放処理と
をコンピュータに実行させるプログラム。
【請求項９】
上記プログラムは、ＯＳ（オペレーティングシステム）を有し、
上記ＣＰＵ解放処理は、上記ＯＳによりＣＰＵに実行させることを特徴とする請求項８記載のプログラム。
【請求項１０】
記憶装置からデータを消去し、上記記憶装置に新たなデータを書き込む処理をＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に命令する命令処理と、
上記命令処理により命令されたＣＰＵが記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む間に、上記ＣＰＵがおこなう記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理を一端中止させ、上記記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理から上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせるＣＰＵ解放処理と
をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１１】
記憶装置からデータを消去し、上記記憶装置に新たなデータを書き込む処理をＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に命令する命令工程と、
上記命令工程により命令されたＣＰＵが記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む間に、上記ＣＰＵがおこなう記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理を一端中止させ、上記記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理から上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせるＣＰＵ解放工程と
を備えたことを特徴とするデータ書き込み方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ書き込み装置及びデータ書き込み方法に関する。また、ファイル（Ｆｉｌｅ）管理のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）占有回避方法に関する。
【０００２】
【従来の技術】
ＣＰＵはＥＥＰＲＯＭのアドレスとデータを指定して書き込み処理を指令するライト信号をＥＥＰＲＯＭに制御線を介して送る。これによりＥＥＰＲＯＭは指定されたアドレスに情報データの書き込み処理をする。なお、ＥＥＰＲＯＭのメモリセルはＭＯＳ構造のトランジスタであり、例えば８ビットのデータ書き込み処理に１０〜２０ｍｓの時間を要する。また、この間ＥＥＰＲＯＭは書き込み処理中であることを示すＥＥＰＲＯＭｂｕｓｙ信号を制御線を介してＣＰＵに出力する。
ＥＥＰＲＯＭの書き込み処理が終了するとＥＥＰＲＯＭは制御線を介してＣＰＵに割り込み要求する信号を送る。これに対し、ＣＰＵはＥＥＰＲＯＭの割り込みであることを確認し、ＣＰＵが受付可能であれば他のデータ処理を中断して制御線を介して割り込み受け付けをする信号をＥＥＰＲＯＭに送る。これによりＣＰＵはＥＥＰＲＯＭの書き込み処理の終了を確認する。またＣＰＵはＥＥＰＲＯＭが次のデータ処理の受け入れ態勢にあることを認識する。なお、ＣＰＵ１１は書き込みデータの内容確認のため、ＣＰＵリード信号をＥＥＰＲＯＭに送る。
このようにして、ＣＰＵは、ＥＥＰＲＯＭが書き込み処理時間中（１０〜２０ｍｓ）であっても、常時ＥＥＰＲＯＭの書き込み処理終了フラグを意識したり、随時確認したりする必要がなくなる。このためＣＰＵは他の演算、論理処理等に専念することが可能である。（特許文献１参照）
【０００３】
【特許文献１】
特開昭６４−２７０９６号公報
【０００４】
【発明が解決しようとする課題】
Ｆｉｌｅ管理タスクがタスク起動されるとＦｌａｓｈ  ＲＯＭ上のデータを書込むセクタ消去を指示し、「Ｒｅａｄｙ  Ｂｉｔ」が消去完了となるまでＬｏｏｐ処理にて監視を続ける。次に「Ｒｅａｄｙ  Ｂｉｔ」が書込み完了検出後にデータをセクタに書込み、再度「Ｒｅａｄｙ  Ｂｉｔ」が書込み完了となるまでＬｏｏｐ処理にて監視を行なう。この一連の動作を、全てのデータをＦｌａｓｈ  ＲＯＭへ書込み完了するまで繰り返すさなければならない。
また、Ｆｌａｓｈ  ＲＯＭへのアクセス（Ｗｒｉｔｅ）を行なう場合、初めにＦｌａｓｈ  ＲＯＭの使用セクタの消去を行い、この際、セクタ消去が完了した事をＳ／ＷはＦｌａｓｈ  ＲＯＭの「Ｒｅａｄｙ  Ｂｉｔ」を監視する事で判断し、「Ｒｅａｄｙ  Ｂｉｔ」の状態を監視する為にセクタ消去を実施した直後からＬｏｏｐ処理で「Ｒｅａｄｙ  Ｂｉｔ」の変化を監視し続けることで「Ｒｅａｄｙ  Ｂｉｔ」の変化を検出する。そして、次にＦｌａｓｈ  ＲＯＭへデータの書込みを行う。データの書込みが完了した事をＳ／ＷはＦｌａｓｈ  ＲＯＭの「Ｒｅａｄｙ  Ｂｉｔ」を監視する。このようにすると消去時同様、Ｌｏｏｐ処理にて「Ｒｅａｄｙ  Ｂｉｔ」の監視を行なわなければならない。
すなわち、Ｆｌａｓｈ  ＲＯＭへ書込むべきデータを全て処理するまで、Ｆｌａｓｈ  ＲＯＭの消去、書込みを繰り返し実施しなければならない。つまり、Ｆｌａｓｈ  ＲＯＭへのアクセス（Ｗｒｉｔｅ）データ量が多くなればそれに比例して「ＣＰＵ占有期間」も伸びるといった問題がある。また、Ｗｒｉｔｅ，Ｅｒａｓｅを繰り返したＦｌａｓｈ  ＲＯＭにおいてもＦｌａｓｈ  ＲＯＭ劣化の為、「Ｒｅａｄｙ  Ｂｉｔ」の状態変化時間が伸びる事になり、「ＣＰＵ占有期間」も長くなるといった問題もある。そして、Ｆｌａｓｈ  ＲＯＭへの「書き込みデータ量」と「Ｆｌａｓｈ  ＲＯＭの経年変化」により「ＣＰＵ占有期間」が変化してしまう為、リアルタイムＯＳとしてのリアルタイム性を保証する事が出来ないといった問題がある。
また、周期監視タスクは、ＯＳにより周期的にタスク起床されることで装置の障害発生状況監視や、性能情報の収集を行っているものとしたとき、周期監視タスクの周期監視処理が完了してＯＳにＣＰＵを開放しＦｌａｓｈ  ＲＯＭへのＷｒｉｔｅが発生した場合、Ｆｌａｓｈ  ＲＯＭへのＡｃｃｅｓｓ時間が定周期監視時間内に終了することが出来れば、定周期監視タスクは各監視対象や性能情報収集を収集することが可能である。しかし、Ｆｌａｓｈ  ＲＯＭへのＡｃｃｅｓｓが完了していない場合に定周期タスクは、各監視対象や性能情報収集を行うことが出来なくなってしまう。つまり、Ｆｌａｓｈ  ＲＯＭへの書き込みデータ量、デバイスの反応速度により周期監視タイミングが大幅にずれ込むことになると言う問題点があった。
【０００５】
本発明は、ＣＰＵ占有期間を一定に保ち、リアルタイムＯＳとしてのリアルタイム性を保証する事を目的とする。また、Ｆｌａｓｈ  ＲＯＭへの書き込みデータ量、デバイスの反応速度により周期監視タイミングが大幅にずれ込まないようにする事を目的とする。
【０００６】
【課題を解決するための手段】
本発明のデータ書き込み装置は、記憶装置からデータを消去し、上記記憶装置に新たなデータを書き込む処理をＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に命令する命令部と、
上記命令部により命令されたＣＰＵが記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む間に、上記ＣＰＵがおこなう記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理を一端中止させ、上記記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理から上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせるＣＰＵ解放部と
を備えたことを特徴とする。
【０００７】
【発明の実施の形態】
実施の形態１．
図１は、実施の形態１における書き込み装置の外観を示す図である。
図１において、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）表示装置４１、キーボード（Ｋ／Ｂ）４２、マウス４３、コンパクトディスク装置（ＣＤＤ）８６、プリンタ装置８７、スキャナ装置８８は、パーソナルコンピュータ（ＰＣ）３３にケーブルで接続されている。
【０００８】
図２は、実施の形態１における書き込み装置のハードウェア構成図である。
図２において、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３７は、バス３８を介してＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３９、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４０、ＣＲＴ表示装置４１、Ｋ／Ｂ４２、マウス４３、通信ボード４４、ＦＤＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）４５、磁気ディスク装置４６、ＣＤＤ８６、プリンタ装置８７、スキャナ装置８８と接続されている。通信ボード４４は、インターネット３０に接続されている。
ここで、通信ボード４４は、インターネット３０に限らず、ＬＡＮ（ローカルエリアネットワーク）、或いはＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）に接続されていても構わない。
磁気ディスク装置４６には、オペレーティングシステム（ＯＳ）４７、ウィンドウシステム４８、プログラム群４９、ファイル群５０が記憶されている。プログラム群４９は、ＣＰＵ３７、ＯＳ４７、ウィンドウシステム４８により実行される。
図３は、実施の形態１における書き込み装置のＳＷ（ソフトウェア）構成を示す図である。
書き込み装置は、以下に説明するＦｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式を用いている。
図３において、ＯＳ４７は、各タスクのスケージューリングを行う。
Ｆｉｌｅ管理部１０１（命令部の一例である）は、Ｆｌａｓｈ  ＲＯＭへのＲｅａｄ／Ｗｒｉｔｅアクセスを行うタスクである。
ＥＱＴ部１０２は、装置の状態管理、障害管理を行うタスクである。
シリアル部１０３は、シリアルバス制御を行うタスクである。
周期監視部１０４は、周期的にレジスタ（記憶装置の一例である）を監視し、障害監視を行うタスクである。
ＩＦ（インタフェース）診断部１０５は、インタフェースカードの自己診断を行うタスクである。
ローカル管理部１０６は、シリアルポートの制御を行うタスクである。
ＣＵＩ部１０７は、キャラクタユーザインタフェースを提供するタスクである。
ＤＡＴＡ  Ｌｉｂ部１０８は、データベースを管理するタスクである。
ネットワーク管理部１０９は、ネットワーク機能を提供するタスクである。
ＩＰ部１１０は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）終端を行うタスクである。
Ｈ／Ｗ（ハードウェア）ドライバ部１１１は、Ｈ／Ｗを制御するドライバ群である。
【０００９】
命令部の一例であるＦｉｌｅ管理部１０１は、記憶装置の一例としてＲＯＭ３９からデータを消去し、上記記憶装置に新たなデータを書き込む処理をＣＰＵに命令する。
ＣＰＵ解放部の一例であるＯＳ４７は、上記命令部の一例であるＦｉｌｅ管理部１０１により命令されたＣＰＵが記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む間に、上記ＣＰＵがおこなう記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理を一端中止させ、上記記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理から上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせる。
【００１０】
図４は、ＯＳ−Ｆｉｌｅ管理間のシーケンス図である。
図４は、Ｆｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式でのＦｌａｓｈ  ＲＯＭへの書き込みシーケンスを示す。従来は、Ｆｌａｓｈ  ＲＯＭへの全てのアクセスが完了するまでＦｉｌｅ管理部１０１タスクがＣＰＵを占有してしまっていたが、本実施の形態における装置では、図４中の「ＣＰＵ占有」期間のみＣＰＵを占有する。周期的にＣＰＵが開放され他のタスクがこの間は自由に処理を行うことができる。また、Ｆｌａｓｈ  ＲＯＭへのアクセスよりも優先順位の高いイベントが発生した場合は、ＯＳは優先順位の高いイベントを優先することも可能である。
【００１１】
上記ＣＰＵ解放部の一例であるＯＳ４７は、第１の信号の一例として、Ｂｕｓｙ  Ｃｈｅｃｋ完了通知を上記命令部の一例であるＦｉｌｅ管理部１０１に出力し、第２の信号の一例として、チェック処理登録を上記命令部の一例であるＦｉｌｅ管理部１０１から入力し、入力された第２の信号に基づいて、上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせる。
上記命令部の一例であるＦｉｌｅ管理部１０１は、上記ＣＰＵ解放部の一例であるＯＳ４７により出力された第１の信号を入力した後、所定の期間、上記記憶装置からデータを消去する処理と記憶装置に新たなデータを書き込む処理とのいずれかをＣＰＵに命令し、上記所定の期間経過後、上記第２の信号を上記ＣＰＵ解放部に出力する。
上記ＣＰＵ解放部の一例であるＯＳ４７は、上記ＣＰＵが記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む間に、時刻を異にして複数の第１の信号を上記命令部の一例であるＦｉｌｅ管理部１０１に出力し、
上記命令部の一例であるＦｉｌｅ管理部１０１は、上記ＣＰＵ解放部の一例であるＯＳ４７により出力された複数の第１の信号を入力した後、上記複数の第１の信号の各第１の信号が入力される毎に、所定の期間、上記記憶装置からデータを消去する処理と記憶装置に新たなデータを書き込む処理とのいずれかをＣＰＵに命令し、上記所定の期間経過後、上記複数の第１の信号の各第１の信号毎に、上記第２の信号を上記ＣＰＵ解放部の一例であるＯＳ４７に出力する。
【００１２】
以上のように、本実施の形態によれば、Ｆｌａｓｈ  ＲＯＭにアクセス（Ｗｒｉｔｅ）する際、Ｆｉｌｅ管理タスクがタスク起動されると、Ｆｌａｓｈ  ＲＯＭ上のデータを書込むセクタ消去を指示し、「Ｒｅａｄｙ  Ｂｉｔ」が消去完了となるまでＬｏｏｐ処理にて監視を続け、次に「Ｒｅａｄｙ  Ｂｉｔ」が書込み完了検出後にデータをセクタに書込み、再度「Ｒｅａｄｙ  Ｂｉｔ」が書込み完了となるまでＬｏｏｐ処理にて監視を行なうといった一連の動作を、全てのデータをＦｌａｓｈ  ＲＯＭへ書込み完了するまで繰り返す必要がないようにすることができる。
また、本実施の形態によれば、Ｆｌａｓｈ  ＲＯＭへのアクセス（Ｗｒｉｔｅ）を行なう場合、Ｆｌａｓｈ  ＲＯＭへ書込むべきデータを全て処理するまで、Ｆｌａｓｈ  ＲＯＭの消去、書込みを繰り返す必要がないようにすることができる。つまり、Ｆｌａｓｈ  ＲＯＭへのアクセス（Ｗｒｉｔｅ）データ量が多くなればそれに比例して「ＣＰＵ占有期間」も伸びることもない。また、Ｗｒｉｔｅ，Ｅｒａｓｅを繰り返したＦｌａｓｈ  ＲＯＭにおいてもＦｌａｓｈ  ＲＯＭ劣化の為、「Ｒｅａｄｙ  Ｂｉｔ」の状態変化時間が伸びる事もない。それに伴う「ＣＰＵ占有期間」が長くなることもない。Ｆｌａｓｈ  ＲＯＭへの「書き込みデータ量」と「Ｆｌａｓｈ  ＲＯＭの経年変化」により「ＣＰＵ占有期間」が変化してしまうといった、リアルタイムＯＳとしてのリアルタイム性を保証する事が出来ない状態を作り出すこともない。すなわち、ＣＰＵ占有期間を保ち、リアルタイムＯＳとしてのリアルタイム性を保証する事ができる。
【００１３】
実施の形態２．
図５は、実施の形態２におけるＦｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式での、ＯＳのフロー図である。各構成は、実施の形態１と同様である。
ＣＰＵ解放部の一例であるＯＳ４７は、記憶装置の一例であるＲＯＭ３９からデータを消去し、上記記憶装置に新たなデータを書き込む処理よりも優先度の大きい処理が存在する場合に、上記優先度の大きい処理を上記ＣＰＵがおこなった後に、上記第１の信号の一例であるＢｕｓｙ  Ｃｈｅｃｋ完了通知を上記命令部の一例であるＦｉｌｅ管理部１０１に出力する。
実施の形態２におけるＦｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式のＯＳ４７は、以下の動作をＯＳアイドル時に行う。
Ｆｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓよりも優先順位の高いイベントが各タスクから要求されているかを定周期にチェックする。この段階で、優先順位の高いイベント発生しているようであればイベントを処理し、Ｆｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓは次の定周期に持ち越す。
「Ｒｅａｄｙ  Ｂｉｔ監視」がＯＳ４７に対して登録されているかをチェックする。登録されていなければＦｌａｓｈ  ＲＯＭのＲｅａｄｙ  Ｂｉｔ監視の必要が無いので処理を終わる。
ここで、「Ｒｅａｄｙ  Ｂｉｔ監視」がＯＳ４７に登録されていれば、Ｆｌａｓｈ  ＲＯＭのＲｅａｄｙ  Ｂｉｔ状態を読み出し、Ｆｉｌｅ管理部１０１タスクへ結果を通知する。
Ｆｉｌｅ管理部１０１への「Ｒｅａｄｙ  Ｂｉｔ状態」通知後、ＯＳ４７へ登録されていた「Ｒｅａｄｙ  Ｂｉｔ監視」をクリアする。
【００１４】
以上のように、本実施の形態によれば、優先順位の高いイベント発生しているようであれば、先に優先順位の高いイベントを処理することができる。
【００１５】
実施の形態３．
各構成は、実施の形態１と同様である。
上記ＣＰＵ解放部の一例であるＯＳ４７は、第１の信号の一例として、Ｂｕｓｙ  Ｃｈｅｃｋ完了通知を上記命令部の一例であるＦｉｌｅ管理部１０１に出力し、第２の信号の一例として、チェック処理登録を上記命令部の一例であるＦｉｌｅ管理部１０１から入力し、入力された第２の信号に基づいて、上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせる。
上記命令部の一例であるＦｉｌｅ管理部１０１は、上記ＣＰＵ解放部の一例であるＯＳ４７により出力された第１の信号を入力した後、所定の期間、上記記憶装置からデータを消去する処理と記憶装置に新たなデータを書き込む処理とのいずれかをＣＰＵに命令し、上記所定の期間経過後、上記第２の信号を上記ＣＰＵ解放部の一例であるＯＳ４７に出力する。
ここで、上記第１の信号は、データ消去完了情報とデータ存在情報とのいずれかを有している。
上記命令部の一例であるＦｉｌｅ管理部１０１は、上記ＣＰＵ解放部の一例であるＯＳ４７により出力された第１の信号がデータ消去完了情報を有している場合に、上記第１の信号を入力した後、所定の期間、上記記憶装置に新たなデータを書き込む処理をＣＰＵに命令し、上記ＣＰＵ解放部の一例であるＯＳ４７により出力された第１の信号がデータ存在情報を有している場合に、上記第１の信号を入力した後、所定の期間、上記記憶装置からデータを消去する処理をＣＰＵに命令する。
そして、上記命令部の一例であるＦｉｌｅ管理部１０１は、上記ＣＰＵ解放部の一例であるＯＳ４７により出力された第１の信号がデータ存在情報を有している場合に、１セクタ分のデータを消去し、上記ＣＰＵ解放部の一例であるＯＳ４７により出力された第１の信号がデータ消去完了情報を有している場合に、１セクタ分の新たなデータを書き込む処理をＣＰＵに命令する。
【００１６】
図６は、実施の形態３におけるＦｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式での、Ｆｉｌｅ管理のフロー図である。
Ｓ（ステップ）６０１において、実施の形態３におけるＦｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式のＦｉｌｅ管理部１０１タスクは、タスクアイドル時は常にイベントの受信待ち状態でループしている。ＯＳ４７からＦｉｌｅ管理部１０１へイベントが通知されると以下の処理を行う。
Ｓ６０２において、Ｆｉｌｅ管理部１０１タスクは、Ｆｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ要求か、Ｒｅａｄ  Ｃｈｅｃｋ完了通知かを判定する。Ｆｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ要求ならばＳ６０３へ、Ｒｅａｄ  Ｃｈｅｃｋ完了通知ならばＳ６０４へ進む。
Ｓ６０３において、Ｆｉｌｅ管理部１０１タスクは、「Ｒｅａｄｙ  Ｂｉｔ監視登録（要因：Ｗｒｉｔｅ）」をＯＳ４７に対して登録し、イベント待ち状態になる。
Ｓ６０４において、Ｆｉｌｅ管理部１０１タスクは、「Ｒｅａｄ  Ｃｈｅｃｋ完了通知」の完了要因を判定する。要因が「Ｅｒａｓｅ」（データ消去完了情報の一例である）ならばＳ６０５へ、「Ｗｒｉｔｅ」（データ存在情報の一例である）ならばＳ６０８へ進む。
Ｓ６０５において、Ｆｉｌｅ管理部１０１タスクは、Ｆｌａｓｈ  ＲＯＭの１セクタ分程、データの書き込みを行う。
Ｓ６０６において、Ｆｉｌｅ管理部１０１タスクは、更にＦｌａｓｈ  ＲＯＭへの書き込みデータが残っているか判断する。残っている場合は、Ｓ６０７へ進む。書き込みデータが無ければ処理終了としイベント待ち状態になる。
Ｓ６０７において、Ｆｉｌｅ管理部１０１タスクは、「Ｒｅａｄｙ  Ｂｉｔ監視登録（要因：Ｗｒｉｔｅ）」をＯＳ４７に対して登録する。
Ｓ６０８において、Ｆｉｌｅ管理部１０１タスクは、Ｆｌａｓｈ  ＲＯＭの１セクタ分を、データ消去を行う。
Ｓ６０９において、Ｆｉｌｅ管理部１０１タスクは、「Ｒｅａｄｙ  Ｂｉｔ監視登録（要因：Ｅｒａｓｅ）」をＯＳ４７に対して登録する。登録後、処理終了としイベント待ち状態になる。
【００１７】
本実施の形態によれば、実施の形態１と同様、Ｆｌａｓｈ  ＲＯＭへのアクセス（Ｗｒｉｔｅ）を行なう場合、Ｆｌａｓｈ  ＲＯＭへ書込むべきデータを全て処理するまで、Ｆｌａｓｈ  ＲＯＭの消去、書込みを繰り返す必要がないようにすることができる。つまり、Ｆｌａｓｈ  ＲＯＭへのアクセス（Ｗｒｉｔｅ）データ量が多くなればそれに比例して「ＣＰＵ占有期間」も伸びることもない。また、Ｗｒｉｔｅ，Ｅｒａｓｅを繰り返したＦｌａｓｈ  ＲＯＭにおいてもＦｌａｓｈ  ＲＯＭ劣化の為、「Ｒｅａｄｙ  Ｂｉｔ」の状態変化時間が伸びる事もない。それに伴う「ＣＰＵ占有期間」が長くなることもない。Ｆｌａｓｈ  ＲＯＭへの「書き込みデータ量」と「Ｆｌａｓｈ  ＲＯＭの経年変化」により「ＣＰＵ占有期間」が変化してしまうといった、リアルタイムＯＳとしてのリアルタイム性を保証する事が出来ない状態を作り出すこともない。すなわち、ＣＰＵ占有期間を保ち、リアルタイムＯＳとしてのリアルタイム性を保証する事ができる。
【００１８】
実施の形態４．
実施の形態４における各構成は、実施の形態１と同様である。
上記ＣＰＵ解放部の一例であるＯＳ４７は、第１の信号の一例として、Ｂｕｓｙ  Ｃｈｅｃｋ完了通知を上記命令部の一例であるＦｉｌｅ管理部１０１に出力し、第２の信号の一例として、チェック処理登録信号を上記命令部の一例であるＦｉｌｅ管理部１０１から入力し、入力された第２の信号に基づいて、上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせる。
上記命令部の一例であるＦｉｌｅ管理部１０１は、上記ＣＰＵ解放部の一例であるＯＳ４７により出力された第１の信号を入力した後、所定の期間、上記記憶装置からデータを消去する処理と記憶装置に新たなデータを書き込む処理とのいずれかをＣＰＵに命令し、上記所定の期間経過後、上記第２の信号を上記ＣＰＵ解放部の一例であるＯＳ４７に出力する。
周期監視部１０４は、上記所定の期間とは異なる第２の期間毎、周期的に記憶装置を監視し、ＣＰＵにおける障害監視を行う。
上記命令部の一例であるＦｉｌｅ管理部１０１は、上記周期監視部１０４により障害監視がおこなわれる第２の期間より短い上記所定の期間、上記記憶装置からデータを消去する処理と記憶装置に新たなデータを書き込む処理とのいずれかをＣＰＵに命令する。
【００１９】
図７、図８（図７と図８で１図を構成する）は、実施の形態４におけるＦｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式によるフローチャートを表わした図である。
周期監視部１０４タスクは、ＯＳ４７により周期的にタスク起床されることで装置の障害発生状況監視や、性能情報の収集を行っている。
周期監視部１０４タスクの周期監視処理が完了してＯＳ４７にＣＰＵを開放しＦｌａｓｈ  ＲＯＭへのＷｒｉｔｅ処理が開始されたとする。
周期監視部１０４が持つタイマがタイムアウトした時、ＣＰＵ開放中（第７図中Ｔ１）ならば、直ちに周期監視をタスク起動することが出来る。またＣＰＵ占有中（第７図中Ｔ２）であっても、ＣＰＵ開放されれば直ちに周期監視をタスク起動することが出来る。ＣＰＵ占有期間は、Ｆｌａｓｈ  ＲＯＭへの書き込みデータ量やデバイスの応答速度に左右されることはなく常に一定かつ定周期タイマの時間よりも極めて短いため、十分に定周期タスクの定周期起動を保証することが出来る。
【００２０】
以上のように、上記各実施の形態におけるデータ書き込み装置は、シングルタスクＯＳ（以降ＯＳとする）下で、Ｆｌａｓｈ  ＲＯＭアクセスルーチン（以後Ｆｉｌｅ管理タスクとする）内の「Ｒｅａｄｙ  Ｂｉｔ」確認部分をＯＳがアイドル状態時に監視を行なう事でＦｉｌｅ管理タスクがＣＰＵ占有することを回避する物である。当構成を用いる事により、ＯＳ下でＦｌａｓｈ  ＲＯＭへの制御をおこなう場合であっても、書込みデータサイズ、Ｆｌａｓｈ  ＲＯＭの全消去などの処理負荷、Ｆｌａｓｈ  ＲＯＭの経年変化などの要因によらず、リアルタイムＯＳのリアルタイム性を損なわない。すなわち、Ｆｉｌｅ管理のＣＰＵ占有回避策を実現することができる。
【００２１】
以上の実施の形態の説明において「〜部」として説明したものは、一部或いはすべてコンピュータで動作可能なプログラムにより構成することができる。これらのプログラムは、例えば、Ｃ言語により作成することができる。或いは、ＨＴＭＬやＳＧＭＬやＸＭＬを用いても構わない。或いは、ＪＡＶＡ（登録商標）を用いて画面表示を行っても構わない。
また、実施の形態の説明において「〜部」として説明したものは、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェア或いは、ハードウェア或いは、ソフトウェアとハードウェアとファームウェアとの組み合わせで実施されても構わない。
また、上記各実施の形態を実施させるプログラムは、記録媒体に記録される。記録媒体は、磁気ディスク装置、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）、光ディスク、ＣＤ（コンパクトディスク）、ＭＤ（ミニディスク）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のその他の記録媒体による記録装置を用いても構わない。
【００２２】
以上のように、上記各実施の形態におけるプログラムは、記憶装置からデータを消去し、上記記憶装置に新たなデータを書き込む処理をＣＰＵに命令する命令処理と、上記命令処理により命令されたＣＰＵが記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む間に、上記ＣＰＵがおこなう記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理を一端中止させ、上記記憶装置からデータを消去し上記記憶装置に新たなデータを書き込む処理から上記ＣＰＵを解放し、上記ＣＰＵに他の処理をおこなわせることを可能にさせるＣＰＵ解放処理とをコンピュータに実行させる。そして、上記プログラムは、ＯＳを有し、上記ＣＰＵ解放処理は、上記ＯＳによりＣＰＵに実行させることを特徴とする。
【００２３】
【発明の効果】
本発明によれば、ＣＰＵ占有期間を保ち、リアルタイムＯＳとしてのリアルタイム性を保証する事ができる。
【図面の簡単な説明】
【図１】実施の形態１における書き込み装置の外観を示す図である。
【図２】実施の形態１における書き込み装置のハードウェア構成図である。
【図３】実施の形態１における書き込み装置のＳＷ（ソフトウェア）構成を示す図である。
【図４】ＯＳ−Ｆｉｌｅ管理間のシーケンス図である。
【図５】実施の形態２におけるＦｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式での、ＯＳのフロー図である。
【図６】実施の形態３におけるＦｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式での、Ｆｉｌｅ管理のフロー図である。
【図７】実施の形態４におけるＦｌａｓｈ  ＲＯＭ  Ａｃｃｅｓｓ方式によるフローチャートを表わした図である。
【図８】図７の続きの図である。
【符号の説明】
３０  インターネット、３３  ＰＣ、３７  ＣＰＵ、３８  バス、３９  ＲＯＭ、４０  ＲＡＭ、４１  ＣＲＴ表示装置、４２  Ｋ／Ｂ、４３  マウス、４４通信ボード、４５  ＦＤＤ、４６  磁気ディスク装置、４７  ＯＳ、４８  ウィンドウシステム、４９  プログラム群、５０  ファイル群、８６  ＣＤＤ、８７  プリンタ装置、８８  スキャナ装置、１０１  Ｆｉｌｅ管理部、１０２  ＥＱＴ部、１０３  シリアル部、１０４  周期監視部、１０５  ＩＦ診断部、１０６  ローカル管理部、１０７  ＣＵＩ部、１０８  ＤＡＴＡ  Ｌｉｂ部、１０９ネットワーク管理部、１１０  ＩＰ部。
【図１】
2004185506.tif 000003
【図２】
2004185506.tif 000004
【図３】
2004185506.tif 000005
【図４】
2004185506.tif 000006
【図５】
2004185506.tif 000007
【図６】
2004185506.tif 000008
【図７】
2004185506.tif 000009
【図８】
2004185506.tif 000010