JP2009093311A - ノンストッププログラムシステムおよびそのメモリ断片化回避方法 - Google Patents

ノンストッププログラムシステムおよびそのメモリ断片化回避方法 Download PDF

Info

Publication number
JP2009093311A
JP2009093311A JP2007261537A JP2007261537A JP2009093311A JP 2009093311 A JP2009093311 A JP 2009093311A JP 2007261537 A JP2007261537 A JP 2007261537A JP 2007261537 A JP2007261537 A JP 2007261537A JP 2009093311 A JP2009093311 A JP 2009093311A
Authority
JP
Japan
Prior art keywords
program
state
sby
variable area
running
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.)
Pending
Application number
JP2007261537A
Other languages
English (en)
Inventor
Fumiaki Yamamoto
文章 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lapis Semiconductor Co Ltd
Oki Networks Co Ltd
Original Assignee
Oki Networks Co Ltd
Oki Semiconductor Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Oki Networks Co Ltd, Oki Semiconductor Co Ltd filed Critical Oki Networks Co Ltd
Priority to JP2007261537A priority Critical patent/JP2009093311A/ja
Priority to US12/233,664 priority patent/US8028297B2/en
Publication of JP2009093311A publication Critical patent/JP2009093311A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated

Abstract

【課題】ノンストップで稼動してプログラムを実行するノンストッププログラムシステムおよびそのメモリ断片化回避方法を提供。
【解決手段】ノンストッププログラムシステム10は、複数のプログラム面30および32が、同じ内容であるが独立したものであるプログラム34および38と、変数領域36および40とを備えるもので、0面30の動作状態をACT状態にしてこの0面30を走行面にしてプログラムを実行するとき、1面32の動作状態をHOT_SBY状態にしてこの1面32における変数領域40を走行面30における変数領域36のメモリ内容と同期させ、さらに、この走行面の切り替えを行うとき、HOT_SBY状態であった1面32の動作状態をACT状態にしてこの1面32を走行面にしてプログラムを実行することにより、走行面の切り替えを速やかにスムーズに行うことができる。
【選択図】図1

Description

