JP2018073292A - 情報処理装置、起動方法及び起動プログラム - Google Patents

情報処理装置、起動方法及び起動プログラム Download PDF

Info

Publication number
JP2018073292A
JP2018073292A JP2016215466A JP2016215466A JP2018073292A JP 2018073292 A JP2018073292 A JP 2018073292A JP 2016215466 A JP2016215466 A JP 2016215466A JP 2016215466 A JP2016215466 A JP 2016215466A JP 2018073292 A JP2018073292 A JP 2018073292A
Authority
JP
Japan
Prior art keywords
unique information
storage table
expansion card
card
long
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.)
Granted
Application number
JP2016215466A
Other languages
English (en)
Other versions
JP6855756B2 (ja
Inventor
和也 三上
Kazuya Mikami
和也 三上
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 JP2016215466A priority Critical patent/JP6855756B2/ja
Priority to US15/791,714 priority patent/US20180121208A1/en
Publication of JP2018073292A publication Critical patent/JP2018073292A/ja
Application granted granted Critical
Publication of JP6855756B2 publication Critical patent/JP6855756B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4405Initialisation of multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4081Live connection to bus, e.g. hot-plugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/426Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using an embedded synchronisation, e.g. Firewire bus, Fibre Channel bus, SSA bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】別の系統や別の種類の通信用拡張カードへの交換を可能とすること。
【解決手段】判定部46aが、搭載された通信用拡張カードが交換前の通信用拡張カードと系統及び種類が同じであるか否かを判定する。そして、制御部46bが、交換前の通信用拡張カードと系統及び種類が同じである場合に、交換前の通信用拡張カードの固有情報を用いるように制御し、系統又は種類が異なる場合に、交換後の通信用拡張カードの固有情報を用いるように制御する。
【選択図】図2

Description

本発明は、情報処理装置、起動方法及び起動プログラムに関する。
通信用拡張カードでは、カードが有するポートに対する固有情報が製造時にカード内のROM(Read Only Memory)へ書き込まれる。ここで、固有情報とは、例えば、LAN(Local Area Network)カードのMAC(Media Access Control)アドレス、Fibre ChannelカードのWorld Wide Name(WWN)、InfiniBandカードのGlobally Unique Identifier(GUID)である。複数のポートをもつ通信用拡張カードはポートの数だけ固有情報を有する。
これらの通信用拡張カードのコントローラは、通信用拡張カードが搭載された情報処理装置(以降サーバと呼ぶ)が起動する際に、ROMから固有情報を取得し保持する。その後、通信用拡張カードやオペレーティングシステム(Operating System:OS)は、通信用拡張カードのコントローラが保持している固有情報を用いて通信を行う。
また、固有情報はOS上での通信だけではなくOSをブートするためにも使用される。ネットワークブートの一例であるPXE(Preboot eXecution Environment)ブートやiSCSI(Internet Small Computer System Interface)ブートでは、情報処理装置は、IP(Internet Protocol)アドレスを指定してブートイメージを取得する。このため、ブート対象のサーバへIPアドレスを割り当て、ブートイメージを配布する装置のIPアドレスを通知するDHCP(Dynamic Host Configuration Protocol)サーバが必要である。
DHCPサーバは、セキュリティを考慮して、ブートを行いたいサーバのMACアドレスを予め設定ファイルに登録することで、登録したMACアドレスのサーバのみブートできるように制御する。
また、SAN(Storage Area Network)ブートでは、事前にFibre Channelカードのポートとストレージでゾーンを組む必要がある。ゾーンの作成ではFibre ChannelカードのWWNが用いられるため、登録されたWWNのFibre Channelカードからのみブートすることができる。
このように、通信用拡張カードの固有情報は、OSをブートするための情報として登録されるため、通信用拡張カードが故障して交換されると、登録情報を変更しないとOSのブートが行えなくなる。また、LANカードの場合、MACアドレスを設定ファイルに記憶するOSは、交換されたLANカードのMACアドレスが交換前と異なるため、交換されたLANカードのポートに対し新しいデバイス名を割り当てる。そのため、OSは、以前のデバイス名を継続して使用することができない。
このような欠点に対して、交換後の通信用拡張カードの固有情報を予め用意した固有情報に変更して交換後の通信用拡張カードを使用する技術がある。例えば、サーバブレードが電源ONされEFIが起動後、EFIがPCIeスイッチレジスタに記録されているHBA識別子テーブルを読み込み、PCIカードに搭載されているHBAのHBA識別子を更新する技術がある。ここで、EFIはExtensible Firmware Interfaceを表し、HBAはHost Bus Adapterを表す。この技術によれば、PCIカードが交換されても、PCIカードに接続される機器に対するHBA識別子の登録を不要とすることができる。
なお、各デバイスにユーザが設定する第1IDと制御対象であることを示す第2IDを記憶させ、制御装置が第1IDと第2IDを用いて制御対象に対応付けるか警告するかを判断することで、第1IDが重複する場合でも制御対象を選択可能とする技術がある。
また、ネットワーク制御部に割り当てるMACアドレスをアドレス記憶部に記憶し、アドレス記憶部に記憶されたMACアドレスを変更してネットワーク制御部に割り当てることで、柔軟なMACアドレスの割当を可能とする技術がある。
特開2012−150623号公報 特開2011−182329号公報 特開2010−233006号公報
しかしながら、交換後の通信用拡張カードの固有情報を予め用意した固有情報に変更して交換後の通信用拡張カードを使用する技術には、別の系統や別の種類の通信用拡張カードへの交換が行えないという問題がある。ここで、通信用拡張カードの系統とは、LANカードの系統、Fibre Channelカードの系統、InfiniBandカードの系統等である。また、通信用拡張カードの種類とは、同じ系統の通信用拡張カードの中で、搭載チップに基づく種類、通信速度に基づく種類、ポート数に基づく種類等である。
例えば、ポート数の多い通信用拡張カードに交換された場合、交換前の数の固有情報しか用意されていないため、通信用拡張カードの固有情報の全てを予め記憶した固有情報に変更することができない。また、別の系統の通信用拡張カードに交換された場合、通信を行うことができない。
本発明は、1つの側面では、別の系統や別の種類の通信用拡張カードへの交換を可能とすることを目的とする。
1つの態様では、情報処理装置は、判定部と、制御部とを有する。判定部は、交換可能な形態で搭載された通信用拡張カードが交換前の通信用拡張カードと系統及び種類が同じであるか否かを判定する。制御部は、判定部により系統及び種類が同じであると判定された場合には、交換前の通信用拡張カードの固有情報を用いるように制御し、判定部により系統又は種類が異なると判定された場合には、交換後の通信用拡張カードの固有情報を用いるように制御する。
1つの側面では、本発明は、別の系統や別の種類の通信用拡張カードへの交換を可能とすることができる。
図1は、実施例1に係る情報処理装置のハードウェア構成を示す図である。 図2は、情報処理装置の起動時の動作及び機能構成を示す図である。 図3は、長期記憶テーブルの一例を示す図である。 図4は、一時記憶テーブルの一例を示す図である。 図5は、情報処理装置の起動処理のフローを示すフローチャートである。 図6は、テーブル準備処理のフローを示すフローチャートである。 図7は、重複処理のフローを示すフローチャートである。 図8は、固有情報判断処理のフローを示すフローチャートである。 図9は、拡張スロットの構成変更時の状態遷移を示す図である。 図10は、初期ハードウェア構成を示す図である。 図11は、長期記憶テーブルの初期値を示す図である。 図12は、初回のテーブル作成時の長期記憶テーブル及び一時記憶テーブルを示す図である。 図13は、初回の固有情報判断処理後のテーブル及びLANコントローラが保持しているMACアドレスを示す図である。 図14は、2回目のテーブル作成時の長期記憶テーブル及び一時記憶テーブルを示す図である。 図15は、2回目の固有情報判断処理後のテーブル及びLANコントローラが保持しているMACアドレスを示す図である。 図16は、拡張カード交換後のハードウエア構成を示す図である。 図17は、拡張カード交換後の判断処理前の長期記憶テーブルを示す図である。 図18は、拡張カード交換後のテーブル作成時の長期記憶テーブル及び一時記憶テーブルを示す図である。 図19は、拡張カード交換後の固有情報判断処理後のテーブル及びLANコントローラが保持しているMACアドレスを示す図である。 図20は、構成変更後のハードウェア構成を示す図である。 図21は、構成変更後の判断処理前の長期記憶テーブルを示す図である。 図22は、構成変更後のテーブル作成時の長期記憶テーブル及び一時記憶テーブルを示す図である。 図23は、構成変更後の固有情報判断処理後のテーブル及びコントローラが保持している固有情報を示す図である。 図24は、LANカード入れ替え後のハードウェア構成を示す図である。 図25は、LANカード入れ替え後の判断処理前の長期記憶テーブルを示す図である。 図26は、LANカード入れ替え後のテーブル作成時の長期記憶テーブル及び一時記憶テーブルを示す図である。 図27は、LANカード入れ替え後の重複処理後の長期記憶テーブル及び一時記憶テーブルを示す図である。 図28は、LANカード入れ替え後の固有情報判断処理後のテーブル及びLANコントローラが保持しているMACアドレスを示す図である。 図29は、通信用拡張カード取り外し後のハードウェア構成を示す図である。 図30は、通信用拡張カード取り外し後の判断処理前の長期記憶テーブルを示す図である。 図31は、通信用拡張カード取り外し後のテーブル作成時の長期記憶テーブル及び一時記憶テーブルを示す図である。 図32は、通信用拡張カード取り外し後の重複処理後の長期記憶テーブル及び一時記憶テーブルを示す図である。 図33は、通信用拡張カード取り外し後の固有情報判断処理後の長期記憶テーブル及び一時記憶テーブルを示す図である。 図34Aは、拡張カード追加前のハードウェア構成を示す図である。 図34Bは、拡張カード追加後のハードウェア構成を示す図である。 図35は、拡張カード追加後の判断処理前の長期記憶テーブルを示す図である。 図36は、拡張カード追加後のテーブル作成時の長期記憶テーブル及び一時記憶テーブルを示す図である。 図37は、拡張カード追加後の重複処理後の長期記憶テーブル及び一時記憶テーブルを示す図である。 図38は、拡張カード追加後の固有情報判断処理後の長期記憶テーブル及び一時記憶テーブルを示す図である。 図39は、実施例2に係る情報処理装置のハードウェア構成を示す図である。 図40は、割り込み処理部による処理のフローを示すフローチャートである。
以下に、本願の開示する情報処理装置、起動方法及び起動プログラムの実施例を図面に基づいて詳細に説明する。なお、実施例は開示の技術を限定するものではない。
まず、実施例1に係る情報処理装置のハードウェア構成について説明する。図1は、実施例1に係る情報処理装置のハードウェア構成を示す図である。図1に示すように、実施例1に係る情報処理装置1は、マザーボード2と基板3とを有する。マザーボード2は、情報処理装置1の主要な電子回路基板である。基板3は、情報処理装置1の電源OFF時に保持する必要のある情報を記憶するための基板である。
マザーボード2は、メインメモリ21と、CPU(Central Processing Unit)22と、フラッシュメモリ23と、拡張スロット#1及び#2で表される2つの拡張スロットを有する。拡張スロット#1にはLANカード#1で表されるLANカード24が搭載され、拡張スロット#2にはLANカード#2で表されるLANカード24が搭載される。なお、拡張スロット#1及び#2には、LANカード24以外の拡張カードも搭載される。
メインメモリ21は、プログラムやプログラムの実行途中結果などを記憶するメモリである。CPU22は、メインメモリ21からプログラムを読み出して実行する中央処理装置である。フラッシュメモリ23は、BIOS23aを記憶する不揮発性メモリである。
BIOS23aは、情報処理装置1の起動時にメインメモリ21に読み出され、CPU22により実行されるプログラムであり、OSのブート等を行う。BIOS23aは、判断プログラム23bを含む。
判断プログラム23bは、通信用拡張カードが使用する固有情報を判断する判断処理を行うプログラムである。拡張スロット#1及び#2に搭載されるカードは、例えば、LANカード24からポート数の多いLANカード24や別の系統の通信用拡張カードに交換される場合がある。このため、判断プログラム23bは、情報処理装置1の起動時に、拡張カードの追加、取り外し、交換等が行われて搭載されている拡張カードに変更があったかを判断し、変更状況に応じて、拡張カードが使用する固有情報を判断する。なお、判断プログラム23bの詳細については後述する。
LANカード24は、LANを用いて通信を行うための通信用拡張カードである。LANカード24は、LANコントローラ24aと、ROM(Read Only Memory)24bと、ポート#1及び#2で表される2つのポート24cを有する。LANコントローラ24aは、LANを用いた通信を制御する。ROM24bは、LANカード24のMACアドレス及びIDを記憶する不揮発性メモリである。ここで、IDは、LANカード24に搭載されたチップに関するベンダIDとデバイスID、サブシステムに関するsubsystemベンダIDとsubsystemIDを含む。ポート24cは、データを入出力するためのインタフェースである。
基板3は、フラッシュメモリ31を有する。フラッシュメモリ31は、長期記憶テーブル31aを記憶する不揮発性メモリである。フラッシュメモリ31は、マザーボード2の交換時(例えば、マザーボード2上のLANカード24の故障時)でも長期記憶テーブル31aを保持する必要があるため、マザーボード2とは別の基板3に搭載される。長期記憶テーブル31aは、情報処理装置1に搭載されたLANカード24に関する情報がポート24c毎に登録されるテーブルである。なお、長期記憶テーブル31aの詳細については後述する。
次に、情報処理装置1の起動時の動作及び機能構成について説明する。図2は、情報処理装置1の起動時の動作及び機能構成を示す図である。図2に示すように、情報処理装置1は、パワーオンされると、BIOS23aをフラッシュメモリ23から読み出してメインメモリ21にBIOS40として書き込む。この時、BIOS23aに含まれる判断プログラム23bもメインメモリ21上へロードされる。
判断プログラム23bは、CPU22によって実行されることによって判断部43として動作する(1a)。判断部43は、テーブル準備部44と、重複処理部45と、固有情報判断部46とを有する。また、BIOS40がCPU22によって実行され、PCIデバイスの初期化処理をする時に、例えばLANカード24のLANコンロトーラ24aは、ROM24bから固有情報を取得して保持する(1b)。
PCIデバイスの初期化が終わった後、判断部43のテーブル準備部44が処理を開始する。テーブル準備部44は、長期記憶テーブル31aをフラッシュメモリ31から読み出してメインメモリ40に長期記憶テーブル41として書き込む(2a)。その後、テーブル準備部44は、搭載された拡張カードの情報(搭載スロット番号、ポート番号、ID、固有情報)を基に一時記憶テーブル42を作成する(2b)。一時記憶テーブル42は、搭載されている拡張カードの情報が登録されるテーブルである。
図3は、長期記憶テーブル41の一例を示す図であり、図4は、一時記憶テーブル42の一例を示す図である。図3及び図4に示すように、長期記憶テーブル41及び一時記憶テーブル42は、それぞれスロット番号と、ポート番号と、IDと、固有情報とをポート毎に記憶する。スロット番号は、拡張スロットを識別する番号である。ポート番号は、通信用拡張カードの中でポートを識別する番号である。
拡張カードが搭載されていない場合には、ポート番号、ID、固有情報はNULLである。また、一時記憶テーブル42の場合、拡張カードが搭載されていない場合と通信用拡張カード以外の拡張カードが搭載されている場合で長期記憶テーブル41の情報を残すか否かを判別するため、通信用拡張カード以外の拡張カードが搭載されている場合はポート番号は0である。
例えば、図3において、スロット番号が1でありポート番号が1であるポートのIDはxxxxaaaaxxxxaaaaであり、固有情報は12:34:56:78:9A:BCである。また、スロット番号が2である拡張スロットには、拡張カードが搭載されていないので、ポート番号、ID、固有情報はNULLである。なお、図3及び図4は、拡張スロットが3つある場合を示す。
図2に戻って、重複処理部45は、固有情報の重複を避けるため、重複処理を行う(3)。具体的には、重複処理部45は、一時記憶テーブル42のそれぞれの拡張スロットに対し、長期記憶テーブル41のスロット番号、ID及び固有情報と比較して重複の有無を判断する。そして、重複がある場合には、重複処理部45は、長期記憶テーブル41の重複情報を無効にする。なお、搭載されていた拡張カードが別の拡張スロットに搭載された場合に、長期記憶テーブル41と一時記憶テーブル42との間で固有情報の重複が発生する。
固有情報判断部46は、通信用拡張カードが使用する固有情報を判断する処理を行う。固有情報判断部46は、判定部46aと制御部46bとを有する。判定部46aは、一時記憶テーブル42のそれぞれの拡張スロットに対し、長期記憶テーブル41のID及び固有情報と比較し、拡張カードの交換状況に関する判断を行う(4a)。
例えば、判定部46aは、通信用拡張カードの交換はないと判断する。あるいは、判定部46aは、ポート数が同じで同じ種類の通信用拡張カードに交換が行われたと判断する。あるいは、判定部46aは、ポート数又は種類が異なる通信用拡張カードに交換が行われたと判断する。あるいは、判定部46aは、通信用拡張カード以外の拡張カードに交換が行われたと判断する。
制御部46bは、判定部46aの判断結果に基づき処理を行う。例えばLANカード24がポート数が同じで同じ種類のLANカード24に交換された場合、固有情報に過去の固有情報が使用されるので、制御部46bは、LANコントローラ24aが記憶する固有情報を書き換える(4b)。一方、別の系統の通信用拡張カードあるいは別の用途の拡張カードに交換された場合等の構成変更が行われている場合は、制御部46bは、長期記憶テーブル41を更新し、長期記憶テーブル31aとしてフラッシュメモリ31に保存する(4c)。
次に、情報処理装置1の起動処理のフローについて説明する。図5は、情報処理装置1の起動処理のフローを示すフローチャートである。情報処理装置1の電源がONされると、図5に示すように、情報処理装置1は、BIOS23aを読み込み(ステップS1)、メインメモリ21にBIOS40として格納する。そして、情報処理装置1は、BIOS40を実行し、PCIデバイスを初期化する(ステップS2)。
そして、テーブル準備部44が、テーブル準備処理を行う(ステップS3)。テーブル準備処理では、テーブル準備部44は、長期記憶テーブル31aをメインメモリ21に読み込むとともに、搭載された拡張カードの情報に基づいて一時記憶テーブル42を作成する。
そして、重複処理部45が、重複処理を行う(ステップS4)。重複処理では、重複処理部45は、長期記憶テーブル41と一時記憶テーブル42との間で固有情報の重複をチェックし、重複がある場合には、長期記憶テーブル41の重複情報を無効にする。
そして、固有情報判断部46が、固有情報判断処理を行う(ステップS5)。固有情報判断部46は、一時記憶テーブル42と長期記憶テーブル41とを参照して通信用拡張カードが使用する固有情報を判断するとともに、長期記憶テーブル41を更新して長期記憶テーブル31aとして保存する。そして、情報処理装置1は、OSのブートを行う(ステップS6)。
このように、情報処理装置1が、長期記憶テーブル41と一時記憶テーブル42を用いて、固有情報の重複チェックと、通信用拡張カードが使用する固有情報の判断とを行うことで、別の系統や別の種類の通信用拡張カードへの交換が可能となる。
図6は、テーブル準備処理のフローを示すフローチャートである。なお、図6において、Xの初期値は1であるとする。図6に示すように、テーブル準備部44は、フラッシュメノリ31に保存されている長期記憶テーブル31aをメインメモリ21へ読み込み(ステップS11)、長期記憶テーブル41とする。そして、テーブル準備部44は、メインメモリ21上に一時記憶テーブル42を作成する(ステップS12)。この時、一時記憶テーブル42は値を持たない。
そして、テーブル準備部44は、拡張スロットXに拡張カードが搭載されているか否かを判定し(ステップS13)、搭載されていない場合には、一時記憶テーブル42にスロット番号をX、ポート番号、ID、固有情報をNULLで書き込む(ステップS14)。そして、テーブル準備部44は、ステップS22へ移動する。
一方、拡張スロットXに拡張カードが搭載されている場合には、テーブル準備部44は、拡張スロットXのデバイスがLANカード24か否かを判定する(ステップS15)。テーブル準備部44は、拡張カードにMACアドレスを要求してMACアドレスの値が返された場合、拡張スロットXのデバイスがLANカード24であると判定する。そして、拡張スロットXのデバイスがLANカード24の場合には、テーブル準備部44は、LANカード24の搭載スロット番号X、ポート番号、ID、MACアドレスを一時記憶テーブル42へ書き込み(ステップS16)、ステップS22へ移動する。
一方、拡張スロットXのデバイスがLANカード24でない場合には、テーブル準備部44は、拡張スロットXのデバイスがFibre Channelカードか否かを判定する(ステップS17)。テーブル準備部44は、拡張カードにWWNを要求してWWNの値が返された場合、拡張スロットXのデバイスがFibre Channelカードであると判定する。そして、Fibre Channelカードの場合には、テーブル準備部44は、Fibre Channelカードの搭載スロット番号X、ポート番号、ID、WWNを一時記憶テーブル42へ書き込み(ステップS18)、ステップS22へ移動する。
一方、拡張スロットXのデバイスがFibre Channelカードでない場合には、テーブル準備部44は、拡張スロットXのデバイスがInfiniBandカードか否かを判定する(ステップS19)。テーブル準備部44は、拡張カードにGUIDを要求してGUIDの値が返された場合、拡張スロットXのデバイスがInfiniBandカードであると判定する。
そして、InfiniBandカードの場合には、テーブル準備部44は、InfiniBandカードの搭載スロット番号X、ポート番号、ID、GUIDを一時記憶テーブル42へ書き込み(ステップS20)、ステップS22へ移動する。一方、拡張スロットXのデバイスがInfiniBandカードでない場合には、通信用拡張カードでないので、テーブル準備部44は、一時記憶テーブル42にスロット番号をX、ポート番号を0、ID、固有情報をNULLで書き込む(ステップS21)。
そして、テーブル準備部44は、次の拡張スロットを処理するためXの値を1増やし(ステップS22)、XがBIOS40が記録している拡張スロットの末尾より大きいか否かを判定する(ステップS23)。そして、テーブル準備部44は、XがBIOS40が記録している拡張スロットの末尾より大きくない場合には、ステップS13に戻り、大きい場合には、処理を終了する。
このように、テーブル準備部44が、メインメモリ21に長期記憶テーブル41と一時記憶テーブル42を準備することで、情報処理装置1は、固有情報の重複チェックと、通信用拡張カードが使用する固有情報の判断を行うことができる。なお、テーブル準備部44は、一時記憶テーブル42の準備を長期記憶テーブル41の準備の前に行ってもよい。
図7は、重複処理のフローを示すフローチャートである。なお、図7において、X及びYの初期値は1であるとする。図7に示すように、重複処理部45は、一時記憶テーブル42の拡張スロットXと長期記憶テーブル41の拡張スロットXのIDが同じか否かを判定する(ステップS31)。そして、同じである場合には、後述するように一時記憶テーブル42の固有情報は長期記憶テーブル41の固有情報で上書きされ、重複しないので、重複処理部45は、次の拡張スロットのチェックのためステップS37へ進む。
一方、IDが同じでない場合には、重複処理部45は、一時記憶テーブル42の拡張スロットXと長期記憶テーブル41の拡張スロットYの固有情報が同じか否かを判定し(ステップS32)、同じでない場合には、重複はなく問題ないので、ステップS35へ進む。
一方、固有情報が同じ場合には、重複処理部45は、一時記憶テーブル42の拡張スロットYと長期記憶テーブル41の拡張スロットYのIDが同じか否かを判定する(ステップS33)。そして、同じでない場合には、拡張スロットYは別系統又は別種類の通信用拡張カードに交換されたため、後述するように長期記憶テーブル41のスロット番号Yの固有情報は一時記憶テーブル42のスロット番号Yの固有情報に上書きされる。したがって、重複はなく問題ないので、重複処理部45は、ステップS35へ進む。
一方、IDが同じ場合には、長期記憶テーブル41のスロット番号Yの固有情報で拡張スロットYに搭載された通信用拡張カードの固有情報が上書きされ、重複する。したがって、重複処理部45は、長期記憶テーブル41の拡張スロットYの値をNULLに上書きする(ステップS34)、すなわち、スロット番号Yのポート番号が1以降の行の値は削除し、残ったポート番号、ID、固有情報の値をNULLに書き換える。
そして、重複処理部45は、長期記憶テーブル41の次の拡張スロットを処理するためYの値を1増やし(ステップS35)、Yが長期記憶テーブル41のスロット番号の末尾より大きいか否かを判定する(ステップS36)。そして、Yが長期記憶テーブル41のスロット番号の末尾より大きくない場合には、重複処理部45は、ステップS32に戻る。一方、Yが長期記憶テーブル41のスロット番号の末尾より大きい場合には、重複処理部45は、一時記憶テーブル42の次の拡張スロットを処理するためXの値を1増やし、Yの値を1にする(ステップS37)。
そして、重複処理部45は、Xが一時記憶テーブル42のスロット番号の末尾より大きいか否かを判定し(ステップS38)、大きくない場合には、ステップS31に戻り、大きい場合には、処理を終了する。
このように、重複処理部45が固有情報の重複をチェックすることで、情報処理装置1は通信障害の発生を防ぐことができる。
図8は、固有情報判断処理のフローを示すフローチャートである。なお、図8において、Xの初期値は1であるとする。図8に示すように、固有情報判断部46は、一時記憶テーブル42の拡張スロットXの固有情報の項目がNULLか否かを判定する(ステップS41)。
そして、NULLである場合には、固有情報判断部46は、拡張カードが搭載されていない場合もしくは、通信用拡張カード以外の拡張カードが搭載されている場合と判定する。そして、固有情報判断部46は、一時記憶テーブル42の拡張スロットXのポート番号が0であるか否かを判定し(ステップS42)、0でない場合には、拡張カードが搭載されていないと判断し、次の拡張スロットの処理のため、ステップS49に移動する。
一方、0である場合には、固有情報判断部46は、通信用拡張カード以外の拡張カードが搭載されていると判断し、固有情報を記憶する必要がないため、長期記憶テーブル41の値を初期化する(ステップS43)。初期化の対象は、拡張スロットXの項目(スロット番号、ポート番号、ID、固有情報)である。そして、固有情報判断部46は、次の拡張スロットの処理のため、ステップS49に移動する。
また、一時記憶テーブル42の拡張スロットXの固有情報の項目がNULLでない場合には、固有情報判断部46は、長期記憶テーブル41の拡張スロットXの項目の値がNULLか否かを判定する(ステップS44)。そして、NULLの場合には、固有情報判断部46は、新規に追加された通信用拡張カードであるので、一時記憶テーブル42の値を長期記憶テーブル41へ書き込む(ステップS45)。
一方、長期記憶テーブル41の拡張スロットXの項目の値がNULLでない場合には、通信用拡張カード搭載のため、固有情報判断部46は、一時記憶テーブル42と長期記憶テーブル41の拡張スロットXのIDが同じか否かを判定する(ステップS46)。
そして、固有情報判断部46は、IDが同じである場合には、搭載された通信用拡張カードが以前と同系統で同種類の通信用拡張カードであると判断し、長期記憶テーブル41の値を通信用拡張カードへ書き込む(ステップS47)。一方、IDが同じでない場合には、固有情報判断部46は、IDが異なる新しい通信用拡張カードへ交換されたと判断し、一時記憶テーブル42の値(拡張スロットXの各項目の値)を長期記憶テーブル41へ書き込む(ステップS48)。
そして、固有情報判断部46は、一時記憶テーブル42の次の拡張スロットを処理するためXの値を1増やし(ステップS49)、Xが一時記憶テーブル42のスロット番号の末尾より大きいか否かを判定する(ステップS50)。そして、Xが一時記憶テーブル42のスロット番号の末尾より大きくない場合には、固有情報判断部46は、ステップS41へ戻る。一方、Xが一時記憶テーブル42のスロット番号の末尾より大きい場合には、固有情報判断部46は、長期記憶テーブル41をフラッシュメモリ31に保存する(ステップS51)。
このように、固有情報判断部46が長期記憶テーブル41と一時記憶テーブル42を用いて通信用拡張カードが使用する固有情報を判断することで、別の系統や別の種類の通信用拡張カードへの交換が可能となる。
次に、通信用拡張カードの交換例を説明する。図9は、拡張スロットの構成変更時の状態遷移を示す図である。図9に示すように、交換前及び交換後の状態には、拡張カードが搭載されていない状態、通信用拡張カードが搭載されている状態、通信用拡張カード以外が搭載されている状態の3つの状態があるので、各拡張スロットには以下のI〜IXの9つの状態遷移がある。
I:構成変更前後で拡張カードが搭載されていない場合
II:拡張カードが搭載されていないスロットに通信用拡張カードが追加搭載された場合
III:拡張カードが搭載されていないスロットに通信用拡張カード以外の拡張カードが追加搭載された場合
IV:搭載されていた通信用拡張カードが取り外された場合
V:搭載されていた通信用拡張カードが
i:交換されない場合
ii:故障により、同系統かつ同種の通信用拡張カードに交換された場合
iii:構成変更により、別系統又は別種の通信用拡張カードに交換された場合
VI:搭載されていた通信用拡張カードが通信用拡張カード以外の拡張カードに交換された場合
VII:搭載されていた拡張カードであって通信用拡張カード以外の拡張カードが取り外された場合
VIII:搭載されていた拡張カードであって通信用拡張カード以外の拡張カードが通信用拡張カードに交換された場合
IX:搭載されていた拡張カードであって通信用拡張カード以外の拡張カードが
i:交換されない場合
ii:通信用拡張カード以外の別系統の拡張カードに交換された場合
図10は、初期ハードウェア構成を示す図である。なお、ここでは説明の便宜上、図1に示した各部と同様の役割を果たす機能部については同一符号を付すこととしてその詳細な説明を省略する。図10に示すように、情報処理装置1aは、3つの拡張スロットを有する。拡張スロット#1に2ポートのLANカードAが搭載され、拡張スロット#2に1ポートのLANカードBが搭載され、拡張スロット3は空である。
LANカードAのIDは1111222233334444であり、ポート#1のMACアドレスは00:11:22:33:44:55であり、ポート#2のMACアドレスは00:11:22:33:44:66である。LANカードBのIDは5555666677778888であり、ポート#1のMACアドレスは00:11:22:77:88:99である。
図11は、長期記憶テーブル31aの初期値を示す図である。図11に示すように、3つの拡張スロットのポート番号、ID及び固有情報の初期値はNULLである。
図10の情報処理装置1aの初回パワーオン時、まずBIOS23aが読み込まれ、LANカード24の初期化等が行われる。LANカード24の初期化が済んだ後、判断部43が動作を開始する。
テーブル準備部44は、フラッシュメモリ31に格納されている長期記憶テーブル31aをメインメモリ21上へ読み込み、次に、値を含まない一時記憶テーブル42を作成する。そして、テーブル準備部44は、拡張スロット#1から順に拡張カードが搭載されているか確認する。
テーブル準備部44は、拡張スロット#1に関し、LANカードAが搭載されているため、LANコントローラ24aが保持しているポート番号、ID、MACドレスの情報を読み込み、一時記憶テーブル42へ追加する。拡張スロット#1に搭載されているLANカードAは2つのMACアドレスを有しているため、テーブル準備部44は、1ポート目のMACアドレスに関してポート番号、ID、固有情報を一時記憶テーブル42に追加した後、行を追加し、2ポート目のMACアドレスに関してもポート番号、ID、固有情報を追加する。
テーブル準備部44は、拡張スロット#2についても拡張スロット#1と同様に、LANカードBが搭載されているため、ポート番号、ID、固有情報を一時記憶テーブル42へ追加する。拡張スロット#3は拡張カードが搭載されていないので、テーブル準備部44は、ポート番号、ID、固有情報の項目をNULLとして追加する。
図12は、初回のテーブル作成時の長期記憶テーブル41及び一時記憶テーブル42を示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示す。図12(a)に示すように、長期記憶テーブル41では、ポート番号、ID及び固有情報がNULLで初期化されている。また、図12(b)に示すように、一時記憶テーブル42には、拡張スロット#1及び拡張スロット#2に搭載されたLANカードA及びLANカードBがそれぞれ保持するID及び固有情報が登録されている。
次に、重複処理部45が、図7のフローチャートに従い、重複処理を行う。重複処理部45は、一時記憶テーブル42の拡張スロット#1に関して、長期記憶テーブル41に一致するIDと固有情報がないため、重複しないと判断する。重複処理部45は、拡張スロット#2に関しても、同様の判断を行う。一時記憶テーブル42の拡張スロット#3は長期記憶テーブル41の拡張スロット#3とIDが一致するため、重複処理部45は、重複しないと判断する。したがって、重複処理部45は、全ての拡張スロットに関して重複はないと判断する。
次に、固有情報判断部46が、図8のフローチャートに従い、固有情報判断処理を行う。拡張スロット#1に関しては、一時記憶テーブル42のIDに値があり、長期記憶テーブル41のIDの値はNULLであるため、固有情報判断部46は、一時記憶テーブル42の値を長期記憶テーブル41に書き込む。
一時記憶テーブルの拡張スロット#1については、2ポート分の情報があるため、固有情報判断部46は、長期記憶テーブル41にポート番号を1として書き込んだ後、行を追加してポート番号を2としIDと固有情報を追加する。拡張スロット#2についても、固有情報判断部46は、拡張スロット#1と同様の判断を行うが、1ポート分の情報であるため、ポート番号を1として情報を書き込むと、次の拡張スロットの処理へ移る。拡張スロット#3の一時記憶テーブル42のID、固有情報の値はNULLであるため、固有情報判断部46は、長期記憶テーブル41、及び拡張カードへの処理は行わない。
図13は、初回の固有情報判断処理後のテーブル及びLANコントローラ24aが保持しているMACアドレスを示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示し、(c)はLANコントローラ24aが保持しているMACアドレスを示す。図13(a)及び(b)に示すように、スロット番号が1及び2の拡張スロットについて、一時記憶テーブル41の情報が長期記憶テーブル41に書き込まれている。図13(c)に示すように、LANコントローラ24aが保持しているMACアドレスは固有情報判断処理の前後で同じである。
拡張スロット#3に関しての処理後、情報処理装置1aは、長期記憶テーブル41をフラッシュメモリ31へ書き込み、OSをブートする。以上の動作で、長期記憶テーブル31aが作成されたため、以降で情報処理装置1aは、パワーオンされると、長期記憶テーブル31aの情報を基に固有情報を判断する。
2回目以降のパワーオンの場合、情報処理装置1aは、図9に示した状態遷移に基づいて動作を行う。まず、拡張スロットが搭載する拡張カードに変更がない場合について説明する。すなわち、拡張スロット#1及び#2については状態遷移Vi、拡張スロット#3については状態遷移Iの場合について説明する。
BIOS40が拡張カードの初期化を行った後、テーブル準備部44は、図6のフローチャートに従い、図14に示す長期記憶テーブル41、一時記憶テーブル42をメインメモリ21上に展開する。拡張スロットが搭載する拡張カードに変更がないため、図14に示す一時記憶テーブル42は、図13に示した一時記憶テーブル42と同じである。
次に、重複処理部45は、図7のフローチャートに従い、重複処理を行う。拡張スロット#1について、図14に示すように、一時記憶テーブル42のID(1111222233334444)と長期記憶テーブル41のID(1111222233334444)が同じであるため、重複処理部45は、重複は起こらないと判断し、次の拡張スロットの処理へ進む。拡張スロット#2及び#3についても同様に一時記憶テーブル42のIDと長期記憶テーブル41のIDが同じであるため、重複処理部45は、重複は起こらないと判断し、重複処理を終了する。
固有情報判断部46は、図8のフローチャートに従い、固有情報判断処理を行う。拡張スロット#1に関しては、一時記憶テーブル42の固有情報の値がNULL以外であり、一時記憶テーブル42と長期記憶テーブル41のIDが一致している。このため、固有情報判断部46は、LANカードAのLANコントローラ24aが保持しているポート#1及びポート#2のMACアドレスに関して、長期記憶テーブル41が記憶しているMACアドレスの値で上書きを行う。
固有情報判断部46は、拡張スロット#2についても、同様に、LANカードBのLANコントローラ24aが保持しているポート#1のMACアドレスに関して、長期記憶テーブル41が記憶しているMACアドレスの値で上書きを行う。拡張スロット#3の一時記憶テーブルのID、固有情報の値はNULLであるため、固有情報判断部46は、長期記憶テーブル41、及び拡張カードへの処理は行われない。
図15は、2回目の固有情報判断処理後のテーブル及びLANコントローラ24aが保持しているMACアドレスを示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示し、(c)はLANコントローラ24aが保持しているMACアドレスを示す。拡張スロットが搭載する拡張カードに変更がないので、図13と図15は、同じになる。
拡張スロット#3に関しての処理後、情報処理装置1aは、長期記憶テーブル41をフラッシュメモリ31へ書き込み、OSをブートする。以上の動作により、装置構成が変更されていない場合は、情報処理装置1aは、常に同じMACアドレスを使用することができる。
次に、拡張カードが交換された場合の情報処理装置1aの動作を説明する。すなわち、拡張スロット#1については状態遷移Vii、拡張スロット#2については状態遷移Vi、拡張スロット#3については状態遷移Iの場合について説明する。図16は、拡張カード交換後のハードウエア構成を示す図である。図16は、図10の情報処理装置1aの拡張スロット#1に搭載されていたLANカードAが故障し、同系統かつ同種のLANカードCに交換された場合のハードウェア構成図である。図16に示すように、LANカードCのIDは1111222233334444であり、ポート#1のMACアドレスは00:11:22:33:44:77であり、ポート#2のMACアドレスは00:11:22:33:44:88である。
図17は、拡張カード交換後の判断処理前の長期記憶テーブル31aを示す図である。長期記憶テーブル31aには、図15(a)に示した長期記憶テーブル41と同じ情報が登録されている。
拡張カードの交換後のパワーオンの場合、BIOS23aが拡張カードの初期化を行った後、テーブル準備部44は、図6のフローチャートに従い、図18に示す長期記憶テーブル41、一時記憶テーブル42をメインメモリ21上に展開する。図18(b)に示すように、LANカードCのIDとポート#1及び#2のMACアドレスが一時記憶テーブル42に登録されている。
次に、重複処理部45は、図7のフローチャートに従い、重複処理を行う。拡張スロット#1のカードは交換前と同系統、同種のカードであり、IDが同じであるため、重複処理部45は、重複は起こらないと判断する。拡張スロット#2及び#3については、図10の情報処理装置1aと同様に、重複処理部45は、重複はないと判断する。
固有情報判断部46は、図8のフローチャートに従い、固有情報判断処理を行う。拡張スロット#1に関しては、一時記憶テーブル42と長期記憶テーブル41の固有情報の値がNULL以外であり、一時記憶テーブル42と長期記憶テーブル41のIDが一致している。このため、固有情報判断部46は、LANカードCのLANコントローラ24aが保持しているポート#1及びポート#2のMACアドレスを、長期記憶テーブル41が記憶しているMACアドレスの値で上書きする。拡張スロット#2及び#3に関しては、情報判断部46は、図10の情報処理装置1aに対して行った処理と同様の処理を行う。
図19は、拡張カード交換後の固有情報判断処理後のテーブル及びLANコントローラ24aが保持しているMACアドレスを示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示し、(c)はLANコントローラ24aが保持しているMACアドレスを示す。図19(c)に示すように、拡張スロット#1に関してLANコントローラ24aが保持しているMACアドレスが、処理前の00:11:22:33:44:77及び00:11:22:33:44:88から処理後の00:11:22:33:44:55及び00:11:22:33:44:66に書き換えられている。
拡張スロット#3に対しての処理後、情報処理装置1aは、長期記憶テーブル41をフラッシュメモリ31へ書き込み、OSをブートする。以上の動作により、搭載された拡張カードが同系統、同種のカードに変更された場合に、情報処理装置1aは、ユーザが作業することなく以前使用していたMACアドレス(固有情報)を引き継いで使用することができる。
次に、装置構成が変更された場合の情報処理装置1aの動作を説明する。すなわち、拡張スロット#1については状態遷移Viii、拡張スロット#2については状態遷移Vi、拡張スロット#3については状態遷移Iの場合について説明する。図20は、構成変更後のハードウェア構成を示す図である。図20は、図16の情報処理装置1aの装置の構成を変更し、拡張スロット#1にFCカードDを搭載した場合のハードウェア構成図である。ここで、FCカードとは、Fibre Channelカードである。図20に示すように、FCカードDのIDは9999888811112222であり、ポート#1のWWNはAA:BB:CC:DD:FF:00:11:22である。
図21は、構成変更後の判断処理前の長期記憶テーブル31aを示す図である。長期記憶テーブル31aには、図19(a)に示した長期記憶テーブル41と同じ情報が登録されている。
構成変更後のパワーオンの場合、BIOS23aが拡張カードの初期化を行った後、テーブル準備部44は、図6のフローチャートに従い、図22に示す長期記憶テーブル41、一時記憶テーブル42をメインメモリ21上に展開する。図22(b)に示すように、FCカードDのIDとポート#1のWWNが一時記憶テーブル42に登録されている。
次に、重複処理部45は、図7のフローチャートに従い、重複処理を行う。拡張スロット#1のカードは、長期記憶テーブル41に一致する固有情報、IDがないため、重複処理部45は、重複はないと判断する。拡張スロット#2、#3は図10の装置と同様であり、重複処理部45は、重複はないと判断する。
固有情報判断部46は、図8のフローチャートに従い、固有情報判断処理を行う。拡張スロット#1に関しては、一時記憶テーブル42と長期記憶テーブル41の固有情報の値がNULL以外であり、一時記憶テーブル42と長期記憶テーブル41のIDが異なるため、長期記憶テーブル41の値を一時記憶テーブル42の値で上書きする。拡張スロット#2、拡張スロット#3は図10の装置と同様であり、固有情報判断部46は、図10の装置について示した処理と同様の処理を行う。
図23は、構成変更後の固有情報判断処理後のテーブル及びコントローラが保持している固有情報を示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示し、(c)はコントローラが保持している固有情報を示す。図23(a)に示すように、拡張スロット#1に関して、ポート#1のID及び固有情報が一時記憶テーブル42の値で上書きされている。また、図23(c)に示すように、拡張スロット#1に関してコントローラが保持している固有情報は変更されない。
拡張スロット#3に対しての処理後、情報処理装置1aは、長期記憶テーブル41をフラッシュメモリ31へ書き込み、OSをブートする。以上の動作により、搭載された拡張カードが別系統のカードに変更された場合に、情報処理装置1aは、ユーザが作業することなく、変更された情報を長期記憶テーブル41に保存し、以降これを基に固有情報を判断することができる。
次に、構成変更でLANカード24の拡張スロットにおける位置が入れ替えられた場合の情報処理装置1aの動作を説明する。すなわち、拡張スロット#1及び拡張スロット#2については状態遷移Viii、拡張スロット#3については状態遷移Iの場合について説明する。図24は、LANカード24入れ替え後のハードウェア構成を示す図である。図24では、図10の情報処理装置1aと比較して、LANカードAとLANカードBが入れ替えられている。
図25は、LANカード入れ替え後の判断処理前の長期記憶テーブル31aを示す図である。長期記憶テーブル31aには、図13(a)に示した長期記憶テーブル41と同じ情報が登録されている。
入れ替え後のパワーオンの場合、BIOS23aが拡張カードの初期化を行った後、テーブル準備部44は、図6のフローチャートに従い、図26に示す長期記憶テーブル41、一時記憶テーブル42をメインメモリ21上に展開する。図26(b)に示すように、拡張スロット#1と拡張スロット#2で情報が入れ替えられている。
次に、重複処理部45は、図7のフローチャートに従い、重複処理を行う。一時記憶テーブル42の拡張スロット#1のID、固有情報と、長期記憶テーブル41の拡張スロット#2のID、固有情報とが一致するため、重複処理部45は、長期記憶テーブル41の拡張スロット#2のポート番号、ID、固有情報をNULLで上書きする。また、一時記憶テーブル42の拡張スロット#2も長期記憶テーブル41の拡張スロット#1と一致するため、重複処理部45は、長期記憶テーブル41の拡張スロット#1のポート番号、ID、固有情報をNULLで上書きする。拡張スロット#3は図10の装置と同様であり、重複処理部45は、重複はないと判断する。
図27は、LANカード入れ替え後の重複処理後の長期記憶テーブル41及び一時記憶テーブル42を示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示す。図27(a)に示すように、拡張スロット#1及び#2に関して、ポート番号、ID、固有情報がNULLに上書きされている。
固有情報判断部46は、図8のフローチャートに従い、固有情報判断処理を行う。拡張スロット#1及び拡張スロット#2に関しては、一時記憶テーブル42のIDに値があり、長期記憶テーブル41のIDの値はNULLであるため、固有情報判断部46は、一時記憶テーブル42の値を長期記憶テーブル41に書き込む。拡張スロット#3は図10の装置と同様であり、固有情報判断部46は、図10の装置について示した処理と同様の処理を行う。
図28はLANカード入れ替え後の固有情報判断処理後のテーブル及びLANコントローラ24aが保持しているMACアドレスを示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示し、(c)はLANコントローラ24aが保持している固有情報を示す。図28(a)に示すように、拡張スロット#1及び拡張スロット#2に関して、長期記憶テーブル41が一時記憶テーブル42の値で上書きされている。また、図28(c)に示すように、拡張スロット#1及び拡張スロット#2に関してLANコントローラ24aが保持している固有情報は変更されない。
拡張スロット#3に対しての処理後、情報処理装置1aは、長期記憶テーブル41をフラッシュメモリ31へ書き込み、OSをブートする。以上の動作により、LANカード24の拡張スロットにおける位置が入れ替えられた場合に、情報処理装置1aは、ユーザが作業することなく、MACアドレスの重複を防止することができる。
次に、故障で一時的に通信用拡張カードが取り外された場合の情報処理装置1aの動作を説明する。すなわち、拡張スロット#1については状態遷移IV、拡張スロット#2については状態遷移Vi、拡張スロット#3については状態遷移Iの場合について説明する。図29は、通信用拡張カード取り外し後のハードウェア構成を示す図である。図29では、図10の情報処理装置1aと比較して、LANカードAが取り外されている。
図30は、通信用拡張カード取り外し後の判断処理前の長期記憶テーブル31aを示す図である。長期記憶テーブル31aには、図13(a)に示した長期記憶テーブル41と同じ情報が登録されている。
通信用拡張カード取り外し後のパワーオンの場合、BIOS23aが拡張カードの初期化を行った後、テーブル準備部44は、図6のフローチャートに従い、図31に示す長期記憶テーブル41、一時記憶テーブル42をメインメモリ21上に展開する。図31(b)に示すように、拡張スロット#1に関して、一時記憶テーブル42のポート番号、ID、固有情報がNULLとなっている。
次に、重複処理部45は、図7のフローチャートに従い、重複処理を行う。一時記憶テーブル42の拡張スロット#1は、ID、固有情報がNULLのため、重複処理部45は、重複はないと判断する。一時記憶テーブル42の拡張スロット#2は、長期記憶テーブル41の拡張スロット#2とIDが一致するため、重複処理部45は、重複はないと判断する。拡張スロット#3は図10の装置と同様であり、重複処理部45は、重複はないと判断する。
図32は、通信用拡張カード取り外し後の重複処理後の長期記憶テーブル41及び一時記憶テーブル42を示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示す。図32(a)に示すように、重複処理後の長期記憶テーブル41は、図31(a)に示した重複処理前の長期記憶テーブル41と同じである。
固有情報判断部46は、図8のフローチャートに従い、固有情報判断処理を行う。拡張スロット#1に関しては、一時記憶テーブル42の固有情報、ポート番号の値がNULLであるため、固有情報判断部46は、何も変更せず次の拡張スロットへ進む。拡張スロット#2、拡張スロット#3は図10の装置と同様であり、固有情報判断部46は、図10の装置について示した処理と同様の処理を行う。
図33は通信用拡張カード取り外し後の固有情報判断処理後の長期記憶テーブル41及び一時記憶テーブル42を示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示す。図33(a)に示すように、長期記憶テーブル41の情報は、通信用拡張カード取り外し前後で変わらない。
拡張スロット#3に対しての処理後、情報処理装置1aは、長期記憶テーブル41をフラッシュメモリ31へ書き込み、OSをブートする。以上の動作により、一時的に通信用拡張カードが取り外された場合、同系統、同種類の通信用拡張カードと交換される可能性があるため、情報処理装置1aは、以前の固有情報を保持することができる。
次に、拡張カードが追加された場合の情報処理装置1aの動作を説明する。すなわち、拡張スロット#1については状態遷移Vi、拡張スロット#2については状態遷移II、拡張スロット#3については状態遷移IIIの場合について説明する。図34Aは、拡張カード追加前のハードウェア構成を示す図であり、図34Bは、拡張カード追加後のハードウェア構成を示す図である。図34Bでは、LANカードBが拡張スロット#2に追加されており、RAIDコントローラ25aを有するRAIDコントローラカード25が拡張スロット#3に追加されている。
図35は、拡張カード追加後の判断処理前の長期記憶テーブル31aを示す図である。図35に示すように、長期記憶テーブル31aの拡張スロット#2及び拡張スロット#3に関しては、ポート番号、ID、固有情報がNULLである。
拡張カード追加後のパワーオンの場合、BIOS23aが拡張カードの初期化を行った後、テーブル準備部44は、図6のフローチャートに従い、図36に示す長期記憶テーブル41、一時記憶テーブル42をメインメモリ21上に展開する。図36(b)に示すように、一時記憶テーブル42の拡張スロット#2のポート#1には、LANカードBの情報が登録される。拡張スロット#3には、RAIDコントローラカード25が追加されたので、一時記憶テーブル42の拡張スロット#3のポート番号は0である。
次に、重複処理部45は、図7のフローチャートに従い、重複処理を行う。一時記憶テーブル42の拡張スロット#1に関しては、長期記憶テーブル41の拡張スロット#1とIDが一致するため、重複処理部45は、重複はないと判断する。一時記憶テーブル42の拡張スロット#2に関しては、固有情報が長期記憶テーブル41のどの固有情報とも一致しないため、重複処理部45は、重複はないと判断する。拡張スロット#3に関しては、固有情報はNULLであるため、重複処理部45は、重複はないと判断する。
図37は、拡張カード追加後の重複処理後の長期記憶テーブル41及び一時記憶テーブル42を示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示す。図37(a)に示すように、重複処理後の長期記憶テーブル41は、図36(a)に示した重複処理前の長期記憶テーブル41と同じである。
固有情報判断部46は、図8のフローチャートに従い、固有情報判断処理を行う。拡張スロット#1に関しては、一時記憶テーブル42の固有情報の値がNULL以外であり、一時記憶テーブル42と長期記憶テーブル41のIDが一致している。このため、固有情報判断部46は、LANカードAのLANコントローラ24aが保持しているポート#1、ポート#2のMACアドレスに対して、長期記憶テーブル41が記憶しているMACアドレスの値で上書きを行う。拡張スロット#2に関しては、長期記憶テーブル41のIDがNULLであるため、固有情報判断部46は、一時記憶テーブル42の拡張スロット#2の値を長期記憶テーブル41へ書き込む。拡張スロット#3に関しては、一時記憶テーブル42のポート番号が0であるため、固有情報判断部46は、長期記憶テーブル41の拡張スロット#3のポート番号、ID、固有情報をNULLに書き換える。
図38は拡張カード追加後の固有情報判断処理後の長期記憶テーブル41及び一時記憶テーブル42を示す図である。(a)は長期記憶テーブル41を示し、(b)は一時記憶テーブル42を示す。図38(a)に示すように、拡張スロット#2に関して、長期記憶テーブル41は、一時記憶テーブル42の情報で書き換えられている。
拡張スロット#3に対しての処理後、情報処理装置1aは、長期記憶テーブル41をフラッシュメモリ31へ書き込み、OSをブートする。以上の動作により、拡張カードが追加された場合、新たに長期記憶テーブル41へ情報を追加することで、情報処理装置1aは、次回以降追加された拡張カードの情報で動作することができる。また、通信用以外の拡張カードが追加された場合は、固有情報を持たないため、情報処理装置1aは、長期記憶テーブル41に固有情報を追加しない。
なお、状態遷移VIIについては、交換前の長期記憶テーブル41のポート番号、ID、固有情報がNULLであるため、動作は状態遷移Iと同様である。状態遷移VIIIについては、交換前の長期記憶テーブル41のポート番号、ID、固有情報がNULLであるため、動作は状態遷移IIと同様である。状態遷移IXついては、交換前の長期記憶テーブルのポート番号、ID、固有情報がNULLであるため、動作は状態遷移IIIと同様である。
上述してきたように、実施例1では、判定部46aが、搭載された通信用拡張カードが交換前の通信用拡張カードと系統及び種類が同じであるか否かを判定する。そして、制御部46bが、系統及び種類が同じである場合に、交換前の通信用拡張カードの固有情報を用いるように制御し、系統又は種類が異なる場合に、交換後の通信用拡張カードの固有情報を用いるように制御する。したがって、ネットワークブート時、情報処理装置1は、通信用拡張カードの交換前後で、DHCPサーバやゾーンの設定を変えることなく、継続して動作することができる。また、情報処理装置1は、予め固有情報を用意することなく、通信用拡張カードの追加を可能とすることができる。また、情報処理装置1は、固有情報の数に関して制限を設けることなく、通信用拡張カードの増設を可能とすることができる。
また、実施例1では、重複処理部45が、一時記憶テーブル42のそれぞれの拡張スロットに対し、長期記憶テーブル41のスロット番号、ID及び固有情報を比較して重複の有無を判断する。そして、重複処理部45は、重複がある場合に、長期記憶テーブル41の重複情報を無効にする。したがって、情報処理装置1は、固有情報の重複を防ぐことができる。
また、実施例1では、固有情報判断部46が、長期記憶テーブル41をフラッシュメモリ31に長期記憶テーブル31aとして保存する。そして、テーブル準備部44が、長期記憶テーブル31aをフラッシュメモリ31から読み出してメインメモリ40に長期記憶テーブル41として書き込む。したがって、情報処理装置1は、電源OFF時にも、長期記憶テーブル41の情報を記憶することができる。
ところで、上記実施例1では、フラッシュメモリ31に最新の長期記憶テーブル41を長期記憶テーブル31aとして記憶する場合について説明した。しかしながら、LANカード24が故障し、同種のLANカード24で保守交換されるまでの間、別の種類のLANカード24が使われる場合が考えられる。この場合、別の種類のLANカード24を使用した時に長期記憶テーブル31aが更新され、元々搭載されていたLANカード24の固有情報は失われてしまう。そこで、実施例2では、元のLANカード24が搭載されていた時の長期記憶テーブル31aへロールバックすることで、交換したLANカード24に対し元のLANカードの固有情報を引き継がせる情報処理装置について説明する。
図39は、実施例2に係る情報処理装置10のハードウェア構成を示す図である。なお、ここでは説明の便宜上、図1に示した各部と同様の役割を果たす要素については同一符号を付すこととしてその詳細な説明を省略する。
図39に示すように、フラッシュメモリ31は、3つの長期記憶テーブル31b、31c及び31dを記憶する。長期記憶テーブル31b、31c及び31dは、保存された時刻で管理される。「yymm01hhmm」〜「yymm03hhmm」は、保存された時刻を示す。長期記憶テーブル31bが最も古く、次に長期記憶テーブル31cが古く、長期記憶テーブル31dが最も新しい。なお、ここでは、フラッシュメモリ31は、3つの長期記憶テーブル31b、31c及び31dを記憶するが、フラッシュメモリ31は、より多くの長期記憶テーブルを記憶してもよい。また、フラッシュメモリ31は、2つの長期記憶テーブルを記憶してもよい。
テーブル準備部44は、最も新しい長期記憶テーブル31dをフラッシュメモリ31からメインメモリ21へ読み込む。そこで、ユーザは、情報処理装置10をパワーオンした後、テーブル準備部44が動作する直前にファンクションキーを入力することにより割り込み処理を動作させる。ロールバックを行わない場合は、ユーザは、ファンクションキーを入力しない。ロールバックを行う場合は、ユーザは、ファンクションキーを入力し割り込み処理を発生させる。
割り込み処理部は、複数の長期記憶テーブルを画面に表示し、ユーザに1つ選択させる。そして、割り込み処理部は、選択された長期記憶テーブルをコピーして保存時刻を現在時刻とする。そして、テーブル準備部44が最新の長期記憶テーブルをフラッシュメモリ31からメインメモリ21へ読み込むことで、情報処理装置10は、ユーザが指定した長期記憶テーブルヘロールバックすることができる。
図40は、割り込み処理部による処理のフローを示すフローチャートである。図40に示すように、割り込み処理部は、ファンクションキーの入力があるか否かを判定し(ステップS61)、ない場合には、ステップS64へ進む。
一方、ファンクションキーの入力がある場合には、割り込み処理部は、保存されている長期記憶テーブルを画面に表示しユーザに選択させる(ステップS62)。そして、割り込み処理部は、ユーザが選択した長期記憶テーブルをコピーし、日付を現時刻にする(ステップS63)。そして、割り込み処理部は、割り込み処理を終了する(ステップS64)。
上述してきたように、実施例2では、割り込み処理部が、ユーザが選択した長期記憶テーブルをコピーしてコピー先の長期記憶テーブルの日付を現時刻にすることで、情報処理装置10は、ユーザが指定した長期記憶テーブルヘロールバックすることができる。
以上の実施例1〜2を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)交換可能な形態で搭載された通信用拡張カードが交換前の通信用拡張カードと系統及び種類が同じであるか否かを判定する判定部と、
前記判定部により系統及び種類が同じであると判定された場合には、交換前の通信用拡張カードの固有情報を用いるように制御し、前記判定部により系統又は種類が異なると判定された場合には、交換後の通信用拡張カードの固有情報を用いるように制御する制御部と
を有することを特徴とする情報処理装置。
(付記2)通信用拡張カードを複数搭載可能であり、
交換後の状態の通信用拡張カードの固有情報を搭載箇所と対応付けて記憶する第1記憶部と、
交換前の状態の通信用拡張カードの固有情報を搭載箇所と対応付けて記憶する第2記憶部と、
前記第1記憶部の第1搭載箇所に対応付けられて記憶された固有情報が前記第2記憶部の前記第1搭載箇所とは異なる第2搭載箇所に対応付けられて記憶された固有情報と等しいか否かに基づいて固有情報の重複を判定する重複処理部と
をさらに有することを特徴とする付記1に記載の情報処理装置。
(付記3)マザーボードとは異なるボードに搭載された不揮発性メモリから交換前の状態の通信用拡張カードの固有情報を読み出して前記第2記憶部に書き込み、搭載された通信用拡張カードから固有情報を読み出して前記第1記憶部に書き込む準備部
をさらに有することを特徴とする付記2に記載の情報処理装置。
(付記4)前記第1記憶部は、通信用拡張カードの系統及び種類を表すカード識別子を固有情報に加えて記憶し、
前記第2記憶部は、通信用拡張カードの系統及び種類を表すカード識別子を固有情報に加えて記憶し、
前記重複処理部は、前記カード識別子に基づいて固有情報の重複を判定することを特徴とする付記2に記載の情報処理装置。
(付記5)前記準備部は、複数の固有情報のうちユーザに指定された固有情報を前記不揮発性メモリから読み出して前記第2記憶部に書き込むことを特徴とする付記3に記載の情報処理装置。
(付記6)コンピュータが、
交換可能な形態で搭載された通信用拡張カードが交換前の通信用拡張カードと系統及び種類が同じであるか否かを判定し、
系統及び種類が同じであると判定した場合には、交換前の通信用拡張カードの固有情報を用いるように制御し、系統又は種類が異なると判定した場合には、交換後の通信用拡張カードの固有情報を用いるように制御する
処理を実行することを特徴とする起動方法。
(付記7)通信用拡張カードを複数搭載可能であり、
前記コンピュータが、
交換後の状態の通信用拡張カードの固有情報を搭載箇所と対応付けて第1記憶部に記憶し、
交換前の状態の通信用拡張カードの固有情報を搭載箇所と対応付けて第2記憶部に記憶し、
前記第1記憶部の第1搭載箇所に対応付けられて記憶された固有情報が前記第2記憶部の前記第1搭載箇所とは異なる第2搭載箇所に対応付けられて記憶された固有情報と等しいか否かに基づいて固有情報の重複を判定する
処理をさらに実行することを特徴とする付記6に記載の起動方法。
(付記8)コンピュータに、
交換可能な形態で搭載された通信用拡張カードが交換前の通信用拡張カードと系統及び種類が同じであるか否かを判定し、
系統及び種類が同じであると判定した場合には、交換前の通信用拡張カードの固有情報を用いるように制御し、系統又は種類が異なると判定した場合には、交換後の通信用拡張カードの固有情報を用いるように制御する
処理を実行させることを特徴とする起動プログラム。
(付記9)通信用拡張カードを複数搭載可能であり、
前記コンピュータに、
交換後の状態の通信用拡張カードの固有情報を搭載箇所と対応付けて第1記憶部に記憶し、
交換前の状態の通信用拡張カードの固有情報を搭載箇所と対応付けて第2記憶部に記憶し、
前記第1記憶部の第1搭載箇所に対応付けられて記憶された固有情報が前記第2記憶部の前記第1搭載箇所とは異なる第2搭載箇所に対応付けられて記憶された固有情報と等しいか否かに基づいて固有情報の重複を判定する
処理をさらに実行させることを特徴とする付記8に記載の起動プログラム。
1,1a,10 情報処理装置
2 マザーボード
3 基板
21 メインメモリ
22 CPU
23 フラッシュメモリ
23a BIOS
23b 判断プログラム
24 LANカード
24a LANコントローラ
24b ROM
24c ポート
25 RAIDコントローラカード
25a RAIDコントローラ
31 フラッシュメモリ
31a,31b,31c,31d 長期記憶テーブル
40 BIOS
41 長期記憶テーブル
42 一時記憶テーブル
43 判断部
44 テーブル準備部
45 重複処理部
46 固有情報判断部
46a 判定部
46b 制御部

