JPH09325934A - 計算機システム - Google Patents

計算機システム

Info

Publication number
JPH09325934A
JPH09325934A JP8144738A JP14473896A JPH09325934A JP H09325934 A JPH09325934 A JP H09325934A JP 8144738 A JP8144738 A JP 8144738A JP 14473896 A JP14473896 A JP 14473896A JP H09325934 A JPH09325934 A JP H09325934A
Authority
JP
Japan
Prior art keywords
middleware
output
file
function
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8144738A
Other languages
English (en)
Inventor
Hideji Mizuno
秀司 水野
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP8144738A priority Critical patent/JPH09325934A/ja
Publication of JPH09325934A publication Critical patent/JPH09325934A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 計算機の機種が変わると、その機種にあった
ミドルウェアを用意するためにミドルウェアを改造しな
ければならない課題があった。 【解決手段】 中間手段が、オペレーティングシステム
に依存する部分であるミドルウェアインタフェース部6
と、オペレーティングシステムに依存しないミドルウェ
ア3とを備える。ミドルウェア3は、カーネル2の標準
関数等を呼び出す共通関数の集合で定義されたミドルウ
ェアインタフェース部6から所望の共通関数を呼び出す
ものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、プラント制御等
に用いられ、各種機器を制御する計算機システムに関す
るものである。
【0002】
【従来の技術】図5は従来の計算機システムの構成を示
すブロック図である。図において、11は計算機、21
はプリンタ、22はキーボードやマウス等の入力装置、
23はCRT等の表示装置である。計算機11におい
て、1は計算機11のユーザが所望の機能を実現するた
めのプログラムであるアプリケーションプログラム(A
P)、2は各種の標準関数を有し要求(システムコー
ル)に応じて計算機11の内部のハードウェア資源をア
クセスしたり外部機器をアクセスしたりする処理等を行
うものであってオペレーティングシステムの中核をなす
カーネル、31はアプリケーションプログラム1の特定
の要求に応じてカーネル2が提供する標準関数、ライブ
ラリおよびオペレーティングシステムのその他の機能を
利用してハードウェア資源のアクセスや外部機器のアク
セス等を実現するソフトウェアである。以下、このソフ
トウェア31をミドルウェア31という。ミドルウェア
31には、例えば、ロギング出力機能を提供するロギン
グ出力部41やユーザと計算機11との間の情報入出力
機能を提供するマンマシン入出力部51が含まれる。
【0003】次に動作について説明する。例えば、ロギ
ング出力が要求される場合に、アプリケーションプログ
ラム1は、出力データを編集し編集データの出力をミド
ルウェア31のロギング出力部41に依頼する。ロギン
グ出力部41は、カーネル2が提供するファイル書き込
み用の標準関数を用いて編集データをファイルに書き込
む。次に、ロギング出力デバイスであるプリンタ21や
表示装置23に対する制御コードの設定を行う。さら
に、ファイル内容出力用の標準関数を用いてファイル内
のデータをロギング出力デバイスに出力する。
【0004】ミドルウェア31がカーネル2が提供する
諸機能を利用して外部機器をアクセスするので、アプリ
ケーションプログラム1は、カーネル2が提供する諸機
能を意識しなくてよい。すなわち、ユーザは、互いに異
なるカーネル2を有する複数の計算機11において、同
一のアプリケーションプログラム1を使用することがで
きる。しかし、アプリケーションプログラム1を共通に
用いるために、ミドルウェア31は、互いに異なるカー
ネル2を有する各計算機11において別個に用意されな
ければならない。プラント制御等を行う計算機11にお
いてミドルウェア31はソフトウェアパッケージとして
ユーザに提供される。現状では、異なるカーネル2を有
する計算機に対して、すなわち、異なる機種に対して、
異なるミドルウェア31を用意する必要がある。
【0005】
【発明が解決しようとする課題】従来の計算機システム
は以上のように構成されているので、計算機11の機種
が変わると、その機種にあったミドルウェア31を用意
するためにミドルウェア31を改造しなければならな
い。従って、改造の際に、ソフトウェアの品質低下をも
たらさないようにするための注意を払わなければならな
いという課題があった。
【0006】この発明は上記のような課題を解決するた
めになされたもので、計算機の機種が変わってもミドル
ウェアを変更せずにすみ、ソフトウェアの品質低下防止
のための手間を削減し得る計算機システムを得ることを
目的とする。なお、この発明に類似する先行技術とし
て、特開平7−219878号公報に示されたものがあ
る。
【0007】
【課題を解決するための手段】請求項1記載の発明に係
る計算機システムは、中間手段が、オペレーティングシ
ステムに依存する部分であるインタフェース部と、オペ
レーティングシステムに依存しない本体部分とを備えた
ものである。
【0008】請求項2記載の発明に係る計算機システム
は、中間手段の本体部分が、オペレーティングシステム
の機能を呼び出す共通関数の集合で定義されたインタフ
ェース部から共通関数を呼び出す構成になっているもの
である。
【0009】請求項3記載の発明に係る計算機システム
は、インタフェース部における共通関数が、直結機器に
対するアクセスとLAN接続の機器に対するアクセスと
を選択的に実行する共通関数をさらに含む構成になって
いるものである。
【0010】
【発明の実施の形態】以下、この発明の実施の一形態を
説明する。 実施の形態1.図1はこの発明の実施の形態1による計
算機システムの構成を示すブロック図である。図におい
て、10は計算機、21はプリンタ、22はキーボード
やマウス等の入力装置、23はCRT等の表示装置であ
る。計算機10において、1はアプリケーションプログ
ラム(AP)、2は各種の標準関数を有し要求(システ
ムコール)に応じて計算機10の内部のハードウェア資
源をアクセスしたり外部機器をアクセスしたりする処理
等を行うカーネル、3はアプリケーションプログラム1
の要求に応じてハードウェア資源のアクセスや外部機器
のアクセス等を実現するミドルウェアである。ミドルウ
ェア3には、例えば、ロギング出力機能を提供するロギ
ング出力部4やユーザと計算機10との間の情報入出力
機能を提供するマンマシン入出力部5が含まれる。
【0011】6は従来のミドルウェア3の機能のうちカ
ーネル2が変更されるとそれに応じて変更が必要となる
部分が抽出されたものであり、ミドルウェア3とカーネ
ル2との連携を果たす各共通関数からなるミドルウェア
インタフェースを有するミドルウェアインタフェース部
(MWI)である。ミドルウェアインタフェース部6に
は、各種タスクを起動する部分61、ファイル入出力を
司る部分62、ロギング出力デバイスへのデータ出力を
司る部分63、入力装置22等のマンマシンデバイスへ
のデータ入出力を司る部分64等が含まれる。なお、中
間手段は、ミドルウェア(本体部分)3およびミドルウ
ェアインタフェース部(インタフェース部)6で構成さ
れる。
【0012】次に動作について図2の説明図を参照して
説明する。ロギング出力等の帳票出力が要求される場合
に、アプリケーションプログラム1は、プリンタ21等
のロギング出力デバイスに出力されるべきデータである
帳票データを編集する(ステップST100)。そし
て、帳票データの出力をミドルウェア3のロギング出力
部4に要求する(ステップST101)。ロギング出力
部4は、ミドルウェアインタフェース部6中の帳票出力
のための共通関数20を呼び出す。その共通関数20
は、ステップST200〜ステップST202の処理を
実行するものである。
【0013】まず、共通関数20の実行によって、アプ
リケーションプログラム1からの帳票データを得るため
に共通メモリ(グローバルエリア)が確保される(ステ
ップST200)。次に、アプリケーションプログラム
1からロギング出力部4を介して入力した帳票データが
ファイルに書き込まれる(ステップST201)。そし
て、帳票出力処理タスクが起動される(ステップST2
02)。なお、帳票データをファイルに書き込む処理
は、ファイル入出力を司る部分62によって実行され
る。また、帳票出力処理タスクの起動は、各種タスクを
起動する部分61によって実行される。
【0014】帳票出力処理タスクは、グローバルエリア
を確保し(ステップST300)、自タスクに渡された
情報を読み取る(ステップST301)。そして、ファ
イルから帳票データを読み込む(ステップST30
2)。次に、データ出力の準備を行う。すなわち、ロギ
ング出力デバイスに対して制御コードの設定等を行う
(ステップST303)。準備ができたら、ロギング出
力デバイスに帳票データを出力する。なお、ファイルか
ら帳票データを読み出す処理は、ファイル入出力を司る
部分62によって実行される。また、帳票データをロギ
ング出力デバイスに出力する処理は、ロギング出力デバ
イスへのデータ出力を司る部分63によって実行され
る。
【0015】以上の処理を実行するにあたって、例え
ば、ステップST200,ST201,ST202,S
T300,ST301,ST302,ST304の処理
は、カーネル2が提供する標準関数を用いて実現され
る。例えば、UNIX(X/Open Co.Ltd.
の登録商標)オペレーティングシステムのカーネル2を
用いた場合には、図2に記載されているように、以下の
標準関数で実現できる。
【0016】(1)ステップST200,ST300 shmat : 共有メモリを仮想空間に対応づける (2)ステップST201 open : ファイルオープン write : ファイルへの書き込み close : ファイルクローズ (3)ステップST202 msgsnd: メッセージを送る fork : 新規プロセスを生成 exec : ファイルを実行 (4)ステップST301 msgrcv: メッセージを受け取る (5)ステップST302 open : ファイルオープン read : ファイルからの読み出し close : ファイルクローズ (6)ステップST304 open : ファイル(ファイルとみなされるデバイス)
オープン write : ファイルへの書き込み close : ファイルクローズ
【0017】例えば、OpenVMS(デジタルイクイ
ップメント社の商標)オペレーティングシステムのカー
ネル2を用いた場合には、図2に記載されているよう
に、以下の標準関数で実現できる。 (1)ステップST200,ST300 sys$crmpsc : 共有メモリを仮想空間に対応づける (2)ステップST201 sys$open : ファイルオープン sys$connect : ファイルのレコードストリームを確
立 sys$put : ファイルにレコードを書き込む sys$disconnect: レコードストリームの終了 sys$close : ファイルクローズ (3)ステップST202 sys$crembx : メールボックスの作成 sys$qio : 入出力 sys$creprc : 新規プロセスを生成 (4)ステップST301 sys$crembx : メールボックスの作成 sys$qio : 入出力 (5)ステップST302 sys$open : ファイルオープン sys$connect : ファイルのレコードストリームを確
立 sys$get : ファイルからレコードを読み出す sys$disconnect: レコードストリームの終了 sys$close : ファイルクローズ (6)ステップST304 sys$assign : 入出力チャネルの設定 sys$qio : 入出力 sys$dassgn : 入出力チャネルの解除
【0018】従って、ステップST200,ST20
1,ST202,ST300,ST301,ST30
2,ST304の処理をミドルウェアインタフェース部
6に用意しておけば、カーネル2の変更があった場合
に、ミドルウェアインタフェース部6のみを変更すれば
よい。すなわち、ステップST200〜ステップST2
02の処理を実行する共通関数20を呼び出すための手
続とステップST303の処理をミドルウェア3として
用意しておけば、ミドルウェア3を変更する必要はな
い。そのようなミドルウェア3は、カーネル2の種類に
依存しないからである。
【0019】上記の各標準関数は一般的なものであり、
例示されたUNIXおよびOpenVMS以外のものに
カーネル2が変更されても、ミドルウェア3を変更する
必要はない。使用されるカーネル2に合わせてミドルウ
ェアインタフェース部6のみを変更すればよい。
【0020】以上のように、従来のミドルウェア31の
機能のうちカーネル2の種類に依存する部分をミドルウ
ェアインタフェース部6に閉じ込めれば、オペレーティ
ングシステムが変更されても、本体部分であるミドルウ
ェア3が変更される必要はない。
【0021】実施の形態2.図3はこの発明の実施の形
態2による計算機システムの動作を説明するための説明
図である。計算機システムの構成は、図1に示された構
成と同じである。ただし、この場合には、図4に示すよ
うに、クライアントとなる計算機10がLAN26を介
して入出力サーバとなる入出力装置25と接続されたク
ライアント/サーバ構成も考慮する。
【0022】次に動作について説明する。アプリケーシ
ョンプログラム1が表示装置23または入出力装置25
に画面表示を行いたい場合に、アプリケーションプログ
ラム1は、画面に表示されるデータである画面表示デー
タを編集する(ステップST500)。そして、画面表
示データの出力をミドルウェア3のマンマシン入出力部
5に要求する(ステップST501)。マンマシン入出
力部5は、ミドルウェアインタフェース部6中の画面表
示用の共通関数60を呼び出す。その共通関数60は、
ステップST600〜ステップST602の処理を実行
するためのものである。
【0023】共通関数60が実行されると、まず、アプ
リケーションプログラム1からの画面表示データを得る
ために共通メモリ(グローバルエリア)が確保される
(ステップST600)。次に、アプリケーションプロ
グラム1からマンマシン入出力部5を介して入力した画
面表示データがファイルに書き込まれる(ステップST
601)。そして、画面表示処理タスクが起動される
(ステップST602)。なお、画面表示データをファ
イルに書き込む処理は、ファイル入出力を司る部分62
によって実行される。また、画面表示処理タスクの起動
は、各種タスクを起動する部分61によって実行され
る。
【0024】画面表示処理タスクは、グローバルエリア
を確保し(ステップST700)、自タスクに渡された
情報を読み取る(ステップST701)。そして、ファ
イルから画面表示データを読み込む(ステップST70
2)。次に、データ出力の準備を行う。すなわち、表示
装置23や入出力装置25等のマンマシンデバイスに対
して制御コードの設定等を行う(ステップST70
3)。準備ができたら、画面表示データをマンマシンデ
バイスに出力する(ステップST704)。なお、ファ
イルから画面表示データを読み出す処理は、ファイル入
出力を司る部分62によって実行される。また、画面表
示データをマンマシンデバイスに出力する処理は、マン
マシンデバイスへのデータ入出力を司る部分64によっ
て実行される。
【0025】以上の処理を実行するにあたって、ステッ
プST600,ST601,ST602,ST700,
ST701,ST702の処理は、カーネル2が提供す
る標準関数を用いて実現される。例えば、UNIXオペ
レーティングシステムのカーネル2を用いた場合には、
図3に記載されているように、以下の標準関数で実現で
きる。
【0026】(1)ステップST600,ST700 shmat (2)ステップST601 open ,write ,close (3)ステップST602 msgsnd,fork,exec (4)ステップST701 msgrcv (5)ステッフ゜ST702 open,read,close
【0027】従って、ステップST600,ST60
1,ST602,ST700,ST701,ST702
の処理をミドルウェアインタフェース部6に用意してお
けば、カーネル2の変更があった場合に、ミドルウェア
インタフェース部6のみを変更すればよい。すなわち、
ステップST600〜ステップST602の処理を実行
する共通関数60を呼び出すための手続とステップST
703の処理をミドルウェア3として用意しておけば、
それらはカーネル2の種類に依存しないので、ミドルウ
ェア3を変更する必要はない。
【0028】この場合には、さらに、ステップST70
4の処理が共通関数80で実現される。すなわち、ステ
ップST704では、共通関数80を呼び出す手続が実
行される。その共通関数80が実行されると、まず、マ
ンマシンデバイスの接続形態が判定される(ステップS
T800)。図4に示すように入出力装置25がLAN
26を介して計算機10に接続されている場合には、L
AN26を介して画面表示データを入出力装置25に送
信する処理が実行される(ステップST801)。図1
に示すように表示装置23等のマンマシンデバイスが計
算機10に直結されている場合には、そのマンマシンデ
バイスに画面表示データを供給する処理が実行される
(ステップST802)。
【0029】例えば、UNIXオペレーティングシステ
ムのカーネル2を用いた場合には、図3に記載されてい
るように、ステップST801,ST802の処理は以
下の標準関数で実現できる。
【0030】(8)ステップST801 socket : ソケットの生成 sendto : データの送信 (9)ステップST802 X-window関数: GUIを生成するための関数群
【0031】従って、ステップST801,ST802
の処理を実行するようなミドルウェアインタフェースを
用意しておけば、ミドルウェア3におけるマンマシン入
出力部5は、ステップST600〜ステップST602
の処理を実行する共通関数60を呼び出すだけで、LA
N26で接続されたマンマシンデバイスに対する画面表
示と直結されたマンマシンデバイスに対する画面表示と
のうちのいずれをも実現できる。カーネル2が変更され
ても、そのようなマンマシン入出力部5を変更する必要
はない。
【0032】
【発明の効果】以上のように、請求項1記載の発明によ
れば、計算機システムを、中間手段が、オペレーティン
グシステムに依存する部分であるインタフェース部とオ
ペレーティングシステムに依存しない本体部分とに分離
されるように構成したので、オペレーティングシステム
に依存する部分がインタフェース部に閉じ込められ、オ
ペレーティングシステムが変更されても中間手段におけ
る本体部分を変更せずに済み、その結果、ソフトウェア
の品質低下防止のための手間が削減される効果がある。
【0033】請求項2記載の発明によれば、計算機シス
テムを、オペレーティングシステムの機能を呼び出す共
通関数の集合で定義されたインタフェース部から中間手
段の本体部分が共通関数を呼び出すように構成したの
で、オペレーティングシステムの変更に応じて共通関数
を変更することによってシステム変更に対応でき、シス
テム変更時の変更箇所を少なくすることができる効果が
ある。
【0034】請求項3記載の発明によれば、計算機シス
テムを、直結機器に対するアクセスとLAN接続の機器
に対するアクセスとを選択的に実行する共通関数をイン
タフェース部における共通関数がさらに含むように構成
したので、中間手段の本体部分に一つの共通関数呼び出
し手続を用意するだけで接続形態の異なる機器をアクセ
スできる効果がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態1による計算機システ
ムの構成を示すブロック図である。
【図2】 この発明の実施の形態1による計算機システ
ムの動作を説明するための説明図である。
【図3】 この発明の実施の形態2による計算機システ
ムの動作を説明するための説明図である。
【図4】 計算機がLANを介して入出力装置と接続さ
れた構成を示すブロック図である。
【図5】 従来の計算機システムの構成を示すブロック
図である。
【符号の説明】
3 ミドルウェア(中間手段,本体部分)、6 ミドル
ウェアインタフェース部(中間手段,インタフェース
部)、20,60,80 共通関数。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 オペレーティングシステムが提供する機
    能を利用してアプリケーションプログラムの要求を実現
    する中間手段を備えた計算機システムにおいて、前記中
    間手段は、前記オペレーティングシステムに依存する部
    分であるインタフェース部と、前記オペレーティングシ
    ステムに依存しない本体部分とを備えたことを特徴とす
    る計算機システム。
  2. 【請求項2】 中間手段の本体部分は、オペレーティン
    グシステムの機能を呼び出す共通関数の集合で定義され
    たインタフェース部から、アプリケーションプログラム
    の要求に応じた共通関数を呼び出すことを特徴とする請
    求項1記載の計算機システム。
  3. 【請求項3】 インタフェース部における共通関数は、
    計算機に直結されている機器に対するアクセスとLAN
    を介して計算機に接続されている機器に対するアクセス
    とを選択的に実行する共通関数を含むことを特徴とする
    請求項2記載の計算機システム。