本発明は、ノンストップで稼動してプログラムを実行するノンストッププログラムシステムおよびそのメモリ断片化回避方法に関するものである。
従来から、ノンストッププログラムシステムは、ノンストップで稼動してプログラムを実行して、停止することなく処理を続行するもので、たとえば特許文献1に記載するようにそのプログラム実行時に発生するメモリリークを解放するアプリケーション切替制御方式が知られている。
この方式では、プログラム起動制御ソフトウエアが、ソフトウエア管理部に索引情報およびソフトウエア世代識別情報を設定して複数のプログラムの起動制御を一括管理し、時間監視ソフトウエアからの通知によって周期的に古いプログラムを新しいプログラムに入れ替えて、古いプログラムが抱えていたかもしれないメモリリークを、アプリケーションが提供するサービス自体を停止することなく自動復旧することができる。
特開2002-259142号公報
しかしながら、従来のノンストッププログラムシステムでは、プログラム実行時にメモリハントやメモリフリーを繰り返すことによって生じるメモリ断片化を解消することはできない。
プログラムは、メモリを有効活用するために記憶領域が必要になったときに動的にメモリをハントし、必要がなくなったときにメモリをフリーするが、その動作が繰り返し行われると、メモリにおける連続的な領域が確保されず、その確保領域が不連続になることがある。このようなメモリを用いたプログラム実行時にメモリリークが発生すると、メモリにおいて使用可能な領域が断片的に配されるためにプログラムの実行が継続できなくなる。
このようなメモリ断片化は、メモリの至る所に発生する。メモリ断片化された領域は、メモリ全体から見ると少ないが、確実に使用できない領域が増加する傾向にある。これにより、メモリハントできる領域が少なくなり、またメモリハントする領域が不連続に確保されることになるので、ノンストッププログラムシステムにおいて、システム停止や処理速度低下などの重大な影響を与えることになる。
本発明は、このような従来技術の欠点を解消し、メモリ断片化のために生じる使用できないメモリ領域の発生や処理速度の低下を回避するノンストッププログラムシステムおよびそのメモリ断片化回避方法を提供することを目的とする。
本発明は上述の課題を解決するために、ノンストップで稼動してプログラムを実行するノンストッププログラムシステムは、このシステムの機能を実現するこのプログラムと、このプログラムの動作に係る変数を格納する変数領域とを備えた複数のプログラム面を含み、これらの複数のプログラム面のそれぞれにおける複数のプログラムは、同じ内容であるがそれぞれ独立したプログラムであり、さらに、このシステムは、これらの複数のプログラム面のうち、このプログラムを実行する一のプログラム面を示す走行面と、これらの複数のプログラム面のそれぞれの動作状態とを制御する全体制御手段を含み、この全体制御手段は、これらの複数のプログラム面のうち、一方のプログラム面の動作状態をACT状態にし、この一方のプログラム面を走行面にしてこの走行面のプログラムを実行し、また、他方のプログラム面の動作状態をHOT_SBY状態にし、この他方のプログラム面におけるこの変数領域をこの走行面におけるこの変数領域のメモリ内容と同期させ、このシステムは、この走行面の切り替えを行うとき、HOT_SBY状態であったこの他方のプログラム面の動作状態をACT状態にし、この他方のプログラム面を走行面にしてこの走行面のプログラムを実行することを特徴とする。
また、ノンストップで稼動してプログラムを実行する場合に発生するメモリ断片化を回避するメモリ断片化回避方法は、このプログラムと、このプログラムの動作に係る変数を格納する変数領域とを備えた複数のプログラム面であって、これらの複数のプログラム面のそれぞれにおける複数のプログラムとして、同じ内容であるがそれぞれ独立したプログラムを備えたこれらの複数のプログラム面を使用し、これらの複数のプログラム面のうち、このプログラムを実行する一のプログラム面を示す走行面と、これらの複数のプログラム面のそれぞれの動作状態とを制御して、これらの複数のプログラム面のうち、一方のプログラム面の動作状態をACT状態にし、この一方のプログラム面を走行面にしてこの走行面のプログラムを実行し、また、他方のプログラム面の動作状態をHOT_SBY状態にし、この他方のプログラム面におけるこの変数領域をこの走行面におけるこの変数領域のメモリ内容と同期させ、さらに、この方法は、この走行面の切り替えを行うとき、HOT_SBY状態であったこの他方のプログラム面の動作状態をACT状態にし、この他方のプログラム面を走行面にしてこの走行面のプログラムを実行することを特徴とする。
本発明のノンストッププログラムシステムは、複数のプログラム面のいずれかを走行面とするもので、各プログラム面はプログラムおよび変数領域を備え、これらのプログラムとして同じ内容であるが独立したものを使用し、また、全体制御部が、走行面と複数のプログラム面の各動作状態とを制御して、複数のプログラム面のうち、0面の動作状態をACT状態にし、この0面を走行面にしてこの走行面のプログラムを実行し、また、1面の動作状態をHOT_SBY状態にし、この1面におけるこの変数領域をこの走行面におけるこの変数領域のメモリ内容と同期させ、さらに、この走行面の切り替えを行うとき、HOT_SBY状態であった1面の動作状態をACT状態にし、この1面を走行面にしてこの走行面のプログラムを実行することにより、変数値の共有化を図り、動作を停止することなく走行面の切り替えを速やかにスムーズに行うことができる。
また、本発明のノンストッププログラムシステムは、周期起動制御部が所定の周期で割り込みを発生して走行面の切り替えを指示し、走行面の切り替えを行うとき、ACT状態であった0面の動作状態をSBY状態にし、SBY状態である0面における変数領域のデフラグを実施してから、0面の動作状態をHOT_SBY状態にし、0面における変数領域を走行面における変数領域のメモリ内容と同期させることにより、システムの動作中にメモリのデフラグを実行することができ、システムを停止することなくメモリの断片化を整埋できる。
したがって、本発明によれば、メモリ障害の原因の一つを防ぐことができるので、ノンストップで稼動してプログラムを実行するシステムにおいて、効果的に適用することができる。
次に添付図面を参照して、本発明によるノンストッププログラムシステムの実施例を詳細に説明する。たとえば、本発明のシステム10は、図1に示すように、本システム10が円滑に動作するように制御する制御ソフトウエア12、および本システムの機能を実現するプログラムを有するアプリケーションソフトウエア14を含んで構成され、制御ソフトウエア12がアプリケーションソフトウエア14のプログラム実行を制御してそのアプリケーションのメモリ断片化を回避するものである。なお、本発明の理解に直接関係のない部分は、図示を省略し、冗長な説明を避ける。
制御ソフトウエア12は、本システム10の全体を制御する全体制御部20、アプリケーションソフトウエア14におけるプログラム面のうち走行している面、すなわち走行面の切り替えを制御する周期起動制御部22および、非走行面の変数領域のデフラグを制御するデフラグ制御部24を含み、この全体制御部20は、走行面を管理する走行面管理部26および各プログラム面の動作状態を管理する状態管理部28を含んで構成される。
また、アプリケーションソフトウエア14は、少なくとも2つ以上のプログラム面30および32を有し、これらのプログラム面30および32は、それぞれプログラム34および38と、変数領域36および40を含んで構成される。
本システム10では、プログラム34および38の動作状態として、動作中、すなわち走行中であることを示すACT状態、ACT状態のプログラム面と変数領域の内容のみを同期させる、すなわちミラーリング動作中であることを示すHOT_SBY状態、およびプログラムの待機中、すなわち非走行中であることを示すSBY状態のいずれかが、各プログラム面30および32に対して設定される。
全体制御部20は、本システム10の全体の動作を制御するもので、本実施例ではとくに、アプリケーションソフトウエア14の走行面、ならびに各プログラム面30および32の動作状態を監視して、アプリケーションソフトウエア14に対して、変数領域36および40のメモリ同期指示108を通知し、走行面または各プログラム面の動作状態の切り替え指示110を通知し、さらにデフラグ制御部24に対してデフラグ制御指示104を通知する。デフラグ制御指示104を受けたデフラグ制御部24は、アプリケーションソフトウエア14に対してデフラグ実施112を行う。
また、全体制御部20における走行面管理部26は、アプリケーションソフトウエア14における2つ以上のプログラム面30および32のうち、いずれが走行中であるかの情報を保持し、状態管理部28は、走行面管理部26で管理する走行面に対応して、これらのプログラム面30および32の動作状態を示す情報を保持する。
本実施例の全体制御部20は、周期起動制御部22からの割り込み102に応じて、いずれのプログラム面が走行面であるかを走行面管理部26によって確認して両プログラム面30および32に対して走行面の切り替え指示110をし、ACT状態のプログラム面に対してはSBY状態への切り替え指示110をし、HOT_SBY状態のプログラム面に対してはACT状態への切り替え指示110をする。
また、全体制御部20は、デフラグ制御部24からのデフラグ終了112に応じて、デフラグ実施をしたプログラム面に対して動作状態の切り替え指示110をし、SBY状態のプログラム面に対してHOT_SBY状態への切り替え指示をする。
さらに、全体制御部20は、プログラム面30および32の動作状態を状態管理部28によって確認して、所定のプログラム面がHOT_SBY状態であれば、アプリケーションソフトウエア14に対してメモリ同期指示108を通知して、その所定のプログラム面の変数領域のメモリ内容を他方のプログラム面の変数領域のメモリ内容に同期させる。
また、全体制御部20は、プログラム面30および32の動作状態を状態管理部28によって確認して、所定のプログラム面がSBY状態であれば、デフラグ制御部24に対してデフラグ制御指示104を通知して、その所定のプログラム面の変数領域のデフラグを実施させる。
周期起動制御部22は、所定の周期ごとに割り込み102を発生して全体制御部20に供給し、これによってプログラム面30および32の走行面を切り替えさせる。
デフラグ制御部24は、全体制御部20からのデフラグ制御指示104に応じて、この指示104が示すプログラム面の変数領域に対してデフラグを実行して、メモリハントやメモリフリーによるメモリの断片化を解消する。また、デフラグ制御部24は、そのデフラグ実行が終了すると、全体制御部20に対してデフラグ終了106を通知する。
アプリケーションソフトウエア14は、メモリエリアをプログラム面ごとに分けて構成され、本実施例では2つのプログラム面30および32を有し、以下ではプログラム面30を0面、プログラム面32を1面と称する。このアプリケーションソフトウエア14は、プログラム面30または32のいずれかを走行面とし、この走行面におけるプログラムを実行プログラムとして動作させる。
本実施例のアプリケーションソフトウエア14は、制御ソフトウエア12の全体制御部20から走行面の切り替え指示110を受けると、プログラム面30および32の走行面を切り替え、ACT状態であったプログラム面をSBY状態にし、HOT_SBY状態であったプログラム面をACT状態にする。
また、アプリケーションソフトウエア14は、制御ソフトウエア12の全体制御部20から所定のプログラム面の動作状態の切り替え指示110を受けると、SBY状態であったプログラム面をHOT_SBY状態にする。
プログラム34および38は、本システムの機能を実現するプログラムであり、両プログラム34および38は同一のプログラムである。
変数領域36および40は、プログラムの動作に要する変数などを記憶するメモリであり、それぞれ独立したメモリ領域である。本実施例では、変数領域36はプログラム34が占有して使用する領域でプログラム34の動作に係る変数だけを記憶し、変数領域40はプログラム38が占有して使用する領域でプログラム38の動作に係る変数だけを記憶するものである。すなわち、プログラム34は、領域40にアクセスすることはできず、またプログラム38は、領域36にアクセスすることはできない。
本実施例において、アプリケーションソフトウエア14がアプリケーションソフトウエア14の全体制御部20からメモリ同期指示108を受けると、HOT_SBY状態のプログラム面の変数領域は、そのメモリ内容をACT状態のプログラム面の変数領域のものとミラーリング構成により有機的に同期させて同じ内容の変数を保持する。
次に、本実施例の本システム10によりメモリ断片化を回避する動作例を図2のシーケンスチャートおよび図3のフローチャートを参照しながら説明する。また、この場合に時刻とともに変化する各プログラム面の動作状態を図4の状態遷移図に表す。
本実施例では、まず、本システム10が起動すると、全体制御部20がアプリケーションソフトウエア14における一方のプログラム面、たとえば0面30をACT状態にし、他方のプログラム面、たとえば1面32をHOT_SBY状態にする(S252)。
全体制御部20では、アプリケーションソフトウエア14に対してプログラム走行監視202を実行して、現行の走行面、ならびに各プログラム面30および32の動作状態を確認して、走行面管理部26ならびに状態管理部28に格納する。このとき、時刻t302では、0面30がACT状態であり、1面32がHOT_SBY状態であることを確認できる。
また、このとき、全体制御部20では、一方のプログラム面32がHOT_SBY状態であるので、アプリケーション14に対してメモリ同期指示204(108)を通知し、HOT_SBY状態の変数領域40のメモリ内容を、ACT状態の変数領域36と同期させる。このメモリ同期は、周期起動制御部22から割り込み206(102)があるまで行われる。
次に、ステップS254では、周期起動制御部22で割り込み102が発生したか否かが判定され、発生した場合にはステップS256に進み、それ以外の場合には、ステップS252に戻る。
本実施例では、周期起動制御部22における所定の周期が経過すると、この制御部22で割り込み206(102)が発生して全体制御部20に送られて、ステップS256に進む。
ステップS256では、全体制御部20において、割り込み102に応じて走行面の切り替え指示208(110)がアプリケーション14に送られ、走行面、ならびに各プログラム面30および32の動作状態が切り替わる。本実施例では、ACT状態の0面30がSBY状態に切り替えられ、HOT_SBY状態の1面32がACT状態に切り替えられて、さらにこの1面32が走行面となる(t304)。
このとき、HOT_SBY状態であった1面32の変数領域40が、メモリ同期処理によって、ACT状態であった0面30の変数領域36と同一の内容を保持しているので、走行面の切り替えは、速やかにスムーズに実行することができる。
次に、ステップS258に進み、全体制御部20にて、SBY状態のプログラム面に対するデフラグ指示210(104)がデフラグ制御部24に送られ、デフラグ制御部24ではこのデフラグ指示210(104)に応じて、アプリケーション14におけるSBY状態のプログラム面、すなわち0面30に対してデフラグ実施212(112)が行われ、0面30の変数領域36におけるメモリ断片化が解消される。
また、全体制御部20では、デフラグ制御部24のデフラグ実施212(112)が終了したか否かが判定され(S260)、終了した場合にはステップS262に進み、それ以外の場合にはステップS258に戻る。
本実施例では、このデフラグ実施212(112)が終了すると、デフラグ制御部24において、全体制御部20に対してデフラグ終了214(106)が通知され、ステップS262に進む。
このステップS262では、全体制御部20において、デフラグ実施112が終了したプログラム面、すなわち0面30に対する動作状態の切り替え指示216(110)がアプリケーション14に送られ、0面30の動作状態がSBY状態からHOT_SBY状態に切り替えられる(t306)。
その後、全体制御部20では、上記と同様にしてアプリケーション14に対してプログラム走行監視218を実行して、現行の走行面および各プログラム面の動作状態を確認して走行面管理部26および状態管理部28に格納する。このとき、時刻t306では、0面30がHOT_SBY状態であり、1面32がACT状態であることを確認できる。
このとき、0面30がHOT_SBY状態であるので、全体制御部20では、アプリケーション14に対してメモリ同期指示220(108)を通知し、HOT_SBY状態の変数領域36のメモリ内容を、ACT状態の変数領域40と同期させる。
次に、ステップS264に進み、ステップS254と同様にして、周期起動制御部22で割り込み102が発生したか否かが判定され、本実施例では、この制御部22において所定の周期が経過して割り込み222(102)が発生して全体制御部20に送られて、ステップS266に進む。
ステップS266では、ステップS256と同様にして、全体制御部20において、割り込み222(102)に応じて走行面の切り替え指示224(110)がアプリケーション14に送られて、本実施例のアプリケーション14では、ACT状態の1面32がSBY状態に切り替えられ、HOT_SBY状態の0面30がACT状態に切り替えられて、さらにこの0面30が走行面となる(t308)。
次に、ステップS268に進み、ステップS258と同様にして、デフラグ指示226(104)が全体制御部20からデフラグ制御部24に送られ、デフラグ制御部24ではこの指示104に応じて、アプリケーション14におけるSBY状態の1面32に対してデフラグ実施228(112)が行われ、1面32の変数領域40におけるメモリ断片化が解消される。
また、全体制御部20では、ステップS260と同様にして、デフラグ制御部24のデフラグ実施112が終了したか否かが判定され(S270)、このデフラグ実施228(112)が終了すると、デフラグ制御部24から全体制御部20に対してデフラグ終了230(106)が通知され、ステップS272に進む。
ステップS272では、ステップS262と同様にして、デフラグ実施112が終了した1面32に対する動作状態の切り替え指示232(110)が全体制御部20からアプリケーション14に送られ、1面32の動作状態がSBY状態からHOT_SBY状態に切り替えられる(t310)。
本システム10では、その後、ステップS252に戻って上記の処理が繰り返されてプログラム面30および32を交互に切り替えて、プログラム34および38が順次実行される。本システム10は、このようにして停止することなく処理を続行しつつ、変数領域36および40のメモリ断片化を効率よく解消することができる。
本発明のノンストッププログラムシステムは、たとえば医療機器や人工衛星、または無人ロケットなどの、電源の入れ直しや再起動をすることが困難な自立式稼動システム、すなわちノンストッププログラムを必要とするいかなるシステムにも適用することができ、そのプログラムの実行により生じるメモリ断片化を効率よく解消することができる。
本発明に係るノンストッププログラムシステムの一実施例を示すブロック図である。 図1に示す実施例のノンストッププログラムシステムにおける動作手順を説明するシーケンスチャートである。 図1に示す実施例のノンストッププログラムシステムにおける動作手順を説明するフローチャートである。 図1に示す実施例のシステムのアプリケーションソフトウエアにおける各プログラム面の動作状態を示す状態遷移図である。
符号の説明
10 ノンストッププログラムシステム
12 制御ソフトウエア
14 アプリケーションソフトウエア
20 全体制御部
22 周期起動制御部
24 デフラグ制御部
26 走行面管理部
28 状態管理部
30、32 プログラム面
34、38 プログラム
36、40 変数領域

