JP6256063B2 - 情報処理システム及びプログラム管理方法 - Google Patents

情報処理システム及びプログラム管理方法 Download PDF

Info

Publication number
JP6256063B2
JP6256063B2 JP2014019988A JP2014019988A JP6256063B2 JP 6256063 B2 JP6256063 B2 JP 6256063B2 JP 2014019988 A JP2014019988 A JP 2014019988A JP 2014019988 A JP2014019988 A JP 2014019988A JP 6256063 B2 JP6256063 B2 JP 6256063B2
Authority
JP
Japan
Prior art keywords
bios
information processing
computer
unit
program
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
JP2014019988A
Other languages
English (en)
Other versions
JP2015148861A (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 JP2014019988A priority Critical patent/JP6256063B2/ja
Priority to US14/571,344 priority patent/US9710285B2/en
Publication of JP2015148861A publication Critical patent/JP2015148861A/ja
Application granted granted Critical
Publication of JP6256063B2 publication Critical patent/JP6256063B2/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/4416Network booting; Remote initial program loading [RIPL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Description

本発明は、情報処理システム及びプログラム管理方法に関する。
従来、一般的なコンピュータにおいては、1枚のマザーボードに、Central Processing Unit(CPU)と、基本入出力システム(Basic Input/Output System;BIOS)プログラムを納めたErasable Programmable Read-only Memory(EPROM)、Electrically Erasable Programmable ROM(EEPROM)などのROMとが搭載されている。
BIOSプログラムとは、コンピュータのハードウェアに対して最も低レベルの入出力を行なうためのプログラムであり、コンピュータの電源投入時に読み込まれて起動される。BIOSプログラムは、1台のコンピュータに1つ以上提供される。BIOSプログラムは、CPU、メモリ、Hard Disk Drive(HDD)、オプションカードなどのコンピュータの各種ハードウェア部品を初期化して、ブートローダを呼び出す。
以降、簡潔を期するために、BIOSプログラムを「BIOS」とも呼ぶ。
1台のコンピュータに複数のBIOSが提供されている場合、コンピュータの起動時にどのBIOSを使用(ロード)するかを設定するために、管理テーブルが使用される。使用BIOSの設定は、コンピュータのハードウェアの構成等に基づいて管理者が行なう。
複数のBIOSをそなえるコンピュータにおいては、電源の投入時に、CPUがリセットされたのち、管理テーブルに基づいてロードするBIOSが特定される。そして、特定されたBIOSがROMから読み込まれ、BIOSが起動される。CPUがBIOSに従ってマザーボード上の各種部品にアクセスし、コンピュータの起動処理を行なう。
コンピュータのBIOSを更新する際には、コンピュータ毎にBIOS更新プログラムを実行してBIOSの更新を行なう。
しかし、数十台〜数百台など、コンピュータが多数存在する情報処理システムにおいては、コンピュータ毎にBIOS更新プログラムを実行するのは極めて煩雑である。
そこで、BIOSの更新処理を簡略化するために、管理サーバから対象のコンピュータにプログラムや設定情報を一括配信してBIOSを自動更新する手法が提案されている。
しかし、このような手法では、管理者が、個々のコンピュータについて、当該コンピュータの種別、並びにコンピュータに搭載されているCPUやメモリ、拡張カード等のハードウェア構成を調べ、構成情報に基づいてBIOSの自動更新設定を行なう必要がある。
又、管理サーバから複数のコンピュータにBIOS更新を行なった後には、更新したBIOSを各コンピュータに反映するために、コンピュータを停止させる必要がある。
特開2003−51796号公報 特開2006−72917号公報
上記課題に鑑みて、1つの側面では、本発明は、情報処理システムにおいて情報処理装置の起動プログラムの管理を省力化することを目的とする。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。
このため、情報処理システムは、複数の情報処理装置と、前記複数の情報処理装置の起動に用いられる複数の起動プログラムを管理する管理装置とを有し、前記管理装置は、前記複数の起動プログラムを格納する格納部と、前記複数の情報処理装置のうちの1つの情報処理装置の構成情報を取得する構成情報取得部と、取得した構成情報に基づいて前記格納部に格納されている前記複数の起動プログラムから、前記1つの情報処理装置に対応する起動プログラムを選択する選択部と、前記選択部によって選択された起動プログラムを前記1つの情報処理装置に送信する送信部と、を有し、前記選択部は、前記1つの情報処理装置に対応する起動プログラムが複数存在する場合に、該1つの情報処理装置の構成情報と、既存のコンピュータの構成情報との一致度に基づいて、前記起動プログラムから1つの起動プログラムを選択する。
又、複数の情報処理装置の起動に用いられる複数の起動プログラムを管理するためのプログラム管理方法は、前記複数の情報処理装置のうちの1つの情報処理装置の構成情報を取得し、取得した構成情報に基づいて前記複数の起動プログラムから、前記1つの情報処理装置に対応する起動プログラムを選択し、前記選択した起動プログラムを前記1つの情報処理装置に送信して該情報処理装置を起動させ、前記起動プログラムの選択は、前記1つの情報処理装置に対応する起動プログラムが複数存在する場合に、該1つの情報処理装置の構成情報と、既存のコンピュータの構成情報との一致度に基づいて、前記起動プログラムから1つの起動プログラムを選択する。
開示の技術によれば、情報処理システムにおいて情報処理装置の起動プログラムの管理を省力化することができる。
第1実施形態の一例としての情報処理システムの構成を示す模式図である。 第1実施形態の一例としてのBIOS組合せテーブルを例示する図である。 第1実施形態の一例としてのBIOS選択テーブルを例示する図である。 第1実施形態の一例としての情報処理システムにおけるコンピュータの新規追加時の処理を示すフローチャートである。 第1実施形態の一例としてのコンピュータの起動時のBIOSサーバの処理を示すフローチャートである。 第1実施形態の一例としてのBIOS選択部によるBIOS選択処理を示すフローチャートである。 第1実施形態の一例としてのコンピュータのハードウェア構成を表形式で例示する図である。 第1実施形態の一例としてのBIOS組合せテーブルを例示する図である。 第2実施形態の一例としての情報処理システムの構成を示す模式図である。 第2実施形態の一例としてのBIOS組合せテーブルを例示する図である。 第2実施形態の一例としてのBIOS選択部によるBIOS選択処理を示すフローチャートである。 第3実施形態の一例としての情報処理システムの構成を示す模式図である。 第3実施形態の一例としての情報処理システムにおけるコンピュータの電源投入時の処理を示すフローチャートである。 第3実施形態の一例としての情報処理システムにおけるコンピュータの電源投入後のBIOSサーバの処理を示すフローチャートである。
以下、図面を参照して本情報処理システム及びプログラム管理方法に係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。又、各図は、図中に示す構成要素のみをそなえるという趣旨ではなく、他の機能等を含むことができる。
(A)第1実施形態
図1は、第1実施形態の一例としての情報処理システム1の構成を示す模式図である。
本情報処理システム1においては、BIOSサーバ(管理装置)2が、Local Area Network(LAN)やInternet Small Computer System Interface(iSCSI)等の通信リンク4を介してコンピュータ(情報処理装置)3−1〜3−n(nは2以上の整数)に対して通信可能に接続されている。
なお、以下、コンピュータを示す符号としては、複数のコンピュータのうち1つを特定する必要があるときには符号3−1〜3−nを用いるが、任意のコンピュータを指すときには符号3を用いる。又、コンピュータ3−1〜3−nを、コンピュータ#1〜#nと記載することもある。
BIOSサーバ2は、例えば、サーバ機能をそなえたコンピュータであり、不図示のCPUやメモリのほか、電源制御スイッチ5及びシステム通信コントローラ6をそなえる。
電源制御スイッチ5は、後述するコンピュータ3の電源部9の操作を管理者が遠隔制御するためのスイッチである。電源制御スイッチ5は、管理者によって操作されると、例えば通信リンク4を介して、制御信号(電源投入又は電源切断)をコンピュータ3に送信する。
電源制御スイッチ5としては、公知の遠隔操作用のスイッチを用いることができる。
システム通信コントローラ6は、後述するコンピュータ3のBIOS通信コントローラ10との間で通信リンク4を介した通信を確立するインタフェースである。
その際、後述するBIOSサーバ2のアドレス管理部35が、Dynamic Host Configuration Protocol(DHCP)サーバとしての機能を備えており、後述するアドレステーブル36を使用して、コンピュータ3に割り当てる(付与する)アドレスを決定する。
ここで、BIOSサーバ2のアドレス(例えば、Internet Protocol(IP)アドレス)が、例えば、不図示のタイムサーバ内に事前に設定されており、タイムサーバがコンピュータ3に対してタイムサーバのアドレスを配布する。
コンピュータ3は、タイムサーバから配信されたタイムサーバのアドレスを使用してタイムサーバにアクセスし、BIOSサーバ2のIPアドレスを取得する。
その後、コンピュータ3はBIOSサーバ2のIPアドレスを使用して、BIOSサーバ2に接続する。その際、DHCPサーバとしてのアドレス管理部35により、コンピュータ3に対してアドレスが付与され、コンピュータ3とBIOSサーバ2との間の通信が確立される。
システム通信コントローラ6は、コンピュータ3のBIOS通信コントローラ10との間で通信を行なう。例えば、システム通信コントローラ6は、BIOS通信コントローラ10を介して、コンピュータ3のBIOS管理部11に対し、BIOS17のデータや制御信号(電源投入・切断信号等)などを送信すると共に、BIOS通信コントローラ10からデータを受信する。又、システム通信コントローラ6は、各コンピュータ3から、BIOS通信コントローラ10を介して当該コンピュータ3の情報(例えば構成情報)などの情報を受け取る。
又、BIOSサーバ2は、BIOS管理部11とBIOS格納部16とをそなえる。
BIOS格納部16は、BIOSプログラム(起動プログラム)17−1〜17−m(mは2以上の整数)を格納している。BIOS格納部16としては、例えば、EPROMやEEPROMなどのROMや、Hard Disk Drive(HDD)、Solid State Drive(SSD)を用いることができる。
BIOSプログラム17−1〜17−mは、後述するコンピュータ3−1〜3−nの起動時に、当該コンピュータ3のハードウェアに対して最も低レベルの入出力を行なうためのプログラムである。
以下、簡潔を期するために、BIOSプログラム17−1〜17−mをBIOS17−1〜17−mとも称する。
なお、以下、BIOSを示す符号としては、複数のBIOSのうち1つを特定する必要があるときには符号17−1〜17−mを用いるが、任意のBIOSを指すときには符号17を用いる。又、BIOS17−1〜17−mを、BIOS#1〜#mと記載することもある。
本第1実施形態の一例においては、BIOS17はコンピュータ3に存在せず、コンピュータ3の電源投入時に、BIOSサーバ2から取得され、コンピュータ3の起動処理が行なわれる。
コンピュータ3−1は、CPU7、メモリ8、電源部9、及びBIOS通信コントローラ10をそなえ、これらがシステムバス51によって相互に接続されている。なお、コンピュータ3−2〜3−nも、コンピュータ3−1と同様の構成及び機能を有するため、コンピュータ3−2〜3−nの構成及び機能については図示並びに説明を省略する。
CPU7は、種々の制御や演算を行なう処理装置であり、Operating System(OS)やプログラムを実行することにより、コンピュータ3において種々の機能を実現する。
メモリ8は、CPU7が実行するプログラムや種々のデータや、CPU7の動作により得られたデータ等を一時的に格納する。メモリ8としては、例えば、Random Access Memory(RAM)を使用することができる。又、メモリ8は、後述する構成情報記憶部22としても機能する。
電源部9は、コンピュータ3の電源スイッチである。なお、本実施形態の一例においては、コンピュータ3の電源ケーブルが壁面ACコンセント等に接続されると、コンピュータ3が待機電源状態に入る。この待機電源状態は、コンピュータ3が起動されていないが、例えばBIOS通信コントローラ10等、一部の部品に給電が行なわれており、BIOSサーバ2の電源制御スイッチ5の操作による遠隔電源投入が可能な状態である。
待機電源状態のコンピュータ3を業務等に使用する際には、BIOSサーバ2の電源制御スイッチ5を介してコンピュータ3に電源が投入され、コンピュータ3が起動される。或いは、コンピュータ3は、待機電源が投入されている状態で、ユーザが電源部9のスイッチを直接操作することにより起動することもできる。
BIOS通信コントローラ10は、BIOSサーバ2のシステム通信コントローラ6との間で通信リンク4を介した通信を確立するインタフェースである。例えば、BIOS通信コントローラ10は、システム通信コントローラ6を介して、構成情報記憶部22に格納されているコンピュータ3のハードウェア部品の構成情報を、後述するBIOS管理部11に送信する。
本情報処理システム1においては、BIOSサーバ2の電源制御スイッチ5の操作やユーザの電源部9の操作により、コンピュータ3−1〜3−nのいずれかの電源が投入されると、当該コンピュータ3は、BIOSサーバ2にBIOS送信要求を送信する。BIOSサーバ2がBIOS送信要求を受信すると、BIOSサーバ2のBIOS管理部11が、BIOS送信要求を送信したコンピュータ3に適したBIOSプログラム17を選択して、このBIOSプログラム17をコンピュータ3に送信する。そして、このBIOSプログラム17を使用して、コンピュータ3が起動される。
このため、BIOS管理部11は、BIOS制御部12と管理情報記憶部13とをそなえる。管理情報記憶部13は、BIOS組合せテーブル14、BIOS選択テーブル15、及びアドレステーブル36の情報を記憶している。
BIOS制御部12は、要求受信部(受信部)31、構成情報取得部32、BIOS選択部(選択部)33、BIOS送信部(送信部)34、及びアドレス管理部35をそなえる。
要求受信部31は、電源投入が行なわれたコンピュータ3からBIOS送信要求を受信する。
構成情報取得部32は、コンピュータ3の後述する起動制御部41に対して、当該コンピュータ3の構成情報を送信するように要求する。
BIOS選択部33は、後述する管理情報記憶部13のBIOS組合せテーブル14を参照して、BIOS送信要求の送信元のコンピュータ3に割り当てられているBIOS17を選択する。BIOS組合せテーブル14に、当該コンピュータ3に割り当て済みのBIOS17が存在しない場合、BIOS選択部33は、BIOS格納部16に格納されているBIOS17の中から適切なBIOS17を選択する。その際、BIOS選択部33は、構成情報取得部32が取得したコンピュータ3の構成情報と、後述するBIOS選択テーブル15とを比較して適切なBIOS17を判断する。そして、選択したBIOS17とコンピュータ3のアドレスとの組合せを、BIOS組合せテーブル14に追加する。なお、BIOS選択部33によるBIOS選択処理については図6を用いて後述する。
BIOS送信部34は、システム通信コントローラ6に、BIOS選択部33が選択したBIOS17をBIOS送信要求の送信元のコンピュータ3に送信させる。
アドレス管理部35は、DHCPサーバとしての機能を備えており、後述するアドレステーブル36を参照して、コンピュータ3に、未使用かつ情報処理システム1で一意のアドレスを割り当てる。
ここで、前述のように、BIOSサーバ2のアドレス(例えば、IPアドレス)が、例えば、不図示のタイムサーバ内に事前に設定されており、タイムサーバがコンピュータ3にタイムサーバのアドレスを配布する。
コンピュータ3は、タイムサーバから配信されたタイムサーバのアドレスを使用してタイムサーバにアクセスし、BIOSサーバ2のIPアドレスを取得する。
その後、コンピュータ3はBIOSサーバ2のIPアドレスを使用して、BIOSサーバ2に接続する。その際、DHCPサーバとしてのアドレス管理部35により、コンピュータ3に対してアドレスが付与され、コンピュータ3とBIOSサーバ2との間の通信が確立される。
BIOS組合せテーブル14は、コンピュータ3と、当該コンピュータ3に割り当てられているBIOS17との組合せ(ペア)を記憶しているテーブルである。
図2は、第1実施形態の一例としてのBIOS組合せテーブル14を例示する図である。
BIOS組合せテーブル14は、コンピュータアドレス列141と、BIOS ID列142とを相互に対応付けて記憶している。
コンピュータアドレス列141は、アドレス管理部35によって割り当てられ、コンピュータ3を一意に識別するコンピュータ3のアドレスを格納している。コンピュータ3のアドレスとしては、例えば、コンピュータ3のIPアドレスなどを使用することができる。
BIOS ID列142は、BIOS17を一意に識別する識別情報(ID等)を格納している。
BIOS選択テーブル15は、BIOS17に対応するコンピュータ3のハードウェア(マザーボード、CPU、メモリ、拡張デバイス等)の組み合わせを記憶しているテーブルである。BIOS選択テーブル15は、後述するBIOS選択部33が、コンピュータ3の構成情報から、当該コンピュータ3に適したBIOS17を選択する際に使用する情報を格納している。
図3は、第1実施形態の一例としてのBIOS選択テーブル15を例示する図である。
BIOS選択テーブル15は、行ID列150、BIOS ID列151、ボードID列152、CPU列153、メモリ列155、及び拡張デバイス列156を、相互に対応付けて記憶している。
行ID列150は、BIOS選択テーブル15内の行(エントリ)を一意に識別する識別情報(行番号等)を格納している。
BIOS ID列151は、BIOS17を一意に識別する識別情報(ID等)を格納している。図3に示す例では、BIOS ID列151に“1”,“2”,“3”,“4”の値が格納されている。
ボードID列152は、BIOS ID列151の値によって識別されるBIOS17に対応するコンピュータ3の不図示のマザーボードを一意に識別する値(ID等)を記憶している。図3に示す例では、ボードID列152に“100”,“200”,“300”の値が格納されている。
CPU列153は、BIOS ID列151の値によって識別されるBIOS17に対応するコンピュータ3のCPU7を一意に識別する値(ID等)を記憶している。CPU列153に値“*”(ワイルドカード)が指定されている場合、全てのCPU7を使用可能であることを示す。なお、BIOS選択テーブル15にCPU列153が複数設けられてもよい。例えば、図8に示すBIOS選択テーブル15の別の例では、CPUの列が、CPU#1 153とCPU#2 154と、2列設けられている。
メモリ列155は、BIOS ID列151の値によって識別されるBIOS17に対応するコンピュータ3のメモリ8を一意に識別する値(ID等)を記憶している。メモリ列155に値“*”(ワイルドカード)が指定されている場合、全てのメモリ8を使用可能であることを示す。
拡張デバイス列156は、BIOS ID列151の値によって識別されるBIOS17に対応するコンピュータ3の不図示の拡張デバイス(拡張ボード等)を一意に識別する値(ID等)を記憶している。拡張デバイス列156に値“*”(ワイルドカード)が指定されている場合、全ての拡張デバイスを使用可能であることを示す。なお、BIOS選択テーブル15に拡張デバイス列156が複数設けられてもよい。例えば、図8に示すBIOS選択テーブル15の別の例では、拡張デバイスの列が、スロット#1〜#4 156〜159と、4列設けられている。
また、BIOS選択テーブル15には、個々のハードウェア部品毎に、システム管理者によって事前に重みの値が記憶されている。この重みは、BIOS選択部33により、コンピュータ3全体でのハードウェア構成の一致の度合いを数値化した値(一致度)である重み合計値を算出するために用いられる。重み合計値の算出については図6〜図8を用いて後述する。
アドレステーブル36は、情報処理システム1に存在する全ての情報処理装置(BIOSサーバ2、コンピュータ3等)や不図示のスイッチ等のアドレスと、情報処理システム1でまだ使用されていないアドレスとを格納しているテーブルである。アドレステーブル36は、後述するアドレス管理部35によって、コンピュータ3へのアドレスの付与に使用される。アドレス管理部35は、アドレステーブル36を参照して、各コンピュータ3に割り当て済みのアドレスと、未使用のアドレスとを知ることができる。
又、CPU7は、不図示の起動管理プログラムを実行することにより、起動制御部41としての機能を実行する。
起動制御部41は、コンピュータ3の電源投入時に、コンピュータ3の起動に必要なBIOS17の送信をBIOSサーバ2に対して要求し、BIOSサーバ2から送信されたBIOS17を使用してコンピュータ3を起動させる。
このため、起動制御部41は、構成情報収集部42、P−ON検知部43、BIOS要求部44、及びBIOS実行部45を有する。
構成情報収集部42は、コンピュータ3に搭載されているハードウェア部品(マザーボード、CPU、メモリ、拡張デバイス等)の構成情報を取得して、これを後述する構成情報記憶部22の構成記憶テーブル23に書き込む。
P−ON検知部43は、BIOSサーバ2から電源投入信号を受信するか、又はユーザがコンピュータ3の電源部9のスイッチを操作したときに、コンピュータ3の電源が投入されたことを検知する。
BIOS要求部44は、P−ON検知部43がコンピュータ3の電源投入を検知すると、BIOSサーバ2に対して、BIOS送信要求を送信する。その後、BIOS要求部44は、BIOSサーバ2から構成情報を要求されると、構成情報収集部42が取得した構成情報をBIOSサーバ2に送信する。
BIOS実行部45は、BIOSサーバ2からBIOS17を受け取り、当該BIOS17を実行してコンピュータ3の起動を開始する。
構成情報記憶部22は、構成記憶テーブル23を記憶している。構成記憶テーブル23は、コンピュータ3にそなえられている全ハードウェア部品(ハードウェア)の情報を記憶しているテーブルである。構成記憶テーブル23としては、コンピュータ3に一般的に使用される構成テーブルを使用することができるため、その詳細な説明は省略する。
次に、図4〜図8を参照して、本情報処理システム1における処理を説明する。
図4は、第1実施形態の一例としての情報処理システム1におけるコンピュータ3の新規追加時の処理を示すフローチャート(ステップS1〜S15)である。
この処理は、BIOSサーバ2にコンピュータ3を新規に接続する際に実行される。例えば、この処理は、新しいコンピュータ3をBIOSサーバ2に初めて接続する際や、あるBIOSサーバ2に接続されていた既存のコンピュータ3を別のBIOSサーバ2に接続される際に実行される。
ステップS1において、新しいコンピュータ3の電源ケーブルが壁面ACコンセント等に接続され電源が投入される。又、コンピュータ3がBIOSサーバ2と接続される。その際、アドレス管理部35は、アドレステーブル36を参照して、接続が検知されたコンピュータ3に対して割り当てる未使用のアドレスを1つ選択し、このアドレスをコンピュータ3に通知する。
次に、ステップS2において、構成情報収集部42がコンピュータ3のハードウェア(マザーボード、CPU、接続デバイス等)の構成情報を取得して、構成記憶テーブル23を作成する。そして作成した構成記憶テーブル23の情報を、構成情報記憶部22に記憶する。なお、本ステップにおいて、構成情報の取得が、コンピュータ3の不図示のbaseboard management controller(BMC)によって行なわれてもよい。
一方、ステップS3において、BIOSサーバのシステム通信コントローラ6が、新しいコンピュータ3がBIOSサーバ2に接続されたことを検知する。そして、BIOSサーバ2の構成情報取得部32が、コンピュータ3に対し構成情報を要求する。
ステップS4において、コンピュータ3の構成情報収集部42が、ステップS2で収集した構成情報を返信する。
ステップS5において、BIOSサーバ2は、コンピュータ3から構成情報を受け取る。
ここで、コンピュータ3は新規に追加されたものであるため、BIOS組合せテーブル14にはこのコンピュータ3に割り当てられているBIOS7は未だ登録されていない。このため、BIOS選択部33は、BIOS選択処理を実施して、新しいコンピュータ3に割り当てるBIOS7を選択(特定)する。BIOS選択処理については、図6を参照して後述する。
ステップS6において、BIOS選択部33は、特定したBIOS7とコンピュータ3との組み合わせをBIOS組合せテーブル14に追加(登録)する。
次に、ステップS7において、BIOS選択部33は、接続が検知されたコンピュータ3に対して構成情報受領通知を送信する。例えば、BIOS選択部33は、構成情報受領通知として、ステップS1でアドレス管理部35が選択しコンピュータ3に通知したアドレスを、構成情報受領通知として送信する。ここで、BIOS選択部33は、コンピュータ3のアドレス以外の任意の情報を、構成情報受領通知としてコンピュータ3に送信してもよい。
ステップS8において、BIOSサーバ2から電源切断信号が送信されてコンピュータ3を待機電源状態に移行させると共に、システム通信コントローラ6とBIOS通信コントローラ10との通信が一旦終了される。
その後、ステップS9において、例えば、管理者がBIOSサーバ2の電源制御スイッチ5を操作して、コンピュータ3の電源を投入する。その際、システム通信コントローラ6からコンピュータ3に対して電源投入信号が送信される。
ステップS9でBIOSサーバ2から送られた電源投入信号を受けると、ステップS10において、コンピュータ3の電源部9が遠隔操作でオンとなり、コンピュータ3の電源が投入される。
ステップS11において、コンピュータ3のCPU7が、当該コンピュータ3にBIOSが存在することを知らずに、BIOSをロードしようと試みる。
ステップS12において、起動制御部41のBIOS要求部44が、BIOSサーバ2にBIOS送信要求を送信する。
コンピュータ3からBIOS送信要求を受信すると、ステップS13において、BIOS制御部12が、BIOS選択処理を実行する。BIOS選択処理については、図6を用いて後述する。
ステップS14において、BIOS選択部33が、ステップS13で選択したBIOS17をBIOS格納部16から読み出し、BIOS送信部34が、読み出したBIOS17を、システム通信コントローラ10に、コンピュータ3宛てに送信させる。
ステップS15において、起動制御部41のBIOS実行部45が、BIOSサーバ2から送信されたBIOS17を一旦メモリ8に格納すると共に、これを実行する。そして、BIOS17が、プログラムに従って、コンピュータ3の調査、初期化を行なう。その後、CPU7がOSなどを読み込んで、コンピュータ3の起動処理を行なう。
次に、コンピュータ3の起動処理について説明する。
図5は、第1実施形態の一例としてのコンピュータ3の起動時のBIOSサーバ2の処理を示すフローチャート(ステップS21〜S30)である。
BIOS制御部12は、コンピュータ3からBIOS送信要求の受信を待機し、コンピュータ3からBIOS送信要求を受信したかどうかを判定する。
コンピュータ3からBIOS送信要求を受信していない場合(ステップS21のNOルート参照)、BIOS制御部12は、ステップS21に戻りBIOS送信要求の受信を待機する。
一方、コンピュータ3からBIOS送信要求を受信した場合(ステップS21のYESルート参照)、ステップS22において、BIOS制御部12のBIOS選択部33が、BIOS組合せテーブル14を参照する。
ステップS23において、BIOS選択部33は、BIOS送信要求を送信したコンピュータ3のアドレスが、BIOS組合せテーブル14のコンピュータアドレス列141に存在するかどうかを確認する。
コンピュータ3のアドレスがBIOS組合せテーブル14に存在する場合(ステップS23のYESルート参照)、処理が後述するステップS29に移行する。
一方、コンピュータ3のアドレスがBIOS組合せテーブル14に存在しない場合(ステップS23のNOルート参照)、ステップS24において、構成情報取得部32が、BIOS送信要求を送信したコンピュータ3に対して、構成情報を送信するように要求する。これを受けて、コンピュータ3の起動制御部41の構成情報収集部42が、構成情報記憶部22の構成記憶テーブル23から構成情報を読み出して、これを構成情報取得部32に送信する。
ステップS25において、BIOS選択部33は、ステップS24で構成情報取得部32が取得したコンピュータ3の構成情報に相当するエントリが、BIOS選択テーブル15に存在するかどうかを判定する。
このとき、BIOS選択部33は、コンピュータ3から受け取った構成情報とBIOS選択テーブル15とを使用して、図6を用いて後述するBIOS選択処理を行なうことで、コンピュータ3に割り当てるBIOS17を選択する。
コンピュータ3の構成情報に相当するエントリが、BIOS選択テーブル15に存在しない場合(ステップS25のNOルート参照)、ステップS26において、BIOS選択部33は、本処理を異常終了する。その際、BIOS選択部33は、情報処理システム1に管理者に対して、コンピュータ3の構成情報に対応するBIOS17がBIOS選択テーブル15に登録されていない旨を、例えばメッセージの表示などにより通知する。この通知を受けた管理者は、例えば、新しいコンピュータ3用の適切なBIOS17をBIOS格納部16に格納して、このコンピュータ3の構成情報とBIOS17の識別子との組合せをBIOS選択テーブル15に登録する。
一方、コンピュータ3の構成情報に相当するエントリが、BIOS選択テーブル15に存在する場合(ステップS25のYESルート参照)、ステップS27において、BIOS選択部33は、BIOS選択テーブル15に登録されているBIOS17を、コンピュータ3に割り当てるBIOS17として特定する。
そして、ステップS28において、BIOS選択部33は、コンピュータ3と特定したBIOS17との組合せをBIOS組合せテーブル14に記憶する。
次に、ステップS29において、BIOS送信部34が、BIOS選択部33が特定したBIOS17を、BIOS格納部16から読み出す。
ステップS30において、BIOS送信部34は、システム通信コントローラ10に、ステップS29で読み出したBIOS17を、コンピュータ3宛てに送信させる。
図6は、第1実施形態の一例としてのBIOS選択部33によるBIOS選択処理を示すフローチャート(ステップS41〜S48)である。
このBIOS選択処理においては、BIOS選択部33はBIOS組合せテーブル15のエントリを1行ずつ読み込んでコンピュータ3の構成情報と比較する。
ステップS41において、BIOS選択部33は、BIOS組合せテーブル15の最初の行を読み込む。
次に、ステップS42において、BIOS選択部33は、BIOS組合せテーブル15の、ステップS41で読み込んだ行の最初の列の値と、対応するコンピュータ3の構成情報とを比較する。
そして、ステップS43において、BIOS選択部33は、ステップS42で比較した値が一致したかどうかを判定する。
ここでは、例として、図7に表形式で示すハードウェア構成を有するコンピュータ3が起動され、BIOS選択テーブル15に図8に示すようなデータが登録されているとする。
図8のBIOS組合せテーブル15の例では、最初の行である行ID列150=“1”の先頭の列がボードID列152であり、その値は“100”である。この値は、図7に示すボードIDの値“100”と一致するため、BIOS選択部33は、2つの値が一致していると判定する。なお、BIOS組合せテーブル15の値が“*”である場合は、コンピュータ3の構成情報の値にかかわらず一致すると判断する。
値が一致しなかった場合(ステップS43のNOルート参照)、処理がステップS45に移動する。
一方、値が一致した場合(ステップS43のYESルート参照)、ステップS44において、BIOS選択部33は、BIOS組合せテーブル15の該当する列の重みの値を、重み合計値に加算する。重み合計値とは、コンピュータ3全体でのハードウェア構成の一致の度合いを数値化した値(一致度)であり、一致したハードウェア部品の重みの値を合算して算出する。例えば、重み合計値は、ハードウェア構成の一致が高いほど大きな値となる。重み合計値の算出例については図7,図8を用いて後述する。
次にステップS45において、BIOS選択部33は、ステップS41で読み込んだ行の最終列に到達したかどうかを判定する。
最終列に達していない場合(ステップS45のNOルート参照)、BIOS選択部33は、ステップS42に戻り、ステップS41で読み込んだ行の次の列について、ステップS42〜S45の処理を繰り返す。
最終列に達した場合(ステップS45のYESルート参照)、ステップS46において、BIOS選択部33は、一致する列が1つでもあれば、その行のBIOS ID列151に対応するBIOS17を、候補BIOSとして選択する。
次に、ステップS47において、BIOS選択部33は、BIOS組合せテーブル15の最終行に達したどうかを判定する。
最終行に達していない場合(ステップS47のNOルート参照)、BIOS選択部33は、ステップS41に戻り、BIOS組合せテーブル15の次の行を読み込んで、ステップS41〜S47の処理を繰り返す。
最終行に達した場合(ステップS47のYESート参照)、ステップS48において、BIOS選択部33は、候補BIOS17のうち、重み合計値の最も高いBIOS17を選択する。
図8の例では、行ID列150=“1”のエントリについては、図7の構成のうち、ボードID列152=“100”、CPU#1=“A”、スロット#1=“LAN”が一致する。
又、行ID列150=“2”のエントリについては、図7の構成のうち、ボードID列152=“100”、CPU#1=“A”が一致する。
そこで、BIOS選択部33は、ステップS41〜47で、行ID列150=“1”のエントリに対応するBIOS#1と、行ID列150=“2”のエントリに対応するBIOS#2とを候補のBIOS17として選択する。そして、BIOS選択部33は、BIOS17を絞り込むために、BIOS選択テーブル15の一致したエントリのそれぞれについて合計重みを計算する。
行ID列150=“1”のエントリでは、重みは、ボードID列152の一致に対して10点、CPU#1 153の一致に対して10点、スロット#1 156の一致に対して5点であるので、合計重みは、10+10+5=25となる。
一方、行ID列150=“2”のエントリでは、重みは、ボードID列152の一致に対して10点、CPU#1 153の一致に対して10点であるので、合計重みは、10+10=20となる。
このため、ステップS48で、BIOS選択部33は、合計重みの高いほうのBIOS#1(BIOS17−1)を選択する。
上述のように、第1実施形態の一例の情報処理システム1においては、BIOSサーバ2のBIOS格納部16が、複数のコンピュータ3のBIOS17を一元的に記憶している。そして、BIOS制御部12の構成情報取得部32が、コンピュータ3のハードウェア構成情報を取得し、取得した構成情報とBIOS選択テーブル15とに基づいて、BIOS選択部33がコンピュータ3に対して適切なBIOS17を選択する。そして、BIOS送信部34が、選択したBIOS17をコンピュータ3に対して送信する。
これにより、情報処理システム1にコンピュータ3が数十台〜数百台存在する場合でも、稼働中の情報処理システム1におけるBIOS17のアップデート作業やBIOS17の設定作業を自動化して、コンピュータ3の管理作業の工数を削減することができる。
コンピュータ3が数台、数十台〜数百台存在する情報処理システム1では、従来、稼働中の情報処理システム1のBIOS17のアップデートには、コンピュータ3の台数分の工数を要していた。例えば、1台のコンピュータ3のBIOS17のアップデート及び設定に30分・人の工数かかっていたとすると、従来は、5台のコンピュータ3にこの作業を行なうには30分×5=2.5時間・人の工数を要していた。しかし、本実施形態の一例においては、コンピュータ3の1台の作業工数である30分・人で、5台のコンピュータ3に対してBIOS17のアップデートを行なうことができ、作業工数を大幅に削減することが可能となる。
又、作業者の作業ミスにより、コンピュータ3に不適切なBIOS17がロードされ、コンピュータ3が誤動作するリスクを回避することもできる。
さらに、BIOS選択部33は、コンピュータ3の識別情報(アドレス)と、BIOS選択部33が選択したBIOS17との組合せ(ペア)を、BIOS組合せテーブル14に登録する。このため、一旦コンピュータ3のアドレスとBIOS17との組合せが組合せテーブル14に登録された後は、コンピュータ3の構成情報とBIOS選択テーブル15との比較をスキップして、BIOS送信部34がコンピュータ3にBIOS17を送信することが可能となる。
さらに、BIOS選択部33は、コンピュータ3に対して候補のBIOS17が複数存在する場合には、ハードウェア構成の一致度を示す重み合計値に基づいて、より適切なBIOS17を選択する。
これにより、コンピュータ3に不適切なBIOS17がロードされ、コンピュータ3が誤動作するリスクを一層低減することができる。
(B)第2実施形態
上記の第1実施形態の一例においては、BIOS管理部11がコンピュータ3の構成情報から、コンピュータ3に送信する(割り当てる)BIOS17を選択し、これをコンピュータ3に送信する。
しかし、情報処理システム1の運用によっては、管理者が手動でコンピュータ3にBIOS17を割り当てることが好ましいケースも考えられる。
このため、第2実施形態の一例の情報処理システム1′においては、管理者が手動でコンピュータ3にBIOS17を割り当てることを可能とする。
図9は、第2実施形態の一例としての情報処理システム1′の構成を示す模式図である。
情報処理システム1′は、BIOSサーバ2が管理用コントローラ52をそなえ、情報処理システム1′が管理用コンピュータ21をそなえる点が、上述の第1実施形態の一例としての情報処理システム1の構成とは異なる。又、BIOS組合せテーブル14に代えてBIOS組合せテーブル14′が使用される点、並びに、BIOS選択部33に代えてBIOS選択部33′をそなえる点も異なる。その他の構成及び機能については、上述した第1実施形態の一例としての情報処理システム1の構成及び機能と同様であるため、その説明を省略する。
管理用コンピュータ21は、例えば、不図示のCPUやメモリをそなえる一般的なコンピュータである。管理用コンピュータ21は、通信リンク4経由で、BIOSサーバ2の管理用コンロトーラ52を介してBIOSサーバ2と接続されている。管理者は、管理用コンピュータ21を使用して、BIOSサーバ2の管理情報記憶部13に格納されるBIOS組合せテーブル14′の参照及び更新を行なうことができる。
BIOSサーバ2の管理用コントローラ52は、管理用コンピュータ21との間で通信リンク4を介した通信を確立するインタフェースである。
図10は、第2実施形態の一例としてのBIOS組合せテーブル14′を例示する図である。
BIOS組合せテーブル14′は、図2に示したBIOS組合せテーブル14にさらに変更不可フラグ143を対応付けて構成されている。すなわち、BIOS組合せテーブル14′は、コンピュータアドレス列141、BIOS ID列142、及び変更不可フラグ143を相互に対応付けて記憶している。
コンピュータアドレス列141は、アドレス管理部35によって割り当てられ、コンピュータ3を一意に識別するコンピュータ3のアドレスを格納している。
BIOS ID列142は、BIOS17を一意に識別する識別情報(ID等)を格納している。
変更不可フラグ143は、コンピュータアドレス列141の値によって識別されるコンピュータ3に対して、BIOS管理部11によってBIOS17を割り当てるかを示す値を格納する。BIOS管理部11によってBIOS17を割り当てたくないコンピュータ3に対しては、変更不可フラグ143の値を例えば“1”に設定する。変更不可フラグ143の値は、管理者が上述の管理用コンピュータ21を使用して設定される。
図11は、第2実施形態の一例としてのBIOS選択部によるBIOS選択処理を示すフローチャート(ステップS21〜S31)である。この図11は、図5に示すフローチャートにステップS31をそなえる点で図5とは異なる。
BIOS制御部12は、コンピュータ3からBIOS送信要求の受信を待機し、コンピュータ3からBIOS送信要求を受信したかどうかを判定する。
コンピュータ3からBIOS送信要求を受信していない場合(ステップS21のNOルート参照)、BIOS制御部12は、ステップS21に戻りBIOS送信要求の受信を待機する。
一方、コンピュータ3からBIOS送信要求を受信した場合(ステップS21のYESルート参照)、ステップS22において、BIOS制御部12のBIOS選択部33′が、BIOS組合せテーブル14′を参照する。
ステップS23において、BIOS選択部33′は、BIOS送信要求を送信したコンピュータ3のアドレスが、BIOS組合せテーブル14′のコンピュータアドレス列141に存在するかどうかを確認する。
コンピュータ3のアドレスがBIOS組合せテーブル14′に存在する場合(ステップS23のYESルート参照)、ステップS31において、BIOS選択部33′は、BIOS組合せテーブル14′内のコンピュータ3の対応する変更不可フラグの値として“1”が設定されているかどうかを判定する。
変更不可フラグの値が“1”である場合(ステップS31のYESルート参照)、BIOS選択部33′は本処理を終了し、BIOS17の選択を行なわない。
一方、変更不可フラグの値が“1”ではない場合(ステップS31のNOルート参照)、処理が後述するステップS29に移行する。
ステップS23でコンピュータ3のアドレスがBIOS組合せテーブル14′に存在しない場合(ステップS23のNOルート参照)、ステップS24において、構成情報取得部32が、BIOS送信要求を送信したコンピュータ3に対して、構成情報を送信するように要求する。これを受けて、コンピュータ3の起動制御部41の構成情報収集部42が、構成情報記憶部22の構成記憶テーブル23から構成情報を読み出して、読み出した構成情報を、構成情報取得部32に送信する。
ステップS25において、BIOS選択部33′は、ステップS24で構成情報取得部32が取得したコンピュータ3の構成情報に相当するエントリが、BIOS選択テーブル15に存在するかどうかを判定する。
このとき、BIOS選択部33′は、コンピュータ3から受け取った構成情報とBIOS選択テーブル15とを使用して、図6に示したBIOS選択処理を行なうことで、コンピュータ3に割り当てるBIOS17を選択する。
コンピュータ3の構成情報に相当するエントリが、BIOS選択テーブル15に存在しない場合(ステップS25のNOルート参照)、ステップS26において、BIOS選択部33′は、本処理を異常終了する。その際、BIOS選択部33′は、情報処理システム1に管理者に対して、コンピュータ3の構成情報に対応するBIOS17がBIOS選択テーブル15に登録されていない旨を、例えばメッセージの表示などにより通知する。この通知を受けた管理者は、例えば、新しいコンピュータ3用の適切なBIOS17をBIOS格納部16に格納して、このコンピュータ3の構成情報とBIOS17の識別子との組合せをBIOS選択テーブル15に登録する。
一方、コンピュータ3の構成情報に相当するエントリが、BIOS選択テーブル15に存在する場合(ステップS25のYESルート参照)、ステップS27において、BIOS選択部33′は、BIOS選択テーブル15に登録されているBIOS17を、コンピュータ3に割り当てるBIOS17として特定する。
そして、ステップS28において、BIOS選択部33′は、コンピュータ3と特定したBIOS17との組合せをBIOS組合せテーブル14′に記憶する。
次に、ステップS29において、BIOS送信部34が、BIOS選択部33′が特定したBIOS17を、BIOS格納部16から読み出す。
ステップS30において、BIOS送信部34は、システム通信コントローラ10に、ステップS29で読み出したBIOS17を、コンピュータ3宛てに送信させる。
上述のように、第2実施形態の一例の情報処理システム1′においては、BIOS管理部11によるコンピュータ3へのBIOS17の割り当てを有効にするかどうかを、管理者が管理用コンピュータ21を使用して設定することができる。
このように、第2実施形態の一例の情報処理システム1′は、上述の第1実施形態の一例の情報処理システム1の作用・効果に加えて、コンピュータ3へのBIOS17の自動割り当ての有効・無効を切り替えることができるという効果を奏する。これにより、BIOS17の更新に要する工数を削減しつつ、情報処理システム1′の運用の柔軟性を向上させることができる。
(C)第3実施形態
コンピュータ3の運用においては、コンピュータ3を通信リンク4に接続した状態で、コンピュータ3の構成が変更されることがある。
そこで、第3実施形態の一例においては、BIOSサーバ2とコンピュータ3とが接続された状態で、コンピュータ3のハードウェア構成を変更可能とする。
図12は、第3実施形態の一例としての情報処理システム1″の構成を示す模式図である。
情報処理システム1″は、BIOS選択部33に代えてBIOS選択部33″をそなえる点、並びに、構成情報収集部42に代えて構成情報収集部42″をそなえる点が、上述の第1実施形態の一例としての情報処理システム1の構成とは異なる。その他の構成及び機能については、上述した第1実施形態の一例としての情報処理システム1の構成及び機能と同様であるため、その説明を省略する。
図13は第3実施形態の一例としての情報処理システム1″におけるコンピュータ3の電源投入時の処理を示すフローチャート(ステップS51〜S53)である。
ステップS51において、BIOSサーバ2から電源投入信号を受信するか、又はユーザがコンピュータ3の電源部9のスイッチを操作し、コンピュータ3の電源が投入されると、コンピュータ3のP−ON検知部43がコンピュータ3の電源投入を検知する。
ステップS52において、構成情報収集部42″は、コンピュータ3の構成情報を収集する。そして、収集した構成情報を構成記憶テーブル23の値と比較することにより、収集した構成情報が、前回の起動時の構成情報と合致するかどうかを判定する。
構成情報が合致する場合(ステップS52のYESルート参照)、本処理を終了して、コンピュータ3の起動を続行する。
一方、構成情報が合致しない場合(ステップS52のNOルート参照)、ステップS53において、構成情報収集部42″は、構成情報変更をBIOSサーバ2に通知する。
図14は、第3実施形態の一例としての情報処理システム1″におけるコンピュータ3の電源投入後のBIOSサーバ2の処理を示すフローチャート(ステップS61〜S65)である。
ステップS61において、BIOSサーバ2のBIOS制御部12の要求受信部31が、図13のステップS53でコンピュータ3から送信された構成変更通知を受け取る。
ステップS62において、BIOS選択部33″は、ステップS61で受信した構成変更通知の送信元のコンピュータ3のコンピュータアドレスが、BIOS組合せテーブル14に存在するかどうかを判定する。
コンピュータアドレスがBIOS組合せテーブル14に存在しない場合(ステップS62のNOルート参照)、処理が後述するステップS64に移る。
一方、コンピュータアドレスがBIOS組合せテーブル14に存在する場合(ステップS62のYESルート参照)、ステップS63において、BIOS選択部33″は、BIOS組合せテーブル14から、当該コンピュータ3のエントリを消去する。
ステップS64において、構成情報取得部32が、コンピュータ3に対し構成情報を要求して、コンピュータ3から構成情報を受信する。
ステップS65において、BIOS制御部12のBIOS選択部33″が、ステップS64で受信した構成情報を用いて、図6のBIOS特定処理を実行して、コンピュータ3に割り当てるBIOS17を特定する。そして、BIOS選択部33″は、コンピュータ3のアドレスと特定したBIOS17との組合せを、BIOS組合せテーブル14に登録する。
上述のように、第3実施形態の一例の情報処理システム1″においては、コンピュータ3の起動制御部41が、コンピュータ3のハードウェア構成の変更を検知し、構成が変更された旨をBIOSサーバ2に通知する。そして、この構成変更通知に基づいて、BIOSサーバ2のBIOS制御部12が、構成変更後のコンピュータ3に適切なBIOS17を選択して、これをコンピュータ3に送信する。
これにより、第3実施形態の一例の情報処理システム1″は、上述の第1実施形態の一例の情報処理システム1の作用・効果に加えて、コンピュータ3の構成が変更されても、管理者による手作業を必要とすることなく、適切なBIOS17を選択してコンピュータ3に送信するという効果を奏する。これにより、BIOS更新に要する作業工数をより一層削減することができる。
(D)その他
そして、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、上記の第2実施形態と第3実施形態とを組み合わせて実施してもよい。
又、上記の第1〜第3実施形態では、BIOSサーバ2からコンピュータ3にBIOS17を送信していたが、BIOSサーバ2が、BIOS17以外のコンピュータ3の基本プログラム(OS等)をコンピュータ3に送信してもよい。
なお、上記第1〜第3実施形態では、BIOSサーバ2の不図示のCPUが、起動管理プログラムを実行することにより、上述したBIOS管理部11として、すなわち、BIOS制御部12、要求受信部31、構成情報取得部32、BIOS選択部33,33′,33″、BIOS送信部34、及びアドレス管理部35として機能する。
なお、これらのBIOS制御部12、要求受信部31、構成情報取得部32、BIOS選択部33,33′,33″、BIOS送信部34、及びアドレス管理部35としての機能を実現するためのプログラム(起動管理プログラム)は、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータ3はその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータ3に提供するようにしてもよい。
BIOS制御部12、要求受信部31、構成情報取得部32、BIOS選択部33,33′,33″、BIOS送信部34、及びアドレス管理部35としての機能を実現する際には、内部記憶装置(本実施形態ではBIOSサーバ2の不図示のメモリ等)に格納された起動管理プログラムがコンピュータのマイクロプロセッサ(本実施形態ではBIOSサーバ2の不図示のCPU)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
又、BIOSサーバ2の不図示のメモリが、BIOS組合せテーブル14、BIOS選択テーブル15、及びアドレステーブル36の情報を格納するための管理情報記憶部13として機能する。
又、上記第1〜第3実施形態では、コンピュータ3のCPU7が、起動管理プログラムを実行することにより、上述した起動制御部41、構成情報収集部42,42″、P−ON検知部43、BIOS要求部44、及びBIOS実行部45として機能する。
なお、これらの起動制御部41、構成情報収集部42,42″、P−ON検知部43、BIOS要求部44、及びBIOS実行部45としての機能を実現するためのプログラム(起動管理プログラム)は、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータ3はその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータ3に提供するようにしてもよい。
起動制御部41、構成情報収集部42,42″、P−ON検知部43、BIOS要求部44、及びBIOS実行部45としての機能を実現する際には、内部記憶装置(本実施形態ではコンピュータ3のメモリ8等)に格納された起動管理プログラムがコンピュータのマイクロプロセッサ(本実施形態ではコンピュータ3のCPU7)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
又、コンピュータ3のメモリ8が、構成記憶テーブル23の情報を格納するための構成情報記憶部22として機能する。
(E)付記
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
複数の情報処理装置と、
前記複数の情報処理装置の起動に用いられる複数の起動プログラムを管理する管理装置とを有し、
前記管理装置は、
前記複数の起動プログラムを格納する格納部と、
前記複数の情報処理装置のうちの1つの情報処理装置の構成情報を取得する構成情報取得部と、
取得した構成情報に基づいて前記格納部に格納されている前記複数の起動プログラムから、前記1つの情報処理装置に対応する起動プログラムを選択する選択部と、
前記選択部によって選択された起動プログラムを前記1つの情報処理装置に送信する送信部と、
を有することを特徴とする
情報処理システム。
(付記2)
前記選択部は、前記1つの情報処理装置に対応する起動プログラムが複数存在する場合に、該1つの情報処理装置の構成情報と、既存のコンピュータの構成情報との一致度に基づいて、前記起動プログラムから1つの起動プログラムを選択する
ことを特徴とする付記1記載の情報処理システム。
(付記3)
前記管理装置は、前記1つの情報処理装置から起動プログラム要求を受信する受信部をさらにそなえ、
前記受信部が前記起動プログラム要求を受信したことを受けて、前記選択部が前記起動プログラムの選択を行ない、前記送信部が選択された前記起動プログラムを送信する
ことを特徴とする付記1又は2記載の情報処理システム。
(付記4)
前記管理装置は変更不可フラグをそなえ、
前記選択部は、前記1つの情報処理装置に対して前記変更不可フラグが設定されている場合、前記1つの情報処理装置に対する起動プログラムの選択をスキップする
ことを特徴とする付記1〜3のいずれか1項に記載の情報処理システム。
(付記5)
前記情報処理装置は、該情報処理装置の電源投入を検知すると、該情報処理装置が前回起動されてから該情報処理装置の構成変更が行なわれたかどうかを判定し、構成変更が行なわれたと判定した場合、前記管理装置に構成変更を通知する起動管理部をそなえる
ことを特徴とする付記1〜4のいずれか1項に記載の情報処理システム。
(付記6)
前記複数の起動プログラムは前記複数の情報処理装置の基本入出力システムプログラムである
ことを特徴とする付記1〜5のいずれか1項に記載の情報処理システム。
(付記7)
複数の情報処理装置の起動に用いられる複数の起動プログラムを管理するためのプログラム管理方法であって、
前記複数の情報処理装置のうちの1つの情報処理装置の構成情報を取得し、
取得した構成情報に基づいて前記複数の起動プログラムから、前記1つの情報処理装置に対応する起動プログラムを選択し、
前記選択した起動プログラムを前記1つの情報処理装置に送信して該情報処理装置を起動させる
ことを特徴とするプログラム管理方法。
(付記8)
前記1つの情報処理装置に対応する起動プログラムが複数存在する場合に、該1つの情報処理装置の構成情報と、既存のコンピュータの構成情報との一致度に基づいて、前記起動プログラムから1つの起動プログラムを選択する
ことを特徴とする付記7記載のプログラム管理方法。
(付記9)
前記1つの情報処理装置から起動プログラム要求を受信し、
前記起動プログラム要求を受信したことを受けて、前記起動プログラムの選択を行ない、前記選択された前記起動プログラムを送信する
ことを特徴とする付記7又は8記載のプログラム管理方法。
(付記10)
前記1つの情報処理装置に対して変更不可フラグが設定されている場合、前記1つの情報処理装置に対する起動プログラムの選択をスキップする
ことを特徴とする付記7〜9のいずれか1項に記載のプログラム管理方法。
(付記11)
前記情報処理装置は、該情報処理装置への電源投入を検知すると、該情報処理装置が前回起動されてから該情報処理装置の構成変更が行なわれたかどうかを判定し、構成変更が行なわれたと判定した場合、構成変更を通知する
ことを特徴とする付記7〜10のいずれか1項に記載のプログラム管理方法。
(付記12)
前記複数の起動プログラムは前記複数の情報処理装置の基本入出力システムプログラムである
ことを特徴とする付記7〜11のいずれか1項に記載のプログラム管理方法。
(付記13)
複数の情報処理装置の起動に用いられる複数の起動プログラムを管理する管理装置であって、
前記複数の起動プログラムを格納する格納部と、
前記複数の情報処理装置のうちの1つの情報処理装置の構成情報を取得する構成情報取得部と、
取得した構成情報に基づいて前記格納部に格納されている前記複数の起動プログラムから、前記1つの情報処理装置に対応する起動プログラムを選択する選択部と、
前記選択部によって選択された起動プログラムを前記1つの情報処理装置に送信する送信部と、
を有することを特徴とする管理装置。
1,1′,1″ 情報処理システム
2 BIOSサーバ(管理装置)
3−1〜3−n(3) コンピュータ(情報処理装置)
4 通信リンク
5 電源制御スイッチ
7 CPU
8 メモリ
9 電源部
11 BIOS管理部
12 BIOS制御部
13 管理情報記憶部
14 BIOS組合せテーブル
15 BIOS選択テーブル
16 BIOS格納部(格納部)
17 BIOS(起動プログラム)
21 管理用コンピュータ
22 構成情報記憶部
31 要求受信部(受信部)
32 構成情報取得部
33,33′,33″ BIOS選択部(選択部)
34 BIOS送信部(送信部)
35 アドレス管理部
36 アドレステーブル
41 起動制御部
42,42″ 構成情報収集部
43 P−ON検知部
44 BIOS要求部
45 BIOS実行部
143 変更不可フラグ

Claims (6)

  1. 複数の情報処理装置と、
    前記複数の情報処理装置の起動に用いられる複数の起動プログラムを管理する管理装置とを有し、
    前記管理装置は、
    前記複数の起動プログラムを格納する格納部と、
    前記複数の情報処理装置のうちの1つの情報処理装置の構成情報を取得する構成情報取得部と、
    取得した構成情報に基づいて前記格納部に格納されている前記複数の起動プログラムから、前記1つの情報処理装置に対応する起動プログラムを選択する選択部と、
    前記選択部によって選択された起動プログラムを前記1つの情報処理装置に送信する送信部と、
    を有し、
    前記選択部は、前記1つの情報処理装置に対応する起動プログラムが複数存在する場合に、該1つの情報処理装置の構成情報と、既存のコンピュータの構成情報との一致度に基づいて、前記起動プログラムから1つの起動プログラムを選択することを特徴とする
    情報処理システム
  2. 前記管理装置は、前記1つの情報処理装置から起動プログラム要求を受信する受信部をさらにそなえ、
    前記受信部が前記起動プログラム要求を受信したことを受けて、前記選択部が前記起動プログラムの選択を行ない、前記送信部が選択された前記起動プログラムを送信する
    ことを特徴とする請求項記載の情報処理システム。
  3. 前記管理装置は変更不可フラグをそなえ、
    前記選択部は、前記1つの情報処理装置に対して前記変更不可フラグが設定されている場合、前記1つの情報処理装置に対する起動プログラムの選択をスキップする
    ことを特徴とする請求項1又は2に記載の情報処理システム。
  4. 前記情報処理装置は、該情報処理装置の電源投入を検知すると、該情報処理装置が前回起動されてから該情報処理装置の構成変更が行なわれたかどうかを判定し、構成変更が行なわれたと判定した場合、前記管理装置に構成変更を通知する起動管理部をそなえる
    ことを特徴とする請求項1〜のいずれか1項に記載の情報処理システム。
  5. 前記複数の起動プログラムは前記複数の情報処理装置の基本入出力システムプログラムである
    ことを特徴とする請求項1〜のいずれか1項に記載の情報処理システム。
  6. 複数の情報処理装置の起動に用いられる複数の起動プログラムを管理するためのプログラム管理方法であって、
    前記複数の情報処理装置のうちの1つの情報処理装置の構成情報を取得し、
    取得した構成情報に基づいて前記複数の起動プログラムから、前記1つの情報処理装置に対応する起動プログラムを選択し、
    前記選択した起動プログラムを前記1つの情報処理装置に送信して該情報処理装置を起動させ
    前記起動プログラムの選択は、前記1つの情報処理装置に対応する起動プログラムが複数存在する場合に、該1つの情報処理装置の構成情報と、既存のコンピュータの構成情報との一致度に基づいて、前記起動プログラムから1つの起動プログラムを選択す
    ことを特徴とするプログラム管理方法。
JP2014019988A 2014-02-05 2014-02-05 情報処理システム及びプログラム管理方法 Active JP6256063B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014019988A JP6256063B2 (ja) 2014-02-05 2014-02-05 情報処理システム及びプログラム管理方法
US14/571,344 US9710285B2 (en) 2014-02-05 2014-12-16 Information processing system, management apparatus, and method of managing a plurality of boot-up programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014019988A JP6256063B2 (ja) 2014-02-05 2014-02-05 情報処理システム及びプログラム管理方法

Publications (2)

Publication Number Publication Date
JP2015148861A JP2015148861A (ja) 2015-08-20
JP6256063B2 true JP6256063B2 (ja) 2018-01-10

Family

ID=53754891

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014019988A Active JP6256063B2 (ja) 2014-02-05 2014-02-05 情報処理システム及びプログラム管理方法

Country Status (2)

Country Link
US (1) US9710285B2 (ja)
JP (1) JP6256063B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10346271B2 (en) * 2015-12-28 2019-07-09 Quanta Computer Inc. Manage power supply units and modularized automatic transfer switches
TWI607381B (zh) * 2016-08-10 2017-12-01 神雲科技股份有限公司 用於電腦裝置的系統資訊存取方法
JP7007019B2 (ja) * 2019-03-20 2022-01-24 Necプラットフォームズ株式会社 サーバ管理装置、サーバ管理方法、サーバ管理プログラム、およびバージョンチェックプログラム
US11126518B1 (en) * 2020-03-16 2021-09-21 Quanta Computer Inc. Method and system for optimal boot path for a network device
JP7411471B2 (ja) 2020-03-27 2024-01-11 株式会社コンテック 情報処理装置及び通信システム
US20230185578A1 (en) * 2021-12-13 2023-06-15 Hewlett-Packard Development Company, L.P. BIOS Personalities

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6810478B1 (en) * 2000-12-12 2004-10-26 International Business Machines Corporation System for remote booting of muntliple operating systems using chained bootstrap mechanism in a network
JP2002229798A (ja) * 2001-02-06 2002-08-16 Nec Corp コンピュータシステムとそのバイオス管理方法、及びバイオス管理プログラム
US6988193B2 (en) * 2001-06-28 2006-01-17 International Business Machines Corporation System and method for creating a definition for a target device based on an architecture configuration of the target device at a boot server
JP4520671B2 (ja) 2001-08-07 2010-08-11 ソフトバンクモバイル株式会社 ダウンロードシステム
US20030126242A1 (en) * 2001-12-28 2003-07-03 Chang Albert H. Network boot system and method using remotely-stored, client-specific boot images created from shared, base snapshot image
US7103701B2 (en) 2002-09-23 2006-09-05 Hewlett-Packard Development Company, L.P. Memory bus interface
TWI308721B (en) * 2004-01-16 2009-04-11 Wistron Corp Remote boot method and device thereof and server device using remote boot method
JP2006072917A (ja) 2004-09-06 2006-03-16 Toshiba Tec Corp 情報処理システム
US8554936B2 (en) * 2005-04-21 2013-10-08 International Business Machines Corporation Redistribution of operating environments for the redeployment of grid clients
TW200849096A (en) * 2007-06-12 2008-12-16 Realtek Semiconductor Corp Data recovering method
US7953833B2 (en) * 2008-01-31 2011-05-31 Wanova Technologies Ltd. Desktop delivery for a distributed enterprise
US8239662B1 (en) * 2008-03-20 2012-08-07 Google Inc. Network based operating system across devices
US8543998B2 (en) * 2008-05-30 2013-09-24 Oracle International Corporation System and method for building virtual appliances using a repository metadata server and a dependency resolution service
US20090320012A1 (en) * 2008-06-04 2009-12-24 Mediatek Inc. Secure booting for updating firmware over the air
US8364945B2 (en) * 2008-06-19 2013-01-29 Microsoft Corporation Provisioning an unknown computer system
TWI386847B (zh) * 2009-02-04 2013-02-21 Novatek Microelectronics Corp 可安全復原的韌體更新方法及可安全復原之韌體更新的嵌入式電子裝置
WO2012172666A1 (ja) * 2011-06-15 2012-12-20 富士通株式会社 情報処理装置、情報処理方法、および情報処理プログラム
US9292312B2 (en) * 2012-03-22 2016-03-22 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Simulated network boot environment for bootstrap redirection

Also Published As

Publication number Publication date
US20150220349A1 (en) 2015-08-06
US9710285B2 (en) 2017-07-18
JP2015148861A (ja) 2015-08-20

Similar Documents

Publication Publication Date Title
JP6256063B2 (ja) 情報処理システム及びプログラム管理方法
TWI578233B (zh) 統一韌體管理系統、非揮發電腦可讀取媒體以及統一韌體管理方法
TWI598744B (zh) 雲端資源之管理系統及其管理方法
US20170010874A1 (en) Provisioning storage devices in a data center
US10917291B2 (en) RAID configuration
US20080133741A1 (en) Computer program and apparatus for controlling computing resources, and distributed processing system
JP2010152704A (ja) 計算機システムの運用管理システム及び管理方法
EP2477111A2 (en) Computer system and program restoring method thereof
US8219611B2 (en) Systems and methods for providing a complete view of large computing networks
US20170171021A1 (en) Automatic deployment of a new server in a peer-to-peer network of servers
JP5803496B2 (ja) ストレージシステム
WO2018173164A1 (ja) データ処理システム
US7921230B2 (en) USB devices pre-configuration for KVM switch
JP5503678B2 (ja) ホスト提供システム及びホスト提供方法
CN105721534A (zh) 因特网小型计算机系统接口启动参数部署系统及其方法
KR101797348B1 (ko) 네트워크 연결 저장 장치, 이를 포함하는 네트워크 연결 저장 시스템, 네트워크 연결 저장 장치의 저장 노드 확장 검출 방법 및 네트워크 연결 저장 장치의 저장 매체 확장 검출 방법
US20060167886A1 (en) System and method for transmitting data from a storage medium to a user-defined cluster of local and remote server blades
JP2007183837A (ja) 環境設定プログラム、環境設定システムおよび環境設定方法
US20060053274A1 (en) Information processing apparatus for changing firmware data
US9785599B2 (en) Information processing apparatus and log output method
JP6515462B2 (ja) 情報処理装置、情報処理装置の設定方法及び設定プログラム
US8850174B1 (en) Method for dedicated netboot
JP6428047B2 (ja) 情報処理システム、管理制御方法および管理制御プログラム
US9335984B2 (en) Data transmission method, transmission-source information processing apparatus, data transmission system, and data transmission program
JP2010176641A (ja) 仮想計算機の起動制御システム、その起動制御方法、情報処理装置、プログラム及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170705

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170801

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170929

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171120

R150 Certificate of patent or registration of utility model

Ref document number: 6256063

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150