[構成と動作]
図1は、本実施形態のフラッシュメモリ装置を適用し得る通信システムの例である通信システム501の構成を表す概念図である。
通信システム501は、コンピュータ11と、Webサーバ15と、装置管理サーバ16と、インターネット14とを備える。
コンピュータ11は、本実施形態のフラッシュメモリ装置の例であるフラッシュメモリ装置21を備える。コンピュータ11は、フラッシュメモリ装置21以外に、一般的なコンピュータが備える構成を備える。当該構成については、図3を参照して後述する。
コンピュータ11は、コンピュータ11が行う処理により動作する図示しない動作部を備える装置の一部であってもかまわない。また、コンピュータ11は、携帯電話、スマートフォン、タブレット、その他携帯可能な端末でコンピュータと同等の機能を持つものであっても構わない。
前記動作部を備える装置は、典型例として、インターネットサービスを利用する際に用いられるブロードバンドルータやモデムなどの通信装置である。当該通信装置は、インターネット事業者からエンドユーザへレンタルされるケースが多い。その場合、当該事業者は、前記通信装置を、倉庫などに保管し、エンドユーザとの契約完了後にユーザに貸し出す。そのため、当該通信装置は通電されないまま長期間保管される状態が続く場合がある。そして、当該通信装置に一般的なフラッシュメモリ装置が用いられた場合には、前記長期間保管により当該一般的なフラッシュメモリ装置が保持する情報が失われる確率が高い。
装置管理サーバ16は、データベース18と、処理通信部17とを保持する。処理通信部17は、装置管理サーバ16における各種処理や通信を行う。データベース18については後述する。
コンピュータ11は、フラッシュメモリ装置21が保持するプログラムにより、次に説明する所定の処理を行う。
当該所定の処理には、コンピュータ11を起動する起動処理が含まれる。当該起動処理には、コンピュータの所定の部分に電力を供給する処理やOSを起動する処理が含まれる。ここで、OSは、Operating Systemの略である。
前記所定の処理には、また、コンピュータ11がWebサーバ15を介して、インターネット14や装置管理サーバ16との間で行う、通信に係る通信処理が含まれる。当該通信処理には、Webサーバ15を介してインターネット14や装置管理サーバ16に接続する通信可能化処理が含まれる。また、当該通信処理には、インターネット14や装置管理サーバ16から通信により情報を取得する処理が含まれる。さらに、当該通信処理には、インターネット14や装置管理サーバ16から取得した情報をフラッシュメモリ装置21や図示しない記録部に記録する処理が含まれる。前記通信処理は、前記起動処理により起動した前記OS上で行われる処理である。前記通信処理の詳細は周知であるので、ここでは説明を省略する。
前記所定の処理には、また、フラッシュメモリ装置21の記録領域の一部又は全部をリフレッシュするリフレッシュ処理が含まれ得る。当該リフレッシュ処理には、リフレッシュを行うか否かについての判定が含まれ得る。そして、当該判定は、例えば前記通信処理により装置管理サーバ16の保持するデータベース18から取得したリフレッシュ関連情報により行う。当該リフレッシュ関連情報は、例えば、フラッシュメモリ装置21或いはコンピュータ11が使用されなかった期間(以下、「無使用期間」という。)についての情報である。フラッシュメモリ装置21或いはコンピュータ11が使用されない場合には、フラッシュメモリ装置21或いはコンピュータ11において何らかの処理は行われない。前述のように、フラッシュメモリは長期間使用されないと、リフレッシュ処理が行われないため、情報を保持している記録部分における電荷の抜けが発生する。そして、電荷の抜けがある程度以上になると、フラッシュメモリにより保持されている情報が失われる。従い、コンピュータ11は、当該ある程度以上になる前にフラッシュメモリ装置21のリフレッシュ処理を行わなければならない。そこで、コンピュータ11は、当該リフレッシュを行う必要性を、例えば前記無使用期間から推定する。
リフレッシュ関連情報が、前記無使用期間の代わりに、フラッシュメモリ装置21又はコンピュータ11が保管されていた保管期間であっても構わない。当該保管期間は前記無使用期間にほぼ等しいからである。
前記リフレッシュ関連情報として、前記無使用期間や前記保管期間に加えて、前記無使用期間や前記保管期間におけるフラッシュメモリ装置21又はコンピュータ11の温度に関する情報が用いられてもかまわない。前記電荷の抜けの程度は、前記無使用期間等におけるフラッシュメモリ装置21の温度が高いほど大きいことが経験により知られている。そこで、フラッシュメモリ装置21をリフレッシュするか否かの判定の際に、当該温度を参照し得るようにするのである。
前記リフレッシュ関連情報として、前記無使用期間や前記保管期間に加えて、前記無使用期間や前記保管期間におけるフラッシュメモリ装置21又はコンピュータ11の所在に関する情報が用いられてもかまわない。前記無使用期間等におけるフラッシュメモリ装置21の温度は、保管場所等のフラッシュメモリ装置21の所在に関する情報に依存することが想定され得るからである。
さらに、前記リフレッシュ関連情報として、前記無使用期間や前記保管期間に加えて、フラッシュメモリ装置21又はコンピュータ11が使用された状況に関する情報が用いられてもかまわない。当該使用された状況に関する情報は、例えば、使用された時間である。前述のように、前記電荷の抜けの程度は、フラッシュメモリの記録領域における書換回数が多いほど大きい。そして、当該書換回数は、前記使用された時間が長いほど多いことが想定される。そこで、リフレッシュを行うか否かの判定に、前記使用された時間を用いるのである。
さらに、前記リフレッシュ関連情報が、リフレッシュ実行を指示又は推奨する情報を含んでいてもかまわない。その場合は、図1に表す装置管理サーバ16が、データベース18に保持する情報から、フラッシュメモリ装置21がリフレッシュを行うべきか否かを判定する。当該データベース18が保持する情報は、前述の、無使用期間、保管期間、フラッシュメモリ装置21等の温度、フラッシュメモリ装置21等の所在に関する情報、フラッシュメモリ装置21等が使用された状況に関する情報等である。
なお、前記リフレッシュの動作の詳細は例えば特許文献3に開示があり、周知であるので、ここではその説明を省略する。
前記所定の処理には、前記起動処理、前記通信処理及び前記リフレッシュ処理以外の、その他の処理が含まれても構わない。そして、当該その他の処理は、前記起動処理や前記通信処理を前提とする処理であり得る。
なお、フラッシュメモリ装置21の詳細については図4を参照して後述する。
また、装置管理サーバ16が保持するデータベース18には、予め、コンピュータ11がデータベース18より取得し得る情報が格納されている。当該格納は、例えば、外部からの入力により行われる。
Webサーバ15及びインターネット14は周知であるので、ここでは、それらの詳細説明を省略する。
なお、図1に表すように、Webサーバ15及び装置管理サーバ16は、通常は、インターネット事業者が管理する装置であるインターネット事業装置13に含まれる。
図2は、図1に表すデータベース18の具体例であるデータベース18aに格納された情報を表す図である。データベース18aは、複数の装置(コンピュータ)についての、装置識別記号、製造番号、MACアドレス、保管倉庫識別記号、使用期間、保管期間、及び、保管温度を格納する。これらの情報のうち、該当する装置についての全部又は一部、若しくは、これらの情報から導出したリフレッシュ指示情報や推奨情報が、前述のリフレッシュ関連情報になり得る。
図3は、図1に表すコンピュータ11の構成例を表す概念図である。
コンピュータ11は、入力部121と、出力部122と、処理部123と、記録部124と、通信部125と、電源部126とを備える。図1に表すフラッシュメモリ装置21は記録部124の一部である。
入力部121はコンピュータ11に外部から情報を入力する部分である。入力部121からの入力には、キーボードや音声による入力や、後述の通信部125を経由しての情報の受信による入力が含まれる。
出力部122はコンピュータ11の外部への情報の出力を行う。当該出力には、画面や音声等による出力や、後述の通信部を経由しての情報の送信による出力が含まれる。
処理部123は、コンピュータ11が行う処理のうち、処理部123以外の部分が行う処理以外の処理を行う。処理部123には例えば中央演算処理装置が含まれる。
記録部124は、処理部123の指示に従い各種情報を記録する。記録部124は、フラッシュメモリ装置21以外に、例えば、ハードディスク装置やDRAM等のRAMを含む。ここで、DRAMおよびRAMは、それぞれ、Dynamic Random Access MemoryおよびRandom Access Memoryの略である。
通信部125は、処理部123の処理に従い、インターネットを含む外部との情報の送受信を行う。当該送受信には、送受信を可能にする通信可能化処理の少なくとも一部が含まれる。
電源部126は、コンピュータ11の各部分に対して電力の供給を行う。電源部126は、処理部123からの指示により、当該電力の供給の開始及び停止を行っても構わない。あるいは、電源部126は、処理部123からの指示によらず、例えば、利用者が押下等するスイッチによる端子の接触状態により当該電力の供給の開始及び停止を行っても構わない。なお、図3には、電源部126と電源部126が電力を供給する各構成との間の配線は図示を省略してある。
図4は、図1に表すフラッシュメモリ装置21の例であるフラッシュメモリ装置21aを表すイメージ図である。
フラッシュメモリ装置21aは、記録領域111を備える。
記録領域111は、強制限領域112と通常領域113とからなる。
記録領域111は、情報が記録される領域である。
強制限領域112は、通常領域113と比較して、記録された情報の書換回数がより少ない回数に制限されるか又は禁止された領域である。強制限領域112における書換回数の制限は、例えば、試行の結果、長期間リフレッシュを行わなかったとしても前述の電荷の抜けの影響が生じなかった少ない書換回数への制限書換回数の制限又は禁止である。
通常領域113は、記録領域111のうち強制限領域112以外の領域である。通常領域113に記録された情報の書換回数には制限が無いか、或いは、書換回数に制限があるとしても、当該制限は、強制限領域112における書換回数の制限と比較して緩和された制限である。
なお、強制限領域112と通常領域113との区別は、単に概念上の区別ではなく記録を行う具体的部分としての区別である。ただし、当該区別の仕方については任意である。例えば、当該区別が、フラッシュメモリ装置21aを構成する各フラッシュメモリごとの単位で行われても構わない。または、当該区別が、あるフラッシュメモリの内部において当該フラッシュメモリを構成する部分により行われていても構わない。
図4に表すように、強制限領域112には、ソフトウェア101が記録されている。また、通常領域113には、ソフトウェア102が記録されている。
ソフトウェア101の詳細は、図5を参照して後述する。
ソフトウェア102は、記録領域111に記録されたソフトウェアのうち、ソフトウェア101以外のソフトウェアである。ソフトウェア102は、ソフトウェア101がコンピュータ11に実行させる後述の起動処理を前提として、当該起動処理後の所定の処理をコンピュータ11に実行させるソフトウェアである。
なお本実施形態において説明するソフトウェアには、プログラム以外に当該プログラムにより使用されるデータ等が含まれていても構わない。また、ソフトウェアが使用するデータ等が、当該ソフトウェアが記録されている領域でない方の領域に記録されていても構わない。
図5は、図4に表すソフトウェア101の例であるソフトウェア101aを表すイメージ図である。
ソフトウェア101aは、ソフトウェア101aa乃至101afを備える。
ソフトウェア101aaは、コンピュータ11の起動の際の初期状態において、コンピュータ11に対し、起動処理、通信処理、検出処理、リフレッシュ処理の各処理を行う順番及び行う内容を規定するプログラムを含む。
ソフトウェア101abは、ソフトウェア101aaにより開始される前述の起動処理を図1に表すコンピュータ11に実行させるプログラムを含む。当該起動処理には、OSを起動する処理が含まれる。従い、ソフトウェア101abはOSに係るソフトウェアを備える。
ソフトウェア101acは、ソフトウェア101aaにより開始される前述の通信処理をコンピュータ11に実行させるプログラムを含む。前述のように、当該通信処理には、Webサーバ15を介してインターネット14や装置管理サーバ16に接続する処理が含まれる。従い、ソフトウェア101acには、当該接続する処理をコンピュータ11に実行させるプログラムが含まれる。また、前述のように、当該通信処理には、インターネット14や装置管理サーバ16から情報を取得する処理が含まれる。ソフトウェア101acには、当該情報を取得する処理をコンピュータ11に実行させるプログラムが含まれる。さらに、前述のように、当該通信処理には、インターネット14や装置管理サーバ16から取得した情報を記録する処理が含まれる。従い、ソフトウェア101acには、当該情報を記録する処理をコンピュータ11に実行させるプログラムが含まれる。
ソフトウェア101adは、図4に表すフラッシュメモリ装置21aの記録領域111に記録されたソフトウェア101、102の全部又は一部について、欠陥の有無を調べる処理をコンピュータ11に実行させるプログラムを含む。当該欠陥の有無を調べる処理を、以下、「欠陥検出処理」ということにする。当該欠陥検出処理は、ソフトウェア101aaにより開始される。当該欠陥検出処理は、例えば、周知のチェックサム (Check Sum)等の誤り検出符号による誤り検出である。
ソフトウェア101aeは、ソフトウェアadにより実行される処理により、欠陥があると判定した場合に、当該欠陥の補修を試みる処理をコンピュータ11に実行させるプログラムを含む。当該欠陥の補修を試みる処理を、以下、「補修試行処理」ということにする。
図4に表す強制限領域112は、電荷の抜けが生じにくくなるように書換回数が制限されている。従い、強制限領域112に記録されたソフトウェア101には欠陥が生じにくい。前記補修試行処理は、主に、通常領域113に記録されたソフトウェア102において生じた欠陥の補修を試行する処理である。
当該補修試行処理は、例えば、次のように行われる。
コンピュータ11は、欠陥があると判定したソフトウェア101、102の要素(欠陥要素)を含む部分について、装置管理サーバ16に対し、補修用部分の送付を要求する。当該補修用部分は、当該欠陥要素を含む部分に相当する、欠陥を含まない部分である。また、当該要求は、前述のソフトウェア101acによりコンピュータ11が実行する処理である。
コンピュータ11は、要求した前記補修用部分を受信した場合、前記欠陥要素を含む部分を、受信した前記補修用部分により置き換える。
ソフトウェア101afは、ソフトウェア101aaにより開始される前述のリフレッシュ処理をコンピュータ11に実行させるプログラムを含む。
前述のように当該リフレッシュ処理には、リフレッシュを行うか否かについての判定が含まれ得る。その場合は、ソフトウェア101afは当該判定をコンピュータ11に実行させるプログラムを含む。
当該判定は、例えば、前記通信処理により装置管理サーバ16の保持するデータベース18から取得したリフレッシュ関連情報により行われる。その場合の当該取得は、ソフトウェア101acがコンピュータ11に実行させる。
[処理フロー]
図6は、図5に表すソフトウェア101aaが図1及び図3に表すコンピュータ11に実行させる処理の処理フロー例を表す概念図である。
ソフトウェア101aaは、まず、S101の処理として、起動処理の開始を、コンピュータ11に実行させる。当該開始の処理は、例えば、図3に表す記録部124の所定の箇所への開始情報の記録である。
そして、ソフトウェア101aaは、S102の処理として、起動処理が終了したかについての判定を、コンピュータ11に実行させる。ソフトウェア101aaは、当該判定を、例えば、図3に表す記録部124の所定の箇所への起動処理完了情報の記録の有無により、コンピュータ11に実行させる。
ソフトウェア101aaは、S102の処理による判定結果がyesの場合は、S103の処理をコンピュータ11に実行させる。
一方、ソフトウェア101aaは、S102の処理による判定結果がnoの場合は、S102の処理をコンピュータ11に再度実行させる。
ソフトウェア101aaは、S103の処理をコンピュータ11に実行させる場合は、同処理として、通信可能化処理の開始を、コンピュータ11に実行させる。当該開始の処理は、例えば、図3に表す記録部124の所定の箇所への開始情報の記録である。
そして、ソフトウェア101aaは、コンピュータ11に、S104の処理として、通信可能化処理が終了したかについての判定を、コンピュータ11に実行させる。ソフトウェア101aaは、当該判定を、例えば、図3に表す記録部124の所定の箇所への起動処理完了情報の記録の有無により、コンピュータ11に実行させる。
ソフトウェア101aaは、S104の処理による判定結果がyesのときは、S105の処理をコンピュータ11に実行させる。
一方、ソフトウェア101aaは、S104の処理による判定結果がnoのときは、S104の処理をコンピュータ11に再度実行させる。
ソフトウェア101aaは、S105の処理を、コンピュータ11に実行させるときは、同処理として、前述の欠陥検出処理の開始をコンピュータ11に実行させる。当該開始の処理は、例えば、図3に表す記録部124の所定の箇所への開始情報の記録である。
そして、ソフトウェア101aaは、S106の処理として、欠陥検出処理が終了したかについての判定をコンピュータ11に実行させる。ソフトウェア101aaは、当該判定を、例えば、図3に表す記録部124の所定の箇所への欠陥検出処理完了情報の記録の有無により、コンピュータ11に実行させる。
ソフトウェア101aaは、S106の処理による判定結果がyesの場合は、S107の処理をコンピュータ11に実行させる。
一方、ソフトウェア101aaは、S106の処理による判定結果がnoの場合は、S106の処理をコンピュータ11に再度実行させる。
ソフトウェア101aaは、S107の処理をコンピュータ11に実行させるときは、同処理として、欠陥検出処理の結果が前述の欠陥要素があるという結果であるかについての判定を、コンピュータ11に実行させる。ソフトウェア101aaは、当該判定を、例えば、記録された欠陥検出処理の結果を参照させることによりコンピュータ11に実行させる。
ソフトウェア101aaは、S107の処理による判定結果がyesの場合は、S108の処理をコンピュータ11に実行させる。
一方、ソフトウェア101aaは、S107の処理による判定結果がnoの場合は、S111の処理をコンピュータ11に実行させる。
ソフトウェア101aaは、S108の処理をコンピュータ11に実行させる場合には、同処理として、欠陥の補修処理の開始をコンピュータ11に実行させる。当該開始の処理は、例えば、図3に表す記録部124の所定の箇所への開始情報の記録である。
そして、ソフトウェア101aaは、S109の処理として、欠陥補修処理が終了したかについての判定をコンピュータ11に実行させる。ソフトウェア101aaは、当該判定を、例えば、図3に表す記録部124の所定の箇所への欠陥補修完了情報の記録の有無により、コンピュータ11に実行させる。
ソフトウェア101aaは、S109の処理による判定結果がyesの場合は、S111の処理をコンピュータ11に実行させる。
一方、ソフトウェア101aaは、S109の処理による判定結果がnoの場合は、S109の処理を再度コンピュータ11に実行させる。
ソフトウェア101aaは、S111の処理をコンピュータ11に実行させる場合には、同処理として、リフレッシュ処理の開始をコンピュータ11に実行させる。当該開始の処理は、例えば、図3に表す記録部124の所定の箇所への開始情報の記録である。
そして、ソフトウェア101aaは、S112の処理として、リフレッシュ処理が終了したかについての判定をコンピュータ11に実行させる。ソフトウェア101aaは、当該判定を、例えば、図3に表す記録部124の所定の箇所への欠陥補修完了情報の記録の有無により、コンピュータ11に実行させる。
ソフトウェア101aaは、S112の処理による判定結果がyesの場合は、図6に表わす処理をコンピュータ11に終了させる。
一方、ソフトウェア101aaは、S112の処理による判定結果がnoの場合は、S112の処理を再度コンピュータ11に実行させる。
図7は、図5に表わすソフトウェア101abが図1及び図3に表すコンピュータ11に実行させる処理の処理フロー例を表す概念図である。
ソフトウェア101abは、まず、S201の処理として、ソフトウェア101aaが前述の起動処理開始の処理(図6に表すS101の処理)をコンピュータ11に実行させたかについての判定を、コンピュータに実行させる。ソフトウェア101abは、当該判定を、例えば、図3に表す記録部124の所定の箇所への開始情報の記録の有無の判定により、コンピュータ11に実行させる。
ソフトウェア101abは、S201による判定結果がyesの場合は、S202の処理を、コンピュータ11に実行させる。
一方、ソフトウェア101abは、S201による判定結果がnoの場合は、S201の処理を、コンピュータ11に再度実行させる。
ソフトウェア101abは、S202の処理をコンピュータ11に実行させるときは、同処理として、コンピュータ11の各部分への電源の供給をコンピュータ11に実行させる。
そして、ソフトウェア101abは、S203の処理として、OSの起動をコンピュータ11に実行させる。
そして、ソフトウェア101abは、S204の処理として、起動完了情報の図3に表す記録部124の所定の箇所への記録をコンピュータ11に実行させる。
そして、ソフトウェア101abは、図7に表す処理を終了する。
図8は、図5に表わすソフトウェア101acが図1及び図3に表すコンピュータ11に実行させる通信可能化処理の処理フロー例を表す概念図である。
ソフトウェア101acは、まず、S301の処理として、ソフトウェア101aaが前述の通信可能化処理開始の処理(図6に表すS103の処理)をコンピュータ11に実行させたかについての判定を、コンピュータに実行させる。ソフトウェア101acは、当該判定を、例えば、図3に表す記録部124の所定の箇所への開始情報の記録の有無の判定により、コンピュータ11に実行させる。
ソフトウェア101acは、S301による判定結果がyesの場合は、S302の処理を、コンピュータ11に実行させる。
ソフトウェア101acは、S301による判定結果がnoの場合は、S301の処理を、コンピュータ11に再度実行させる。
ソフトウェア101acは、S302の処理をコンピュータ11に実行させるときは、同処理として、通信可能化処理をコンピュータ11に実行させる。通信可能化処理の詳細については、後述の具体例で説明する。
そして、ソフトウェア101acは、S303の処理として、通信可能化完了を表す情報の、図3に表す記録部124の所定の箇所への記録をコンピュータ11に実行させる。
そして、ソフトウェア101acは、図8に表す処理を終了する。
図9は、図5に表わすソフトウェア101acが図1及び図3に表すコンピュータ11に実行させる送信処理の処理フロー例を表す概念図である。
ソフトウェア101acは、まず、S321の処理として、送信が開始されたかについての判定を、コンピュータ11に実行させる。ソフトウェア101acは、当該判定を、例えば、図3に表す記録部124の所定の箇所への送信開始情報の記録の有無の判定により、コンピュータ11に実行させる。ここで、各ソフトウェアが作成した情報の送信をソフトウェア101acがコンピュータ11に実行させる際には、当該送信に先立ち、ソフトウェア101aaが当該箇所への送信開始情報の記録をコンピュータ11に実行させることを前提としている。
ソフトウェア101acは、S321による判定結果がyesの場合は、S322の処理を、コンピュータ11に実行させる。
ソフトウェア101acは、S321による判定結果がnoの場合は、S321の処理を、コンピュータ11に再度実行させる。
ソフトウェア101acは、S322の処理をコンピュータ11に実行させるときは、同処理として、送信処理をコンピュータ11に実行させる。
そして、ソフトウェア101acは、S323の処理として、通信可能化完了を表す情報の記録をコンピュータ11に実行させる。
そして、ソフトウェア101acは、S324の処理として、図9に表す処理を終了するかについての判定をコンピュータ11に実行させる。ソフトウェア101acは、当該判定を、例えば外部からの終了情報の入力の有無の判定により、コンピュータ11に実行させる。
ソフトウェア101acは、S324の処理による判定結果がyesの場合は、図9に表す処理の終了をコンピュータ11に実行させる。
一方、ソフトウェア101acは、S324の処理による判定結果がnoの場合は、S321の処理をコンピュータ11に再度実行させる。
図10は、ソフトウェア101acが図1及び図3に表すコンピュータ11に実行させる受信処理の処理フロー例を表す概念図である。
ソフトウェア101acは、まず、S341の処理として、図3に表す通信部125が情報を受けたかについての判定を、コンピュータ11に実行させる。
ソフトウェア101acは、S341の処理による判定結果がyesの場合は、S342の処理をコンピュータ11に実行させる。
一方、ソフトウェア101acは、S341の処理による判定結果がnoの場合は、S341の処理をコンピュータ11に再度実行させる。
ソフトウェア101acは、S342の処理をコンピュータ11に実行させる場合は、同処理として、受信処理をコンピュータ11に実行させる。
そして、ソフトウェア101acは、S343の処理として、受信した情報の図3に表す記録部124の所定の箇所への記録を、コンピュータ11に実行させる。
そして、ソフトウェア101acは、S344の処理として、受信処理完了情報の記録部124の所定の箇所への記録を、コンピュータ11に実行させる。
そして、ソフトウェア101acは、S345の処理として、図10に表す処理を終了するかについての判定をコンピュータ11に実行させる。ソフトウェア101acは、当該判定を、例えば外部からの終了情報の入力の有無の判定により、コンピュータ11に実行させる。
ソフトウェア101acは、S345の処理による判定結果がyesの場合は、図10に表す処理の終了をコンピュータ11に実行させる。
一方、ソフトウェア101acは、S345の処理による判定結果がnoの場合は、S341の処理をコンピュータ11に再度実行させる。
図11は、図5に表わすソフトウェア101adが図1及び図3に表すコンピュータ11に実行させる欠陥検出処理の処理フロー例を表す概念図である。
ソフトウェア101adは、まず、S401の処理として、ソフトウェア101aaが前述の欠陥検出処理開始の処理(図6に表すS105の処理)をコンピュータ11に実行させたかについての判定を、コンピュータに実行させる。ソフトウェア101adは、当該判定を、例えば、図3に表す記録部124の所定の箇所への開始情報の記録の有無の判定により、コンピュータ11に実行させる。
ソフトウェア101adは、S401による判定結果がyesの場合は、S402の処理を、コンピュータ11に実行させる。
ソフトウェア101adは、S401による判定結果がnoの場合は、S401の処理を、コンピュータ11に再度実行させる。
ソフトウェア101adは、S402の処理をコンピュータ11に実行させるときは、同処理として、前述の欠陥検出処理をコンピュータ11に実行させる。
そして、ソフトウェア101adは、S403の処理として、欠陥検出処理完了を表す情報の図3に表す記録部124の所定の箇所への記録をコンピュータ11に実行させる。
そして、ソフトウェア101adは、図11に表す処理を終了する。
図12は、図5に表わすソフトウェア101aeが図1及び図3に表すコンピュータ11に実行させる欠陥補修処理の処理フロー例を表す概念図である。
ソフトウェア101aeは、まず、S501の処理として、ソフトウェア101aaが前述の欠陥補修開始の処理(図6に表すS108の処理)をコンピュータ11に実行させたかについての判定を、コンピュータに実行させる。ソフトウェア101aeは、当該判定を、例えば、図3に表す記録部124の所定の箇所への開始情報の記録の有無の判定により、コンピュータ11に実行させる。
ソフトウェア101aeは、S501による判定結果がyesの場合は、S502の処理を、コンピュータ11に実行させる。
ソフトウェア101aeは、S501による判定結果がnoの場合は、S501の処理を、コンピュータ11に再度実行させる。
ソフトウェア101aeは、S502の処理をコンピュータ11に実行させるときは、同処理として、欠陥補修をコンピュータ11に実行させる。S502の処理の詳細例は、図13を参照して後述する。
そして、ソフトウェア101aeは、S503の処理として、欠陥補修の終了を表す情報の図3に表す記録部124の所定の箇所への記録をコンピュータ11に実行させる。
そして、ソフトウェア101aeは、図12に表す処理を終了する。
図13は、図12に表すS502の処理の詳細処理フロー例を表す概念図である。
ソフトウェア101aeは、図12に表すS501の処理による判定結果がyesの場合は、S5021の処理として、欠陥箇所の特定を、コンピュータ11に実行させる。ソフトウェア101aeは、当該特定を、例えば、図11に表すS403の処理によりソフトウェア101adがコンピュータ11に記録させた欠陥情報を参照させることにより、コンピュータ11に実行させる。
そして、ソフトウェア101aeは、S5022の処理として、欠陥要素についての補修用部分の送付要求の、図1に表す装置管理サーバ16への送付の手配を、コンピュータ11に実行させる。ここで、当該欠陥要素は、S5021の処理によりコンピュータ11に特定させた欠陥箇所に係る欠陥要素である。また、当該補修用部分は、欠陥の無いことが想定される、前記欠陥箇所に相当する情報である。なお、装置管理サーバ16は、前記送付要求を受信した場合には、原則として、当該送付要求の送信元に対し、前記補修用部分を送付するものとする。
前記送付手配は例えば、図3に表す記録部124の所定の箇所への送信開始情報および送信情報の記録である。ここで、送信開始情報は、図9のS321の処理を参照して説明した送信開始情報である。また、当該送信情報は、S322の処理により送信される情報である。当該送信情報には、送信先や送信経路に関する情報が含まれる。当該送信開始情報および当該送信情報が記録部124の所定の箇所へ記録されることにより、当該送信情報は、図9のS321、S322の処理により装置管理サーバ16に送信される。
次に、ソフトウェア101aeは、S5023の処理として、S5023の処理により送付手配を行った前記補修用部分の装置管理サーバ16からの受信処理等が行われたかについての判定を、コンピュータ11に実行させる。当該受信処理等は、前記補修用部分についての図10に表すS342乃至S344の処理である。ソフトウェア101aeは、当該判定を、例えば、S343の処理により記録部124の所定の箇所に記録させた受信情報の有無や、S344の処理により記録部124の所定の箇所に記録させた受信処理完了情報の有無により、コンピュータ11に実行させる。
ソフトウェア101aeは、S5023の処理による判定結果がyesの場合は、S5024の処理をコンピュータ11に実行させる。
一方、ソフトウェア101aeは、S5023の処理による判定結果がnoの場合は、S5023の処理をコンピュータ11に再度実行させる。
ソフトウェア101aeは、S5024の処理をコンピュータ11に実行させる場合は、同処理として、S5021の処理により特定した欠陥箇所に係る欠陥要素を含む部分の、S5023のyesの判定を行った補修用部分による置き換えを行う。
そして、ソフトウェア101aeは、図12に表すS503の処理をコンピュータ11に実行させる。
図14は、図5に表すソフトウェア101afが図1及び図3に表すコンピュータ11に実行させるリフレッシュ処理の処理フロー例を表す概念図である。
ソフトウェア101afは、まず、S601の処理として、ソフトウェア101aaが、リフレッシュ処理開始の処理(図6のS111の処理)をコンピュータ11に実行させたかの判定を、コンピュータ11に実行させる。
ソフトウェア101afは、S601の処理による判定結果がyesの場合は、S602の処理をコンピュータ11に実行させる。
一方、ソフトウェア101afは、S601の処理による判定結果がnoの場合は、S601の処理をコンピュータ11に再度実行させる。
ソフトウェア101afは、S602の処理をコンピュータ11に実行させるときは、同処理として、リフレッシュ処理をコンピュータ11に実行させる。リフレッシュ処理の詳細例は、図15を参照して後述する。
そして、ソフトウェア101afは、S603の処理として、リフレッシュ処理が終了した旨の図3に表す記録部124の所定の箇所への記録を、コンピュータ11に実行させる。
そして、ソフトウェア101afは、図14に表す処理の終了を、コンピュータ11に実行させる。
図15は、図14に表すS602の処理の詳細処理フロー例を表す概念図である。
ソフトウェア101afは、図14に表すS601のyesの後に、S6021の処理として、リフレッシュ関連情報を図1に表す装置管理サーバ16に要求するかについての判定を、コンピュータ11に実行させる。ソフトウェア101afは、当該判定を、例えば、前回のリフレッシュに関する情報をコンピュータ11が保持しているか否かをコンピュータ11に判定させることにより実行させる。
ソフトウェア101afは、S6021の処理による判定結果がyesの場合は、S6022の処理を、コンピュータ11に実行させる。
一方、ソフトウェア101afは、S6021の処理による判定結果がnoの場合は、S6024の処理を、コンピュータ11に実行させる。
ソフトウェア101afは、S6022の処理をコンピュータ11に実行させる場合は、同処理として、前述のリフレッシュ関連情報の要求情報の図1に表す装置管理サーバ16への送付を、コンピュータ11に実行させる。当該要求情報の送付は、図3に表す処理部123が行う処理に基づき通信部125が行う処理である。
そして、ソフトウェア101afは、S6023の処理として、S6022の処理によりコンピュータ11に要求を実行させたリフレッシュ関連情報を受信したかの判定を、コンピュータ11に実行させる。
ソフトウェア101afは、S6023の処理による判定結果がyesの場合は、S6024の処理をコンピュータ11に実行させる。
一方、ソフトウェア101afは、S6023の処理による判定結果がnoの場合は、S6023の処理をコンピュータ11に再度実行させる。
ソフトウェア101afは、S6024の処理をコンピュータ11に実行させる場合は、同処理として、リフレッシュを行うかについての判定を、コンピュータ11に実行させる。ソフトウェア101afは、当該判定を、リフレッシュ関連情報及びコンピュータ11が保持する情報により、コンピュータ11に実行させる。ただし、ソフトウェア101afは、S6021の処理による判定結果がnoの場合は、S6024の処理を、コンピュータ11が保持する情報により、コンピュータ11に実行させる。
ソフトウェア101afは、S6024の処理による判定結果がyesの場合は、S6025の処理をコンピュータ11に実行させる。
一方、ソフトウェア101afは、S6024の処理による判定結果がnoの場合は、S6026の処理をコンピュータ11に実行させる。
ソフトウェア101afは、S6025の処理をコンピュータ11に実行させるときは、図1及び図3に表すフラッシュメモリ装置21のリフレッシュをコンピュータ11に実行させる。当該リフレッシュは、フラッシュメモリ装置21が図4に表すフラッシュメモリ装置21aの場合は、記録領域111のリフレッシュである。この場合において強制限領域112にリフレッシュが不要なことが判定できる場合は、ソフトウェア101afは、通常領域113のリフレッシュのみをコンピュータ11に実行させてもよい。
そして、ソフトウェア101afは、S6026の処理をコンピュータ11に実行させる。
ソフトウェア101afは、S6026の処理をコンピュータ11に実行させるときは、同処理として、リフレッシュ実行についての情報の図3に表す記録部124の所定の箇所への記録を、コンピュータ11に実行させる。当該リフレッシュ実行についての情報は、S6024の処理による判定結果がnoの場合は、リフレッシュを実行しなかったことを表す情報である。
そして、ソフトウェア101afは、図14に表すS603の処理を、コンピュータ11に実行させる。
図16は、前述のリフレッシュ関連情報が、コンピュータ11の保管期間と保管温度である場合、の図15に表すS6024の処理の詳細処理フロー例を表す概念図である。図16に表す処理は、コンピュータ11は、所定の保管温度で所定の保管期間保管され、当該保管温度及び保管期間が、図1に表すデータベース18に格納されていることを前提としている。
図15に表すS6023の処理による判定結果がyesの場合、ソフトウェア101afは、S6024aの処理として、受信した前記リフレッシュ関連情報からのコンピュータ11の保管期間に関する情報の抽出を、コンピュータ11に実行させる。
そして、ソフトウェア101afは、S6024bの処理として、抽出した前記保管期間が第一閾値以上であるかについての判定を、コンピュータ11に実行させる。ここで、第一閾値は、S6024bの処理のために予め定められた保管期間についての閾値である。
ソフトウェア101afは、S6024bの処理による判定結果がyesの場合は、図15に表すS6025の処理をコンピュータ11に実行させる。
一方、ソフトウェア101afは、S6024bの処理による判定結果がnoの場合は、S6024cの処理をコンピュータ11に実行させる。
ソフトウェア101afは、S6024cの処理をコンピュータ11に実行させる時は、同処理として、前記リフレッシュ関連情報からのコンピュータ11の保管温度に関する情報の抽出を、コンピュータ11に実行させる。
そして、ソフトウェア101afは、S6024dの処理として、抽出した前記保管温度が第二閾値以上であるかについての判定を、コンピュータ11に実行させる。ここで、第二閾値は、S6024dの処理のために予め定められた保管温度についての閾値である。
ソフトウェア101afは、S6024dの処理による判定結果がyesの場合は、図15に表すS6025の処理をコンピュータ11に実行させる。
一方、ソフトウェア101afは、S6024dの処理による判定結果がnoの場合は、図15に表すS6026の処理をコンピュータ11に実行させる。
[具体例]
次に、図1に表すコンピュータ11が、装置管理サーバ16との間で行う起動時の処理の具体例について説明する。
図17は、コンピュータ11及び装置管理サーバ16がコンピュータ11の起動時に行う処理の第一の具体例を表す図である。当該具体例は、フラッシュメモリ装置21のリフレッシュ処理の要否判定を、コンピュータ11ではなく装置管理サーバ16が行う場合についての具体例である。当該具体例は、さらに、フラッシュメモリ装置21についての欠陥検査処理により欠陥が検出されなかった場合についての具体例である。
なお、図17(及び後述の図18、図19)では、下に記述された処理ほど、時間的に後に行われる処理である。また、以下に説明するコンピュータ11と装置管理サーバ16との間の通信(後述の図18及び図19を参照しての説明を含む)は、すべて、Webサーバ15とを介しての通信である。
コンピュータ11は、まず、ソフトウェア101aa、101abによる前述の起動処理を実行する。
そして、コンピュータ11は、前記起動処理が完了すると、ソフトウェア101aa、101acにより、接続要求情報を、装置管理サーバ16の処理通信部17に送付する。当該接続要求情報は、図1に表すインターネット14及び装置管理サーバ16への接続を要求する情報である。
装置管理サーバ16の処理通信部17は、当該接続要求情報に含まれる、コンピュータ11のコンピュータ識別情報及びMACアドレスを取得する。そして、処理通信部17は接続可と判定した場合には、接続許可情報をコンピュータ11に送付する。当該接続許可情報をコンピュータ11により受信される。
処理通信部17は、さらに、データベース18に、当該コンピュータ識別情報に係る前述のリフレッシュ関連情報(参照情報)の送付をデータベース18に要求する。
データベース18は、リフレッシュ関連情報(参照情報)を処理通信部17に送る。
処理通信部17は、データベース18から送付されたリフレッシュ関連情報(参照情報)により、フラッシュメモリ装置21のリフレッシュをコンピュータ11に実行させるかについて判定する。ここでは、当該判定結果が、リフレッシュをコンピュータ11に実行させることになったとする。
一方、コンピュータ11は、ソフトウェア101aa、101adによりSUMチェックを行う。ここでは、SUMチェックの結果、良好という判定になったとする。
すると、コンピュータ11は、ソフトウェア101aa、101acにより、SUMチェックが良好という判定になった旨を表す情報を、処理通信部17に送付する。
処理通信部17は、送付された当該SUMチェックが良好という判定になった旨を表す情報を受け取ることにより、リフレッシュを指示するリフレッシュ指示情報をコンピュータ11に送付する。当該リフレッシュ指示情報は、ソフトウェア101aa、101acにより、コンピュータ11によって受信される。
本具体例では、SUMチェックにより良好という判定結果が得られたので、ソフトウェア101aeによる処理は、コンピュータ11により行われない。
次に、コンピュータ11は、リフレッシュ指示情報の受領により、ソフトウェア101aによるリフレッシュ処理を実行する。
そして、コンピュータは11は、ソフトウェア101aa、101afにより作成したリフレッシュ完了情報を、ソフトウェア101aa、101acにより処理通信部17に送付する。
そして、コンピュータ11は、ソフトウェア101aaにより、以上説明した起動時に行う一連の処理を終了し、通常処理に移行する。
一方、処理通信部17は、前記リフレッシュ完了情報の受領により、コンピュータ11が通常動作に移行したことを認識し、以降、コンピュータ11に対し、通常動作の場合の処理を行う。
図18及び図19は、コンピュータ11及び装置管理サーバ16がコンピュータ11の起動時に行う処理の第二の具体例を表す図である。当該具体例は、フラッシュメモリ装置21のリフレッシュ処理の要否判定を、装置管理サーバ16ではなくコンピュータ11が行う場合についての具体例である。当該具体例は、さらに、フラッシュメモリ装置21についての欠陥検査処理により欠陥が検出された場合についての具体例である。
コンピュータ11は、まず、ソフトウェア101aa、101abによる前述の起動処理を実行する。
コンピュータ11は、前記起動処理が完了すると、ソフトウェア101aa、101acにより、前述の接続要求情報を、装置管理サーバ16の処理通信部17に送付する。
装置管理サーバ16の処理通信部17は、当該接続要求情報に含まれる、コンピュータ11のコンピュータ識別情報及びMACアドレスを取得する。そして、処理通信部17は接続可と判定した場合には、接続許可情報をコンピュータ11に送付する。
処理通信部17は、さらに、データベース18に、当該コンピュータ識別情報に係る前述のリフレッシュ関連情報(参照情報)の送付をデータベース18に要求する。
データベース18は、リフレッシュ関連情報(参照情報)を処理通信部17に送る。
一方、コンピュータ11は、ソフトウェア101aa、101adによりSUMチェックを行う。ここでは、SUMチェックの結果として不良の判定になったとする。
すると、コンピュータ11は、ソフトウェア101aa、101acにより、SUMチェックが不良になった旨を表す情報を、処理通信部17に送付する。当該情報には不良と判定されたソフトウェアの部分に関する情報が含まれる。
処理通信部17は、送付された当該SUMチェックが不良になった旨を表す情報を受け取ることにより、当該情報から、補修すべきソフトウェアの部分を特定する。ここでは、当該部分がソフトウェアBであるとする。
処理通信部17は、データベース18に対し、ソフトウェアBの送付を要求する。ここでは、データベース18が、ソフトウェアBを含む前述の補修用情報を保持していることを前提としている。
データベース18は、処理通信部17にソフトウェアBを送付する。
そして、処理通信部17は、データベース18から受けたソフトウェアBをコンピュータ11に送付する。
コンピュータ11は、ソフトウェア101aa、101acにより、ソフトウェアBを受信する。
次に、コンピュータ11は、ソフトウェアaeにより、前記SUMチェックにより欠陥を検出した箇所を含むソフトウェアBに相当する部分を、処理通信部17から送られたソフトウェアBで置き換える。
そして、コンピュータ11は、ソフトウェア101adによりSUMチェックを再度行う。ここでは、SUMチェックにより良好という判定結果が得られたとする。
すると、コンピュータ11は、ソフトウェア101aa、101acにより、SUMチェックが良好という判定になった旨を表す情報を、処理通信部17に送付する。
処理通信部17は、送付された当該SUMチェックが良好という判定になった旨を表す情報を受け取ることにより、リフレッシュ参照情報をコンピュータ11に送付する。当該リフレッシュ参照情報は、ソフトウェア101aa、101acにより、コンピュータ11により受信される。
そして、コンピュータ11は、ソフトウェア101aa、101afにより、当該リフレッシュ参照情報により、リフレッシュの要否を判定する。ここでは、リフレッシュが必要という判断になったとする。
すると、コンピュータ11は、ソフトウェア101aa、101afにより、フラッシュメモリ装置21のリフレッシュを実行する。
そして、コンピュータは11は、ソフトウェア101aa、101afにより作成したリフレッシュ完了情報を、ソフトウェア101aa、101acにより処理通信部17に送付する。
そして、コンピュータ11は、ソフトウェア101aaにより、以上説明した起動時に行う一連の処理を終了し、通常処理に移行する。
一方、処理通信部17は、前記リフレッシュ完了情報の受領により、コンピュータ11が通常動作に移行したことを認識し、以降、コンピュータ11に対し、通常動作の場合の処理を行う。
以上説明したように、図1及び図3に表すフラッシュメモリ装置21は、ソフトウェア101aa乃至101afを、強制限領域112に保持する。強制限領域112は、情報の書換回数がより少ない回数に制限された領域である。そのため、強制限領域112に記録されたソフトウェア101aa乃至101afは、電荷抜けによる記録情報の劣化が生じにくい。
ここで、ソフトウェア101aaは、ソフトウェア101ab乃至101afの実行手順を表すソフトウェアである。また、ソフトウェア101ab乃至101afは、この順に、前述の、起動処理、通信処理、欠陥検出処理、欠陥補修処理及びリフレッシュ処理を、コンピュータ11に実行させるプログラムである。
コンピュータ11が行う起動処理と通信処理以外の処理は、起動処理と通信処理を前提として行われる処理である。従い、起動処理と通信処理は、コンピュータ11が行う処理のうちで最も重要な処理である。フラッシュメモリ装置21は、この最も重要な処理をコンピュータ11に実行させるソフトウェアであるソフトウェア101ab及び101acを強制限領域112に保持する。それにより、フラッシュメモリ装置21は、この最も重要な処理をコンピュータ11により確実に実行させることができる。
また、欠陥検出処理、欠陥補修処理及びリフレッシュ処理は、フラッシュメモリ装置21が保持する情報の記録状態を正常に維持し或いは正常な状態に回復させる処理である。コンピュータ11が実行するすべての処理は、フラッシュメモリ装置21により正常に記録され保持されたソフトウェアにより正しく実行させられる処理である。従い、欠陥検出処理、欠陥補修処理及びリフレッシュ処理は、起動処理と通信処理の次に重要な処理と考えられる。フラッシュメモリ装置21は、この重要な処理をコンピュータ11に実行させるソフトウェアであるソフトウェア101ad及び101afを強制限領域112に保持することにより、この重要な処理をコンピュータ11により確実に実行させることができる。
なお、ソフトウェア101aaは、ソフトウェア101ab乃至101afが各処理をコンピュータ11に実行させる順番を規定するソフトウェアである。ソフトウェア101aaは、ソフトウェア101ab乃至101afが正しい順番の処理をコンピュータ11に実行させるために不可欠である。フラッシュメモリ装置21は、ソフトウェア101aaを強制限領域112に保持することにより、この重要な処理をコンピュータ11に、より確実に実行させることができる。
さらに、ソフトウェア101fは、装置管理サーバ16から受信したリフレッシュ関連情報に基づく前記リフレッシュ処理を、コンピュータ11に実行させ得る。当該リフレッシュ関連情報は、フラッシュメモリ装置21の無使用期間等の、記録領域の電荷抜けに関連する情報である。そのため、ソフトウェア101fは、前記リフレッシュ関連情報を参照させることによりより適切なタイミングでのコンピュータ11によるフラッシュメモリ装置21の確実なリフレッシュを可能にする。
[効果]
本実施形態のフラッシュメモリ装置は、起動処理、通信処理、欠陥検出処理、欠陥補修処理及びリフレッシュ処理、をコンピュータに実行させるソフトウェアを、強制限領域に保持する。当該強制限領域は、情報の書換回数が通常領域より強く制限された領域である。そのため、当該強制限領域に記録された前記ソフトウェアは、前記フラッシュメモリ装置に記録された情報の電荷抜けによる劣化が生じにくい。
前記コンピュータが行う前記起動処理と前記通信処理以外の処理は、前記起動処理と前記通信処理を前提として行われる処理である。従い、前記起動処理と前記通信処理は、前記コンピュータが行う処理のうちで最も重要な処理である。前記フラッシュメモリ装置は、この最も重要な処理を前記コンピュータに実行させるソフトウェアを前記強制限領域に保持することにより、この最も重要な処理を前記コンピュータにより確実に実行させることができる。
また、前記欠陥検出処理、前記欠陥補修処理及び前記リフレッシュ処理は、前記フラッシュメモリ装置が保持する情報の記録状態を正常に維持し或いは正常な状態に回復させる処理である。前記コンピュータが実行する処理は、前記フラッシュメモリ装置により正常に記録され保持されたソフトウェアにより正しく実行させられる。従い、前記欠陥検出処理、前記欠陥補修処理及び前記リフレッシュ処理は、前記起動処理と前記通信処理の次に重要な処理と考えられる。前記フラッシュメモリ装置は、この重要な処理を前記コンピュータに実行させるソフトウェアを前記強制限領域に保持することにより、この重要な処理を前記コンピュータにより確実に実行させることができる。
なお、前記フラッシュメモリ装置は、各処理を前記コンピュータに実行させる順番を規定するソフトウェアを前記強制限領域に保持する。当該ソフトウェアは正しい順番の処理を前記コンピュータに実行させるために重要である。前記フラッシュメモリ装置は、この重要な処理を前記コンピュータに実行させるソフトウェアを前記強制限領域に保持することにより、この重要な処理を前記コンピュータにより確実に実行させることができる。
さらに、前記リフレッシュ処理を前記コンピュータに実行させるソフトウェアであるリフレッシュ処理ソフトウェアは、装置管理サーバから受信したリフレッシュ関連情報に基づく前記リフレッシュ処理を、前記コンピュータに実行させ得る。当該リフレッシュ関連情報は、前記フラッシュメモリ装置の無使用期間等の、記録領域の電荷抜けに関連する情報である。そのため、当該リフレッシュ処理ソフトウェアは、前記リフレッシュ関連情報を参照させることによりより適切なタイミングでの前記コンピュータによる前記フラッシュメモリ装置の確実なリフレッシュを可能にする。
以上説明した効果は、前記フラッシュメモリ装置が、前述の、インターネットサービスを利用する際に用いられるブロードバンドルータやモデムなどの通信装置に用いられた場合に、特に顕著である。
当該通信装置は、インターネット事業者からエンドユーザへレンタルされるケースが多い。その場合、当該事業者は、前記通信装置を、倉庫などに保管し、エンドユーザとの契約完了後にユーザに貸し出す。そのため、当該通信装置は通電されないまま長期間保管される状態が続く場合がある。通電されないままの長期間保管はフラッシュメモリの電荷抜けにつながる。
また、レンタル期間が終了しエンドユーザから返却された前記通信装置を前記事業者が初期化して、新しいエンドユーザに再利用させる場合も考えられる。この場合、前記通信装置は先に利用していたエンドユーザにおいて、ある程度の期間利用され、既にフラッシュメモリへのデータの読み込みや書き込みが、ある程度の回数実行されている。そのため、前記通信装置のフラッシュメモリのデータ保持能力は劣化した状態になっている。そのようにフラッシュメモリのデータ保持能力が劣化したままの状態で、新しいエンドユーザに出荷されるまでの間、倉庫に保管されるという状況も考えられる。
このように、レンタルで利用するような装置では、既にエンドユーザが一定期間利用してフラッシュメモリへの書き込み回数が重ねられたあと、次のユーザが利用するまでの間、無通電状態で倉庫に長期間保管されることがある。そのときは、フラッシュメモリの電荷抜けに有効なリフレッシュ処理が実施できず、電荷抜けが進んでしまう場合がある。
さらに、前記通信装置を倉庫で保管するとき、食品等を保管するような厳密な温度管理を行うことは考えにくく、場合によっては高温状態で保管されるというケースも考えられる。高温での保管はフラッシュメモリの電荷抜けを抑える面において不利である。
以上説明したような状況が想定される前記通信装置に一般的なフラッシュメモリ装置が用いられた場合には、保持する情報は失われる確率が高い。
前述の特に顕著な理由は、本実施形態のフラッシュメモリ装置は当該問題の解決に貢献し得るからである。 図20は、本発明のフラッシュメモリ装置の最小限の構成であるフラッシュメモリ装置21xを表す概念図である。
フラッシュメモリ装置21xは、記録領域111xを備える。
記録領域111xは、強制限領域112xを備える。
強制限領域112xは、書換回数をより少ない回数に制限した領域である。
強制限領域112xは、第一のソフトウェア101xを保持する。第一のソフトウェア101xは、図示しない対象コンピュータに所定の第二の処理を実行させるに先立って実行させる第一の処理を実行させる。
フラッシュメモリ装置の記録領域は、一般に、書換回数が多いほど電荷の抜けによる情報消失が生じやすい。強制限領域112xは、書換回数がより少ない回数に制限されているので、電荷の抜けによる情報消失が生じにくい。フラッシュメモリ装置21xは、情報消失の生じにくい強制限領域112xを備える。
そして、前記第一の処理は、前記第二の処理を行うための前提となる重要な処理である。そして、強制限領域112xは、重要な処理である前記第一の処理を前記対象コンピュータに実行させる第一のソフトウェア101xを強制限領域112xに保持し得る。強制限領域112xに保持された第一のソフトウェア101xは、長期間リフレッシュが行われない場合においても、情報消失による不良が生じる確率が低い。
従い、フラッシュメモリ装置21aは、長期間リフレッシュが行われない場合においても、記録領域111xで生じる情報消失による動作不良をより抑えることを可能にする。
そのため、フラッシュメモリ装置21aは、上記構成により、[発明の効果]の項に記載した効果を奏する。
以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で更なる変形、置換、調整を加えることができる。例えば、各図面に示した要素の構成は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
また、上記の実施形態の一部または全部は、以下の付記のようにも記述され得るが、以下には限られない。
(付記1)
書換回数をより少ない回数に制限した強制限領域を備える記録領域を備え、
前記強制限領域に、対象コンピュータに所定の第二の処理を実行させるに先立って実行させる第一の処理を実行させる第一のソフトウェアを保持する、
フラッシュメモリ装置。
(付記2)
前記第一の処理が、オペレーティングシステムの起動と通信の可能化に関する処理を含む、付記1に記載されたフラッシュメモリ装置。
(付記3)
前記第二の処理が、前記起動の後のオペレーティングシステム上での処理である付記2に記載されたフラッシュメモリ装置。
(付記4)
前記第一の処理が、第一の通信により取得した情報の前記記録領域への記録を含む、付記1乃至付記3のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記5)
前記第一の処理が、前記第一の通信により取得した情報の前記他領域への記録を含む、付記1乃至付記4のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記6)
前記第一の通信により取得した情報が、インターネット事業者のデータベースからインターネットによる通信により取得した情報である、付記4又は付記5に記載されたフラッシュメモリ装置。
(付記7)
前記第一の処理が、前記第二の処理を前記対象コンピュータに実行させる第二のソフトウェアにおける欠陥の検出を行う処理を含む、付記1乃至付記6のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記8)
前記第一の処理が、前記第二のソフトウェアのうち少なくとも前記欠陥を含む部分に相当する前記欠陥を含まない部分の前記通信による取得と前記欠陥を含まない部分の記録を行う処理を含む、付記7に記載されたフラッシュメモリ装置。
(付記9)
前記第一の処理が、前記記録領域のリフレッシュを含む、付記2乃至付記8のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記10)
前記リフレッシュが、前記他領域に記録された情報のリフレッシュである、付記9に記載されたフラッシュメモリ装置。
(付記11)
前記リフレッシュが、第二の通信により取得した情報に基づき行われる処理である、付記9又は付記10に記載されたフラッシュメモリ装置。
(付記12)
前記第二の通信により取得した情報が、インターネット事業者のデータベースからインターネットによる通信により取得した情報である、付記11に記載されたフラッシュメモリ装置。
(付記13)
前記第二の通信により取得した情報が、前記記録領域に対する処理が行われなかった期間に関する情報を含む、付記11又は付記12に記載されたフラッシュメモリ装置。
(付記14)
前記第二の通信により取得した情報が、前記記録領域が使用されなかった期間に関する情報を含む、付記11乃至付記13のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記15)
前記第二の通信により取得した情報が、前記記録領域が保管された期間に関する情報を含む、付記11乃至付記14のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記16)
前記第二の通信により取得した情報が、前記記録領域が使用された状況に関する情報を含む、付記11乃至付記15のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記17)
前記第二の通信により取得した情報が、前記記録領域の保管期間における保管場所、又は、前記記録領域が使用されなかった期間における設置場所に関する情報を含む、付記11乃至付記16のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記18)
前記第二の通信により取得した情報が、前記記録領域の保管期間又は前記記録領域が使用されなかった期間における前記記録領域の温度に関する情報を含む、付記11乃至付記17のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記19)
前記第二の通信により取得した情報が、前記記録領域の前記リフレッシュの指示又は前記リフレッシュの推奨を含む、付記11乃至付記18のうちのいずれか一に記載されたフラッシュメモリ装置。
(付記20)
付記1乃至19のうちのいずれか一に記載された対象コンピュータであるコンピュータ。
(付記21)
付記20に記載されたコンピュータと、前記コンピュータが行う処理により動作する動作部と、を備える装置。
(付記22)
ブロードバンドルータ又は通信用のモデムである付記21に記載された装置。
(付記23)
インターネットサービスを利用する際のユーザーへのレンタルに用いられる付記21又は付記22に記載された装置