Claims (6)

  1. ノンストップで稼動してプログラムを実行するノンストッププログラムシステムにおいて、該システムは、
    該システムの機能を実現する前記プログラムと、該プログラムの動作に係る変数を格納する変数領域とを備えた複数のプログラム面を含み、
    前記複数のプログラム面のそれぞれにおける複数の前記プログラムは、同じ内容であるがそれぞれ独立したプログラムであり、
    さらに、該システムは、前記複数のプログラム面のうち、前記プログラムを実行する一のプログラム面を示す走行面と、前記複数のプログラム面のそれぞれの動作状態とを制御する全体制御手段を含み、
    該全体制御手段は、前記複数のプログラム面のうち、一方のプログラム面の動作状態をACT状態にし、該一方のプログラム面を走行面にして該走行面のプログラムを実行し、また、他方のプログラム面の動作状態をHOT_SBY状態にし、該他方のプログラム面における前記変数領域を前記走行面における前記変数領域のメモリ内容と同期させ、
    該システムは、前記走行面の切り替えを行うとき、HOT_SBY状態であった前記他方のプログラム面の動作状態をACT状態にし、該他方のプログラム面を走行面にして該走行面のプログラムを実行することを特徴とするノンストッププログラムシステム。
  2. 請求項1に記載のノンストッププログラムシステムにおいて、該システムは、所定の周期で割り込みを発生して前記走行面の切り替えを指示する周期起動制御手段を含むことを特徴とするノンストッププログラムシステム。
  3. 請求項1に記載のノンストッププログラムシステムにおいて、該システムは、前記走行面の切り替えを行うとき、ACT状態であった前記一方のプログラム面の動作状態をSBY状態にし、SBY状態である前記一方のプログラム面における前記変数領域のデフラグを実施してから、前記一方のプログラム面の動作状態をHOT_SBY状態にし、該一方のプログラム面における前記変数領域を前記走行面における前記変数領域のメモリ内容と同期させることを特徴とするノンストッププログラムシステム。
  4. ノンストップで稼動してプログラムを実行する場合に発生するメモリ断片化を回避するメモリ断片化回避方法において、該方法は、
    前記プログラムと、該プログラムの動作に係る変数を格納する変数領域とを備えた複数のプログラム面であって、該複数のプログラム面のそれぞれにおける複数の前記プログラムとして、同じ内容であるがそれぞれ独立したプログラムを備えた前記複数のプログラム面を使用し、
    該複数のプログラム面のうち、前記プログラムを実行する一のプログラム面を示す走行面と、前記複数のプログラム面のそれぞれの動作状態とを制御して、前記複数のプログラム面のうち、一方のプログラム面の動作状態をACT状態にし、該一方のプログラム面を走行面にして該走行面のプログラムを実行し、また、他方のプログラム面の動作状態をHOT_SBY状態にし、該他方のプログラム面における前記変数領域を前記走行面における前記変数領域のメモリ内容と同期させ、
    さらに、該方法は、前記走行面の切り替えを行うとき、HOT_SBY状態であった前記他方のプログラム面の動作状態をACT状態にし、該他方のプログラム面を走行面にして該走行面のプログラムを実行することを特徴とするメモリ断片化回避方法。
  5. 請求項4に記載のメモリ断片化回避方法において、該方法は、所定の周期で割り込みを発生して前記走行面の切り替えを指示することを特徴とするメモリ断片化回避方法。
  6. 請求項4に記載のメモリ断片化回避方法において、該方法は、前記走行面の切り替えを行うとき、ACT状態であった前記一方のプログラム面の動作状態をSBY状態にし、SBY状態である前記一方のプログラム面における前記変数領域のデフラグを実施してから、前記一方のプログラム面の動作状態をHOT_SBY状態にし、該一方のプログラム面における前記変数領域を前記走行面における前記変数領域のメモリ内容と同期させることを特徴とするメモリ断片化回避方法。
JP2007261537A 2007-10-05 2007-10-05 ノンストッププログラムシステムおよびそのメモリ断片化回避方法 Pending JP2009093311A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007261537A JP2009093311A (ja) 2007-10-05 2007-10-05 ノンストッププログラムシステムおよびそのメモリ断片化回避方法
US12/233,664 US8028297B2 (en) 2007-10-05 2008-09-19 Nonstop program system and a method of continuously running programs by switching between program sides

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007261537A JP2009093311A (ja) 2007-10-05 2007-10-05 ノンストッププログラムシステムおよびそのメモリ断片化回避方法

Publications (1)

Publication Number Publication Date
JP2009093311A true JP2009093311A (ja) 2009-04-30

Family

ID=40524427

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007261537A Pending JP2009093311A (ja) 2007-10-05 2007-10-05 ノンストッププログラムシステムおよびそのメモリ断片化回避方法

Country Status (2)

Country Link
US (1) US8028297B2 (ja)
JP (1) JP2009093311A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013210930A (ja) * 2012-03-30 2013-10-10 Nec Corp フォールトトレラントサーバ、デフラグ方法、およびプログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170045981A (ko) * 2015-10-20 2017-04-28 한국전자통신연구원 소프트웨어를 포함한 시스템 및 이의 무중단 업그레이드 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259142A (ja) * 2001-03-02 2002-09-13 Nec Eng Ltd アプリケーション切替制御方式
JP2006058960A (ja) * 2004-08-17 2006-03-02 Nec Corp 冗長構成のサーバシステムにおける同期化方法及びシステム
JP2007257259A (ja) * 2006-03-23 2007-10-04 Nec Corp 情報処理装置、記憶領域クリーンアップ方法およびプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285448A (ja) * 2005-03-31 2006-10-19 Oki Electric Ind Co Ltd 冗長システム
JP4544146B2 (ja) * 2005-11-29 2010-09-15 株式会社日立製作所 障害回復方法
US7559006B2 (en) * 2006-03-13 2009-07-07 Alcatel Lucent Method and system for incorporating non-redundant components in a redundant system in a communications network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259142A (ja) * 2001-03-02 2002-09-13 Nec Eng Ltd アプリケーション切替制御方式
JP2006058960A (ja) * 2004-08-17 2006-03-02 Nec Corp 冗長構成のサーバシステムにおける同期化方法及びシステム
JP2007257259A (ja) * 2006-03-23 2007-10-04 Nec Corp 情報処理装置、記憶領域クリーンアップ方法およびプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013210930A (ja) * 2012-03-30 2013-10-10 Nec Corp フォールトトレラントサーバ、デフラグ方法、およびプログラム