JP8144738A 1996-06-06 1996-06-06 計算機システム Pending JPH09325934A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8144738A JPH09325934A (ja) 1996-06-06 1996-06-06 計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8144738A JPH09325934A (ja) 1996-06-06 1996-06-06 計算機システム

Publications (1)

Publication Number Publication Date
JPH09325934A true JPH09325934A (ja) 1997-12-16

Family

ID=15369209

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8144738A Pending JPH09325934A (ja) 1996-06-06 1996-06-06 計算機システム

Country Status (1)

Country Link
JP (1) JPH09325934A (ja)

Similar Documents

Publication Publication Date Title
US9189263B1 (en) Object synchronization in shared object space
Pike et al. Plan 9 from bell labs
US5842015A (en) System and method for real-time control of hardware in a multiprocessing environment
JP4972082B2 (ja) 開発者がシステム上の周知のロケーションを容易に発見し、または拡張するための能力
KR100350141B1 (ko) 매체관리자,애플리케이션프로그램인터페이스와이를구현하는방법
JP3444471B2 (ja) 書式作成方法およびディジタル処理装置に書式作成方法を実行させるための装置可読な記憶媒体
US5964834A (en) System grouping clipboard memories associating with computers in a network into a shared clipboard memory for sharing data object in the network
US7987430B2 (en) Apparatus, system, and method for customizing a graphical user interface
US7543301B2 (en) Shared queues in shared object space
US5912669A (en) Screen navigation method
US5862377A (en) Technique for sharing information between applications
US20050240944A1 (en) Method and apparatus for adapting and hosting legacy user interface controls
JPH10283195A (ja) カーネル・モードにおけるソフトウェア・ドライバを相互接続する方法,コンピュータ・プログラム・プロダクト、システムおよび記録媒体
JPH10283252A (ja) セパレート・プロセッシング・コンポーネント間のバッファ間データ転送を減らす方法およびコンピュータ・プログラム・プロダクト
JPH0685873A (ja) ハイパーメディアシステムとハイパー構造内で通信する相互接続された複数のエディタとの間の通信用超高レベル双方向プロトコル
JP2003523568A (ja) コンピュータにおいてアプリケーションソフトウエアを起動するための制御装置及び制御方法並びにこれを用いたマルチモニタコンピュータ、クライアントサーバシステム及び記憶媒体
US7996764B2 (en) Apparatus, program and method for accepting a request from a client computer via a network and executing a web application
US20030105780A1 (en) File system, control method, and program
JP2000231492A (ja) アクティブプログラムモジュールの間にシームレスな相互接続性を提供する装置
JPH09325934A (ja) 計算機システム
JPH11203782A (ja) 情報記録再生装置およびその制御方法
JPH09245035A (ja) ドキュメント管理装置
JPH1011271A (ja) バージョンダウン入力方式
JPS6359639A (ja) フアイルアクセス互換制御方式
JPH0981430A (ja) ファイル・システム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20040312

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040720

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041116