Claims (7)

  1. 交換可能な形態で搭載された通信用拡張カードが交換前の通信用拡張カードと系統及び種類が同じであるか否かを判定する判定部と、
    前記判定部により系統及び種類が同じであると判定された場合には、交換前の通信用拡張カードの固有情報を用いるように制御し、前記判定部により系統又は種類が異なると判定された場合には、交換後の通信用拡張カードの固有情報を用いるように制御する制御部と
    を有することを特徴とする情報処理装置。
  2. 通信用拡張カードを複数搭載可能であり、
    交換後の状態の通信用拡張カードの固有情報を搭載箇所と対応付けて記憶する第1記憶部と、
    交換前の状態の通信用拡張カードの固有情報を搭載箇所と対応付けて記憶する第2記憶部と、
    前記第1記憶部の第1搭載箇所に対応付けられて記憶された固有情報が前記第2記憶部の前記第1搭載箇所とは異なる第2搭載箇所に対応付けられて記憶された固有情報と等しいか否かに基づいて固有情報の重複を判定する重複処理部と
    をさらに有することを特徴とする請求項1に記載の情報処理装置。
  3. マザーボードとは異なるボードに搭載された不揮発性メモリから交換前の状態の通信用拡張カードの固有情報を読み出して前記第2記憶部に書き込み、搭載された通信用拡張カードから固有情報を読み出して前記第1記憶部に書き込む準備部
    をさらに有することを特徴とする請求項2に記載の情報処理装置。
  4. 前記第1記憶部は、通信用拡張カードの系統及び種類を表すカード識別子を固有情報に加えて記憶し、
    前記第2記憶部は、通信用拡張カードの系統及び種類を表すカード識別子を固有情報に加えて記憶し、
    前記重複処理部は、前記カード識別子に基づいて固有情報の重複を判定することを特徴とする請求項2に記載の情報処理装置。
  5. 前記準備部は、複数の固有情報のうちユーザに指定された固有情報を前記不揮発性メモリから読み出して前記第2記憶部に書き込むことを特徴とする請求項3に記載の情報処理装置。
  6. コンピュータが、
    交換可能な形態で搭載された通信用拡張カードが交換前の通信用拡張カードと系統及び種類が同じであるか否かを判定し、
    系統及び種類が同じであると判定した場合には、交換前の通信用拡張カードの固有情報を用いるように制御し、系統又は種類が異なると判定した場合には、交換後の通信用拡張カードの固有情報を用いるように制御する
    処理を実行することを特徴とする起動方法。
  7. コンピュータに、
    交換可能な形態で搭載された通信用拡張カードが交換前の通信用拡張カードと系統及び種類が同じであるか否かを判定し、
    系統及び種類が同じであると判定した場合には、交換前の通信用拡張カードの固有情報を用いるように制御し、系統又は種類が異なると判定した場合には、交換後の通信用拡張カードの固有情報を用いるように制御する
    処理を実行させることを特徴とする起動プログラム。
