JP5166211B2 - Device using non-volatile memory as main memory - Google Patents
Device using non-volatile memory as main memory Download PDFInfo
- Publication number
- JP5166211B2 JP5166211B2 JP2008279770A JP2008279770A JP5166211B2 JP 5166211 B2 JP5166211 B2 JP 5166211B2 JP 2008279770 A JP2008279770 A JP 2008279770A JP 2008279770 A JP2008279770 A JP 2008279770A JP 5166211 B2 JP5166211 B2 JP 5166211B2
- Authority
- JP
- Japan
- Prior art keywords
- power supply
- memory
- nonvolatile memory
- information
- storage area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Power Sources (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本発明は、携帯電話、カーナビ、TV等の組込み機器、及びそれらを用いたシステムに関する。 The present invention relates to an embedded device such as a mobile phone, a car navigation system, and a TV, and a system using them.
近年、不揮発性メモリの高性能化、大容量化、及びビット単価の低下に伴い、従来、揮発性メモリで構成された主記憶部、ストレージ(HDD等)のキャッシュメモリの不揮発化が進んでいる。不揮発性メモリは、電源が供給されていなくとも記憶内容を保持できるため、低消費電力な機器開発に非常に有効であり、特に、携帯端末への搭載を目指した開発が進んでいる。 2. Description of the Related Art In recent years, with increasing performance and capacity of non-volatile memories and lowering of the unit price of bits, non-volatility of cache memories of main storage units and storage (HDD, etc.) composed of volatile memories has been progressing. . The nonvolatile memory can hold the stored contents even when power is not supplied, and thus is very effective for developing a device with low power consumption. In particular, development aimed at mounting on a portable terminal is progressing.
将来的には、キャッシュメモリ、メインメモリ、及びストレージのすべてに適用可能な、低コスト且つ高性能なユニバーサルメモリと呼ばれる単一の不揮発性メモリが実現され様々な機器に搭載されると言われている。 In the future, it is said that a single nonvolatile memory called universal memory with low cost and high performance that can be applied to all of cache memory, main memory, and storage will be realized and installed in various devices. Yes.
このような中、不揮発性メモリのみで構成されたシステムの検討も進んでおり、Flashメモリを用いてメインメモリを構成したシステム(例えば、特許文献1参照)、並びに、ROM領域、ランダムアクセス領域、及びストレージ領域の三つの領域に区切られた強磁性体メモリを利用するシステム(例えば、特許文献2参照)がある。 Under such circumstances, a study of a system composed only of a non-volatile memory is also proceeding, a system in which a main memory is configured using a flash memory (see, for example, Patent Document 1), a ROM area, a random access area, In addition, there is a system (for example, see Patent Document 2) that uses a ferromagnetic memory divided into three areas of a storage area.
また、システムの主記憶領域が揮発部と不揮発部とで構成され、電源遮断時において処理を継続するために必要な情報を不揮発部に格納し、復帰時において不揮発部に格納されている情報を揮発部に転送することによって、迅速な復帰を実現するシステムも提案されている(例えば、特許文献3)。
しかし、前述した従来技術では、メモリが不揮発性メモリのみから構成されても、突発的な電源遮断が発生した場合、メモリ素子へ書き込み中のデータ、I/Oアクセス処理、又はプロセッサ内のレジスタ等の内容消失などで不正な状態になり、電源復帰時に正常にシステムが動作できない。 However, in the above-described prior art, even if the memory is composed only of a nonvolatile memory, if a sudden power interruption occurs, data being written to the memory element, I / O access processing, a register in the processor, or the like The system will not operate properly when the power is restored.
さらに、前述した従来技術では、揮発メモリ及び不揮発メモリから構成される混在メモリを主記憶部とした場合、システムを休止するためのデータの退避に時間がかかる。 Further, in the above-described conventional technology, when a mixed memory composed of a volatile memory and a nonvolatile memory is used as a main storage unit, it takes time to save data for suspending the system.
本発明の代表的な一例を示せば以下の通りである。すなわち、プロセッサと、一以上の不揮発性メモリと、周辺回路とを備える不揮発性メモリを主記憶に用いた装置であって、前記装置は、前記装置の電源が異常に遮断されたか否かを検出する電源異常遮断判定部と、前記装置の電源が異常遮断されたことを示す情報を格納する電源異常終了通知レジスタとを備え、前記周辺回路は、電源回路を含み、前記不揮発性メモリは、オペレーティングシステム、ソフトウェア及びデバイスドライバを格納し、前記オペレーティングシステムは、前記電源異常遮断判定部を含み、前記電源異常遮断判定部は、前記装置の電源投入時に、前記電源異常終了通知レジスタを参照し、前記電源異常終了通知レジスタが前記装置の電源が異常に遮断されたことを示す情報を格納しており、前記プロセッサが不揮発性のプロセッサでない場合、前記装置の電源が遮断される前に実行されていたプロセスを再起動し、前記デバイスドライバを確認し、前記電源異常終了通知レジスタが前記装置の電源が異常に遮断されたことを示す情報を格納しており、前記プロセッサが不揮発性のプロセッサである場合、前記装置の電源が遮断される前に実行されていたプロセスを、前記プロセスが中断された処理から再開し、前記デバイスドライバを確認することを特徴とする。 A typical example of the present invention is as follows. That is, a device using a nonvolatile memory including a processor, one or more nonvolatile memories, and a peripheral circuit as a main memory, and the device detects whether or not the power supply of the device is abnormally cut off. And a power supply abnormal end notification register for storing information indicating that the power supply of the device has been cut off abnormally, the peripheral circuit includes a power supply circuit, and the non-volatile memory is an operating system. A system, software, and a device driver are stored, and the operating system includes the power supply abnormality interruption determination unit, and the power supply abnormality interruption determination unit refers to the power supply abnormality end notification register when the apparatus is turned on. The power failure end notification register stores information indicating that the power supply of the device is abnormally shut down, and the processor is If the processor is not a compatible processor, restart the process that was being executed before the device was turned off, check the device driver, and the power failure termination notification register was turned off abnormally. If the processor is a non-volatile processor, the process executed before the power of the device is shut down is restarted from the process where the process was interrupted, It is characterized by checking a device driver.
本発明によれば、突発的な電源遮断からの復帰、及びシステムの休止における処理を高速且つ確実にできる。 ADVANTAGE OF THE INVENTION According to this invention, the process in the recovery | restoration from a sudden power shutdown and a system stop can be performed at high speed and reliably.
[実施形態]
まず、本発明の実施形態の概要について説明する。
[Embodiment]
First, the outline | summary of embodiment of this invention is demonstrated.
第1に、プロセッサ、揮発性メモリ、不揮発性メモリ、及び周辺回路を備えるハードウェアにおいて、少なくとも電源回路、プロセッサ、又は不揮発性メモリのいずれかが、電源瞬断判定機能と電源瞬断通知レジスタと備える。 First, in hardware including a processor, a volatile memory, a nonvolatile memory, and a peripheral circuit, at least one of the power supply circuit, the processor, or the nonvolatile memory includes a power supply interruption determination function and a power supply interruption notification register. Prepare.
これによって、OSは、ハードウェアに電源が投入されたとき、電源瞬断通知レジスタが設定されているか否かを判定し、設定されていれば電源瞬断からの復帰と判定して、復旧処理を実行する。復旧処理において、OSは、プロセッサが揮発性であるか否かを判定し、プロセッサが揮発性の場合、電源遮断前に実行していたプロセスを再起動する。プロセッサが不揮発性の場合、プロセッサが保持するプロセスに関する情報に基づいて、OSは処理を再開する。次に、OSは、各デバイスドライバの状態を判定し、処理の再開が可能か否かを判定して、処理の再開が不可能な場合、呼び出し元プロセスへ通知し、エラー処理を実行する。 As a result, when the power is turned on to the hardware, the OS determines whether or not the power supply interruption notification register is set. If the power supply is set, the OS determines that the power supply is recovered from the power supply interruption. Execute. In the recovery process, the OS determines whether or not the processor is volatile. If the processor is volatile, the OS restarts the process that was being executed before the power was shut down. If the processor is non-volatile, the OS resumes processing based on information about the process held by the processor. Next, the OS determines the state of each device driver, determines whether or not the process can be restarted. If the process cannot be restarted, the OS notifies the caller process and executes error processing.
第2に、主記憶領域を複数の揮発性メモリと不揮発性メモリとから構成するハードウェアにおいて、論理アドレスと物理アドレスとからなる仮想記憶をサポートし、各メモリ空間が一定サイズのページで管理されるシステムを想定する。 Secondly, in hardware in which the main storage area is composed of a plurality of volatile memories and nonvolatile memories, virtual memory consisting of logical addresses and physical addresses is supported, and each memory space is managed by pages of a certain size. System.
ユーザインタフェース系のプロセスからバックグラウンド系のプロセスへ切り替わる場合、又は論理物理アドレス変換が発生した場合、OSは、低速な不揮発性メモリ、又は揮発性メモリ上のページの優先度を判定し、優先度に基づいて入れ替えフラグを設定し、システムのアイドル時に入れ替えを実行する。 When switching from a user interface process to a background process, or when logical-physical address conversion occurs, the OS determines the priority of a page on a low-speed nonvolatile memory or volatile memory, and the priority Based on the above, the replacement flag is set, and the replacement is executed when the system is idle.
さらに、揮発性メモリには更新されないプロセスのコード領域と定数とが配置され、不揮発性メモリには更新されるデータが優先的に配置されることによって、システムの電源が突発的に遮断された場合、OSは、揮発性メモリのデータが消失しても、プロセスのコード部、又は定数部をストレージから読み出し、不揮発メモリが保持するデータを用いて復帰処理を実行する。 Furthermore, when the code area and constants of processes that are not updated are allocated in the volatile memory, and the data to be updated is preferentially allocated in the nonvolatile memory, the system power supply is suddenly shut down. Even if the data in the volatile memory is lost, the OS reads the code part or constant part of the process from the storage, and executes the recovery process using the data held in the nonvolatile memory.
以下、図面を用いて本発明の実施形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本発明の実施形態の組込み機器の構成を説明するブロック図である。 FIG. 1 is a block diagram illustrating the configuration of an embedded device according to an embodiment of the present invention.
本組込み機器は、プロセッサ104、不揮発性メモリ101、及び周辺回路102を備え、これらは互いにバスによって接続されている。
This embedded device includes a
プロセッサ104は、レジスタ、及び命令実行部等を備える。本実施形態において、プロセッサ104は、瞬断判定レジスタA121を含む。
The
瞬断判定レジスタA121は、電源が突発的に遮断されたか否かを示す情報を格納し、プロセッサ104内の電圧が不安定になった場合などに設定される。また、瞬断判定レジスタA121は、OS107がクリアする。
The instantaneous interruption determination register A121 stores information indicating whether or not the power supply is suddenly cut off, and is set when the voltage in the
不揮発性メモリ101は、瞬断判定レジスタB116、書込残チェックカウンタ117、正常終了レジスタ124、及びデータ記録部123を含む。
The
瞬断判定レジスタB116は、電源が突発的に遮断されたか否かを示す情報を格納する。例えば、不揮発性メモリ101の電圧が不安定になったとき、不揮発性メモリ101へ電源投入されたとき、又は正常終了レジスタ124が設定されていなかったときに、瞬断判定レジスタB116が設定される。
The instantaneous interruption determination register B116 stores information indicating whether or not the power supply is suddenly cut off. For example, when the voltage of the
書込残チェックカウンタ117は、不揮発性メモリ101が受け取ったデータのうち、メモリへの書き込みが終了していない領域の数を示す情報を格納する。領域としては、例えば、メモリセル単位、ビット単位、バイト単位、又はブロック単位などが考えられる。不揮発性メモリ101によっては、書き込みデータを受け取ってからメモリセルへ書き込みが終了するまで時間がかかるため、書き込みの処理中に、電源遮断された場合、メモリセルへ書き込めなかったデータが消失する。書込残チェックカウンタ117は、前述したような異常が発生したことを検出するためのものである。
The remaining write check counter 117 stores information indicating the number of areas in the data received by the
正常終了レジスタ124は、突発的な電源遮断(瞬断)か、又は正常に電源遮断した後からの復帰かを示す情報を格納する。正常終了レジスタ124は、システムが正常に終了するときにプロセッサ104、又はOS107が設定する。不揮発性メモリ101が起動すると内部制御回路(図示省力)が正常終了レジスタ124をチェックし、正常終了レジスタ124が設定されていれば瞬断判定レジスタB116を設定し、正常終了レジスタ124が設定されていなければ瞬断判定レジスタB116を設定する。
The
データ記録部123は、実際にデータが格納される不揮発性メモリ101の領域を示す。例えば、メモリセル等で構成される。本実施形態では、データ記録部123がROM(Read Only Memory)領域119、主記憶領域113、及びストレージ領域114、に分割されている。
The
ROM領域119は、ROMとして利用する領域であり、OS107、実行プログラムコード等、通常動作で更新が発生しないデータを格納する領域である。図1に示す例では、OS107、基本アプリ群108が格納されている。
The
OS107は、OS本体を示し、通常動作では更新が発生しない実行コード等のデータを格納する。本実施形態において、OS107は、周辺回路102などのハードウェアを制御するプログラム群であるデバイスドライバ126、及び電源復帰処理を実行する機能である電源復帰処理機能111を含む。
An
電源復帰処理機能111は、システムが起動したときに、瞬断判断レジスタ(A121、B116、C122)を読み出し、再起動か、又は電源断からの復旧か、の判定処理を実行する。
When the system is activated, the power
基本アプリ群108は、OS107、及び機器で恒常的に利用されるソフトウェア群を格納する。例えば、デバイスドライバ、GUIプログラム、Webブラウザ等である。
The
主記憶領域113は、通常動作時に更新されるデータが格納され、本実施形態において、主記憶領域113は、OS管理情報103とプロセス115とを格納する。
The main storage area 113 stores data updated during normal operation. In the present embodiment, the main storage area 113 stores the
OS管理情報103は、更新が発生するOS107の各種管理情報を格納し、具体的には、電源断検出先指定データ120、起動識別フラグ112、プロセス管理表106、論理物理変換テーブル105、ファイルシステム/データベース管理110、及びプロセス115を含む。
The
電源断検出先指定データ120は、電源遮断の原因を検出する手段を指定するデータを格納する。つまり、システムが備えるレジスタ(瞬断判定レジスタ等)又はデータのうち、いずれを読み出すかを示すデータが格納される。これによって、瞬断判定のためのデータの読み出し先を指定するフラグが設定される。電源断検出先指定データ120は、システムに当初から設定されている値である。なお、電源断検出先指定データ120は、ユーザが指定してもよい。
The power-off detection
起動識別フラグ112は、再起動か、又は電源断からの復旧かを示す情報を格納し、OS107が動作再開時に動作再開の理由を判断するために、電源復帰処理機能111から参照される。具体的には、起動識別フラグ112が「0」の場合、再起動のフラグが設定され、起動識別フラグ112が「1」の場合、電源断復帰のフラグが設定される。
The
プロセス管理表106は、システム上に存在する全プロセスを管理するための情報を格納する。 The process management table 106 stores information for managing all processes existing on the system.
論理物理変換テーブル105は、システムが論理アドレスと物理アドレスとを利用する場合、その対応付けを管理するための情報を格納する。 The logical-physical conversion table 105 stores information for managing the correspondence when the system uses a logical address and a physical address.
ファイルシステム/データベース管理110は、ストレージ領域114に格納されるファイル又はデータベース(DB)の管理情報を格納する。
The file system /
プロセス115は、OS107が実行する個々のプログラムを格納する。例えば、アプリケーション、又は通信ミドルウェア等である。
The
ストレージ領域114は、ファイル形式のデータ、及び各種退避データを格納する。図1に示す例では、プログラム、動画、静止画、及び音楽などのファイル形式のデータ群である各種ファイル125と、プロセスが実行中で発生した一時情報、及び実行優先度の低いページデータ等の退避データ109を格納する。
The
周辺回路102は、キー、タッチパネル、ディスプレイ、マイク、スピーカー、及びネットワーク接続機能など各種周辺機能と電源回路118とを備える。
The
電源回路118は、各機器の電源を管理し、本実施形態では、瞬断判定レジスタC122を含む。
The
瞬断判定レジスタC122は、電源が突発的に遮断されたか否かを示す情報を格納する。瞬断判定レジスタC122は、電源回路118で異常を検出されたときに設定され、また、OS107がクリアする。
The instantaneous interruption determination register C122 stores information indicating whether or not the power supply is suddenly cut off. The instantaneous interruption determination register C122 is set when an abnormality is detected by the
なお、本実施形態において、本組込機器は、全ての瞬断レジスタ(A121、B116、C122)を備える場合を想定している。なお、いずれかの瞬断レジスタ(A121、B116、C122)のみを備える形態であってもよい。 In the present embodiment, it is assumed that the embedded device includes all instantaneous interruption registers (A121, B116, C122). In addition, the form provided only with one of the instantaneous interruption registers | resistors (A121, B116, C122) may be sufficient.
図2Aは、本発明の実施形態におけるプロセス管理表106が含む基本データ206の一例を示す図である。基本データ206は、各プロセスの基本属性を管理する。
FIG. 2A is a diagram illustrating an example of
基本データ206は、プロセスID201、セグメント202、及びステート205を含む。
The
プロセスID201は、プロセスを識別するための識別子を格納する。
The
セグメント202は、プロセスID201に対応するプロセスが格納されているメモリ上の領域を特定するための情報を格納し、さらに、コード領域203、及びデータ領域204を含む。
The
コード領域203は、プロセスID201に対応するプロセスの実行コードの格納場所を示す情報を格納する。
The code area 203 stores information indicating the storage location of the execution code of the process corresponding to the
データ領域204は、プロセスID201に対応するプロセスが格納されている場所を示す情報を格納する。
The
ステート205は、プロセスの状態を示す情報が格納される。例えば、プロセッサ104がプロセスID201に対応するプロセスを実行している場合「実行中」が格納され、プロセッサ104がプロセスID201に対応するプロセスを実行待ちしている場合「待機中」が格納され、プロセッサ104がプロセスID201に対応するプロセスを、他のプロセス又はI/Oの応答待ちをしている場合「応答待ち」を格納する。
The
図2Bは、本発明の実施形態におけるプロセスタイプ定義表218の一例を示す図である。 FIG. 2B is a diagram showing an example of the process type definition table 218 according to the embodiment of this invention.
プロセスタイプ定義表218は、プロセスの種別、及びプロセスの実行の優先順位を定義し、プロセス管理表106が含む拡張データ207の総合優先度209を算出するときに用いられる。
The process type definition table 218 defines process types and process execution priorities, and is used when calculating the
プロセスタイプ定義表218は、プロセスタイプ227及び優先度228を含む。
The process type definition table 218 includes a
プロセスタイプ227は、プロセスの種別を示す情報を格納する。例えば、ユーザインタフェース系プロセスの場合、「UI」が格納され、バックグランドにおいて動作するサーバ機能を提供するプロセスの場合、「サービス」が格納され、その他のプロセスの場合、「通常」が格納される。
The
優先度228は、プロセスタイプ227に対応するプロセスの優先度を格納する。優先度の値を大きいプロセスから優先的に実行される。
The
図2Cは、本発明の実施形態におけるプロセス管理表106が含む拡張データ207の一例を示す図である。拡張データ207は、プロセスの実行優先度の判定に必要な情報を管理する。
FIG. 2C is a diagram illustrating an example of the
拡張データ207は、プロセスID208、総合優先度209、プロセスタイプ210、及び利用頻度211を含む。
The
プロセスID208は、プロセスID201と同一のものである。
The
総合優先度209は、OS107が実際に扱うプロセスの優先度を格納する。総合優先度209が大きいプロセスから優先的に実行される。総合優先度209は、プロセスタイプ210と利用頻度211とから算出される。例えば、プロセスタイプ210に対応するプロセスをプロセスタイプ定義表218から検索し、検索された優先度228と利用頻度211の値を用いて、平均値、最大値、又は最小値等を求めて算出される。
The
また、同一のページに複数のプロセスがアクセスする場合、総合優先度209は、例えば、複数のプロセスの各優先度228の平均値、最大値、又は最小値等を求めて算出される。また、総合優先度209は、論理物理変換テーブル105が含む拡張データ(図8B参照)の総合優先度813に反映される。
Further, when a plurality of processes access the same page, the
利用頻度211は、システムの各状態の利用頻度を格納する。具体的には、利用頻度211は、起動直後212、復帰直後213、及び通常動作時214の3種類を含む。
The
起動直後212は、システムの起動直後にプロセスが起動された回数を格納する。起動直後212は、システムの起動直後にプロセスが起動されたときに値が「1」加算される。システムの起動直後の判定は、例えば、システムを起動してからユーザが操作するための画面が表示されるまでの時間をシステム起動直後と定義することによって可能である。
Immediately after the
復帰直後213は、システムが電源瞬断から復帰した直後にプロセスが起動された回数を格納する。復帰直後213は、システムが電源瞬断から復帰した直後にプロセスが起動されたときに値が「1」加算される。復帰直後か否かの判定は、起動直後212と同様である。
Immediately after
通常動作時214は、前述の二つの状態以外にプロセスが起動された回数を格納する。通常動作時214は、前述の二つの状態以外にプロセスが起動されたときに値が「1」加算される。
In the
なお、優先度設定項目については、前述したもの以外に、プロセス実行時間、プロセスの規模、又はユーザ指定優先度等、さまざまな判定基準が考えられる。 In addition to the items described above, various determination criteria such as process execution time, process scale, or user-specified priority can be considered for the priority setting items.
図2Dは、本発明の実施形態におけるプロセス管理表106が含む格納先管理データ215の一例を示す図である。格納先管理データ215は、複数の種類のメモリを用いて組込機器が構成されている場合、いずれのメモリのどの領域にプロセスが格納されているかを管理する。
FIG. 2D is a diagram illustrating an example of the storage
格納先管理データ215は、OS107がデータの退避、又は入れ替えなどを実行するときに参照される。
The storage
格納先管理データ215は、プロセスID216、及びセグメント219を含む。
The storage
プロセスID216は、プロセスID201と同一のものである。
The
セグメント219は、プロセスID216に対応するプロセスの実行コードがメモリ上のいずれの領域に格納されているかを示す情報を格納する。セグメント219は、さらにコード領域229、及びデータ領域220を含む。
The
コード領域229は、プロセスID216に対応するプロセスの実行コードが格納されているメモリを特定するための示す情報を格納する。
The
データ領域220は、プロセスID216に対応するプロセスがいずれのメモリに格納されているかを示す情報を格納する。データ領域220は、さらに、定数221、及び更新発生部222を含む。
The
定数221は、プロセスに当初より埋め込まれている基本パラメータである。図2Dに示す例において、定数221には、メモリタイプID223(図2E参照)が格納されている。 The constant 221 is a basic parameter embedded in the process from the beginning. In the example shown in FIG. 2D, the constant 221 stores the memory type ID 223 (see FIG. 2E).
更新発生部222は、更新されるプロセスが格納されているメモリを特定するための情報を格納する。図2Dに示す例において、更新発生部222には、メモリタイプID223(図2E参照)が格納されている。
The
図2Eは、本発明の実施形態におけるメモリタイプ定義表217の一例を示す図である。メモリタイプ定義表217は、本組込機器を構成する各メモリの属性が定義する。 FIG. 2E is a diagram showing an example of the memory type definition table 217 in the embodiment of the present invention. The memory type definition table 217 defines the attributes of each memory constituting this embedded device.
メモリタイプ定義表217は、メモリタイプID223、タイプ224、Read速度225、及びWrite速度226を含む。
The memory type definition table 217 includes a
メモリタイプID223は、メモリを識別するための識別子を格納する。
The
タイプ224は、メモリタイプID223に対応するメモリの種別を格納する。具体的には、メモリが揮発性か不揮発性かを示す情報を格納する。
The
Read速度225は、メモリタイプID223に対応するメモリの単位読み込み時間を示し、値が小さいほど早いことを示す。
The
Write速度226は、メモリの単位書き込み時間を示し、値が小さいほど早いことを示す。
The
なお、Read速度225及びWrite速度226は、メモリを設置した時に決定される値である。
The
図3は、本発明の実施形態における起動識別フラグ112の設定処理を説明するフローチャートである。
FIG. 3 is a flowchart illustrating the setting process of the
当該処理は、システムが起動したときに実行され、OS107が起動理由判定に利用する起動識別フラグ112を設定する処理である。なお、ハードウェア起動理由としては、システム再起動、電源異常からの復帰、スリープ状態からの復帰などが考えられる。
This process is executed when the system is booted, and is a process for setting the
まず、システムに電源が投入され、プロセッサ104、周辺回路、不揮発性メモリ101へ電力供給が開始される(ステップ301)。
First, power is turned on to the system, and power supply to the
OS107は、電源断検出先指定データ120が「0」であるか否かを判定する(ステップ302)。
The
電源断検出先指定データ120が「0」であると判定された場合、OS107は、電源回路118が含む瞬断判定レジスタC122を読み出し、読み出された瞬断判定レジスタC122を起動識別フラグ112に設定し(ステップ303)、処理を終了する。
When it is determined that the power-off detection
電源断検出先指定データ120が「0」でないと判定された場合、OS107は、電源断検出先指定データ120が「1」であるか否かを判定する(ステップ304)。
When it is determined that the power-off detection
電源断検出先指定データ120が「1」であると判定された場合、OS107は、不揮発性メモリ101が含む瞬断判定レジスタB116を読み出し、読み出された瞬断判定レジスタB116を起動識別フラグ112に設定し(ステップ305)、処理を終了する。
When it is determined that the power-off detection
電源断検出先指定データ120が「1」でないと判定された場合、OS107は、電源断検出先指定データ120が「2」であるか否かを判定する(ステップ306)。
When it is determined that the power-off detection
電源断検出先指定データ120が「2」であると判定された場合、OS107は、プロセッサ104が含む瞬断判定レジスタA121を読み出し、読み出された瞬断判定レジスタA121を起動識別フラグ112に設定し(ステップ307)、処理を終了する。
When it is determined that the power-off detection
電源断検出先指定データ120が「2」でないと判定された場合、OS107は、電源断検出先指定データ120が「3」であるか否かを判定する(ステップ308)。
If it is determined that the power-off detection
電源断検出先指定データ120が「3」でないと判定された場合、OS107は、処理を終了する。
When it is determined that the power-off detection
電源断検出先指定データ120が「3」であると判定された場合、OS107は、書込残チェックカウンタ117を読み出す(ステップ309)。
When it is determined that the power-off detection
次に、OS107は、書込残チェックカウンタ117が「0」であるか否かを判定する(ステップ310)。
Next, the
書込残チェックカウンタ117が「0」でないと判定された場合、OS107は、起動識別フラグ112に「1」を設定し(ステップ311)、処理を終了する。
When it is determined that the remaining write check counter 117 is not “0”, the
書込残チェックカウンタ117が「0」であると判定された場合、OS107は、起動識別フラグ112に「0」を設定し(ステップ312)、処理を終了する。
When it is determined that the remaining write check counter 117 is “0”, the
なお、電源断検出先指定データ120に格納されるデータは、情報の読み出し先(例えば、瞬断判定レジスタA121等)を指定するものであれば、どのようなデータであってもよい。本実施形態では、「0」〜「3」の値が格納され、当該値に対応する読み出し先から、OS107が情報を取得する。
The data stored in the power-off detection
図4は、本発明の実施形態においてOS107が起動され、処理を開始するまでの流れを説明するフローチャートである。
FIG. 4 is a flowchart for explaining the flow from the start of the
当該処理では、OS107が起動したときに実行される電源復帰処理機能111が、起動識別フラグ112を参照し、起動の理由を判定し、判定結果に基づいて処理を再開する。
In this process, the power
電源復帰処理機能111は、起動識別フラグ112を確認する(ステップ401)。
The power
次に、電源復帰処理機能111は、起動識別フラグ112が「1」であるか否かを判定する(ステップ402)。
Next, the power
起動識別フラグ112が「1」であると判定された場合、電源復帰処理機能111は、プロセッサ104が不揮発性であるか否かを判定する(ステップ403)。
When it is determined that the
ここで、不揮発性のプロセッサ104とは、不揮発性の素子でレジスタが構成されたプロセッサ104を意味する。したがって、不揮発性のプロセッサ104は、電源が遮断された後もレジスタを保持することができる。
Here, the
ステップ403において、プロセッサ104が揮発性の場合、電源が遮断される前にプロセッサ104が保持するレジスタがクリアされている。したがって、OS107がプロセスを再開するために、電源が切られる前のレジスタが保持していた情報を取得する必要がある。一方、不揮発性のプロセッサ104の場合、電源が切られる前のレジスタが保持されている。したがって、OS107がプロセスを再開するために、電源が切られる前のレジスタを取得する必要がない。
In
前述した理由によって、ステップ403では、プロセッサ104が揮発性であるか否かの判定がされる。なお、プロセッサ104が不揮発性であるか否かは、プロセッサ104が保持する、当該プロセッサの識別情報をOS107が参照することによって判定される。
For the reasons described above, in
プロセッサ104が不揮発性であると判定された場合、電源復帰処理機能111は、ステップ405へ進む。
If it is determined that the
プロセッサ104が不揮発性でないと判定された場合、電源復帰処理機能111は、プロセス管理表106を参照し、ステート205が「実行中」であるプロセスを再起動する(ステップ404)。
When it is determined that the
次に、電源復帰処理機能111は、全てのデバイスドライバ126の状態を確認したか否かを判定する(ステップ405)。
Next, the power
全てのデバイスドライバ126の状態を確認したと判定された場合、電源復帰処理機能111は、処理を終了する。
When it is determined that the states of all the
全てのデバイスドライバ126の状態を確認していないと判定された場合、電源復帰処理機能111は、デバイスドライバ126の状態を確認する(ステップ406)。確認される内容としては、例えば、ハードウェアとデータの授受とが中断していないか、又は、破壊されていないか等である。
When it is determined that the states of all
電源復帰処理機能111は、中断された処理が再開できるか否かを判定する(ステップ407)。例えば、ハードウェアに対して一括して発行されるべきコマンド及びデータの発行途中に、電源が遮断され場合、中断処理が再開できないと判定される。
The power
中断処理が再開できないと判定された場合、電源復帰処理機能111は、呼び出し元のプロセスへ異常終了通知を送信する(ステップ408)。通知を受けたプロセスについては、当該プロセスの処理のリトライなどエラー復旧処理が実行される。
When it is determined that the interruption process cannot be resumed, the power
中断処理が再開できると判定された場合、電源復帰処理機能111は、ステップ405に戻る。
When it is determined that the interruption process can be resumed, the power
ステップ402において、起動識別フラグ112が「1」でないと判定された場合、電源復帰処理機能111は、システムを初期化する(ステップ409)。
If it is determined in
電源復帰処理機能111は、起動識別フラグ112に「1」を設定し、処理を終了する(410)。
The power
以上、図3及び図4の処理によって、システムの電源が投入されたとき、OS107が正常な電源の投入か、又は電源瞬断等の異常からの復帰かを判定できるため、OS107は、復帰時に迅速にエラー復旧処理を実行し、システムの動作を再開させることができる。
As described above, when the system power is turned on by the processing of FIGS. 3 and 4, it can be determined whether the
図5は、本発明の実施形態における利用頻度211の更新処理を説明するフローチャートである。
FIG. 5 is a flowchart for explaining the update processing of the
当該処理は、プロセスが起動したときにOS107によって実行される。
This process is executed by the
まず、プロセスが起動される(ステップ501)。 First, the process is started (step 501).
OS107は、プロセスの起動タイミングがシステム起動直後であるか否かを判定する(ステップ502)。当該判定は、例えば、システムが起動してからユーザが操作するための画面が表示されるまでに、プロセスが起動されたか否かが判定される。
The
プロセスの起動タイミングがシステム起動直後であると判定された場合、OS107は、起動されたプロセスのプロセスID208と一致するエントリの起動直後212の値を「1」加算し(ステップ503)、処理を終了する。
If it is determined that the process activation timing is immediately after system activation, the
プロセスの起動タイミングがシステム起動直後でないと判定された場合、OS107は、プロセスの起動タイミングがシステム復帰直後であるか否かを判定する(ステップ504)。当該判定も、ステップ502と同様に、一定のタイミングにおいてプロセスが起動されたか否かが判定される。
If it is determined that the process activation timing is not immediately after system startup, the
プロセスの起動タイミングがシステム復帰直後であると判定された場合、OS107は、起動されたプロセスのプロセスID208と一致するエントリの復帰直後213の値を「1」加算し(ステップ505)、処理を終了する。
If it is determined that the process activation timing is immediately after the system is restored, the
プロセスの起動タイミングがシステム復帰直後でないと判定された場合、OS107は、プロセスの起動タイミングがシステム通常動作時であるか否かを判定する(ステップ506)。
When it is determined that the process activation timing is not immediately after the system recovery, the
プロセスの起動タイミングがシステム通常動作時であると判定された場合、OS107は、起動されたプロセスのプロセスID208と一致するエントリの通常動作時214の値を「1」加算し(ステップ507)、処理を終了する。
When it is determined that the process activation timing is during the normal system operation, the
プロセスの起動タイミングがシステム通常動作時でないと判定された場合、OS107は、処理を終了する。
If it is determined that the process activation timing is not during normal system operation, the
以上のように、本願発明の組込み機器におけるシステムは、図3に示すように予めシステムが起動したときに確認する瞬断判定レジスタ(A121、B116、C122)を指定しておき、OS107は、指定された瞬断判定レジスタ(A121、B116、C122)を読み出し、読み出された瞬断判定レジスタを起動識別フラグ112に設定する。この処理によって、OS107は、電源瞬断からの復帰であるか否かを判定できる。また、OS107は、システム起動時に、起動識別フラグ112を参照し、電源瞬断の場合、復旧処理を実行する。
As described above, the system in the embedded device according to the present invention designates the instantaneous interruption determination register (A121, B116, C122) to be confirmed when the system is activated in advance as shown in FIG. The read instantaneous interruption determination register (A121, B116, C122) is read, and the read instantaneous interruption determination register is set in the
これによって、電源復帰時に正常にシステムが動作することができる。 As a result, the system can operate normally when power is restored.
次に、プロセス管理表(206、207、215)に基づいて、メモリに格納されるデータの格納場所を動的に変化させる処理について説明する。 Next, processing for dynamically changing the storage location of data stored in the memory based on the process management table (206, 207, 215) will be described.
当該処理、図1で示す単一の不揮発性メモリ搭載する組込み機器だけでなく、特に、図6に示すように複数種類の不揮発性メモリを搭載する組込み機器、又は、図7に示すように不揮発性メモリと揮発性メモリとを搭載する組込み機器に最適である。まず、図6及び図7の組込み機器のシステム構成を説明する。 This process is not limited to the embedded device having the single nonvolatile memory shown in FIG. 1, but in particular, the embedded device having a plurality of types of nonvolatile memories as shown in FIG. 6, or the nonvolatile device as shown in FIG. It is most suitable for embedded devices equipped with volatile memory and volatile memory. First, the system configuration of the embedded device shown in FIGS. 6 and 7 will be described.
図6は、本発明の実施形態の組込み機器の構成の一例を説明するブロック図である。 FIG. 6 is a block diagram illustrating an example of the configuration of the embedded device according to the embodiment of this invention.
図1に示す組込み機器の構成と比べ、図6に示す組込み機器の構成は、特性の異なる複数種類の不揮発性メモリを搭載する。不揮発性メモリの特性は、例えば、読み出し及び書き込みが高速な高性能メモリ、又は、読み出しが高速で書き込みが低速な低性能メモリなどである。以下、図1との差異を中心に説明する。 Compared with the configuration of the embedded device shown in FIG. 1, the configuration of the embedded device shown in FIG. 6 includes a plurality of types of nonvolatile memories having different characteristics. The characteristics of the nonvolatile memory are, for example, a high-performance memory that reads and writes at high speed, or a low-performance memory that reads at high speed and writes slowly. Hereinafter, the difference from FIG. 1 will be mainly described.
プロセッサ104は、新たにメモリ管理ユニット607を含む。
The
メモリ管理ユニット607は、TLB(Table Lookup Buffer)614を含む。メモリ管理ユニット607は、TLB614を用いて、範囲626に示すような論理アドレス空間628と物理アドレス空間627との変換を実行する。
The
TLB614は、論理物理変換テーブル105のうち、範囲626に示すような利用頻度が高い論理アドレス及び物理アドレスの対応情報を保持する。通常、TLB614によって保持されていないアドレスへアクセスされた場合、論理物理変換テーブル105にアクセスする必要があり、アドレス変換処理の時間がかかるが、TLB614がアクセス先のアドレス情報を保持することによって、メモリ管理ユニット607の変換処理を高速化することができる。
The
TLB614によって保持されていないアドレスへアクセスされた場合を、TLBミスと呼ぶ。
A case where an address not held by the
また、論理アドレス空間628及び物理アドレス空間627は、一定サイズの領域単位であるページ毎に対応付けされる。一般的に、ページのサイズは、4kバイト程度であることが多い。以下、論理アドレス空間628におけるページを論理ページ623と呼び、また、物理アドレス空間627におけるページを物理ページ621と呼ぶ。ただし、論理ページ623は1〜nまでの数だけ存在し、また、物理ページ621は1〜mまでの数だけ存在する。
Further, the
図6に示す組込み機器の構成は、不揮発性メモリA601、不揮発性メモリB630、不揮発性メモリC616、及びストレージ602を備える。
The configuration of the embedded device shown in FIG. 6 includes a
ROM領域119は、不揮発性メモリA601に構成される。不揮発性メモリA601としては、例えば、ROM、又はNOR型メモリ等が考えられる。
The
主記憶領域113は、不揮発性メモリB630と不揮発性メモリC616に構成される。不揮発性メモリB630は、例えば、SP−RAMなどの高速ランダムアクセス可能なメモリが考えられる。また、不揮発性メモリC616は、NOR型メモリなどの不揮発性メモリB630より書き込み速度が遅く、ランダム読み出しが可能なメモリが考えられる。 The main storage area 113 is configured by a nonvolatile memory B630 and a nonvolatile memory C616. As the nonvolatile memory B630, for example, a memory capable of high-speed random access such as SP-RAM can be considered. Further, the non-volatile memory C616 may be a memory that is slower in writing speed than the non-volatile memory B630 such as a NOR type memory and can perform random reading.
不揮発性メモリB630は、論理物理変換テーブル105を含む。論理物理変換テーブル105は、仮想アドレスをサポートしているシステムにおける論理アドレスと物理アドレスとの対応、及び各アドレス空間(物理アドレス空間627及び論理アドレス空間628)におけるページの属性を管理する。
The
ここで、本実施形態では、メモリ特性に応じて、分散させてプロセスのコード、データを格納する。例えば、優先度が高いプロセスの更新が発生するデータ領域が不揮発性メモリB630に格納され、優先度が低いプロセスのデータ領域、当該プロセスのコード部、及びデータ領域内の定数部分が不揮発性メモリC616に格納される方法が考えられる。つまり、更新の頻度の高いデータは書き込み及び読み出しが高速な不揮発性メモリ(この場合は、不揮発性メモリB630)に格納され、更新の頻度が低いデータは読み出しが高速で、かつ、書き込みが低速な不揮発性メモリ(この場合は、不揮発性メモリC616)に格納される。
In this embodiment, process codes and data are stored in a distributed manner in accordance with memory characteristics. For example, a data area in which a process update with a high priority occurs is stored in the
一般的に、不揮発性メモリB630のような高性能メモリは価格が高く、不揮発性メモリC616のような低性能メモリは価格が安く、このような組込み機器の構成にすることによって、組込機器の製造コストを抑えることができる。 In general, a high-performance memory such as the non-volatile memory B630 is expensive, and a low-performance memory such as the non-volatile memory C616 is low in price. Manufacturing cost can be reduced.
ストレージ602に格納されるデータは、図1におけるストレージ領域114と同一のものである。また、本実施形態におけるストレージ602は、HDD、又はFlashメモリ等が考えられる。
Data stored in the
なお、不揮発性メモリとストレージの組み合わせは一例であり、その他の組み合わせでもよい。 The combination of the nonvolatile memory and the storage is an example, and other combinations may be used.
図7は、本発明の実施形態の組込み機器の構成の一例を説明するブロック図である。 FIG. 7 is a block diagram illustrating an example of the configuration of the embedded device according to the embodiment of this invention.
図6と比較して、図7の組込み機器のシステムは、不揮発性メモリC616の代わりに、揮発性メモリ701を備える。揮発性メモリ701に格納されるデータは、不揮発性メモリC616と同一のものである。
Compared to FIG. 6, the system of the embedded device of FIG. 7 includes a
揮発性メモリ701に格納されるデータは、システムの電源が遮断されたときに失われるが、ストレージ602に格納されるデータを読み出すことによって復元することができる。
Data stored in the
以下、図6及び図7を例に具体的な処理について説明する。なお、図1においても、プロセッサ104がメモリ管理ユニット607論理物理変換テーブルを含む場合は同様の処理を行うことができる。
Hereinafter, specific processing will be described with reference to FIGS. 6 and 7 as an example. Also in FIG. 1, when the
図8Aは、本発明の実施形態における論理物理変換テーブル105が含む基本データ801の一例を示す図である。
FIG. 8A is a diagram illustrating an example of
基本データ801は、各ページ(物理ページ621及び論理ページ623)の基本情報を管理する。
The
基本データ801は、ページID803、論理アドレス804、物理アドレス805、及び属性811を含む。
The
ページID803は、各ページ(物理ページ621及び論理ページ623)を識別するための識別子を格納する。
The
論理アドレス804は、各ページ(物理ページ621及び論理ページ623)に対応する論理アドレスを格納する。
The
物理アドレス805は、各ページ(物理ページ621及び論理ページ623)に対応する物理アドレスを格納する。なお、メモリ上に対応するデータが存在しない場合、物理アドレス805には、「0xffffff」が格納される。ただし、実アドレスとして無効な値であれば、どのような値であってもよい。
The
属性811は、各ページ(物理ページ621及び論理ページ623)の属性が格納される。属性811は、さらに、書き込み許可806、アクセス可能プロセス807、メモリID808、及びストレージへ退避809を含む。
The
書き込み許可806は、ページID803に対応するページ(物理ページ621及び論理ページ623)に書き込みが許可されているか否かを示す値を格納する。例えば、各ページ(物理ページ621及び論理ページ623)に書き込みが許可されている場合、「y」が格納され、各ページ(物理ページ621及び論理ページ623)に書き込みが許可されていない場合、「n」が格納される。
The
アクセス可能プロセス807は、ページID803に対応するページ(物理ページ621及び論理ページ623)にアクセスが可能なプロセスの一覧を格納する。
The
メモリID808は、ページID803に対応するページ(物理ページ621及び論理ページ623)が存在するメモリを識別する識別子を格納する。メモリID808は、メモリタイプID223と同一のものである。
The
ストレージへ退避809は、ページID803に対応するページ(物理ページ621及び論理ページ623)に格納されている情報がストレージ602に退避しているか否かを示す情報を格納する。例えば、ページID803に対応するページ(物理ページ621及び論理ページ623)に格納されている情報がストレージ602に退避している場合、「y」が格納され、ページID803に対応するページ(物理ページ621及び論理ページ623)に格納されている情報がストレージ602に退避していない場合、「n」が格納される。
The save to
図8Bは、本発明の実施形態における論理物理変換テーブル105が含む拡張データ802の一例を示す図である。
FIG. 8B is a diagram illustrating an example of the
拡張データ802は、各ページ(物理ページ621及び論理ページ623)の入れ替え処理に参照される情報を管理する。
The
拡張データ802は、ページID812、総合優先度813、及び入替フラグ810を含む。
The
ページID812は、ページID803と同一のものである。
The
総合優先度813は、総合優先度209と同一のものである。ページ(物理ページ621及び論理ページ623)の総合優先度813は、プロセスの相互優先度209によって決定される。つまり、ページID812に対応するページには、当該総合優先度813に対応するプロセスが格納されていることを示している。
The
入替フラグ810は、ページを入れ替えるか否かを示す値、及び、入れ替えられるページのペアを識別する値を格納する。具体的には、ページが入れ替えられる場合は、「0」以上の値が格納され、ページが入れ替えられない場合は、「−1」が格納される。また、入れ替えられるページの入替フラグ810は、入れ替え元のページと入れ替え先のページとに同一の値が格納される。なお、入替フラグ810は、OS107が割り振る。
The
図9A、図9B及び図9Cは、本発明のシステム起動及び処理の再開の流れを説明するフローチャートである。 FIG. 9A, FIG. 9B, and FIG. 9C are flowcharts for explaining the flow of system activation and process restart according to the present invention.
電源復帰処理機能111は、起動識別フラグを確認する(ステップ901)。
The power
電源復帰処理機能111は、起動識別フラグ112が「1」であるか否かを判定する(ステップ902)。
The power
起動識別フラグ112が「1」であると判定された場合、電源復帰処理機能111は、プロセス管理表106に含まれる拡張データ207を参照し、起動直後212の値が大きい順にプロセス管理表106のエントリを並び替える(ステップ903)。
When it is determined that the
電源復帰処理機能111は、プロセッサ104が不揮発性であるか否かを判定する(ステップ904)。
The power
プロセッサ104が不揮発性でないと判定された場合、電源復帰処理機能111は、プロセス管理表106の各データを参照し、全てのエントリについて処理が終了したか否かを判定する(ステップ905)。
When it is determined that the
全てのエントリについて処理が終了したと判定された場合、電源復帰処理機能111は、ステップ916に進む。
When it is determined that the processing has been completed for all entries, the power
全てのエントリについて処理が終了していないと判定された場合、電源復帰処理機能111は、プロセス管理表106から一つエントリを読み出し、当該エントリのプロセスID201に対応するプロセスの情報が、全て不揮発性メモリに格納されているか否かを判定する(ステップ906)。
When it is determined that the processing has not been completed for all entries, the power
プロセスID201に対応するプロセスの情報が、全て不揮発性メモリに格納されていると判定された場合、電源復帰処理機能111は、不揮発性メモリに格納されている情報に基づいて、プロセスID201に対応するプロセスのステート205が「実行中」であるプロセスを再起動し(ステップ907)、ステップ905に戻る。
When it is determined that all the process information corresponding to the
プロセスID201に対応するプロセスの情報が、不揮発性メモリ以外にも格納されていると判定された場合、電源復帰処理機能111は、プロセスID201に対応するプロセスの一部の情報が不揮発性メモリに格納されているか否かを判定する(ステップ908)。
When it is determined that the process information corresponding to the
プロセスID201に対応するプロセスの一部の情報が不揮発性メモリに格納されていると判定された場合、電源復帰処理機能111は、プロセスID201に対応するプロセスの情報のうち不揮発性メモリに格納されていない情報をストレージ602から読み出し、不揮発性メモリに格納されている情報及び読み出された情報に基づいて、プロセスを再起動し(ステップ909)、ステップ905に戻る。
When it is determined that a part of the process information corresponding to the
プロセスID201に対応するプロセスの全ての情報が不揮発性メモリに格納されていないと判定された場合、電源復帰処理機能111は、プロセスID201に対応するプロセスの全ての情報をストレージ602から読み出し、読み出された情報に基づいてプロセスを再起動し(ステップ921)、ステップ905に戻る。
When it is determined that not all the information of the process corresponding to the
ステップ904において、プロセッサ104が不揮発性であると判定された場合、電源復帰処理機能111は、プロセス管理表106の各データを参照し、全てのエントリについて処理が終了したか否かを判定する(ステップ910)。プロセッサ104が不揮発性の場合、プロセッサ104は保持する情報については復旧できるため、ステップ910以下の処理において、メモリに格納されている情報の異常が発生した部分について、改めてストレージ602から必要な情報を読み出す処理が実行される。
If it is determined in
全てのエントリについて処理が終了したと判定された場合、電源復帰処理機能111は、ステップ916に進む。
When it is determined that the processing has been completed for all entries, the power
全てのエントリについて処理が終了していないと判定された場合、電源復帰処理機能111は、プロセス管理表106から一つエントリを読み出し、当該エントリのプロセスID201に対応するプロセスの情報が、全て不揮発性メモリに格納されているか否かを判定する(ステップ911)。
When it is determined that the processing has not been completed for all entries, the power
プロセスID201に対応するプロセスの情報が、全て不揮発性メモリに格納されていると判定された場合、電源復帰処理機能111は、不揮発性メモリに格納される情報に基づいて、プロセスID201に対応するプロセスを再開し(ステップ912)、ステップ910に戻る。
When it is determined that all the process information corresponding to the
プロセスID201に対応するプロセスの情報が不揮発性メモリ以外にも格納されていると判定された場合、電源復帰処理機能111は、プロセスID201に対応するプロセスのデータ領域220の更新部のみの情報がメモリに格納されているか否かを判定する(ステップ913)。
When it is determined that the process information corresponding to the
プロセスID201に対応するプロセスのデータ領域220の更新部のみの情報がメモリに格納されていると判定された場合、電源復帰処理機能111は、プロセスID201に対応するプロセスのコード部及び定数221をストレージ602から読み出し、メモリに格納された情報と読み出された情報に基づいて、中断されていたプロセスを再開し(ステップ914)、ステップ910に戻る。
When it is determined that the information of only the update part of the
プロセスID201に対応するプロセスのデータ領域220の更新部以外の情報がメモリに格納されていると判定された場合、プロセスID201に対応するプロセスの全ての情報をストレージ602から読み出し、読み出された情報に基づいてプロセスを再起動し(ステップ915)、ステップ910に戻る。
When it is determined that information other than the update part of the
ステップ902において、確認された起動識別フラグ112が「1」でないと判定された場合、電源復帰処理機能111は、システムを初期化し(ステップ919)、起動識別フラグに「1」を設定し(ステップ920)、ステップ916に進む。
When it is determined in
電源復帰処理機能111は、全てのデバイスドライバの状態を確認し(ステップ916)、中断処理が再開できるか否かを判定する(ステップ917)。なお、ステップ916及びステップ917は、ステップ406及びステップ407と同様の処理である。
The power
中断処理が再開できないと判定された場合、電源復帰処理機能111は、呼び出し元のプロセスへ異常終了通知を送信し(ステップ918)、処理を終了する。
When it is determined that the interruption process cannot be resumed, the power
中断処理が再開できると判定された場合、電源復帰処理機能111は、処理を終了する。
When it is determined that the interruption process can be resumed, the power
図10A、図10B及び図10Cは、本発明の実施形態において、複数メモリが存在する組込機器の構成におけるプロセス、及びページ入れ替え処理を説明するフローチャートである。 FIG. 10A, FIG. 10B, and FIG. 10C are flowcharts for explaining a process and a page replacement process in the configuration of an embedded device having a plurality of memories in the embodiment of the present invention.
当該処理が実行されるタイミングは、TLBミスが発生したとき、又はUIプロセスからバックグラウンドプロセスへ処理が切り替えられるときが考えられる。以下の説明において処理のきっかけとなるプロセスを「プロセスA」と呼ぶ。 The timing at which the process is executed may be when a TLB miss occurs or when the process is switched from the UI process to the background process. In the following description, a process that triggers processing is referred to as “process A”.
OS107は、システムがアイドル状態であるか否かを判定する(ステップ1001)。
The
システムがアイドル状態であると判定された場合、OS107は、論理物理変換テーブル105からページ一覧を取得し、取得されたページが割り当てられるメモリの性能が高い順に、取得されたページ一覧のエントリを並び替え、さらに、各メモリに格納されるページの総合優先度813が小さい順に、当該メモリに格納されるページ一覧のエントリを並び替える(ステップ1002)。なお、メモリの性能は、メモリID808に基づいて、メモリタイプ定義表217を参照して判定される。
When it is determined that the system is in an idle state, the
OS107は、取得されたページ一覧の全てのエントリについて処理が終了したか否かを判定する(ステップ1003)。
The
取得されたページ一覧の全てのエントリについて処理が終了していると判定された場合、OS107は、処理を終了する。
When it is determined that the processing has been completed for all entries in the acquired page list, the
取得されたページ一覧の全てのエントリについて処理が終了していないと判定された場合、OS107は、ステップ1002で並べ替えられたエントリを上から順に読み出し、読み出されたページと他のページの総合優先度813を比較し、総合優先度813の小さいページが高性能メモリに格納され、総合優先度813の大きいページが低性能メモリに格納されているか否かを判定する(ステップ1004)。
If it is determined that the processing has not been completed for all entries in the acquired page list, the
総合優先度813の小さいページが高性能メモリに格納され、総合優先度813の大きいページが低性能メモリに格納されていないと判定された場合、OS107は、ステップ1003に戻る。
If it is determined that a page with a low
総合優先度813の小さいページが高性能メモリに格納され、総合優先度813の大きいページが低性能メモリに格納されていると判定された場合、OS107は、総合優先度813の小さいページ及び総合優先度813の大きいページの入替フラグ810に同一の値を設定し(ステップ1005)、ステップ1003に戻る。なお、複数のページの組が存在する場合、入替フラグ810の値は、ページの組が増える毎に1加算した値が設定される方法が考えられる。ただし、入れ替えられるページを識別できればどのような値であってもよい。
If it is determined that a page with a low
ステップ1001において、システムがアイドル状態でないと判定された場合、OS107は、プロセスAについてのアクセスにおいて、TLBミスが発生したか否かを判定する(ステップ1006)。
When it is determined in
プロセスAについてのアクセスにおいて、TLBミスが発生したと判定された場合、OS107は、論理物理変換テーブル105から、当該プロセスAのアクセス対象のページに関する情報を取得し、取得された情報をTLB714に格納する(ステップ1007)。
When it is determined that a TLB miss has occurred in the access to the process A, the
OS107は、プロセスAの総合優先度813より低い総合優先度813のページを、入替対象ページ一覧として論理物理変換テーブル105から取得する(ステップ1008)。
The
OS107は、入替対象ページが存在するか否かを判定する(ステップ1009)。
The
入替対象ページが存在すると判定された場合、OS107は、取得された入替対象ページが割り当てられているメモリの性能の高い順に、取得された入替対象ページ一覧のエントリを並び替え、さらに、各メモリに格納されるページの総合優先度813の小さい順に、取得された入替対象ページ一覧のエントリを並び替える(ステップ1010)。
When it is determined that there is a replacement target page, the
OS107は、性能が高いメモリから順に、当該メモリの空き領域を検索する(ステップ1011)。
The
OS107は、ステップ1011における検索の結果、空き領域が存在するか否かを判定する(ステップ1012)。
The
空き領域が存在しないと判定された場合、OS107は、並び替えられた結果の最上位のページをストレージ602へ退避させ、空き領域を確保し(ステップ1014)、ステップ1015に進む。
If it is determined that there is no free area, the
空き領域が存在すると判定された場合、又はステップ1014において空き領域が確保された場合、OS107は、プロセスAのアクセス対象のページを当該空き領域に格納し(ステップ1015)、処理を終了する。
If it is determined that there is a free area, or if a free area is secured in
ステップ1009において、入替対象ページが存在しないと判定された場合、OS107は、論理物理変換テーブル105からプロセスAの総合優先度813の次に大きい総合優先度813のページを取得する(ステップ1016)。
If it is determined in
OS107は、取得されたページをストレージ602に退避させ、空き領域を確保する(ステップ1017)。
The
OS107は、確保された空き領域にプロセスAのアクセス対象のページを格納する(ステップ1018)。
The
ステップ1006において、プロセスAについてのアクセスにおいて、TLBミスが発生していないと判定された場合、OS107は、UIプロセスからバックグラウンドプロセスへ切り替えであるか否かを判定する(ステップ1019)。
If it is determined in
UIプロセスからバックグラウンドプロセスへ切り替えでないと判定された場合、OS107は、処理を終了する。
If it is determined that switching from the UI process to the background process is not performed, the
UIプロセスからバックグラウンドプロセスへ切り替えであると判定された場合、OS107は、論理物理変換テーブル105の各入替フラグ810を参照し、入替フラグ810が設定されている全てのページについて入替処理が実行されたか否かを判定する(ステップ1020)。
When it is determined that the switching is from the UI process to the background process, the
入替フラグ810が設定されている全てのページについて入替処理が実行されたと判定された場合、OS107は、処理を終了する。
When it is determined that the replacement process has been executed for all pages for which the
入替フラグ810が設定されている全てのページについて入替処理を実行していないと判定された場合、OS107は、入替フラグ810が設定されたページの入替処理を実行し(1021)、ステップ1020に戻る。
If it is determined that the replacement process has not been executed for all the pages for which the
なお、プロセッサ104がマルチタスクで動作し、同時並行で実行される処理の負荷が増大する場合、OS107は、ステップ1020、及びステップ1021の処理を中断する。
Note that when the
従来は、ユーザ操作時においてもページの入れ替えが実行されたため、ユーザ操作中にアイコンの移動など動画像表示がフリーズする場合があった。本発明は、以上の処理によって、UIプロセスからバックグランドプロセスへ切り替えられるときに、ページの入れ替えの処理を実行するため、ユーザ操作に影響を与えないタイミングで、不揮発性メモリへ重要かつ更新が頻発するデータを優先的に順次配置することができる。したがって、揮発領域に存在する重要データの量を削減できるため、システム休止時のデータ退避処理時間を削減できる。 Conventionally, since page replacement is performed even during a user operation, the moving image display such as moving an icon may freeze during the user operation. In the present invention, when switching from the UI process to the background process by the above process, the page replacement process is executed. Therefore, the nonvolatile memory is frequently and frequently updated at a timing that does not affect the user operation. The data to be processed can be arranged sequentially with priority. Therefore, since the amount of important data existing in the volatile area can be reduced, it is possible to reduce the data save processing time when the system is paused.
101 不揮発性メモリ
102 周辺回路
103 OS管理情報
104 プロセッサ
105 論理物理変換テーブル
106 プロセス管理表
107 OS
108 基本アプリ群
109 対退避データ
110 ファイルシステム/データベース管理
111 電源復帰処理機能
112 起動識別フラグ
113 主記憶領域
114 ストレージ領域
115 プロセス
116 瞬断判定レジスタB
117 書込残チェックカウンタ
118 電源回路
119 ROM領域
120 電源断検出先指定データ
121 瞬断判定レジスタA
122 瞬断判定レジスタC
123 データ記録部
124 正常終了レジスタ
125 各種ファイル
126 デバイスドライバ
601 不揮発性メモリA
602 ストレージ
607 メモリ管理ユニット
614 TLB
616 不揮発性メモリC
621 物理ページ
623 論理ページ
624 範囲
626 範囲
627 物理アドレス空間
628 論理アドレス空間
630 不揮発性メモリB
701 揮発性メモリ
714 TLB
101
108
117 Remaining
122 Instantaneous interruption judgment register C
123
602
616 Nonvolatile memory C
621
701 Volatile memory 714 TLB
Claims (13)
前記装置は、前記装置の電源が異常に遮断されたか否かを検出する電源異常遮断判定部と、前記装置の電源が異常遮断されたことを示す情報を格納する電源異常終了通知レジスタとを備え、
前記周辺回路は、電源回路を含み、
前記不揮発性メモリは、オペレーティングシステム、ソフトウェア及びデバイスドライバを格納し、
前記オペレーティングシステムは、前記電源異常遮断判定部を含み、
前記電源異常遮断判定部は、
前記装置の電源投入時に、前記電源異常終了通知レジスタを参照し、
前記電源異常終了通知レジスタが前記装置の電源が異常に遮断されたことを示す情報を格納しており、前記プロセッサが不揮発性のプロセッサでない場合、前記装置の電源が遮断される前に実行されていたプロセスを再起動し、前記デバイスドライバを確認し、
前記電源異常終了通知レジスタが前記装置の電源が異常に遮断されたことを示す情報を格納しており、前記プロセッサが不揮発性のプロセッサである場合、前記装置の電源が遮断される前に実行されていたプロセスを、前記プロセスが中断された処理から再開し、前記デバイスドライバを確認することを特徴とする不揮発性メモリを主記憶に用いた装置。 A device using a nonvolatile memory including a processor, one or more nonvolatile memories, and a peripheral circuit as a main memory,
The apparatus includes a power supply abnormality interruption determination unit that detects whether or not the power supply of the apparatus is abnormally interrupted, and a power supply abnormality end notification register that stores information indicating that the power supply of the apparatus is abnormally interrupted. ,
The peripheral circuit includes a power supply circuit,
The non-volatile memory stores an operating system, software, and device drivers;
The operating system includes the power supply abnormality interruption determination unit,
The power supply abnormality interruption determination unit
When powering on the device, refer to the power supply abnormal end notification register,
The power supply abnormal end notification register stores information indicating that the power supply of the apparatus is abnormally cut off. If the processor is not a non-volatile processor, it is executed before the power supply of the apparatus is cut off. Restart the process, check the device driver,
If the power supply abnormal end notification register stores information indicating that the power supply of the apparatus is abnormally shut down, and the processor is a non-volatile processor, it is executed before the power supply of the apparatus is shut down. An apparatus using a non-volatile memory as a main memory, wherein a process that has been interrupted is resumed from a process in which the process is interrupted, and the device driver is confirmed.
前記装置は、 The device is
受信したデータを所定の単位毎に前記不揮発性メモリに書き込み、 Write the received data to the non-volatile memory for each predetermined unit,
前記装置が受信したデータのうち前記不揮発性メモリに書き込まれていないデータの単位の有無を示す書込残情報を備え、 It comprises write remaining information indicating the presence or absence of a unit of data that has not been written to the nonvolatile memory among the data received by the device,
前記電源異常遮断判定部は、 The power supply abnormality interruption determination unit
前記装置の電源投入時に前記書込残情報を参照し、 Refer to the remaining write information when the device is turned on,
前記書込残情報が前記未書込のデータの単位があることを示す場合、前記装置の電源が異常に遮断されたと判定し、前記装置の電源が異常に遮断されたことを示す情報を、前記電源異常終了通知レジスタに格納することを特徴とする請求項1に記載の不揮発性メモリを主記憶に用いた装置。 When the remaining write information indicates that there is a unit of unwritten data, it is determined that the power supply of the device is abnormally cut off, and information indicating that the power supply of the device is abnormally cut off, The device using the nonvolatile memory according to claim 1, wherein the device is stored in the power supply abnormal end notification register.
前記電源異常遮断判定部は、前記装置の電源投入時に、前記プロセッサ、不揮発性メモリ、及び周辺回路が備える各電源異常終了通知レジスタを、順次、参照することを特徴とする請求項1又は請求項2に記載の不揮発性メモリを主記憶に用いた装置。 The power supply abnormality interruption determination unit sequentially refers to each of the power supply abnormality end notification registers included in the processor, the nonvolatile memory, and the peripheral circuit when the apparatus is turned on. A device using the nonvolatile memory described in 2 as main memory.
前記電源異常遮断判定部は、前記装置の電源投入時に、前記電源検出先情報に基づいて、指定された読み出し先の前記電源異常終了通知レジスタを参照することを特徴とする請求項3に記載の不揮発性メモリを主記憶に用いた装置。 The said power supply abnormality interruption | blocking determination part refers to the said power supply abnormality completion notification register of the designated reading destination based on the said power supply detection destination information at the time of power activation of the said apparatus. A device that uses a non-volatile memory as its main memory.
さらに、一以上の揮発性メモリ、及び不揮発性記憶媒体を備え、 Furthermore, it comprises one or more volatile memories and a non-volatile storage medium,
前記オペレーティングシステムを管理する情報、及び前記プロセスに関する情報を管理する主記憶部は、前記不揮発性メモリ及び前記揮発性メモリから構成され、 Information for managing the operating system and a main storage unit for managing information related to the process are composed of the nonvolatile memory and the volatile memory,
前記プロセスに関する情報のうち、更新頻度の高い情報が前記不揮発性メモリに格納され、更新頻度の低い情報が前記揮発性メモリに格納され、 Of the information related to the process, information with high update frequency is stored in the nonvolatile memory, information with low update frequency is stored in the volatile memory,
前記不揮発性記憶媒体は、前記プロセスに関する情報を格納し、 The nonvolatile storage medium stores information regarding the process,
前記電源異常遮断判定部は、 The power supply abnormality interruption determination unit
前記装置の電源投入時に、前記揮発性メモリに格納される前記プロセスに関する情報を、前記不揮発性記憶媒体から読み出し、 When the device is turned on, information related to the process stored in the volatile memory is read from the nonvolatile storage medium,
前記読み出されたプロセスに関する情報と、前記不揮発メモリに格納されている情報とに基づいて、前記装置の電源が遮断される前に実行されていたプロセスを、前記プロセスが中断された処理から再開することを特徴とする請求項1から請求項4の少なくともいずれかに記載の不揮発性メモリを主記憶に用いた装置。 Based on the information on the read process and the information stored in the nonvolatile memory, the process executed before the power of the device is shut down is restarted from the process at which the process was interrupted. An apparatus using the nonvolatile memory according to at least one of claims 1 to 4 as a main memory.
さらに、一以上の揮発性メモリ、及び不揮発性記憶媒体を備え、 Furthermore, it comprises one or more volatile memories and a non-volatile storage medium,
前記オペレーティングシステムを管理する情報、及び前記プロセスに関する情報を管理する主記憶部は、前記不揮発性メモリ及び前記揮発性メモリから構成され、 Information for managing the operating system and a main storage unit for managing information related to the process are composed of the nonvolatile memory and the volatile memory,
前記不揮発性メモリ又は前記揮発性メモリの物理記憶領域に論理記憶領域が作成され、 A logical storage area is created in a physical storage area of the nonvolatile memory or the volatile memory,
前記物理記憶領域は、複数の物理的な単位記憶領域に区分され、 The physical storage area is divided into a plurality of physical unit storage areas,
前記論理記憶領域は、複数の論理的な単位記憶領域に区分され、 The logical storage area is divided into a plurality of logical unit storage areas,
前記プロセスに関する情報のうち、更新頻度の高い情報が前記不揮発性メモリに格納され、更新頻度の低い情報が前記揮発性メモリに格納され、 Of the information related to the process, information with high update frequency is stored in the nonvolatile memory, information with low update frequency is stored in the volatile memory,
前記不揮発性記憶媒体は、前記プロセスに関する情報を格納し、 The nonvolatile storage medium stores information regarding the process,
前記不揮発性メモリは、前記プロセスと、前記プロセスを実行する順位を示すプロセスの優先度とを管理するプロセス管理表、並びに前記物理的な単位記憶領域と前記論理な単位記憶領域との対応を管理する論理物理変換テーブルを備え、 The nonvolatile memory manages a process management table for managing the process and a priority of the process indicating the order of execution of the process, and a correspondence between the physical unit storage area and the logical unit storage area Logical to physical conversion table
前記論理物理変換テーブルは、前記不揮発性メモリ又は前記揮発性メモリにおける前記論理的な単位記憶領域のアドレス及び前記物理的な単位記憶領域のアドレス、前記論理的な記憶領域の優先度、並びに、前記不揮発性メモリ及び前記揮発性メモリの性能を示すメモリ性能情報を含み、 The logical-physical conversion table includes an address of the logical unit storage area and an address of the physical unit storage area in the nonvolatile memory or the volatile memory, a priority of the logical storage area, and the Including memory performance information indicating the performance of the non-volatile memory and the volatile memory,
前記オペレーティングシステムは、 The operating system is
実行される前記プロセスが切り替えられる時に、前記論理的な単位記憶領域の優先度、及び前記メモリ性能情報を参照し、 When the process to be executed is switched, refer to the priority of the logical unit storage area and the memory performance information,
前記メモリ性能情報が低性能である前記不揮発性メモリ又は前記揮発性メモリの前記論理的な単位記憶領域の優先度が大きい第1の論理的な単位記憶領域に第1のプロセスが格納され、前記メモリ性能情報が高性能である前記不揮発性メモリ又は前記揮発性メモリの前記論理的な単位記憶領域の優先度が小さい第2の論理的な単位記憶領域に第2のプロセスが格納される場合、前記第1の論理的な単位記憶領域と、前記第2の論理的な単位記憶領域とを入れ替えることを特徴とする請求項1から請求項5の少なくともいずれかに記載の不揮発性メモリを主記憶に用いた装置。 A first process is stored in a first logical unit storage area having a high priority of the logical unit storage area of the nonvolatile memory or the volatile memory in which the memory performance information is low performance, When the second process is stored in a second logical unit storage area having a low priority of the logical unit storage area of the nonvolatile memory or the volatile memory having high memory performance information, 6. The nonvolatile memory according to claim 1, wherein the first logical unit storage area and the second logical unit storage area are interchanged. Equipment used for.
前記プロセスの優先度が大きい場合に、大きく設定され、 When the priority of the process is large, it is set large,
前記プロセスの優先度が小さい場合に、小さく設定されることを特徴とする請求項6に記載の不揮発性メモリを主記憶に用いた装置。 The apparatus using the nonvolatile memory according to claim 6, wherein the non-volatile memory is set to be small when the priority of the process is low.
前記プロセスの優先度は、前記プロセスの属性、及び前記利用頻度に基づいて、算出されることを特徴とする請求項6又は請求項7に記載の不揮発性メモリを主記憶に用いた装置。 The apparatus using the nonvolatile memory according to claim 6 or 7, wherein the priority of the process is calculated based on an attribute of the process and the use frequency.
前記オペレーティングシステムは、前記プロセッサがキャッシュする論理的な単位記憶領域以外の領域へのアクセスが発生した時に、前記第1の論理的な単位記憶領域と、前記第2の論理的な単位記憶領域とを入れ替えることを特徴とする請求項6から請求項9の少なくともいずれかに記載の不揮発性メモリを主記憶に用いた装置。 When the operating system accesses an area other than the logical unit storage area cached by the processor, the operating system includes the first logical unit storage area, the second logical unit storage area, 10. A device using the non-volatile memory according to claim 6 as main memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008279770A JP5166211B2 (en) | 2008-10-30 | 2008-10-30 | Device using non-volatile memory as main memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008279770A JP5166211B2 (en) | 2008-10-30 | 2008-10-30 | Device using non-volatile memory as main memory |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2010108253A JP2010108253A (en) | 2010-05-13 |
JP2010108253A5 JP2010108253A5 (en) | 2011-03-10 |
JP5166211B2 true JP5166211B2 (en) | 2013-03-21 |
Family
ID=42297643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008279770A Expired - Fee Related JP5166211B2 (en) | 2008-10-30 | 2008-10-30 | Device using non-volatile memory as main memory |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5166211B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9436598B2 (en) | 2011-03-04 | 2016-09-06 | Renesas Electronics Corporation | Semiconductor device with nonvolatile memory prevented from malfunctioning caused by momentary power interruption |
JP6007529B2 (en) * | 2012-03-14 | 2016-10-12 | 富士ゼロックス株式会社 | Image forming apparatus, information processing apparatus, and program |
US9195585B2 (en) | 2013-01-23 | 2015-11-24 | Vmware, Inc. | Techniques for allocating and surfacing host-side storage capacity to virtual machines |
JP2014212425A (en) * | 2013-04-18 | 2014-11-13 | 株式会社日立国際電気 | Radio communication terminal and radio communication start timing control method of radio communication terminal |
US9959203B2 (en) * | 2014-06-23 | 2018-05-01 | Google Llc | Managing storage devices |
CN109144214B (en) * | 2018-08-06 | 2022-05-03 | 交叉信息核心技术研究院(西安)有限公司 | Energy management system, method, electronic device, device and nonvolatile processor |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63153652A (en) * | 1986-12-17 | 1988-06-27 | Hitachi Ltd | Semiconductor integrated circuit |
JPH04359305A (en) * | 1991-06-05 | 1992-12-11 | Hitachi Ltd | Personal computer |
FR2691556B1 (en) * | 1992-05-25 | 1994-08-26 | Hewlett Packard Co | Method and device for starting a computer at a scheduled time. |
JPH096749A (en) * | 1995-06-15 | 1997-01-10 | Hitachi Ltd | Digital signal processor |
JPH11231963A (en) * | 1998-02-12 | 1999-08-27 | Sanyo Electric Co Ltd | Microcomputer |
JP2008134785A (en) * | 2006-11-28 | 2008-06-12 | Sharp Corp | Memory controller |
-
2008
- 2008-10-30 JP JP2008279770A patent/JP5166211B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010108253A (en) | 2010-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8621144B2 (en) | Accelerated resume from hibernation in a cached disk system | |
JP4281421B2 (en) | Information processing system, control method therefor, and computer program | |
KR100843543B1 (en) | System comprising flash memory device and data recovery method thereof | |
KR101044220B1 (en) | Non-volatile memory cache performance improvement | |
JP5636034B2 (en) | Mediation of mount times for data usage | |
JP4902501B2 (en) | Power control method, computer system, and program | |
US20150331624A1 (en) | Host-controlled flash translation layer snapshot | |
US20150039837A1 (en) | System and method for tiered caching and storage allocation | |
JP5166211B2 (en) | Device using non-volatile memory as main memory | |
JP4808275B2 (en) | Network boot system | |
US20070130442A1 (en) | Apparatus and Methods Using Invalidity Indicators for Buffered Memory | |
JPH077317B2 (en) | System restart device | |
JP5290287B2 (en) | Network boot system | |
CN111338561B (en) | Memory controller and memory page management method | |
JP5445463B2 (en) | Computer system, data storage method and program | |
US20100205391A1 (en) | Memory system and managing method therefor | |
US20140297927A1 (en) | Information processing apparatus, information processing method, and recording medium | |
KR20140147017A (en) | System and method for recovering from an unexpected shutdown in a write-back caching environment | |
CN111796882A (en) | Electronic equipment system processing method and device and electronic equipment | |
CN113127263A (en) | Kernel crash recovery method, device, equipment and storage medium | |
KR102123701B1 (en) | Network boot system | |
US20140289486A1 (en) | Information processing apparatus, information processing method, and recording medium | |
JP2002258971A (en) | Method for restarting computer system | |
JP2003203007A (en) | Nonvolatile area control method for memory of mobile phone | |
JP4711191B2 (en) | Method of using online expansion memory, program and information processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110125 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110125 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120309 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121220 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151228 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |