JP6905189B2 - 情報処理装置、情報処理システムおよび制御プログラム - Google Patents

情報処理装置、情報処理システムおよび制御プログラム Download PDF

Info

Publication number
JP6905189B2
JP6905189B2 JP2017157969A JP2017157969A JP6905189B2 JP 6905189 B2 JP6905189 B2 JP 6905189B2 JP 2017157969 A JP2017157969 A JP 2017157969A JP 2017157969 A JP2017157969 A JP 2017157969A JP 6905189 B2 JP6905189 B2 JP 6905189B2
Authority
JP
Japan
Prior art keywords
information processing
time
module
information
processing device
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.)
Active
Application number
JP2017157969A
Other languages
English (en)
Other versions
JP2019036202A (ja
Inventor
洋一 安福
洋一 安福
伊藤 実希夫
実希夫 伊藤
浩志 潮見
浩志 潮見
敬子 加藤
敬子 加藤
安仁 菊地
安仁 菊地
博康 稲垣
博康 稲垣
幸徳 松川
幸徳 松川
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017157969A priority Critical patent/JP6905189B2/ja
Priority to US16/059,105 priority patent/US10690368B2/en
Publication of JP2019036202A publication Critical patent/JP2019036202A/ja
Application granted granted Critical
Publication of JP6905189B2 publication Critical patent/JP6905189B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/30Control or safety arrangements for purposes related to the operation of the system, e.g. for safety or monitoring
    • F24F11/46Improving electric energy efficiency or saving
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F11/00Control or safety arrangements
    • F24F11/62Control or safety arrangements characterised by the type of control or by internal processing, e.g. using fuzzy logic, adaptive control or estimation of values
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Description

本発明は、情報処理装置、情報処理システムおよび制御プログラムに関する。
情報処理システムでは、消費電力を削減することが常に要求されている。例えば、近年、クラウドコンピューティングの普及に伴って、サーバ装置やストレージ装置のデータセンタへの集約が進んでいる。このようなデータセンタでは、電力設備や空調設備についての短期的な改善が困難であることから、サーバ装置やストレージ装置の省電力化の要求が強くなっている。
消費電力の削減技術に関しては、次のような提案がある。例えば、ホストコンピュータの動作環境や動作状況に応じて、消費電力レベルの異なる低消費電力モードのいずれかに遷移するドライブ装置が提案されている。また、例えば、ディスクアレイ装置に含まれるスタンバイディスクを定期的に起動して動作確認を行い、正常であることが確認できた場合にはスタンバイディスクを停止させ、待機状態にする制御方法が提案されている。
一方、情報処理システムの耐故障性を高める方法として、情報処理装置を冗長化し、一方の情報処理装置の稼働時には他方の情報処理装置を待機状態にし、稼働中の情報処理装置の障害発生時には待機状態の情報処理装置が稼働して処理を引き継ぐ方法が知られている。
特開2006−31537号公報 特開平6−89146号公報
情報処理装置が冗長化された情報処理システムにおける制御方法としては、稼働中の情報処理装置において起動しているハードウェアやソフトウェアのモジュールと同じモジュールを、待機状態の情報処理装置でもすべて起動させておく方法が考えられる。この方法によれば、待機状態の情報処理装置を稼働状態に遷移させる際にモジュールを新たに起動させる必要がないため、稼働状態とする情報処理装置を切り換える処理にかかる時間を短縮できる。しかし、待機状態では動作しないモジュールが起動したままになる可能性があり、その分だけ消費電力が無駄になるという問題がある。
1つの側面では、本発明は、待機状態の装置の消費電力を低減可能な情報処理装置、情報処理システムおよび制御プログラムを提供することを目的とする。
1つの案では、記憶部と制御部とを有する次のような情報処理装置が提供される。この情報処理装置において、記憶部は、稼働状態である情報処理装置の複数の動作状態のそれぞれについて、稼働状態に遷移すると情報処理装置の処理を引き継ぐ他の情報処理装置を、待機状態から稼働状態に切り換える切り換え処理にかけることができる許容時間が登録された第1の情報と、他の情報処理装置が備え、かつ、他の情報処理装置が稼働状態の場合に動作する複数のモジュールのそれぞれについて、起動にかかる起動時間が登録された第2の情報と、を記憶する。制御部は、稼働状態である情報処理装置の現在の動作状態を判定し、第1の情報に登録された許容時間の中から現在の動作状態に対応する一の許容時間を特定し、第2の情報に基づいて、複数のモジュールの中から、動作を停止させる停止モジュールの総起動時間が一の許容時間以下になるように停止モジュールを決定し、待機状態である他の情報処理装置に対して停止モジュールを停止させるように指示する。
また、1つの案では、稼働状態である第1の情報処理装置と、待機状態であり、稼働状態に遷移すると第1の情報処理装置の処理を引き継ぐ第2の情報処理装置と、を有する情報処理システムが提供される。第1の情報処理装置は、次のような記憶部および第1の制御部を有する。記憶部は、第1の情報処理装置の複数の動作状態のそれぞれについて、第2の情報処理装置を待機状態から稼働状態に切り換える切り換え処理にかけることができる許容時間が登録された第1の情報と、第2の情報処理装置が備え、かつ、第2の情報処理装置が稼働状態の場合に動作する複数のモジュールのそれぞれについて、起動にかかる起動時間が登録された第2の情報と、を記憶する。第1の制御部は、第1の情報処理装置の現在の動作状態を判定し、第1の情報に登録された許容時間の中から現在の動作状態に対応する一の許容時間を特定し、第2の情報に基づいて、複数のモジュールの中から、動作を停止させる停止モジュールの総起動時間が一の許容時間以下になるように停止モジュールを決定し、停止モジュールを停止させる停止指示を第2の情報処理装置に送信する。第2の情報処理装置は、停止指示に応じて停止モジュールが停止するように制御し、切り換え処理が開始されると停止モジュールを起動させる第2の制御部を有する。
さらに、1つの案では、上記の情報処理装置と同様の処理をコンピュータに実行させる制御プログラムが提供される。
1つの側面では、待機状態の装置の消費電力を低減できる。
第1の実施の形態に係る情報処理システムの構成例および処理例を示す図である。 第2の実施の形態に係るストレージシステムの構成例を示す図である。 CMが備える処理機能の構成例を示すブロック図である。 切り換え許容時間情報の具体例を示す図である。 モジュール情報の具体例を示す図である。 起動制御情報の具体例を示す図である。 モジュールの起動時間および消費電力の取得処理例を示すフローチャートである。 モジュールの起動状態の更新処理例を示すフローチャートである。 切り換え許容時間判定処理例を示すフローチャートである。 起動モジュール決定処理例を示すフローチャートである。 モジュール起動制御処理例を示すフローチャートである。 アクティブCMの切り換え処理の例を示すフローチャートである。 スタンバイのCMにおける消費電力と切り換え時間の推移の例を示す図である。 変形例における起動モジュール決定処理例を示すフローチャートである。
以下、本発明の実施の形態について図面を参照して説明する。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る情報処理システムの構成例および処理例を示す図である。図1に示す情報処理システムは、情報処理装置1,2を含む。情報処理装置1,2のうち、一方は稼働状態となり、他方は待機状態となる。待機状態の情報処理装置は、稼働状態に遷移すると、それまで稼働状態であった情報処理装置の処理を引き継ぐ。なお、以下の説明において、初期状態では、情報処理装置1は稼働状態であり、情報処理装置2は待機状態であるものとする。
情報処理装置1は、記憶部1aと制御部1bを有する。記憶部1aは、例えば、情報処理装置が備える記憶装置の記憶領域として実装される。制御部1bは、例えば、情報処理装置1が備えるプロセッサとして実装される。
一方、情報処理装置2は、モジュールB1〜B3を備える。モジュールB1〜B3は、情報処理装置2が稼働状態になったときに動作する。したがって、モジュールB1〜B3のそれぞれは、例えば、情報処理装置2が待機状態であるときに停止していた場合、情報処理装置2を稼働状態に切り換える処理の間に起動する必要がある。
なお、モジュールB1〜B3のそれぞれは、ハードウェアのモジュールであってもよいし、ソフトウェアのモジュールであってもよい。また、情報処理装置2が備えるモジュールの数は「3」に限らず、2以上のいずれかの数とされればよい。
情報処理装置1の記憶部1aには、第1の情報1a1と第2の情報1a2が記憶される。
第1の情報1a1には、稼働状態である情報処理装置1の動作状態A1,A2,・・・のそれぞれについて、情報処理装置2を待機状態から稼働状態に切り換える切り換え処理にかけることができる許容時間が登録されている。図1の例では、動作状態A1に対して許容時間x1が登録され、動作状態A2に対して許容時間x2が登録されている。
例えば、情報処理装置1の動作状態によって、情報処理装置1で実行されている所定の処理を停止できる上限時間が変わる場合がある。この所定の処理とは、稼働状態に遷移した情報処理装置2が情報処理装置1から引き継ぐ処理である。より具体的な例としては、この所定の処理が情報処理装置2以外の外部装置からの処理要求に応じて実行される場合が考えられる。この場合、外部装置からの処理要求を受け入れている状態では、外部装置の処理に与える影響を小さくするために、処理要求の受信を停止している状態より、所定の処理を停止できる上限時間が短くなる。また、例えば、情報処理装置1で発生しているエラーの種類や発生状況によっても、所定の処理を停止できる上限時間は変わり得る。したがって、上記の例によれば、情報処理装置1の動作状態に応じた許容時間を、所定の処理を停止できる上限時間に基づいて決定することができる。
第2の情報1a2には、モジュールB1〜B3のそれぞれについて、起動にかかる起動時間が登録されている。図1の例では、モジュールB1に対して起動時間y1が登録され、モジュールB2に対して起動時間y2が登録され、モジュールB3に対して起動時間y3が登録されている。
制御部1bは、情報処理装置1が稼働状態であるときに、次のような処理を実行する。
制御部1bは、情報処理装置1の現在の動作状態を判定する(ステップST1)。制御部1bは、第1の情報1a1に登録された許容時間の中から、判定された現在の動作状態に対応する許容時間を特定する(ステップST2)。制御部1bは、第2の情報1a2に基づいて、モジュールB1〜B3の中から、動作を停止させる停止モジュールの総起動時間が特定された許容時間以下になるように、停止モジュールを決定する(ステップST3)。
そして、制御部1bは、待機状態である情報処理装置2に対して、決定された停止モジュールを停止させるように指示する(ステップST4)。情報処理装置2は、指示に応じて、モジュールB1〜B3のうち、停止モジュールに決定されたモジュールが停止し、それ以外のモジュールが起動状態になるように制御する。
以上の処理により、情報処理装置2を待機状態から稼働状態に切り換える切り換え処理を実行すべき事象が発生したとき、その時点で特定されている許容時間内で、モジュールB1〜B3のうち停止しているモジュールの起動を完了することができる。そして、稼働状態に遷移した情報処理装置2は、起動しているモジュールB1〜B3を用いて、情報処理装置1で実行されていた処理を引き継ぐことができる。
このように、情報処理装置1の上記処理により、切り換え処理にかかる時間に影響を与えない範囲で、稼働状態である情報処理装置1の動作状態によってはモジュールB1〜B3の一部またはすべてを停止させておくことができる。このため、切り換え処理にかかる時間を許容時間より延ばさずに、待機状態である情報処理装置2の消費電力を低減できる。
〔第2の実施の形態〕
次に、第2の実施の形態に係るストレージシステムについて説明する。第2の実施の形態に係るストレージシステムでは、上記の情報処理装置1,2の例としてストレージ制御装置が適用される。
図2は、第2の実施の形態に係るストレージシステムの構成例を示す図である。図2に示すストレージシステムは、ストレージ装置10と業務サーバ20とを有する。ストレージ装置10は、CM(Controller Module)100,200とDE(Drive Enclosure)300を有する。
CM100,200は、業務サーバ20からのI/O(Input/Output)要求に応じて、DE300に搭載された記憶装置に対するI/O処理を制御するストレージ制御装置である。例えば、CM100,200は、DE300に搭載された記憶装置を物理記憶領域として用いた論理ボリュームを設定し、業務サーバ20から論理ボリュームに対するI/O要求を受け付ける。
ここで、CM100,200のうち、一方はアクティブ(稼働状態)のCMとして動作し、他方はスタンバイ(待機状態)のCMとして動作する。そして、例えば、アクティブのCMの動作が故障などによって停止すると、他方のCMがスタンバイからアクティブに遷移し、それまでアクティブであったCMの処理を引き継ぐ。
より具体的には、CM100,200のうち、アクティブのCMは、業務サーバ20からのI/O要求を受け付け、そのI/O要求に応じて、DE300に搭載された記憶装置に対するI/O処理を制御する。そして、アクティブのCMの動作が停止すると、スタンバイのCMがアクティブに遷移し、それまでアクティブであったCMに代わって業務サーバ20からのI/O要求を受け付ける。
なお、CM100,200と業務サーバ20との間は、例えば、ファイバチャネル(FC:Fibre Channel)やiSCSI(Internet Small Computer System Interface)などを用いたSAN(Storage Area Network)を介して接続される。また、CM100とCM200との間は、専用の通信経路を介して接続され、相互に通信可能になっている。
DE300には、業務サーバ20からのアクセスの対象となる記憶装置が複数台搭載されている。本実施の形態では、例として、DE300にはこのような記憶装置としてHDD(Hard Disk Drive)301,302,303,・・・が搭載されているものとする。ただし、DE300には、SSD(Solid State Disk)などの他の種類の記憶装置が搭載されていてもよい。
業務サーバ20は、各種の業務に関する処理を実行するサーバコンピュータである。業務サーバ20は、それらの処理の実行の際に、CM100,200のうちアクティブのCMに対して、記憶装置に対するアクセスI/Oを適宜送信する。
業務サーバ20は、CM100,200と通信するためのHBA(Host Bus Adapter)21を備えている。HBA21は、CM100と接続されたポート21aと、CM200と接続されたポート21bを備える。業務サーバ20は、CM100,200のうちアクティブのCMとの間でのみ通信し、アクティブのCMが変更されると(すなわち、フェイルオーバが行われると)、その通信相手を他方のCMに切り換える。
なお、フェイルオーバの際の業務サーバ20による通信相手の変更は、例えば、次のようにして行われる。ホストインタフェース105,205が備える、業務サーバ20と通信するためのポート(図示せず)には、共通の論理的なポート番号が割り当てられ、アクティブ側のポートのみ有効化されている。そして、アクティブのCMの動作が停止すると、新たにアクティブになったCM側のポートが有効化される。これにより、アクティブのCMが変更になったことを業務サーバ20が意識することなく、業務サーバ20の通信相手が変更される。
次に、CM100,200のハードウェア構成例について説明する。CM100は、プロセッサ101、RAM(Random Access Memory)102、SSD103、内部インタフェース(I/F)104、ホストインタフェース(I/F)105およびドライブインタフェース(I/F)106を有する。CM200は、プロセッサ201、RAM202、SSD203、内部インタフェース(I/F)204、ホストインタフェース(I/F)205およびドライブインタフェース(I/F)206を有する。
プロセッサ101は、CM100全体を統括的に制御する。プロセッサ101は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、GPU(Graphics Processing Unit)、PLD(Programmable Logic Device)のいずれかである。また、プロセッサ101は、CPU、MPU、DSP、ASIC、GPU、PLDのうちの2以上の要素の組み合わせであってもよい。
RAM102は、CM100の主記憶装置である。RAM102は、プロセッサ101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、RAM102は、プロセッサ101による処理に用いる各種データを記憶する。SSD103は、CM100の補助記憶装置である。SSD103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、CM100は、補助記憶装置として、SSD103の代わりにHDDを備えていてもよい。
内部インタフェース104は、他方のCM200との間で通信するためのインタフェースであり、CM200の内部インタフェース204と接続されている。ホストインタフェース105は、業務サーバ20と通信するためのインタフェースである。したがって、ホストインタフェース105は、業務サーバ20のHBA21のポート21aと接続されている。ドライブインタフェース106は、DE300に搭載されたHDD301,302,303,・・・と通信するためのインタフェースである。
一方、CM200のプロセッサ201、RAM202、SSD203、内部インタフェース204、ホストインタフェース205、ドライブインタフェース206は、それぞれCM100のプロセッサ101、RAM102、SSD103、内部インタフェース104、ホストインタフェース105、ドライブインタフェース106に対応するハードウェアであるので、説明を省略する。なお、ホストインタフェース205は、業務サーバ20のHBA21のポート21bと接続されている。
図3は、CMが備える処理機能の構成例を示すブロック図である。なお、以下の説明では、例として、CM100がアクティブであり、CM200がスタンバイであるものとする。
アクティブのCM100は、I/O制御部110、シーケンス制御部120および記憶部130を有する。I/O制御部110およびシーケンス制御部120の処理は、例えば、CM100のプロセッサ101が所定のプログラムを実行することで実現される。記憶部130は、例えば、CM100のRAM102の記憶領域として実現される。
I/O制御部110は、業務サーバ20からのI/O要求に応じて、DE300に搭載された記憶装置に対するI/O処理を制御する。例えば、I/O制御部110は、業務サーバ20からのI/O要求に応じて、DE300内の記憶装置を用いた論理ボリュームに対するI/O処理を制御する。また、I/O制御部110は、例えば、論理ボリュームに対して書き込みが要求されたデータをDE300内の記憶装置に格納する際に、データの圧縮処理、あるいは、同じ内容のデータが重複しないようにする重複除去処理を実行する。
シーケンス制御部120は、内部インタフェース104を介して、スタンバイのCM200と連携しながら処理を実行する処理ブロックである。シーケンス制御部120は、CM100がアクティブである間、スタンバイのCM200が備えるモジュールのうち、どのモジュールを起動させておくかを制御する。この際の起動制御対象のモジュールとは、CM200がアクティブに遷移したときに動作するモジュールである。また、以下の説明では、起動制御対象のモジュールのうち、起動させておくモジュールを「起動モジュール」と呼び、停止させておくモジュールを「停止モジュール」と呼ぶ。
本実施の形態では、起動制御対象のモジュールは、CM200で実行されるプログラムであるものとする。したがって、起動制御対象のモジュールは、CM200がアクティブに遷移したときに、プロセッサ201に実行されるプログラムである。なお、起動制御対象のモジュールとして、ハードウェアが含まれてもよい。例えば、起動制御対象のモジュールとして、ホストインタフェース205やドライブインタフェース206を適用することができる。
シーケンス制御部120は、上記の実行制御の際、アクティブのCMをCM100からCM200に切り換える処理(アクティブCMの切り換え処理)にかかる切り換え所要時間に基づいて、起動モジュールおよび停止モジュールを決定する。具体的には、シーケンス制御部120は、アクティブCMの切り換え処理の開始から完了までの間にすべての停止モジュールの起動が完了するように、起動モジュールおよび停止モジュールを決定する。また、シーケンス制御部120は、CM100の動作の状態に応じて、起動モジュールおよび停止モジュールを動的に変更する。
記憶部130には、切り換え許容時間情報131、モジュール情報132および起動制御情報133が記憶されている。切り換え許容時間情報131、モジュール情報132および起動制御情報133は、いずれもシーケンス制御部120によって参照される情報である。
切り換え許容時間情報131は、CM100の動作の状態ごとの切り換え許容時間を含む。モジュール情報132は、起動制御対象のモジュールのそれぞれについての起動時間および消費電力を含む。起動時間とは、そのモジュールの起動にかかる時間である。消費電力とは、そのモジュールの実行によって消費される電力である。起動制御情報133は、主に、起動モジュールまたは停止モジュールとして設定されているモジュールを示す情報を含む。
一方、スタンバイのCM200は、I/O制御部210、シーケンス制御部220および切り換え制御部230を有する。I/O制御部210、シーケンス制御部220および切り換え制御部230の処理は、例えば、CM200のプロセッサ201が所定のプログラムを実行することで実現される。ただし、シーケンス制御部220および切り換え制御部230の処理は、例えばBIOS(Basic Input/Output System)のように、OSが起動していない状況でもプロセッサ201に実行されるプログラムによって実現されることが望ましい。なお、シーケンス制御部220および切り換え制御部230の処理は、プロセッサ201とは別の専用回路によって実行されてもよい。
I/O制御部210は、I/O制御部110と同様の処理を実行する。すなわち、I/O制御部210は、CM200がアクティブに遷移したとき、I/O制御部110が実行していた処理を引き継ぐ。
シーケンス制御部220は、アクティブのCM100のシーケンス制御部120からの指示に応じて、CM200におけるモジュールの起動を制御する。この制御では、シーケンス制御部220は、CM200のモジュールのうち、アクティブのCM200のシーケンス制御部120から指示されたモジュールのみが起動した状態になるように制御する。また、シーケンス制御部220は、シーケンス制御部120からの指示に応じて、各モジュールの起動にかかる時間や、各モジュールの実行に伴う消費電力を計測し、シーケンス制御部120に通知する。なお、シーケンス制御部220は、内部インタフェース204を介してCM100と通信する。
ここで、本実施の形態では、CM200には、シーケンス制御部220による起動制御の対象となるモジュールとして、OS241とストレージ制御ソフトウェア242が記憶されているものとする。ストレージ制御ソフトウェア242は、I/O制御部210の処理を実現するためのプログラムモジュールであり、OS241が起動した環境上で実行される。本実施の形態では、例として、ストレージ制御ソフトウェア242は、ソフトウェアSW1,SW2という2つのプログラムモジュールに分かれている。すなわち、CM200のプロセッサ201は、ソフトウェアSW1を実行することで、I/O制御部210の処理のうちの一部を実行でき、ソフトウェアSW2を実行することで、I/O制御部210の残りの処理を実行できる。
なお、OS241、ソフトウェアSW1,SW2にそれぞれ対応するデータは、例えば、CM200のSSD203に格納されている。
切り換え制御部230は、CM200をスタンバイからアクティブに切り換える処理を制御する。
以上の構成によれば、シーケンス制御部120は、CM200がスタンバイからアクティブに変わる切り換え処理の開始から完了までのすべての停止モジュールの起動が完了されるように、起動モジュールおよび停止モジュールを決定する。そして、シーケンス制御部220は、その決定結果に応じて、起動モジュールだけを起動させ、停止モジュールの実行を停止する。
これにより、スタンバイのCM200では、CM200がアクティブに遷移したときに起動しなくてはならないモジュールのうち、アクティブCMの切り換え処理時間に影響しない範囲で必要最小限のモジュールだけが起動される。したがって、アクティブCMの切り換え処理時間を許容時間より延ばすことなく、スタンバイのCM200における消費電力を低減できる。
ここで、近年のストレージ制御装置では、多機能化が進み、多くの種類の処理が実行されている。このため、ストレージ制御装置には高い性能が要求され、その分、消費電力が増加することが課題となっている。
例えば、前述のように、I/O制御部110は、業務サーバ20からのI/O要求に応じた論理ボリュームに対するI/O制御処理、DE300内の記憶装置に格納するデータの圧縮処理、その格納時における重複除去処理などを実行する。特に、DE300内の記憶装置としてSSDを使用した場合には、SSDの寿命を延ばすために、SSDに対する書き込み回数を低減したいという要求があり、そのためにデータの圧縮処理や重複除去処理の必要性が高まっている。
このように、CM100が多機能化された分、CM100の消費電力が増大することが課題となっている。また、DE300内の記憶装置をHDDからSSDに変更することで、DE300の消費電力を低減できるものの、その一方で上記理由からCM100の消費電力が増加する傾向にある。この観点から、ストレージシステムの省電力対策のうち、ストレージ制御装置での消費電力を低減できる対策が重要になっている、とも言える。
さらに、本実施の形態のようにストレージ制御装置が冗長化された場合、次のような問題がある。例えば、スタンバイのCM200において、アクティブのCM100と同じモジュールを起動させておくと、CM200でもCM100とほぼ同じだけの電力が消費されてしまう。一方で、スタンバイのCM200においてモジュールの一部の起動を停止させてしまうと、アクティブCMの切り換え処理の際にそれらのモジュールを起動させる必要が生じ、その分だけ切り換え処理に余計な時間がかかる可能性がある。
このような問題に対して、本実施の形態のストレージ装置10によれば、前述のように、切り換え処理時間を許容時間より延ばすことなく、スタンバイのCM200における消費電力を低減できる。
次に、図4〜図6を用いて、記憶部130に記憶される情報の具体例について説明する。
まず、図4は、切り換え許容時間情報の具体例を示す図である。切り換え許容時間情報131には、アクティブのCM100における動作の状態ごとに、切り換え許容時間があらかじめ設定されている。切り換え許容時間は、CM100がその状態のときにアクティブCMを切り換えるべき事象が発生した場合に、アクティブCMの切り換え処理を開始してから完了するまでにかけることができる時間の上限値を示す。したがって、シーケンス制御部120による起動モジュールおよび停止モジュールの決定処理では、すべての停止モジュールの起動が切り換え許容時間内に完了することが求められる。
図4の例では、切り換え許容時間情報131には、対応する切り換え許容時間が短い順に、状態と切り換え許容時間とのペアが設定されている。例えば、状態S0に対して、最短の切り換え許容時間TS0=10秒に設定され、状態S1に対して、2番目に短い切り換え許容時間TS1=30秒が設定されている。また、CM100の動作の状態としてn個(ただし、nは2以上の整数)の状態があるとすると、状態Snには、最長の切り換え許容時間TSn=600秒が設定されている。
ここで、例えば、状態Snは、CM100が業務サーバ20からのI/O要求の受け付けを停止して、I/O処理の実行を停止している状態である。このような状態としては、例えば、CM100の起動直後の状態や、現在時刻が業務サーバ20を用いた業務時間外である状態などがある。
一方、例えば、状態S1は、CM100が業務サーバ20からのI/O要求の受け付けを許容している状態(I/O処理中の状態)である。I/O処理中の状態では、アクティブのCM100の動作が停止してしまうと、業務サーバ20からのI/O要求を処理できなくなり、業務サーバ20における業務処理に支障をきたす。このため、状態S1では、I/O処理が停止されている状態Snと比較して、切り換え許容時間が短くなる。
具体的な例としては、状態S1,Snに対応する切り換え許容時間は、業務サーバ20がI/O要求を送信してから、送信先のCMが異常であると判定するまでの異常判定時間を基準として設定される。すなわち、状態S1に対応する切り換え許容時間TS1としては、この異常判定時間より短い時間が設定され、状態Snに対応する切り換え許容時間TSnとしては、この異常判定時間以上の時間が設定される。このような異常判定時間としては、業務サーバ20におけるI/O要求のタイムアウト時間を適用できる。あるいは、I/O要求を送信してから、I/O要求の送信を所定回数リトライしても応答を得られないと判定するまでの時間を適用することもできる。
このように、状態S1,Snに対応する切り換え許容時間は、業務サーバ20における異常判定時間に基づいて設定される。このことから、状態S1,Snに対応する切り換え許容時間は、I/O要求の受け付けを停止してI/O処理を停止しておくことができる上限時間と言うことができる。
また、図4の例では、状態S0も、状態S1と同様にI/O処理中の状態である。ただし、状態S1は、CM100が備えるハードウェアのエラーが生じていない状態であり、状態S0は、ハードウェアのエラーが生じている状態である。状態S0では、ハードウェアのエラーの影響によって、業務サーバ20が上記の異常判定時間よりさらに短い時間で、送信先のCMが異常であると判定する可能性がある。
そこで、状態S0に対応する切り換え許容時間TS0としては、状態S1に対応する切り換え許容時間TS1よりさらに短い時間が設定される。図4では例として、切り換え許容時間TS0は10秒に設定されている。なお、状態S0では、状態S1と比較して、I/O要求の受け付けを停止してI/O処理を停止しておくことができる上限時間が短い、と言うことができる。
この他、例えば、I/O処理中の状態でも、直近の一定時間内に所定数以上のI/O要求を受信した状態とそうでない状態とでは、前者の切り換え許容時間を後者より短くしてもよい。また、ハードウェアのエラーの種類に応じて切り換え許容時間を変えてもよい。例えば、コレクティブなエラーの場合は、そうでないエラーより長い切り換え許容時間を設定してもよい。
以上の例のように、アクティブのCM100における動作の状態によって、切り換え許容時間は変動し得る。
図5は、モジュール情報の具体例を示す図である。モジュール情報132には、起動制御対象のモジュールごとに起動時間と消費電力とが設定される。起動時間とは、そのモジュールの起動にかかる時間である。消費電力とは、そのモジュールの実行によって消費される電力である。また、起動時間と消費電力としては、シーケンス制御部120からの問い合わせに応じてCM200から適宜取得された値が設定される。
図5の例では、ソフトウェアSW2の起動時間TE1が10秒に設定され、ソフトウェアSW2の消費電力PE1が50W(ワット)に設定されている。また、ソフトウェアSW1の起動時間TE2が10秒に設定され、ソフトウェアSW1の消費電力PE2が100Wに設定されている。さらに、OS241の起動時間TE3が30秒に設定され、OS241の消費電力PE3が100Wに設定されている。
なお、本実施の形態では、CM200におけるモジュールの起動順が決められているものとする。具体的には、CM200では、OS241、ソフトウェアSW1、ソフトウェアSW2の順に起動されるものとする。これは、起動制御対象のモジュールの中から起動モジュールを決定していく際に、起動順の遅い順にモジュールを選択し、選択されたモジュールを起動モジュールに決定するか否かを判定していけばよいことを意味する。
また、上記に加えて、モジュール情報132には、モード変更の時間TE0と、モード変更の消費電力PE0とがあらかじめ設定されている。モード変更とは、アクティブCMの切り換え処理のうち、アクティブのCM100の状態によらず、CM200において固定的にかかる処理を指す。このような処理には、例えば、CM200に設定された、アクティブかスタンバイかを示す動作モードの変更処理や、業務サーバ20からのアクセス経路の変更処理(例えば、ホストインタフェース205のポート有効化処理)などが含まれる。
モード変更の時間TE0とは、モード変更にかかる時間であり、モード変更の消費電力PE0とは、モード変更の実行によって消費される電力である。図5の例では、モード変更の時間TE0が10秒に登録され、モード変更の消費電力PE0が999Wに設定されている。
図6は、起動制御情報の具体例を示す図である。起動制御情報133には、現切り換え時間TCC、現起動モジュール名MEC、現起動完了時間TPC、新切り換え時間TCN、新起動モジュール名MEN、新起動完了時間TPNが、シーケンス制御部120によって設定される。
現切り換え時間TCCは、現在設定されている切り換え許容時間を示す。現起動モジュール名MECは、現在起動モジュールに決定されているモジュールのうち、起動順が最も遅いモジュールを示す。現起動完了時間TPCは、現在停止モジュールに決定されているすべてのモジュールが起動するのにかかる時間を示す。
新切り換え時間TCNは、次に設定される切り換え許容時間を示す。新起動モジュール名MENは、次に起動モジュールに決定されるモジュールのうち、起動順が最も遅いモジュールを示す。新起動完了時間TPNは、次に停止モジュールに決定されるすべてのモジュールが起動するのにかかる時間を示す。
新切り換え時間TCN、新起動モジュール名MEN、新起動完了時間TPNは、起動モジュールおよび停止モジュールを再決定する際に設定される情報である。再決定の結果に応じてモジュールの起動状態が更新されると、新切り換え時間TCN、新起動モジュール名MEN、新起動完了時間TPNに設定された値が、それぞれ現切り換え時間TCC、現起動モジュール名MEC、現起動完了時間TPCに対して設定される。
次に、図7〜図11を用いて、アクティブのCM110における処理についてフローチャートを用いて説明する。
まず、図7は、モジュールの起動時間および消費電力の取得処理例を示すフローチャートである。この図7の処理は、例えば一定時間間隔で、繰り返し実行される。
[ステップST11]シーケンス制御部120は、CM200を再起動させるかを判定する。例えば、シーケンス制御部120は、I/O処理中でなく、かつ、前回の再起動から一定時間以上経過している場合に、CM200を再起動させると判定する。シーケンス制御部120は、CM200を再起動させると判定した場合、ステップST12の処理を実行し、再起動させないと判定した場合、ステップST13の処理を実行する。
[ステップST12]シーケンス制御部120は、スタンバイのCM200に対して再起動するように指示する。CM200のシーケンス制御部220は、CM200の再起動が開始されると、OS241、ソフトウェアSW1,SW2を順次起動させて、それぞれの起動時間および消費電力を計測する。
[ステップST13]シーケンス制御部120は、ソフトウェアSW2の起動時間TE1および消費電力PE1の最新の計測結果をCM200から取得し、取得内容によってモジュール情報132を更新する。
[ステップST14]シーケンス制御部120は、ソフトウェアSW1の起動時間TE2および消費電力PE2の最新の計測結果をCM200から取得し、取得内容によってモジュール情報132を更新する。
[ステップST15]シーケンス制御部120は、OS241の起動時間TE3および消費電力PE3の最新の計測結果をCM200から取得し、取得内容によってモジュール情報132を更新する。
なお、ステップST13〜ST15の処理順は変更可能である。また、CM200では、再起動を行うことなく、モジュールごとの消費電力を計測できる場合がある。ステップST13〜ST15では、シーケンス制御部120は、このようにして計測された消費電力を取得することができる。
次に、図8は、モジュールの起動状態の更新処理例を示すフローチャートである。この図8の処理は、例えば一定時間間隔で、繰り返し実行される。なお、図8の処理が実行される時間間隔は、切り換え許容時間情報131に登録された切り換え許容時間の最小値より短いことが望ましい。
[ステップST21]シーケンス制御部120は、CM100の現在の状態に応じた切り換え許容時間を判定する。なお、この処理の詳細については、図9を用いて説明する。
[ステップST22]シーケンス制御部120は、ステップST21での判定結果とモジュール情報132とに基づいて、起動モジュールを決定する。なお、この処理の詳細については、図10を用いて説明する。
[ステップST23]シーケンス制御部120は、起動制御対象のモジュールのうち、起動モジュールを起動させ、停止モジュールを停止させる制御処理を実行する。なお、この処理の詳細については、図11を用いて説明する。
図9は、切り換え許容時間判定処理例を示すフローチャートである。なお、図9の処理は、図8のステップST21の処理に対応する。
[ステップST31]シーケンス制御部120は、起動制御情報133内の新切り換え時間TCNに、初期値として最大値を設定する。この最大値とは、切り換え許容時間情報131に設定された切り換え許容時間の最大値であり、図4に示した例では、状態Snに対応する切り換え許容時間TSn=600秒である。
[ステップST32]シーケンス制御部120は、ステップST36のループ端までの処理を、切り換え許容時間情報131に設定されたすべての状態について繰り返し実行する。
[ステップST33]シーケンス制御部120は、CM100の現在の状態が、切り換え許容時間情報131から選択された処理対象の状態と一致するかを判定する。シーケンス制御部120は、状態が一致する場合、ステップST34の処理を実行し、状態が一致しない場合、処理をステップST36に進める。
[ステップST34]シーケンス制御部120は、切り換え許容時間情報131において処理対象の状態に対応付けられた切り換え許容時間が、現在設定されている新切り換え時間TCNより小さいかを判定する。シーケンス制御部120は、切り換え許容時間が新切り換え時間TCNより小さい場合、ステップST35の処理を実行し、切り換え許容時間が新切り換え時間TCN以上である場合、処理をステップST36に進める。
[ステップST35]シーケンス制御部120は、処理対象の状態に対応付けられた切り換え許容時間を新切り換え時間TCNに対して設定し、新切り換え時間TCNを更新する。
[ステップST36]シーケンス制御部120は、切り換え許容時間情報131に設定されたすべての状態について、ステップST33〜S35の処理が実行された場合に、処理を終了する。
以上の図9の処理により、新切り換え時間TCNに対して、CM100の現在の状態に対応する切り換え許容時間が設定される。
図10は、起動モジュール決定処理例を示すフローチャートである。なお、図10の処理は、図8のステップST22の処理に対応する。
[ステップST41]シーケンス制御部120は、モジュール情報132を参照し、図9の処理により設定された新切り換え時間TCNに基づいて、スタンバイのCM200において起動しておく起動モジュールを特定する。具体的には、次のようにして起動モジュールが特定される。
シーケンス制御部120は、モジュール情報132を参照し、モジュールに対応する起動時間を、モジュールの起動順が遅い順に累積加算する。本実施の形態では、ソフトウェアSW2、ソフトウェアSW1、OS241の順に、対応する起動時間が累積加算される。シーケンス制御部120は、累積加算値とモード変更の時間TE0との加算値が、新切り換え時間TCN以下の範囲で最大になるように、モジュールを選択する。選択されたモジュール以外のモジュールが起動モジュールとなる。
図4、図5に示した数値の例を用いた場合、例えば、次のようにして起動モジュールが特定される。例えば、CM100が状態S1であるとすると、対応する切り換え許容時間TS1は30秒である。また、モード変更の時間TE0は10秒であり、ソフトウェアSW2の起動時間TE1は10秒であり、ソフトウェアSW1の起動時間TE2は10秒であり、OS241の起動時間TE3は30秒である。
ソフトウェアSW2の起動時間TE1とソフトウェアSW1の起動時間TE2との累積加算値に、モード変更の時間TE0を加算すると、合計は30秒となり、切り換え許容時間TS1である30秒以下となる。一方、ソフトウェアSW2の起動時間TE1とソフトウェアSW1の起動時間TE2とOS241の起動時間TE3との累積加算値に、モード変更の時間TE0を加算すると、合計は60秒となり、切り換え許容時間TS1である30秒を超える。このため、上記のモジュール選択条件に基づいてソフトウェアSW1,SW2が選択されるので、これらを除くOS241が起動モジュールとして特定される。
[ステップST42]シーケンス制御部120は、起動モジュールとして特定されたモジュールのうち起動順が最も遅いモジュールを特定する。例えば、起動モジュールとしてOS241とソフトウェアSW1とが特定された場合、起動順が最も遅いモジュールとしてソフトウェアSW1が特定される。シーケンス制御部120は、モジュール情報132を参照し、起動順が、特定されたモジュールの次であるモジュール(次モジュール)の消費電力が「0」であるかを判定する。シーケンス制御部120は、次モジュールの消費電力が「0」の場合、ステップST43の処理を実行し、次モジュールの消費電力が「0」でない場合、ステップST44の処理を実行する。後者の場合、起動モジュールおよび停止モジュールが確定された状態となる。
[ステップST43]シーケンス制御部120は、ステップST42で特定された次モジュールを起動モジュールに含める。この後、ステップST42の処理が再度実行される。
ここで、特定された次モジュールの消費電力が「0」の場合、次モジュールを起動させておいてもCM200の消費電力は変わらない。すなわち、次モジュールを停止させても省電力効果は得られない。そこで、ステップST43で次モジュールを起動モジュールに含めて、次モジュールも起動させておくようにする。これにより、切り換え処理の際にCM200内の停止モジュールを起動させる時間が短縮されるので、切り換え許容時間内に切り換え処理を確実に完了できる上に、切り換え処理時間自体を短縮することもできる。
[ステップST44]シーケンス制御部120は、確定された起動モジュールのうち起動順が最も遅いモジュールのモジュール名を、起動制御情報133の新起動モジュール名MENに設定する。また、シーケンス制御部120は、起動モジュール以外の各モジュール(停止モジュール)の起動時間を加算し、算出された加算値を起動制御情報133の新起動完了時間TPNに設定する。
図11は、モジュール起動制御処理例を示すフローチャートである。なお、図11の処理は、図8のステップST23の処理に対応する。
[ステップST51]シーケンス制御部120は、起動制御情報133を参照し、新起動モジュール名MENが示すモジュール(新起動モジュール)は、現起動モジュール名MECが示すモジュール(現起動モジュール)より後に起動するモジュールかを判定する。シーケンス制御部120は、この条件が成立する場合、ステップST52の処理を実行し、成立しない場合、ステップST53の処理を実行する。
[ステップST52]ステップST52で「Yes」と判定されるケースとは、現在停止している停止モジュールの中に、新たに起動モジュールとして特定されたモジュールが存在するケースである。シーケンス制御部120は、起動順に沿って、現起動モジュールの次に起動するモジュール(停止モジュール)から新起動モジュールまでの各モジュールを起動させるように、CM200に指示する。CM200のシーケンス制御部220は、この指示に応じて、現在停止している停止モジュールのうち、新たに起動モジュールとして特定されたモジュールだけを起動させる。
[ステップST53]シーケンス制御部120は、新起動モジュールは現起動モジュールより前に起動するモジュールかを判定する。シーケンス制御部は、この条件が成立する場合、ステップS54の処理を実行し、この条件が成立しない場合、ステップST56の処理を実行する。なお、後者のケースとは、新起動モジュールと現起動モジュールとが同一モジュールであり、現時点で新たにモジュールの起動や停止を指示する必要のないケースである。
[ステップST54]シーケンス制御部120は、起動制御情報133を参照し、新起動完了時間TPNから現起動完了時間TPCを減算した時間を算出する。シーケンス制御部120は、算出された時間が経過するまで待ち状態となり、算出された時間が経過するとステップST55の処理を実行する。
[ステップST55]ステップST53で「Yes」と判定されるケースとは、現在起動されている起動モジュールの中に、新たに停止モジュールとして特定されたモジュールが存在するケースである。シーケンス制御部120は、起動順とは逆の順序で、新起動モジュールの次に起動するモジュール(起動モジュール)から現起動モジュールまでの各モジュールを停止させるように、CM200に指示する。CM200のシーケンス制御部220は、この指示に応じて、現在起動している起動モジュールのうち、新たに停止モジュールとして特定されたモジュールだけを停止させる。
ここで、図11の処理では、ステップST55におけるモジュール停止の指示が、ステップST54で算出された時間だけ遅延して実行される。ステップST54では、現在起動されている起動モジュールのうち、新たに停止モジュールとして特定されたモジュールの総起動時間が求められる。
例えば、図9の処理によりCM100の現在の状態が判定されてから短時間で、CM100の状態が変化する場合があり得る。そして、変化後の状態が、現在起動されている起動モジュールのうち、新たに停止モジュールとして特定されたモジュールを起動しておくべき状態である場合があり得る。
もし、このような状態変化の直後に、アクティブCMの切り換え処理を行うべき事象が発生した場合、新たに停止モジュールとして特定されたモジュールを停止させてしまうと、切り換え処理の許容時間内に停止モジュールの起動を完了できなくなってしまう。すなわち、このようなケースでは、新たに停止モジュールとして特定されたモジュールを起動したままにする方が適切である。
ステップST55の処理を、ステップST54で算出された時間だけ遅延させて実行することで、上記ケースが発生した場合でも、切り換え処理時間の許容時間内に停止モジュールの起動を完了できる可能性を高めることができる。これは、ステップST55の処理を実行した場合に、切り換え処理時間の許容時間内に停止モジュールの起動を完了できる可能性を高めることができる、ということも示す。また、遅延時間をステップST54の方法で算出することで、このような可能性を高めることができる。
さらに、ステップST55の処理によって停止されるモジュールが、次に図8の処理が実行されたときに起動されるという、モジュールの停止と起動とが頻繁に切り換えられる事態の発生確率を抑制することもできる。
[ステップST56]シーケンス制御部120は、起動制御情報133を次のように更新する。シーケンス制御部120は、新切り換え時間TCNを現切り換え時間TCCに設定して、現切り換え時間TCCを更新する。また、シーケンス制御部120は、新起動モジュール名MENを現起動モジュール名MECに設定して、現起動モジュール名MECを更新する。さらに、シーケンス制御部120は、新起動完了時間TPNを現起動完了時間TPCに設定して、現起動完了時間TPCを更新する。
図12は、アクティブCMの切り換え処理の例を示すフローチャートである。ここでは、CM200がスタンバイからアクティブに遷移する場合について説明する。
[ステップST61]CM200の切り換え制御部230は、アクティブCMの切り換えを行うべきであることを示す切り換えイベントを検知する。例えば、切り換え制御部230は、CM100からアクティブCMの切り換え指示を受信する。このような切り換え指示を、CM100ではなく、外部の監視サーバから受信してもよい。あるいは、切り換え制御部230は、CM100の動作が停止したことを検出する。切り換え制御部230は、このような切り換えイベントを検知すると、ステップST62以降の処理を実行する。
[ステップST62]切り換え制御部230は、OS241が起動しているかを判定する。切り換え制御部230は、OS241が起動している場合、ステップST63の処理を実行し、OS241が起動していない場合、ステップST65の処理を実行する。
[ステップST63]切り換え制御部230は、ソフトウェアSW1が起動しているかを判定する。切り換え制御部230は、ソフトウェアSW1が起動している場合、ステップST64の処理を実行し、ソフトウェアSW1が起動していない場合、ステップST66の処理を実行する。
[ステップST64]切り換え制御部230は、ソフトウェアSW2が起動しているかを判定する。切り換え制御部230は、ソフトウェアSW2が起動している場合、ステップST68の処理を実行し、ソフトウェアSW2が起動していない場合、ステップST67の処理を実行する。
[ステップST65]切り換え制御部230は、OS241を起動させる。
[ステップST66]切り換え制御部230は、ソフトウェアSW1を起動させる。
[ステップST67]切り換え制御部230は、ソフトウェアSW2を起動させる。
[ステップST68]切り換え制御部230は、CM200の動作モードをスタンバイからアクティブに変更するモード変更処理を実行する。このモード変更処理には、例えば、CM200に設定された動作モードの設定値の変更処理や、業務サーバ20からのアクセス経路の変更処理(例えば、ホストインタフェース205のポート有効化処理)などが含まれる。
以上の図12の処理によれば、切り換えイベントを検知した時点で起動しているモジュールが多いほど、切り換え処理にかかる時間が短くなることがわかる。
以上説明した第2の実施の形態によれば、スタンバイのCM200において停止させる停止モジュールが、アクティブのCM100の状態に応じた切り換え処理の許容時間内に停止モジュールを起動できるように決定される。このため、切り換え処理の許容時間を守れる範囲内で、スタンバイのCM200の消費電力を低減できる。切り換え処理の許容時間を守れることにより、業務サーバ20が通信先CMを異常と判定してその業務処理が停止する事態の発生確率を抑制できる。したがって、第2の実施の形態によれば、業務サーバ20の業務処理にできるだけ悪影響を与えずに、スタンバイのCM200の消費電力を低減できる。
図13は、スタンバイのCMにおける消費電力と切り換え時間の推移の例を示す図である。図13に示す太い実線は、スタンバイのCM200におけるモジュールの起動に伴う消費電力の推移を示す。図13に示す破線は、CM200がもしアクティブに遷移する場合における切り換え時間の推移を示す。この切り換え時間には、その時点での停止モジュールの起動にかかる時間が含まれる。
図13によれば、スタンバイのCM200において起動しておくモジュールが多いほど、切り換え処理を短時間で完了できる態勢が整うものの、CM200の消費電力が高くなることがわかる。本実施の形態によれば、アクティブのCM100の状態に応じた切り換え処理の許容時間内に停止モジュールを起動できるように、停止モジュールが決定される。このため、業務サーバ20における業務処理にできるだけ支障をきたすことなく、CM200の消費電力を低減することができる。
〔第2の実施の形態の変形例〕
第2の実施の形態に係るCM100の処理の一部を、次のように変更することができる。
まず、CM100の記憶部130には、消費電力の閾値PTHがさらに設定される。閾値PTHは、モジュールの消費電力が「0」と見なせるかを判定するための閾値である。閾値PTHとしては、固定値があらかじめ設定される。また、閾値PTHは、ユーザの操作によって任意に設定可能であってもよい。この閾値PTHを用いて、図10の起動モジュール決定処理を次の図14のように変形することができる。
図14は、変形例における起動モジュール決定処理例を示すフローチャートである。図14の処理では、図10のステップST42の代わりにステップST42aが実行される。
[ステップST42a]シーケンス制御部120は、ステップST41で起動モジュールとして特定されたモジュールのうち、起動順が最も遅いモジュールを特定する。シーケンス制御部120は、モジュール情報132を参照し、起動順が、特定されたモジュールの次であるモジュール(次モジュール)の消費電力が閾値PTH以下であるかを判定する。シーケンス制御部120は、次モジュールの消費電力が閾値PTH以下の場合、ステップST43の処理を実行し、次モジュールの消費電力が閾値PTHより大きい場合、ステップST44の処理を実行する。
ステップST42aでは、次モジュールの消費電力が閾値PTH以下の場合、この消費電力は「0」と見なせると判定される。この場合には、次モジュールを起動させておいても、次モジュールを停止させた場合と比較して消費電力の低減効果はあまり高くない。一方、次モジュールを起動させておくことで、アクティブCMの切り換え処理が実行された場合に停止モジュールの起動を切り換え許容時間内に完了できる確実性を高めることができる。そのため、ステップST42aで次モジュールの消費電力が閾値PTH以下と判定された場合には、ステップST43の処理により、次モジュールも起動モジュールの1つとして特定されるようにする。
なお、図14の処理と同等の効果を奏する別の処理例として、図14ではなく図10の処理を適用するとともに、図7の処理を次のように変形してもよい。シーケンス制御部120は、ステップST13〜ST15でモジュールの消費電力を取得したとき、取得した消費電力と上記の閾値PTHとを比較する。シーケンス制御部120は、取得した消費電力が上記の閾値PTHより大きい場合、取得した消費電力をそのままモジュール情報132に設定する。一方、シーケンス制御部120は、取得した消費電力が上記の閾値PTH以下の場合、そのモジュールに対応する消費電力の値として「0」をモジュール情報132に設定する。
このような処理により、図10のステップST42では、モジュールの消費電力の計測値が「0」の場合だけでなく、その計測値が「0」と見なせる場合でも「Yes」と判定されるようになる。その結果、図14の処理と同等の効果が得られる。
なお、上記の各実施の形態に示した装置(例えば、情報処理装置1,2、CM100,200)の処理機能は、コンピュータによって実現することができる。その場合、各装置が有すべき機能の処理内容を記述したプログラムが提供され、そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc-Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD、CD−ROMなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムまたはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムにしたがった処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムにしたがった処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムにしたがった処理を実行することもできる。
以上の各実施の形態に関し、さらに以下の付記を開示する。
(付記1) 情報処理装置において、
稼働状態である前記情報処理装置の複数の動作状態のそれぞれについて、稼働状態に遷移すると前記情報処理装置の処理を引き継ぐ他の情報処理装置を、待機状態から稼働状態に切り換える切り換え処理にかけることができる許容時間が登録された第1の情報と、前記他の情報処理装置が備え、かつ、前記他の情報処理装置が稼働状態の場合に動作する複数のモジュールのそれぞれについて、起動にかかる起動時間が登録された第2の情報と、を記憶する記憶部と、
稼働状態である前記情報処理装置の現在の動作状態を判定し、前記第1の情報に登録された前記許容時間の中から前記現在の動作状態に対応する一の許容時間を特定し、前記第2の情報に基づいて、前記複数のモジュールの中から、動作を停止させる停止モジュールの総起動時間が前記一の許容時間以下になるように前記停止モジュールを決定し、待機状態である前記他の情報処理装置に対して前記停止モジュールを停止させるように指示する制御部と、
を有する情報処理装置。
(付記2) 前記記憶部は、前記複数のモジュールのそれぞれについて、動作時の消費電力が登録された第3の情報をさらに記憶し、
前記停止モジュールの決定では、前記第3の情報に基づき、決定された前記停止モジュールの中に消費電力が所定の閾値以下である低電力モジュールがある場合、前記低電力モジュールを前記停止モジュールから除外する、
付記1記載の情報処理装置。
(付記3) 前記指示では、決定された前記停止モジュールの中に、前記複数のモジュールのうち前記他の情報処理装置において現在動作しているモジュールがある場合、決定された前記停止モジュールを停止させるように前記他の情報処理装置に指示するタイミングを所定時間遅延させる、
付記1または2記載の情報処理装置。
(付記4) 前記第1の情報に含まれる前記許容時間は、稼働状態に遷移した前記他の情報処理装置が前記情報処理装置から引き継ぐ処理を停止できる上限時間に基づいて設定される、
付記1乃至3のいずれか1つに記載の情報処理装置。
(付記5) 前記複数の動作状態の1つとして、他の装置からの処理要求の受信を前記情報処理装置が許容している第1の状態が含まれ、前記複数の動作状態の他の1つとして、前記処理要求の受信を前記情報処理装置が停止している第2の状態が含まれる、
付記1乃至3のいずれか1つに記載の情報処理装置。
(付記6) 前記第1の情報には、前記第1の状態に対応する許容時間として、前記他の装置が、前記処理要求を送信してから、前記処理要求に対する応答状況に基づいて前記情報処理装置を異常と判定するまでの判定時間より短い時間が登録され、前記第2の状態に対応する許容時間として、前記判定時間以上の時間が登録される、
付記5記載の情報処理装置。
(付記7) 稼働状態である第1の情報処理装置と、待機状態であり、稼働状態に遷移すると前記第1の情報処理装置の処理を引き継ぐ第2の情報処理装置と、を有し、
前記第1の情報処理装置は、
前記第1の情報処理装置の複数の動作状態のそれぞれについて、前記第2の情報処理装置を待機状態から稼働状態に切り換える切り換え処理にかけることができる許容時間が登録された第1の情報と、前記第2の情報処理装置が備え、かつ、前記第2の情報処理装置が稼働状態の場合に動作する複数のモジュールのそれぞれについて、起動にかかる起動時間が登録された第2の情報と、を記憶する記憶部と、
前記第1の情報処理装置の現在の動作状態を判定し、前記第1の情報に登録された前記許容時間の中から前記現在の動作状態に対応する一の許容時間を特定し、前記第2の情報に基づいて、前記複数のモジュールの中から、動作を停止させる停止モジュールの総起動時間が前記一の許容時間以下になるように前記停止モジュールを決定し、前記停止モジュールを停止させる停止指示を前記第2の情報処理装置に送信する第1の制御部と、
を有し、
前記第2の情報処理装置は、前記停止指示に応じて前記停止モジュールが停止するように制御し、前記切り換え処理が開始されると前記停止モジュールを起動させる第2の制御部を有する、
情報処理システム。
(付記8) 前記記憶部は、前記複数のモジュールのそれぞれについて、動作時の消費電力が登録された第3の情報をさらに記憶し、
前記第1の制御部は、前記停止モジュールの決定において、前記第3の情報に基づき、決定された前記停止モジュールの中に消費電力が所定の閾値以下である低電力モジュールがある場合、前記低電力モジュールを前記停止モジュールから除外する、
付記7記載の情報処理装置。
(付記9) 前記第1の制御部は、前記停止指示の送信において、決定された前記停止モジュールの中に、前記複数のモジュールのうち前記第2の情報処理装置において現在動作しているモジュールがある場合、決定された前記停止モジュールを停止させるように前記第2の情報処理装置に指示するタイミングを所定時間遅延させる、
付記7または8記載の情報処理システム。
(付記10) 前記第1の情報に含まれる前記許容時間は、稼働状態に遷移した前記第2の情報処理装置が前記第1の情報処理装置から引き継ぐ処理を停止できる上限時間に基づいて設定される、
付記7乃至9のいずれか1つに記載の情報処理システム。
(付記11) 前記複数の動作状態の1つとして、他の装置からの処理要求の受信を前記第1の情報処理装置が許容している第1の状態が含まれ、前記複数の動作状態の他の1つとして、前記処理要求の受信を前記第1の情報処理装置が停止している第2の状態が含まれる、
付記7乃至9のいずれか1つに記載の情報処理システム。
(付記12) 前記第1の情報には、前記第1の状態に対応する許容時間として、前記他の装置が、前記処理要求を送信してから、前記処理要求に対する応答状況に基づいて前記第1の情報処理装置を異常と判定するまでの判定時間より短い時間が登録され、前記第2の状態に対応する許容時間として、前記判定時間以上の時間が登録される、
付記11記載の情報処理システム。
(付記13) コンピュータに、
稼働状態である前記コンピュータの現在の動作状態を判定し、
前記コンピュータの複数の動作状態のそれぞれについて、稼働状態に遷移すると前記コンピュータの処理を引き継ぐ他のコンピュータを、待機状態から稼働状態に切り換える切り換え処理にかけることができる許容時間が登録された第1の情報を参照して、前記第1の情報に登録された前記許容時間の中から前記現在の動作状態に対応する一の許容時間を特定し、
前記他のコンピュータが備え、かつ、前記他のコンピュータが稼働状態の場合に動作する複数のモジュールのそれぞれについて、起動にかかる起動時間が登録された第2の情報を参照して、前記複数のモジュールの中から、動作を停止させる停止モジュールの総起動時間が前記一の許容時間以下になるように前記停止モジュールを決定し、
待機状態である前記他のコンピュータに対して前記停止モジュールを停止させるように指示する、
処理を実行させる制御プログラム。
(付記14) 前記停止モジュールの決定では、前記複数のモジュールのそれぞれについて動作時の消費電力が登録された第3の情報に基づき、決定された前記停止モジュールの中に消費電力が所定の閾値以下である低電力モジュールがある場合、前記低電力モジュールを前記停止モジュールから除外する、
付記13記載の制御プログラム。
1,2 情報処理装置
1a 記憶部
1a1 第1の情報
1a2 第2の情報
1b 制御部
A1,A2 動作状態
B1〜B3 モジュール
ST1〜ST4 ステップ

Claims (8)

  1. 情報処理装置において、
    稼働状態である前記情報処理装置の複数の動作状態のそれぞれについて、稼働状態に遷移すると前記情報処理装置の処理を引き継ぐ他の情報処理装置を、待機状態から稼働状態に切り換える切り換え処理にかけることができる許容時間が登録された第1の情報と、前記他の情報処理装置が備え、かつ、前記他の情報処理装置が稼働状態の場合に動作する複数のモジュールのそれぞれについて、起動にかかる起動時間が登録された第2の情報と、を記憶する記憶部と、
    稼働状態である前記情報処理装置の現在の動作状態を判定し、前記第1の情報に登録された前記許容時間の中から前記現在の動作状態に対応する一の許容時間を特定し、前記第2の情報に基づいて、前記複数のモジュールの中から、動作を停止させる停止モジュールの総起動時間が前記一の許容時間以下になるように前記停止モジュールを動的に決定し、待機状態である前記他の情報処理装置に対して前記停止モジュールを停止させるように指示する制御部と、
    を有する情報処理装置。
  2. 前記記憶部は、前記複数のモジュールのそれぞれについて、動作時の消費電力が登録された第3の情報をさらに記憶し、
    前記停止モジュールの決定では、前記第3の情報に基づき、決定された前記停止モジュールの中に消費電力が所定の閾値以下である低電力モジュールがある場合、前記低電力モジュールを前記停止モジュールから除外する、
    請求項1記載の情報処理装置。
  3. 前記指示では、決定された前記停止モジュールの中に、前記複数のモジュールのうち前記他の情報処理装置において現在動作しているモジュールがある場合、決定された前記停止モジュールを停止させるように前記他の情報処理装置に指示するタイミングを所定時間遅延させる、
    請求項1または2記載の情報処理装置。
  4. 前記第1の情報に含まれる前記許容時間は、稼働状態に遷移した前記他の情報処理装置が前記情報処理装置から引き継ぐ処理を停止できる上限時間に基づいて設定される、
    請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記複数の動作状態の1つとして、他の装置からの処理要求の受信を前記情報処理装置が許容している第1の状態が含まれ、前記複数の動作状態の他の1つとして、前記処理要求の受信を前記情報処理装置が停止している第2の状態が含まれる、
    請求項1乃至3のいずれか1項に記載の情報処理装置。
  6. 前記第1の情報には、前記第1の状態に対応する許容時間として、前記他の装置が、前記処理要求を送信してから、前記処理要求に対する応答状況に基づいて前記情報処理装置を異常と判定するまでの判定時間より短い時間が登録され、前記第2の状態に対応する許容時間として、前記判定時間以上の時間が登録される、
    請求項5記載の情報処理装置。
  7. 稼働状態である第1の情報処理装置と、待機状態であり、稼働状態に遷移すると前記第1の情報処理装置の処理を引き継ぐ第2の情報処理装置と、を有し、
    前記第1の情報処理装置は、
    前記第1の情報処理装置の複数の動作状態のそれぞれについて、前記第2の情報処理装置を待機状態から稼働状態に切り換える切り換え処理にかけることができる許容時間が登録された第1の情報と、前記第2の情報処理装置が備え、かつ、前記第2の情報処理装置が稼働状態の場合に動作する複数のモジュールのそれぞれについて、起動にかかる起動時間が登録された第2の情報と、を記憶する記憶部と、
    前記第1の情報処理装置の現在の動作状態を判定し、前記第1の情報に登録された前記許容時間の中から前記現在の動作状態に対応する一の許容時間を特定し、前記第2の情報に基づいて、前記複数のモジュールの中から、動作を停止させる停止モジュールの総起動時間が前記一の許容時間以下になるように前記停止モジュールを動的に決定し、前記停止モジュールを停止させる停止指示を前記第2の情報処理装置に送信する第1の制御部と、
    を有し、
    前記第2の情報処理装置は、前記停止指示に応じて前記停止モジュールが停止するように制御し、前記切り換え処理が開始されると前記停止モジュールを起動させる第2の制御部を有する、
    情報処理システム。
  8. コンピュータに、
    稼働状態である前記コンピュータの現在の動作状態を判定し、
    前記コンピュータの複数の動作状態のそれぞれについて、稼働状態に遷移すると前記コンピュータの処理を引き継ぐ他のコンピュータを、待機状態から稼働状態に切り換える切り換え処理にかけることができる許容時間が登録された第1の情報を参照して、前記第1の情報に登録された前記許容時間の中から前記現在の動作状態に対応する一の許容時間を特定し、
    前記他のコンピュータが備え、かつ、前記他のコンピュータが稼働状態の場合に動作する複数のモジュールのそれぞれについて、起動にかかる起動時間が登録された第2の情報を参照して、前記複数のモジュールの中から、動作を停止させる停止モジュールの総起動時間が前記一の許容時間以下になるように前記停止モジュールを動的に決定し、
    待機状態である前記他のコンピュータに対して前記停止モジュールを停止させるように指示する、
    処理を実行させる制御プログラム。
JP2017157969A 2017-08-18 2017-08-18 情報処理装置、情報処理システムおよび制御プログラム Active JP6905189B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017157969A JP6905189B2 (ja) 2017-08-18 2017-08-18 情報処理装置、情報処理システムおよび制御プログラム
US16/059,105 US10690368B2 (en) 2017-08-18 2018-08-09 Information processing apparatus and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017157969A JP6905189B2 (ja) 2017-08-18 2017-08-18 情報処理装置、情報処理システムおよび制御プログラム

Publications (2)

Publication Number Publication Date
JP2019036202A JP2019036202A (ja) 2019-03-07
JP6905189B2 true JP6905189B2 (ja) 2021-07-21

Family

ID=65359874

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017157969A Active JP6905189B2 (ja) 2017-08-18 2017-08-18 情報処理装置、情報処理システムおよび制御プログラム

Country Status (2)

Country Link
US (1) US10690368B2 (ja)
JP (1) JP6905189B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10203897B1 (en) * 2016-12-02 2019-02-12 Nutanix, Inc. Dynamic data compression
US10998338B2 (en) 2018-11-13 2021-05-04 Micron Technology, Inc. Integrated assemblies having ferroelectric transistors with heterostructure active regions
CN112311899A (zh) * 2020-11-18 2021-02-02 中国联合网络通信集团有限公司 一种会话处理方法、装置及系统
JP2022115370A (ja) * 2021-01-28 2022-08-09 キヤノン株式会社 画像形成装置、および、当該画像形成装置の制御方法、ならびにプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0689146A (ja) 1992-09-08 1994-03-29 Fujitsu Ltd ディスクアレイ装置のスタンバイディスク制御方法
US6961859B2 (en) * 2002-01-30 2005-11-01 Hewlett Packard Development Company, L.P Computing device having programmable state transitions
JP2006031537A (ja) 2004-07-20 2006-02-02 Ricoh Co Ltd ドライブ装置、その節電方法、節電用プログラム及び記憶媒体
WO2006098036A1 (ja) * 2005-03-17 2006-09-21 Fujitsu Limited 省電力制御装置、省電力制御方法および省電力制御プログラム
JP4875464B2 (ja) * 2006-11-09 2012-02-15 株式会社ソニー・コンピュータエンタテインメント 情報通信システム、情報処理装置、及び情報通信方法
JP5023694B2 (ja) * 2006-12-27 2012-09-12 富士通株式会社 情報アクセス装置、情報処理装置、情報アクセスプログラム、情報アクセス方法、および情報処理方法
JP5078671B2 (ja) * 2008-02-28 2012-11-21 キヤノン株式会社 情報処理装置、情報処理システム及び情報処理方法
JP5146046B2 (ja) * 2008-03-26 2013-02-20 富士通株式会社 情報処理装置および情報処理装置の制御方法
JP5376401B2 (ja) * 2009-07-09 2013-12-25 富士ゼロックス株式会社 情報処理装置、情報処理システム及びプログラム
JP5585654B2 (ja) * 2010-08-20 2014-09-10 富士通株式会社 情報処理システム、管理装置、および情報処理装置の管理方法
JP5648544B2 (ja) * 2011-03-15 2015-01-07 富士通株式会社 スケジューリングプログラム、および情報処理装置
JP6041056B2 (ja) * 2013-09-18 2016-12-07 富士通株式会社 情報処理装置及び方法
JP6425492B2 (ja) * 2014-10-17 2018-11-21 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
JP6590662B2 (ja) * 2015-11-28 2019-10-16 キヤノン株式会社 メモリを制御する制御装置及びメモリの省電力制御方法

Also Published As

Publication number Publication date
US10690368B2 (en) 2020-06-23
JP2019036202A (ja) 2019-03-07
US20190056135A1 (en) 2019-02-21

Similar Documents

Publication Publication Date Title
JP6905189B2 (ja) 情報処理装置、情報処理システムおよび制御プログラム
EP1424628B1 (en) Improved reliability of diskless network-bootable computers using non-volatile memory cache
JP4723290B2 (ja) ディスクアレイ装置及びその制御方法
US20080126615A1 (en) Storage area network system
US10809997B2 (en) Information processing apparatus and program update control method
JP5545108B2 (ja) ストレージシステム、制御装置および制御方法
JP5353732B2 (ja) ストレージ管理装置、ストレージシステム、ストレージ管理プログラム、ストレージ管理方法
US8086881B2 (en) Power control of secondary copy storage based on journal storage usage and accumulation speed rate
US7627610B2 (en) Computer system and method of reproducing data for the system
JP2010186341A (ja) メモリシステム
JP2010044635A (ja) ファイルサーバシステム及びファイルサーバシステム起動方法
US11681455B2 (en) Shadow live migration over a smart network interface card
JP4155545B2 (ja) コンピュータシステムおよびデータ転送制御方法
JP2010198252A (ja) 不揮発メモリ装置、不揮発メモリの書込み方法、及び不揮発メモリ書込みプログラム
JP2017091456A (ja) 制御装置、制御プログラムおよび制御方法
JP2005267111A (ja) 記憶制御システム及び記憶制御システムの制御方法
JP4322240B2 (ja) 再起動方法、システム及びプログラム
US20090249003A1 (en) Method and system for multiplexing concatenated storage disk arrays to form a rules-based array of disks
US20140082308A1 (en) Storage control device and method for controlling storage devices
US10528275B2 (en) Storage system, storage control device, and method of controlling a storage system
JP2011118674A (ja) Usbホスト装置
US7937577B2 (en) Information processing apparatus and operating system determination method
JP6398727B2 (ja) 制御装置,ストレージ装置及び制御プログラム
US11880575B2 (en) Adaptive memory device power saving setting in an information handling system
US11954498B2 (en) Dynamic operation code based agnostic analysis of initialization information

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200514

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200529

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200529

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210402

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: 20210525

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210607

R150 Certificate of patent or registration of utility model

Ref document number: 6905189

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150