IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社コンテックの特許一覧

<>
  • 特許-情報処理装置及び通信システム 図1
  • 特許-情報処理装置及び通信システム 図2
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-27
(45)【発行日】2024-01-11
(54)【発明の名称】情報処理装置及び通信システム
(51)【国際特許分類】
   G06F 13/10 20060101AFI20231228BHJP
   G06F 9/445 20180101ALI20231228BHJP
   G06F 8/65 20180101ALI20231228BHJP
【FI】
G06F13/10 330B
G06F9/445
G06F8/65
【請求項の数】 3
(21)【出願番号】P 2020056928
(22)【出願日】2020-03-27
(65)【公開番号】P2021157490
(43)【公開日】2021-10-07
【審査請求日】2022-10-31
(73)【特許権者】
【識別番号】592007601
【氏名又は名称】株式会社コンテック
(74)【代理人】
【識別番号】110001298
【氏名又は名称】弁理士法人森本国際特許事務所
(72)【発明者】
【氏名】高田 智史
(72)【発明者】
【氏名】川戸 一郎
【審査官】田中 啓介
(56)【参考文献】
【文献】特開2015-148861(JP,A)
【文献】特開2006-031312(JP,A)
【文献】国際公開第2019/207729(WO,A1)
【文献】特開2004-240498(JP,A)
【文献】特開2008-269288(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B19/04-19/05
G05B23/00-23/02
G06F8/00-8/38
G06F8/60-8/77
G06F9/44-9/445、9/451
G06F11/22-11/277
G06F13/10-13/14
(57)【特許請求の範囲】
【請求項1】
CPUと、前記CPUが使用するデータを記憶する主記憶装置と、BIOSを格納する基本メモリと、OSを格納する補助記憶装置と、を備える情報処理装置において、
前記BIOSが提供するインタフェース機能によって前記CPUを外部機器と接続又は通信可能とする通信部が設けられており、
前記基本メモリおよび前記補助記憶装置は不揮発性の記憶装置であり、
前記通信部は、前記外部機器であって1次プログラムを保持するサーバ装置を、前記CPUと接続又は通信させることが可能であり、
前記BIOSの起動時に、前記CPUは、前記1次プログラムとして前記サーバ装置に保持されているBIOS更新実行プログラムと、OS更新実行プログラムと、自己診断プログラムとを、この順番で前記通信部を介して前記サーバ装置から前記主記憶装置へ呼び出して実行し、
前記BIOS更新実行プログラムの実行中に前記BIOSを更新すべきと判定した場合には、前記基本メモリに格納されているBIOSを更新し、
前記OS更新実行プログラムの実行中に前記OSを更新すべきと判定した場合には、前記補助記憶装置に格納されているOSを更新し、
前記自己診断プログラムを実行することによって、前記情報処理装置全体の状態を診断し、
前記CPUは、前記1次プログラムを実行した後、その実行結果ログを前記通信部を介して前記サーバ装置に送信すること
を特徴とする情報処理装置。
【請求項2】
少なくとも1つのクライアント装置がネットワークを介してサーバ装置と通信可能な通信システムにおいて、
前記クライアント装置は、CPUと、前記CPUが使用するデータを記憶する主記憶装置と、BIOSを格納する基本メモリと、OSを格納する補助記憶装置と、前記サーバ装置との通信を制御する通信部と、を備えており、
前記基本メモリおよび前記補助記憶装置は不揮発性の記憶装置であり、
前記サーバ装置は、1次プログラムとして前記クライアント装置の前記BIOSを更新するためのBIOS更新実行プログラムと、前記クライアント装置の前記OSを更新するためのOS更新実行プログラムと、前記クライアント装置全体の状態を診断するための自己診断プログラムと、を保持しており、
前記クライアント装置の前記通信部は、前記BIOSが提供するインタフェース機能によって前記クライアント装置を前記サーバ装置と通信させることが可能であり、
前記クライアント装置は、前記BIOSの起動時に、前記サーバ装置に保持されている前記BIOS更新実行プログラムと、前記OS更新実行プログラムと、前記自己診断プログラムとを、この順番で前記通信部を介して前記サーバ装置から前記主記憶装置へ呼び出して実行し、
前記BIOS更新実行プログラムの実行中に前記基本メモリに格納されている前記BIOSを更新すべきと判定した場合には、前記基本メモリに格納されているBIOSを更新し、
前記OS更新実行プログラムの実行中に前記補助記憶装置に格納されている前記OSを更新すべきと判定した場合に、前記補助記憶装置に格納されているOSを更新し、
前記自己診断プログラムを実行することによって、前記クライアント装置全体の状態を診断し、
前記クライアント装置は、前記1次プログラムを実行した後、その実行結果ログを前記通信部を介して前記サーバ装置に送信すること
を特徴とする通信システム。
【請求項3】
前記サーバ装置は、前記ネットワークを介して前記クライアント装置を起動可能であること
を特徴とする請求項2に記載の通信システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、CPUと、主記憶装置と、BIOSを格納する基本メモリと、を備える情報処理装置に関するものである。また、本発明は、サーバ装置とクライアント装置とがネットワークを介して通信を行う通信システムにも関するものである。
【背景技術】
【0002】
産業用コンピュータ等の情報処理装置においては、自己診断プログラムが実行されることで、当該情報処理装置自体の状態が診断されることがある。また、フラッシュROM等の不揮発性メモリに格納されたBIOSや、ハードディスク等に格納されたOS等のプログラムについて、当該プログラムの修正や機能の追加等を行うために、当該プログラム自体の更新が行われることもある(例えば、特許文献1参照)。
【0003】
以上のようなBIOS、OSの更新が定期的に行われることによって情報処理装置が正常な状態に保守される。また、自己診断プログラムの実行によって情報処理装置が正常な状態を保っているかが確認される。特に、ネットワークを介した通信が行われる通信システムにおいては、OSの更新が、ネットワークを介して行われることもある。例えば、ネットワーク上に配置されたサーバ装置(のストレージ機器)にOSメーカーがOS更新実行プログラムを格納している場合がある。このような場合には、ユーザ側の情報処理装置が、クライアント装置としてネットワークを介してOS更新実行プログラムをサーバ装置からダウンロードし、そのOS更新実行プログラムが実行されることによってOSの更新が行われる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開平11-306007号
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記のようなBIOS、OS等のプログラムの更新やクライアント装置の自己診断と言った情報処理装置の保守作業を、多くの情報処理装置に対して行うのは非常に手間のかかる仕事となっていた。例えば、上述のようにOS更新実行プログラムがサーバ装置に格納されている場合、従来の通信システムにおいては、OSを起動し、OS上で動作するネットワーク通信用アプリケーション(例えば、Webブラウザ)を用いてサーバ装置へアクセスするという作業を、OSの更新を行わなければならない情報処理装置の1つ1つについて行わねばならず、膨大な時間を必要としていた。
【0006】
また、BIOSの更新はマザーボード上のBIOSメモリをハードウェア的に取り替える等の、専門知識を有する保守担当者でなければ行えない作業を伴うため、複数の情報処理装置に対して保守を行う場合には、上記保守担当者がそれぞれの情報処理装置を個別に操作して作業を行う必要がある。
【0007】
自己診断プログラムについても、OS上で動作するプログラムとして提供されている場合が多く、多数の情報処理装置に対して自己診断を行うためには、情報処理装置の1つ1つについてOSを起動しなければならず、やはり膨大な時間を必要としていた。
【0008】
このように、従来の情報処理装置や通信システムにおいては、情報処理装置(クライアント装置)の保守が煩雑であるという問題があった。
【0009】
そこで、本発明は、情報処理装置(クライアント装置)のユーザ自身が情報処理装置(クライアント装置)の保守を容易に且つ正確に行うことが可能な情報処理装置及び通信システムを提供することを目的とする。
【課題を解決するための手段】
【0014】
また本発明に係る情報処理装置は、CPUと、前記CPUが使用するデータを記憶する主記憶装置と、BIOSを格納する基本メモリと、OSを格納する補助記憶装置と、を備える情報処理装置において、前記BIOSが提供するインタフェース機能によって前記CPUを外部機器と接続又は通信可能とする通信部が設けられており、前記基本メモリおよび前記補助記憶装置は不揮発性の記憶装置であり、前記通信部は、前記外部機器であって1次プログラムを保持するサーバ装置を、前記CPUと接続又は通信させることが可能であり、前記BIOSの起動時に、前記CPUは、前記1次プログラムとして前記サーバ装置に保持されているBIOS更新実行プログラムと、OS更新実行プログラムと、自己診断プログラムとを、この順番で前記通信部を介して前記サーバ装置から前記主記憶装置へ呼び出して実行し、前記BIOS更新実行プログラムの実行中に前記BIOSを更新すべきと判定した場合には、前記基本メモリに格納されているBIOSを更新し、前記OS更新実行プログラムの実行中に前記OSを更新すべきと判定した場合には、前記補助記憶装置に格納されているOSを更新し、前記自己診断プログラムを実行することによって、前記情報処理装置全体の状態を診断することを特徴とする。
【0015】
また好ましくは、前記CPUは、前記1次プログラムを実行した後、その実行結果ログを前記通信部を介して前記サーバ装置に送信するとよい。
【0020】
また本発明に係る通信システムは、少なくとも1つのクライアント装置がネットワークを介してサーバ装置と通信可能な通信システムにおいて、前記クライアント装置は、CPUと、前記CPUが使用するデータを記憶する主記憶装置と、BIOSを格納する基本メモリと、OSを格納する補助記憶装置と、前記サーバ装置との通信を制御する通信部と、を備えており、前記基本メモリおよび前記補助記憶装置は不揮発性の記憶装置であり、前記サーバ装置は、1次プログラムとして前記クライアント装置の前記BIOSを更新するためのBIOS更新実行プログラムと、前記クライアント装置の前記OSを更新するためのOS更新実行プログラムと、前記クライアント装置全体の状態を診断するための自己診断プログラムと、を保持しており、前記クライアント装置の前記通信部は、前記BIOSが提供するインタフェース機能によって前記クライアント装置を前記サーバ装置と通信させることが可能であり、前記クライアント装置は、前記BIOSの起動時に、前記サーバ装置に保持されている前記BIOS更新実行プログラムと、前記OS更新実行プログラムと、前記自己診断プログラムとを、この順番で前記通信部を介して前記サーバ装置から前記主記憶装置へ呼び出して実行し、前記BIOS更新実行プログラムの実行中に前記基本メモリに格納されている前記BIOSを更新すべきと判定した場合には、前記基本メモリに格納されているBIOSを更新し、前記OS更新実行プログラムの実行中に前記補助記憶装置に格納されている前記OSを更新すべきと判定した場合に、前記補助記憶装置に格納されているOSを更新し、前記自己診断プログラムを実行することによって、前記クライアント装置全体の状態を診断することを特徴とする。
【0021】
また好ましくは、前記クライアント装置は、前記1次プログラムを実行した後、その実行結果ログを前記通信部を介して前記サーバ装置に送信するとよい。
【0022】
また好ましくは、前記サーバ装置は、前記ネットワークを介して前記クライアント装置を起動可能であるとよい。
【発明の効果】
【0023】
本発明に係る情報処理装置及び通信システムによれば、情報処理装置(クライアント装置)にてBIOSが起動された際に、情報処理装置(クライアント装置)にて実行すべき、BIOS更新、OS更新、自己診断等の保守作業を行う1次プログラムが自動的にBIOSによってサーバ装置から呼び出されて実行される。これにより、情報処理装置の電源を入れてBIOSを立ち上げるだけで、OSの起動を待つことなく情報処理装置(クライアント装置)の保守作業が行われる。また、偶発的な停電等の障害の影響を受け難い基本メモリに格納されているBIOSを立ち上げるだけで情報処理装置(クライアント装置)の保守作業を行えるため、偶発的な停電等の障害に対する影響を抑えることができる。さらに、1次プログラムをサーバ装置から情報処理装置(クライアント装置)の主記憶装置へ呼び出して実行するため、1次プログラムの更新があった場合にも、情報処理装置(クライアント装置)の1つ1つについて1次プログラムを更新する必要はなく、新しい1次プログラムをサーバ装置に格納するだけでよい。したがって、多数の情報処理装置(クライアント装置)に対して保守作業を行う場合にも、作業時間と手間を大きく削減することができる。さらに、保守作業が自動的に行われるため、専門知識を有する保守担当者がいなくとも、ユーザ自身が1次プログラムによって保守作業を実行させることができる。そのため、各情報処理装置(クライアント装置)のユーザ自身が、1次プログラムを介して、プログラムの更新や情報処理装置(クライアント装置)の自己診断と言った情報処理装置(クライアント装置)の保守を容易に且つ正確に行うことができる。
【図面の簡単な説明】
【0024】
図1】本発明の実施の形態に係る通信システムの構成を示すブロック図。
図2】同実施形態の産業用コンピュータにおいて行われるBIOS及びOSの更新、並びに産業用コンピュータ全体の自己診断の手順を示すフローチャート。
【発明を実施するための形態】
【0025】
以下、本発明における実施の形態を、図面を参照して説明する。
図1に示すように、本発明の実施の形態における通信システム10においては、サーバコンピュータ20(「外部機器」「サーバ装置」の一例)と産業用コンピュータ30(「情報処理装置」「クライアント装置」の一例)はLAN50を介して接続されている。なお、LAN50は、有線、無線を問わない。複数存在する産業用コンピュータ30は、それぞれサーバコンピュータ20と通信を行うことが可能である。
【0026】
産業用コンピュータ30は、CPU31と、メインメモリ32(「主記憶装置」の一例)と、BIOSメモリ33(「基本メモリ」の一例)と、ストレージ機器34(「補助記憶装置」の一例)と、LANポート35(「通信部」の一例)と、を主に備える。CPU31、メインメモリ32、BIOSメモリ33、ストレージ機器34、及びLANポート35は、CPU基板36に設けられ、SPI、SATA等のバス37を介して接続されている。
【0027】
CPU31は、与えられたプログラムに従って種々の演算処理を実行し、産業用コンピュータ30全体を制御する。
【0028】
メインメモリ32は、CPU31がデータの主な読み込み元/書き込み先として利用する記憶素子である。本実施形態においては、特に、メインメモリ32は、CPU31が後述する各種の1次プログラム(BIOS更新実行プログラム22、OS更新実行プログラム24、自己診断プログラム25)を読み込む読み込み元となる領域として利用される。又は、メインメモリ32は、CPU31が各1次プログラム(BIOS更新実行プログラム22、OS更新実行プログラム24、自己診断プログラム25)を始めとする各種プログラムの処理データを書き込む書き込み先の作業領域としても利用される。このように、メインメモリ32は、読み込み/書き込み可能なメモリであり、例えば、複数個のDRAMチップによって構成される。
【0029】
BIOSメモリ33は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である(例えば、フラッシュROM)。BIOSメモリ33には、産業用コンピュータ30の起動時に実行されるBIOS38等の基本プログラム及び当該基本プログラムが利用するデータが格納されている。
【0030】
ストレージ機器34は、電源を切ってもプログラムやデータを保持することができる記憶装置である(例えば、ハードディスク:HDDやソリッドステートドライブ:SSD)。ストレージ機器34には、産業用コンピュータ30を管理するためのOS39等のプログラムといったシステムデータやユーザが作成したユーザデータ等が格納されている。
【0031】
LANポート35は、BIOS38又はOS39が提供するインタフェース機能によってCPU31を外部のサーバコンピュータ20や複数の産業用コンピュータ30等の外部機器と、LAN50を介して、接続又は通信するためのものである。
【0032】
産業用コンピュータ30では、BIOS38の修正やBIOS38への機能の追加等のためにBIOS38の更新が行われることがある。BIOS38の更新は、産業用コンピュータ30のCPU31が、サーバコンピュータ20に格納されているBIOS更新データ21と、1次プログラムであるBIOS更新実行プログラム22とを、BIOS38を介してサーバコンピュータ20からメインメモリ32へ呼び出すことによって行われる。
【0033】
BIOS更新データ21は、BIOS38を更新するための更新データである。すなわち、BIOS更新データ21は、更新後のBIOS38としてBIOSメモリ33に書き込まれるデータである。BIOS更新データ21には、更新後のBIOS38の識別情報、更新後のBIOS38が格納されることになる産業用コンピュータ30の識別情報等が含まれている。ここで、更新後のBIOS38の識別情報とは、更新後のBIOS38の種類、バージョン、BIOS38としての機能を実現するためのプログラムデータ(バイナリ)を含むものである。また、産業用コンピュータ30の識別情報とは、産業用コンピュータ30の型式、メーカー名等のコンピュータの種類を特定するための識別情報である。BIOS更新データ21は、産業用コンピュータ30のそれぞれにてBIOS38の更新が必要な場合に、サーバコンピュータ20に格納される。このため、本実施形態におけるBIOS38の更新は、BIOSメモリ33へ書き込まれるべきBIOS更新データ21がサーバコンピュータ20に格納されている場合にのみ行われる。
【0034】
BIOS更新実行プログラム22は、BIOS更新データ21に基づいてBIOS38の更新を実行するための実行プログラムである。すなわち、BIOS更新実行プログラム22は、更新後のBIOS38としてBIOS更新データ21をBIOSメモリ33に書き込むためのプログラムである。BIOS更新実行プログラム22は、産業用コンピュータ30のBIOS38の起動時に、CPU31によってサーバコンピュータ20から産業用コンピュータ30のメインメモリ32へ呼び出されて実行される。BIOS更新実行プログラム22は、CPU31によって実行されることで、更新すべきBIOS更新データ21をBIOSメモリ33に書き込む。
【0035】
また、産業用コンピュータ30では、OS39の修正やOS39への機能の追加等のためにOS39の更新が行われることがある。本実施形態におけるOS39の更新は、産業用コンピュータ30のCPU31が、サーバコンピュータ20に格納されているOS更新データ23と、1次プログラムであるOS更新実行プログラム24とを、BIOS38を介してメインメモリ32へ呼び出すことによって行われる。
【0036】
OS更新データ23は、OS39を更新するための更新データである。すなわち、OS更新データ23は、更新後のOS39としてストレージ機器34に書き込まれるデータである。OS更新データ23には、更新後のOS39の識別情報等が含まれている。ここで、更新後のOS39の識別情報とは、更新後のOS39の種類、バージョン、OS39としての機能を実現するためのプログラムデータ(バイナリ)を含むものである。OS更新データ23は、新バージョンのOS39が開発された場合等、産業用コンピュータ30のそれぞれにてOS39の更新が必要な場合に、サーバコンピュータ20に格納される。このため、本実施形態におけるOS39の更新は、ストレージ機器34へ書き込まれるべきOS更新データ23がサーバコンピュータ20に格納されている場合にのみ行われる。
【0037】
OS更新実行プログラム24は、OS更新データ23に基づいてOS39の更新を実行するための実行プログラムである。すなわち、OS更新実行プログラム24は、更新後のOS39としてOS更新データ23をストレージ機器34に書き込むための実行プログラムである。OS更新実行プログラム24は、産業用コンピュータ30のBIOS38の起動時に、CPU31によってサーバコンピュータ20から産業用コンピュータ30のメインメモリ32へ呼び出されて実行される。OS更新実行プログラム24は、CPU31によって実行されることで、OS更新データ23をストレージ機器34に書き込む。
【0038】
さらに、産業用コンピュータ30では、産業用コンピュータ30全体の状態が自己診断されることがある。ここで、産業用コンピュータ30全体の状態とは、バス37に接続されている拡張機器の状態(例えば、PCIデバイスの生存状況、LPCデバイスの生存状況、LPCデバイスのリソース整合性等)や、ストレージ機器34の状態(例えばSSDの寿命等)、通信機能や外部接続端子の状態(例えばLAN ROMの整合性やGPIOステータス等)、機械としての物理的な状態(例えば温度、や電圧等)、GPIOステータス等といった、産業用コンピュータ30が正常に動作可能であるか否かの判別材料となり得る各種情報をいう。本実施形態における産業用コンピュータ30全体の自己診断は、産業用コンピュータ30のCPU31が、サーバコンピュータ20に格納されている1次プログラムである自己診断プログラム25を、BIOS38を介してメインメモリ32へ呼び出すことによって行われる。
【0039】
自己診断プログラム25は、産業用コンピュータ30全体の状態を診断するための実行プログラムである。自己診断プログラム25は、産業用コンピュータ30のBIOS38の起動時に、BIOS38によってサーバコンピュータ20から産業用コンピュータ30のメインメモリ32へ呼び出されて実行される。自己診断プログラム25は、CPU31によって実行されることで、産業用コンピュータ30全体の状態を診断し、自己診断の結果をサーバコンピュータ20に送信する。
【0040】
このように、BIOS38及びOS39の更新や産業用コンピュータ30全体の自己診断と言った産業用コンピュータ30の保守は、産業用コンピュータ30のCPU31が、サーバコンピュータ20に格納されている各種の更新データと、各種の1次プログラムとを、所定の順番でBIOS38の提供するインタフェース機能によって制御されるLANポート35を介して、サーバコンピュータ20からメインメモリ32へ呼び出すことによって行われる。
【0041】
図1に示すように、BIOS更新データ21及びOS更新データ23は、必要に応じて、サーバコンピュータ20(のストレージ機器)に予め格納されている。BIOS38起動時に呼び出される各種の1次プログラム(BIOS更新実行プログラム22、OS更新実行プログラム24、自己診断プログラム25)もまた、必要に応じて、サーバコンピュータ20に予め格納されている。さらに、サーバコンピュータ20には、各種の1次プログラム(BIOS更新実行プログラム22、OS更新実行プログラム24、自己診断プログラム25)が、産業用コンピュータ30において実行されたことを示すログ26(「実行結果ログ」の一例)が格納されている。
【0042】
次に、産業用コンピュータ30において行われるBIOS38及びOS39の更新、並びに産業用コンピュータ30全体の自己診断の手順について以下に説明する。
【0043】
図2に示すように、ユーザが産業用コンピュータ30の電源を投入することで、又はLAN50のマジックパケットによってネットワーク越しに産業用コンピュータ30の電源を投入することで、産業用コンピュータ30が起動される(S1)。産業用コンピュータ30の起動後、リセット後のプログラムカウンタが示すアドレスに格納されたジャンプ命令によって、BIOSメモリ33内のBIOS実行コードのアドレスへとジャンプすることでBIOS38が起動される(S2)。本実施形態においては、BIOS38の起動後、次のデータの読み込み元としてネットワーク上のリソースが指定されており、BIOS38の提供するインタフェース機能によって、LANポート35を介したネットワークブート(ここでは、PXEブートとする)が実行される(S3)。PXEブートの実行によって、CPU31は、LANポート35及びLAN50を介してサーバコンピュータ20と通信を行う(S4)。そして、CPU31は、BIOS38の提供するインタフェース機能によって制御されるLANポート35を介して、サーバコンピュータ20内のBIOS更新実行プログラム22をサーバコンピュータ20からメインメモリ32へ呼び出し、呼び出したBIOS更新実行プログラム22をメインメモリ32から実行する(S5)。ここで、BIOS更新実行プログラム22には、実際のBIOS38の更新処理の前に、BIOSメモリ33に格納されているBIOSデータと差し替えて更新すべき新しいBIOS更新データ21がサーバコンピュータ20内に格納されているか否かを判断するための処理が含まれている。すなわち、CPU31は、BIOS更新実行プログラム22の実行中に、BIOS38の更新が必要であるか否かを判断する(S6)。この判断は、例えば、BIOSメモリ33に格納されているBIOS38と、BIOS更新データ21とで、BIOS38の識別情報を比較することによって実現できる。
【0044】
更新すべき新しいBIOS更新データ21がサーバコンピュータ20内に格納されている場合(S6-Yes)、CPU31は、BIOS更新実行プログラム22を実行することで、サーバコンピュータ20内のBIOS更新データ21を必要に応じてサーバコンピュータ20からメインメモリ32へ呼び出し、呼び出したBIOS更新データ21をBIOSメモリ33に書き込んで、BIOSメモリ33に格納されているBIOS38に上書きする(S7)。すなわち、新しいBIOS更新データ21に基づいてBIOS38の更新を行う。BIOS38の更新が終了すると、再起動が行われ(S8)、更新されたBIOS38が起動される(S2)。
【0045】
更新すべき新しいBIOS更新データ21がサーバコンピュータ20内に格納されていない場合(S6-No)には、CPU31は、BIOS更新実行プログラム22を終了する(S9)。ここで、更新すべき新しいBIOS更新データ21がサーバコンピュータ20内に格納されていない場合とは、サーバコンピュータ20内にBIOS更新データ21自体が格納されていない場合だけでなく、サーバコンピュータ20内にBIOS更新データ21が格納されていても、格納されているBIOS更新データ21のバージョンが、既にBIOSメモリ33に格納されているBIOS38より古い場合等、更新対象の産業用コンピュータ30に対して不適切なBIOS更新データ21が格納されている場合も含まれる。
【0046】
BIOS更新実行プログラム22の終了後、CPU31は、BIOS38の提供するインタフェース機能によって制御されるLANポート35を介して、サーバコンピュータ20内のOS更新実行プログラム24をサーバコンピュータ20からメインメモリ32へ呼び出し、呼び出したOS更新実行プログラム24をメインメモリ32から実行する(S10)。
【0047】
ここで、OS更新実行プログラム24には、実際のOS39更新の処理の前に、ストレージ機器34に格納されているOSデータと差し替えて更新すべき新しいOS更新データ23がサーバコンピュータ20内に格納されているか否かを判断するための処理が含まれている。すなわち、CPU31は、OS更新実行プログラム24の実行中に、OS39の更新が必要であるか否かを判断する(S11)。この判断は、例えばストレージ機器34に格納されているOS39と、OS更新データ23とで、OSの識別情報を比較することによって実現できる。
【0048】
更新すべき新しいOS更新データ23がサーバコンピュータ20内に格納されている場合(S11-Yes)、CPU31は、OS更新実行プログラム24を実行することで、サーバコンピュータ20内のOS更新データ23を必要に応じてサーバコンピュータ20からメインメモリ32へ呼び出し、呼び出したOS更新データ23をストレージ機器34に書き込んで、ストレージ機器34に格納されているOS39に上書きする(S12)。すなわち、新しいOS更新データ23に基づいてOS39の更新を行う。OS39の更新が終了すると、再起動が行われ(S8)、BIOS38が起動される(S2)。
【0049】
更新すべき新しいOS更新データ23がサーバコンピュータ20内に格納されていない場合(S11-No)には、CPU31は、OS更新実行プログラム24を終了する(S13)。ここで、更新すべき新しいOS更新データ23がサーバコンピュータ20内に格納されていない場合とは、サーバコンピュータ20内にOS更新データ23自体が格納されていない場合だけでなく、サーバコンピュータ20内にOS更新データ23が格納されていても、格納されているOS更新データ23のバージョンが、既にストレージ機器34に格納されているOS39より古い場合等、更新対象の産業用コンピュータ30に対して不適切なOS更新データ23が格納されている場合も含まれる。
【0050】
OS更新実行プログラム24の終了後、CPU31は、BIOS38の提供するインタフェース機能によって制御されるLANポート35を介して、サーバコンピュータ20内の自己診断プログラム25をサーバコンピュータ20からメインメモリ32へ呼び出し、呼び出した自己診断プログラム25をメインメモリ32から実行する(S14)。
【0051】
CPU31は、自己診断プログラム25を実行することで、産業用コンピュータ30の状態が正常であるか否かを判断する(S15)。すなわち、産業用コンピュータ30の自己診断を行う。
【0052】
産業用コンピュータ30の状態が正常でないと判断した場合(S15-No)、CPU31は、自己診断の結果をサーバコンピュータ20に送信した上で(S16)、自己診断プログラム25を終了してOS39の起動を試行する(S17)。産業用コンピュータ30の状態が正常であると判断した場合(S15-Yes)、CPU31は、自己診断プログラム25を終了して(S18)、OS39を起動する(S17)。ここで、産業用コンピュータ30の自己診断の結果、産業用コンピュータ30の状態が明らかにOS39を起動不可能であると判断されるような場合(例えば、電源電圧やCPU温度が動作許容範囲を超えていたり、OS39を格納するストレージ機器34が破損していたりする場合)、OS39起動を試行せず、産業用コンピュータ30の動作を終了する(電源を切る)ようにしてもよい。また、産業用コンピュータ30の状態が正常であると判断された場合でも、「状態は正常であった」という自己診断の結果や、各診断項目のデータをサーバコンピュータ20へ送信してもよい。
【0053】
以上に説明した産業用コンピュータ30及び通信システム10によれば、産業用コンピュータ30にてBIOS38が起動された際に、産業用コンピュータ30にて実行すべき、BIOS更新、OS更新、自己診断等の保守作業を行う1次プログラム(BIOS更新実行プログラム22、OS更新実行プログラム24、自己診断プログラム25)が自動的にBIOS38によってサーバコンピュータ20から呼び出されて実行される。これにより、産業用コンピュータ30の電源を入れてBIOS38を立ち上げるだけで、OS39の起動を待つことなく産業用コンピュータ30の保守作業が行われる。また、偶発的な停電や未知のバグ等による破損等の可能性が低いBIOSメモリ33に格納されているBIOS38を立ち上げるだけで産業用コンピュータ30の保守作業を行えるため、偶発的な停電等の障害に対する影響(特に、ストレージ機器34内のデータの破損)を抑えることができる。そのため、偶発的な停電等によってストレージ機器34等が破損した場合に、その復旧時間を短縮することができる(特に、遠隔地に設けられる産業用コンピュータ30に対しては好ましい。)。
【0054】
さらに、1次プログラムをサーバコンピュータ20から産業用コンピュータ30のメインメモリ32へ呼び出して実行するため、1次プログラムの更新があった場合にも、産業用コンピュータ30の1つ1つについて1次プログラムを更新する必要はなく、新しい1次プログラムをサーバコンピュータ20に格納するだけでよい。したがって、多数の産業用コンピュータ30に対して保守作業を行う場合にも、作業時間と手間を大きく削減することができる。さらに、産業用コンピュータ30の保守作業が自動的に行われるため、専門知識を有する保守担当者がいなくとも、ユーザ自身が1次プログラムによって産業用コンピュータ30の保守作業を実行させることができる。そのため、各産業用コンピュータ30のユーザ自身が、1次プログラムを介して、BIOS38、OS39の更新や産業用コンピュータ30の自己診断と言った産業用コンピュータ30の保守を容易に且つ正確に行うことができる。
【0055】
なお、本明細書においては、産業用コンピュータ30のCPU31がリセットされた後で最初に読み込むBIOSメモリ33(基本メモリ)に格納された命令及びそれに引き続いて実行される、ハードウェアの基本的な制御を担うソフトウェア群をBIOS38と称している。従って、本明細書におけるBIOS38とは、いわゆるレガシーなシステムBIOSだけでなく、UEFI仕様に則ったインタフェース用のソフトウェアなど、産業用コンピュータ30の起動初期に実行されるソフトウェア群の全般を指す。
【0056】
また、上記の実施形態においては、BIOS更新実行プログラム22及びOS更新実行プログラム24と、BIOS更新データ21及びOS更新データ23と、をサーバコンピュータ20から個別に呼び出しているが、これに限定されるものではなく、BIOS更新実行プログラム22とBIOS更新データ21とをサーバコンピュータ20から同時に、又は、OS更新実行プログラム24とOS更新データ23とをサーバコンピュータ20から同時に呼び出しても構わない。
【0057】
上記の実施形態においては、CPU31が、BIOS38を介して、BIOS更新実行プログラム22、OS更新実行プログラム24、自己診断プログラム25の順で実行ファイルをメインメモリ32へ呼び出して実行しているが、メインメモリ32へ呼び出す順番はこれに限定されるものではなく、BIOS更新実行プログラム22、OS更新実行プログラム24、自己診断プログラム25を予め設定された所定の順番でメインメモリ32へ呼び出して実行すれば構わない。また、BIOS更新実行プログラム22、OS更新実行プログラム24、自己診断プログラム25のいずれかのみを単独で呼び出して実行しても構わない。すなわち、BIOS38の更新、OS39の更新、産業用コンピュータ30全体の自己診断をそれぞれ単独で行っても構わない。
【0058】
上記の実施形態においては、BIOS更新データ21をBIOSメモリ33に書き込んでBIOS38に上書きすることによってBIOS38の更新を行っているが、BIOS38の更新の処理はこれに限定されるものではなく、差分の修正を行うものであっても構わない。同様に、OS更新データ23をストレージ機器34に書き込んでOS39に上書きすることによってOS39の更新を行っているが、OS39の更新の処理はこれに限定されるものではなく、差分の修正を行うものであっても構わない。
【符号の説明】
【0059】
10 通信システム
20 サーバコンピュータ(サーバ装置)
30 産業用コンピュータ(情報処理装置、クライアント装置)
31 CPU
32 メインメモリ(主記憶装置)
33 BIOSメモリ(基本メモリ)
35 LANポート(通信部)
38 BIOS
図1
図2