Also Published As

Publication number Publication date
US8028297B2 (en) 2011-09-27
US20090094619A1 (en) 2009-04-09

Similar Documents

Publication Publication Date Title
CN102761566B (zh) 迁移虚拟机的方法和装置
CN103631633B (zh) 虚拟机全系统在线迁移方法、装置与系统
JP5403051B2 (ja) 若化処理装置、若化処理システム、コンピュータプログラムおよびデータ処理方法
CN110874261B (zh) 可用性系统、方法和存储有程序的存储介质
JP2007219757A (ja) 仮想計算機システムを機能させるためのプログラム
JP7116802B2 (ja) マスター・スタンドバイコンテナシステム切替
JP2005115751A (ja) 計算機システム及び計算機システムの障害兆候の検知方法
US20110107344A1 (en) Multi-core apparatus and load balancing method thereof
JP2008257572A (ja) 論理区画に動的に資源割り当てを行うストレージシステム及びストレージシステムの論理分割方法
JP2005250839A (ja) 耐障害性システム
JP2017097408A (ja) 情報処理装置およびプログラム更新制御方法
JP2004272899A (ja) コンピュータシステムにおけるリセット方法
JP2010020505A (ja) クラスタリングを構成する計算機システムの系切替方法、及びシステム
JP2007304845A (ja) 仮想計算機システムおよびソフトウェア更新方法
JP5576827B2 (ja) サーバ管理システム、サーバ管理装置、サーバ管理方法、及びサーバ管理プログラム
KR20150111608A (ko) 가상화 서버의 이중화를 위한 제어 방법 및 이를 위한 가상화 제어 장치
WO2018123456A1 (ja) プログラマブルコントローラ、管理装置および制御システム
JP2009093311A (ja) ノンストッププログラムシステムおよびそのメモリ断片化回避方法
JP2008217575A (ja) ストレージ装置及びその構成最適化方法
JP6239400B2 (ja) 制御装置
JP2005250840A (ja) 耐障害システムのための情報処理装置
EP3316518A1 (en) Method and device for upgrading virtual network element, and computer storage medium
JPWO2017170309A1 (ja) ネットワークシステム、その管理方法および装置ならびにサーバ
US20150033238A1 (en) System comprising a cluster of shared resources common to a plurality of resource and task managers
JP2016130947A (ja) 制御システム、および制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100924

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110302

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20120130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120307

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130108