JP2016215466A 2016-11-02 2016-11-02 情報処理装置、起動方法及び起動プログラム Active JP6855756B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016215466A JP6855756B2 (ja) 2016-11-02 2016-11-02 情報処理装置、起動方法及び起動プログラム
US15/791,714 US20180121208A1 (en) 2016-11-02 2017-10-24 Information processing apparatus and starting method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016215466A JP6855756B2 (ja) 2016-11-02 2016-11-02 情報処理装置、起動方法及び起動プログラム

Publications (2)

Publication Number Publication Date
JP2018073292A true JP2018073292A (ja) 2018-05-10
JP6855756B2 JP6855756B2 (ja) 2021-04-07

Family

ID=62019875

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016215466A Active JP6855756B2 (ja) 2016-11-02 2016-11-02 情報処理装置、起動方法及び起動プログラム

Country Status (2)

Country Link
US (1) US20180121208A1 (ja)
JP (1) JP6855756B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10521216B2 (en) * 2017-01-17 2019-12-31 Oracle International Corporation Unified extensible firmware interface updates

Also Published As

Publication number Publication date
US20180121208A1 (en) 2018-05-03
JP6855756B2 (ja) 2021-04-07

Similar Documents

Publication Publication Date Title
JP4681505B2 (ja) 計算機システム、管理計算機及びプログラム配布方法
US10365999B2 (en) Method and apparatus for performing memory space reservation and management
US8127128B2 (en) Synchronization of swappable module in modular system
US8015396B2 (en) Method for changing booting configuration and computer system capable of booting OS
JP5637873B2 (ja) 計算機システムおよびpciカードのhba識別子引き継ぎ方式
US9870288B2 (en) Container-based processing method, apparatus, and system
CN110032405B (zh) 系统开机码存储器管理方法、存储器装置与应用其的电子系统
JP4242420B2 (ja) 多数のコンピューティングプラットフォームにおけるosにとらわれない資源共有
TWI502366B (zh) 雲端叢集系統及其開機部署方法
US8171176B2 (en) Method for selective replication of physical devices on a virtual self-configuring zoning expander
JP5216336B2 (ja) 計算機システム、管理サーバ、および、不一致接続構成検知方法
KR20040038714A (ko) 네트워크 스위치 구성 시스템 및 방법
JP6366726B2 (ja) テンプレートベースのプラットフォームとインフラをプロビジョニングするための方法とその装置
JP6850331B2 (ja) マルチノードストレージシステムにおけるファームウェアアップグレード方法
US20100064102A1 (en) Component discovery in multi-blade server chassis
US20060036832A1 (en) Virtual computer system and firmware updating method in virtual computer system
US20180095693A1 (en) Information processing apparatus, information processing system, and method for controlling information processing apparatus
JP6855756B2 (ja) 情報処理装置、起動方法及び起動プログラム
JP6745405B2 (ja) ストレージシステム及びマッピング方法
JP2018194877A (ja) 情報処理装置及び設定プログラム
JP2006252112A (ja) ネットワークブートシステム、単位記憶ユニットのマウント方法およびプログラム
JP2013214122A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP6682897B2 (ja) 通信設定方法、通信設定プログラム、情報処理装置および情報処理システム
KR20150134704A (ko) 네트워크를 이용한 클라이언트 피씨 구동 시스템 및 제어 방법
TWI840849B (zh) 計算系統、電腦實施方法及電腦程式產品

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190807

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200728

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200514

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201201

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210126

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210301

R150 Certificate of patent or registration of utility model

Ref document number: 6855756

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150