JPH11149387A - 共有装置制御方法及びその実施装置 - Google Patents

共有装置制御方法及びその実施装置

Info

Publication number
JPH11149387A
JPH11149387A JP9315209A JP31520997A JPH11149387A JP H11149387 A JPH11149387 A JP H11149387A JP 9315209 A JP9315209 A JP 9315209A JP 31520997 A JP31520997 A JP 31520997A JP H11149387 A JPH11149387 A JP H11149387A
Authority
JP
Japan
Prior art keywords
control information
processing
reception
storage area
line
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
JP9315209A
Other languages
English (en)
Inventor
Hideki Murayama
秀樹 村山
Hiroshi Yashiro
寛 屋代
Takehisa Hayashi
林  剛久
Masahiro Kitano
昌宏 北野
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP9315209A priority Critical patent/JPH11149387A/ja
Priority to US09/192,218 priority patent/US6477560B1/en
Publication of JPH11149387A publication Critical patent/JPH11149387A/ja
Pending legal-status Critical Current

Links

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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 OSによる排他制御を行うことなく複数のプ
ログラムから共有装置にアクセスすることが可能な技術
を提供する。 【解決手段】 複数のプログラムで共有される共有装置
を制御する共有装置制御方法において、共有装置で特定
の処理を行う為の制御情報を制御情報格納領域中の特定
領域に格納し、前記制御情報を格納した特定領域を示す
制御情報IDを単一の書き込みにより制御情報ID保持
手段に保持し、複数の制御情報IDを格納する受け付け
制御情報ID格納手段の空き領域に前記制御情報ID保
持手段中の制御情報IDを格納し、前記受け付け制御情
報ID格納手段中の制御情報IDに対応する特定領域の
制御情報を制御情報格納領域から取得して前記特定の処
理を行うものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は複数のプログラムで
共有される共有装置を制御する共有装置制御装置に関
し、特に複数の計算機を相互に結合する為の多重化ネッ
トワークアダプタを複数のユーザプログラムから排他制
御することなく利用可能とする共有装置制御装置に適用
して有効な技術に関するものである。
【0002】
【従来の技術】従来、複数のプログラムで共有される共
有装置にアクセスする場合には、同時に複数のプログラ
ムから同一の共有装置にアクセスしない様にオペレーテ
ィングシステム(OS)によって排他制御を行ってい
る。
【0003】例えば、ネットワークに対してメッセージ
を送出する際には、同時に複数のプログラムから同一の
ネットワークアダプタを制御しない様にOSによって排
他的に制御を行っている。この処理は例えば、Douglas
E.COMER他著、"INTERNETWORKING WITH TCP/IP VOLUME I
I"、pp.7-25に記載のTCP/IP(Transmission Control Prot
ocol/Internet Protocol)で利用されている。
【0004】また排他制御等の為にOSを呼出す際には
コンテクストの退避回復等の処理が必要である。この処
理については、S.J Leffler他著「UNIX 4.3BSDの設計と
実装」(原書:S.J.Leffler et al. The Design and Imple
mentation of the 4.3BSD UNIX Operating System)、p.2
4に記載されている。
【0005】OS呼出しには上記記載のコンテクストの
退避回復等の処理のオーバヘッドがかかる為、実装され
る通信プロトコルの処理負荷が低い場合にはOSによる
オーバヘッドの通信処理全体に対する比率が高くなり、
OSのオーバヘッドが性能上の隘路となることがある。
【0006】これを回避する為にOSを介することなく
ネットワークアダプタを制御する方法がUSENIX 1997 Co
nference, January 6-10, 1997, Anaheim, California,
USAで行われたSteven H. Rodrigues; Thomas E. Ander
son; David E. Culler, University of California, Be
rkeleyによる"High-Performance Local-Area Communica
tion With Fast Sockets"に報告されている。
【0007】この報告の方法では単一のプログラムがネ
ットワークアダプタを占有することで低いレイテンシを
実現しているが、複数のプログラムからネットワークア
ダプタを利用できる様にすると排他制御の為に性能低下
が起こることが示されている。そこで各通信に対して個
別のハードウェア資源を持てば排他制御を行なう必要が
なくなって低レイテンシの通信が可能となるが、この為
には個別のネットワークアダプタを複数接続することが
必要となる。
【0008】
【発明が解決しようとする課題】ネットワークで接続さ
れた計算機の処理する対象が例えば科学技術計算等の各
計算機上で限られた少数のプログラムが動作する処理で
あれば、上述の複数のネットワークアダプタを実装する
方法でも必要な数の通信を行うことが可能である。
【0009】しかし、意思決定支援システムやオンライ
ントランザクションシステム等を構成する場合には、各
計算機上で非常に多くのプログラムが複数の通信回線を
利用して処理を行う。この場合にはシステムで利用する
通信の数は1024以上等の大規模で非常に多数なもの
となる。
【0010】前記従来の複数のネットワークアダプタを
実装する方法では、接続可能なネットワークアダプタの
数は例えば最大64枚程度であり、必要な通信回線数を
用意することができないことがある為、殆どの通信にお
いてネットワークアダプタを共有せざるを得ない。ネッ
トワークアダプタ等のハードウェア資源を共有するには
必ず排他制御が必要になる為、低レイテンシを実現する
ことができなくなってしまうという問題がある。
【0011】例えばオンライントランザクションで10
000トランザクション/秒を実現する為には、1秒間
に20000回以上の通信が必要になる為、50マイク
ロ秒に一回以上の通信が行われる。ここで一回の排他制
御処理を必要とする部分が1マイクロ秒であり、定常的
に5つのプログラムが要求待ち行列にあるとすると、定
常的に一回の通信当たり5マイクロ秒待たされることに
なり、この場合には性能が10%低下することになる。
【0012】ここで排他制御することなく通信を行うこ
とにすれば、前記排他制御処理による性能低下は生じな
い為、排他制御を必要としない通信多重化機構を実現す
ることでシステムの性能は上記の例で10%向上するこ
とになる。
【0013】本発明の目的は上記問題を解決し、OSに
よる排他制御を行うことなく複数のプログラムから共有
装置にアクセスすることが可能な技術を提供することに
ある。
【0014】
【課題を解決するための手段】本発明は複数のプログラ
ムで共有される共有装置を制御する共有装置制御装置に
おいて、制御情報IDを単一の処理によって書き込むこ
とにより共有装置への処理要求を出し、前記処理要求を
受け付けて共有装置での処理を行うものである。
【0015】本発明の共有装置制御装置では、まず共有
装置で特定の処理を行う為の制御情報を制御情報格納領
域中の特定領域に格納し、前記制御情報を格納した特定
領域を示す制御情報IDを単一の書き込みにより制御情
報ID保持手段に保持して処理要求を行う。
【0016】次に複数の制御情報IDを格納する受け付
け制御情報ID格納手段に空き領域があるかどうかを調
べ、制御情報ID格納手段に空き領域がある場合には前
記制御情報ID保持手段中の制御情報IDを制御情報I
D格納手段に格納して前記処理要求を受け付ける。
【0017】次に前記受け付け制御情報ID格納手段か
ら制御情報IDを取り出し、その制御情報IDに対応す
る特定領域の制御情報を制御情報格納領域から取得して
前記特定の処理を行う。
【0018】本発明の共有装置制御装置では、前記の様
に制御情報ID保持手段への単一の書き込みにより共有
装置への処理要求を行うので、特定のプログラムからの
処理要求の途中に他のプログラムからの処理要求が入り
込むことがなく、よって排他制御を行う必要がない。こ
の為、OSによる排他制御を行うことなく複数のプログ
ラムから共有装置にアクセスすることができる。
【0019】以上の様に本発明の共有装置制御装置によ
れば、単一の書き込みにより共有装置への処理要求を受
け付けてその処理要求を実行するので、OSによる排他
制御を行うことなく複数のプログラムから共有装置にア
クセスすることが可能である。
【0020】
【発明の実施の形態】(実施形態1)以下に複数の計算
機を相互に結合する為の多重化ネットワークアダプタを
排他制御することなく複数のユーザプログラムから利用
可能とする実施形態1の共有装置制御装置について説明
する。
【0021】図1は本実施形態の共有装置制御装置の概
略構成を示す図である。図1に示す様に本実施形態の計
算機100は、プロセッサ130と、メインメモリ15
0と、多重化ネットワークアダプタ110と、キーボー
ド131と、ディスプレイ装置132と、磁気ディスク
装置133と、CD−ROM装置134と、システムバ
ス180とを有している。
【0022】プロセッサ130は計算機100全体の動
作を制御する処理装置である。メインメモリ150はメ
モリ常駐処理部162及び回線要求解放処理部163等
の処理プログラムや回線制御情報等のデータをロードす
る記憶装置である。
【0023】多重化ネットワークアダプタ110は排他
制御を行うことなく複数のユーザプログラムからの送信
処理要求を受け付け、多重化されたユーザ転送データ1
71を送受信するアダプタである。キーボード131は
ユーザプログラムの起動等の指示を入力する装置であ
る。
【0024】ディスプレイ装置132はユーザプログラ
ムの処理経過等を表示する装置である。磁気ディスク装
置133はメモリ常駐処理部162及び回線要求解放処
理部163等の処理プログラムを含む各種プログラムや
データを格納する装置である。
【0025】CD−ROM装置134はメモリ常駐処理
部162及び回線要求解放処理部163等の処理プログ
ラムを含む各種プログラムを記録したCD−ROMを読
み込む装置である。システムバス180はプロセッサ1
30、メインメモリ150や多重化ネットワークアダプ
タ110等を相互に接続するバスである。
【0026】多重化ネットワークアダプタ110は、ネ
ットワーク多重化送受信部111と、回線制御情報位置
保持手段112と、回線ID保持手段113と、バスイ
ンタフェース制御部114と、受け付けFIFOメモリ
120と、状態回復退避部121と、受け付け判定部1
22とを有している。
【0027】ネットワーク多重化送受信部111は複数
のユーザプログラムからのユーザ転送データ171を多
重化してネットワーク190に送信したり、多重化され
たユーザ転送データ171をネットワーク190から受
信する回路である。
【0028】回線制御情報位置保持手段112は回線制
御情報格納領域161中の各回線制御情報が格納された
特定領域の位置を起動回線IDに対応付けて保持するレ
ジスタである。回線ID保持手段113は回線制御情報
格納領域161中の特定領域を示す起動回線IDを単一
の書き込みにより保持するレジスタ等の制御情報ID保
持手段である。
【0029】バスインタフェース制御部114は多重化
ネットワークアダプタ110をシステムバス180に接
続する制御部である。受け付けFIFOメモリ120は
複数の起動回線IDを格納する受け付け制御情報ID格
納手段であり、先入れ先出し(FIFO)で処理するR
AM等のメモリである。
【0030】状態回復退避部121は受け付けFIFO
メモリ120中の起動回線IDに対応する特定領域の回
線制御情報を回線制御情報格納領域161から取得して
送信処理を行い、その処理結果を示す情報を回線制御情
報格納領域161中の前記起動回線IDに対応する特定
領域に書き込む回路である。
【0031】受け付け判定部122は受け付けFIFO
メモリ120の空き領域の有無に応じて当該送信処理の
受け付け結果を示す情報を回線制御情報格納領域161
中の当該起動回線IDに対応する特定領域に書き込み、
受け付けFIFOメモリ120の空き領域に回線ID保
持手段113中の起動回線IDを格納する回路である。
【0032】メインメモリ150は、OS空間160
と、回線制御情報格納領域161と、メモリ常駐処理部
162と、回線要求解放処理部163と、ユーザ空間1
70と、ユーザ転送データ171とを有している。
【0033】OS空間160はOSが動作する空間であ
る。回線制御情報格納領域161は多重化ネットワーク
アダプタ110で送信処理を行う為の複数の回線制御情
報を格納する制御情報格納領域である。メモリ常駐処理
部162はユーザ転送データ171をメインメモリ15
0上に常駐させる処理部である。
【0034】回線要求解放処理部163はユーザプログ
ラムからの通信回線の要求に対して回線制御情報格納領
域161中の未使用領域の起動回線IDを応答し、呼出
し側のユーザプログラムのユーザ空間170での当該起
動回線IDに対応する特定領域の割り付けや解放を行う
処理部である。
【0035】ユーザ空間170はユーザプログラムが動
作する空間である。ユーザ転送データ171はユーザプ
ログラムが多重化ネットワークアダプタ110を介して
転送するデータである。
【0036】ネットワーク190は複数の計算機100
を接続するEthernet(IEEE802にて標準
化)やATM(Asynchronous Trans
fer Mode)等による通信ケーブルである。
【0037】図1は多重化ネットワークアダプタ110
によって接続された複数の計算機100による疎結合計
算機システムの一例を示しており、この疎結合計算機シ
ステムは、計算機100がネットワーク190に2つ以
上結合されて構成される。
【0038】また最小構成の計算機100は、プロセッ
サ130、メインメモリ150及び多重化ネットワーク
アダプタ110がシステムバス180に結合されて構成
される。なお図中のユーザ空間170及びユーザ転送デ
ータ171に付加された数字は対応するN個のユーザプ
ログラムを識別する整数を表している。
【0039】多重化ネットワークアダプタ110は、複
数のユーザプログラムからの送信処理要求を排他制御を
行うことなく受け付けることが可能である。これを実現
する為に、送信を行う為に必要な回線制御情報の本体は
メインメモリ150上の回線制御情報格納領域161に
置かれる。
【0040】ユーザプログラムは、回線制御情報格納領
域161中の特定領域を示す起動回線IDを有する単一
の書き込みを発行し、多重化ネットワークアダプタ11
0からのこの起動回線IDに対応する受け付け状況のメ
インメモリ150への書き込みにより、送信処理要求の
成否を確認する。
【0041】ユーザプログラムからの多重化ネットワー
クアダプタ110への書き込みが単一の書き込みである
為、多重化ネットワークアダプタ110への書き込みは
一度に単一のユーザプログラムのみから行われることと
なり、複数のユーザプログラム間での排他制御は必要で
はなくなる。
【0042】多重化ネットワークアダプタ110では、
通信を行うネットワーク多重化送受信部111、回線制
御情報位置保持手段112、回線ID保持手段113、
受け付けFIFOメモリ120、状態回復退避部121
及び受け付け判定部122がバスインタフェース制御部
114を介してシステムバス180に接続されている。
【0043】本実施形態の共有装置制御装置では、多重
化ネットワークアダプタ110は内部にネットワーク多
重化送受信部111を持つ構成であるが、多重化の為の
部分を多重化部として独立にシステムバス180に接続
し、ネットワーク多重化送受信部111を既存のネット
ワークアダプタとしてシステムバス180に接続して、
ユーザプログラムは多重化部を介して制御する様な構成
として実装しても良い。
【0044】受け付け判定部122は、多重化ネットワ
ークアダプタ110に対して発行された送信処理要求を
行う書き込みを受け付けて、後で処理する為に受け付け
FIFOメモリ120に取り込むことができるか否かを
判定し、受け付けFIFOメモリ120に起動回線ID
を保持する為の空があるかないかによって値の異なる受
け付け状態情報(例えば、空がある場合には「1」、空
がない場合には「0」となる)を、回線ID保持手段1
13の内容である起動回線ID及び回線制御情報位置保
持手段112から得られる回線制御情報格納領域161
内の特定の位置に書き戻す処理を行う回路であり、例え
ばTTLやCMOS等の論理によって構成される。
【0045】状態回復退避部121は、受け付けFIF
Oメモリ120に貯えられた起動回線IDの内容と回線
制御情報位置保持手段112に保持された位置情報とか
ら、メインメモリ150上にある回線制御情報をDMA
(Direct Memory Accsess)処理
により取得してネットワーク多重化送受信部111に設
定して送信処理を行い、その送信処理の結果をメインメ
モリ150上の回線制御情報格納領域161に書き戻す
回路であり、例えばTTLやCMOS等の論理とRAM
によって構成される。
【0046】次にメインメモリ150内のデータ構造に
ついて示す。メモリ空間は大きくOS空間160とユー
ザ空間170に分かれている。OSは通常多くのサービ
スルーチンや構造体を持つが、ここでは本実施形態の共
有装置制御装置に関連する項目のみ示す。
【0047】メモリ常駐処理部162は、ユーザプログ
ラムが転送する対象となるデータ領域がメインメモリ1
50にある様に保証する為の処理を行う処理部であり、
通常はOSの仮想記憶動作におけるページアウトの対象
から外すことによって前記データ領域をメインメモリ1
50に常駐させる。
【0048】なお仮想記憶機構については、S.J Leffle
r他著、UNIX 4.3BSDの設計と実装 (原書:S.J.Leffler et
al. The Design and Implementation of the 4.3BSD U
NIXOperating System)、pp.112-114に記載されている。
【0049】回線要求解放処理部163は、ユーザプロ
グラムからの通信回線の要求に対して、回線制御情報格
納領域161中の未使用の通信回線の番号及び該通信回
線に対応する領域のアドレスを呼出し側のプロセスのユ
ーザ空間170に割り付ける処理を行う。OS空間16
0内のデータ構造として回線制御情報格納領域161が
あり、この詳細を図2に示す。
【0050】図2は本実施形態の回線制御情報格納領域
161の一例を示す図である。図2に示す様に本実施形
態の回線制御情報格納領域161は、受け付け状態21
0と、DMA先頭アドレス220と、DMA長230
と、ヘッダ情報240と、コマンド250と、ステータ
ス260と、管理テーブル270とを有している。
【0051】受け付け状態210はユーザプログラムが
要求した送信処理の多重化ネットワークアダプタ110
での受け付け結果を示す情報である。DMA先頭アドレ
ス220はDMA処理によって送信されるユーザ転送デ
ータ171の先頭アドレスであり、状態回復退避部12
1がネットワーク多重化送受信部111に設定するアド
レスである。
【0052】DMA長230は前記DMA処理を行うデ
ータ長を示す情報である。ヘッダ情報240はユーザ転
送データ171を送信するネットワークパケットのヘッ
ダの情報である。コマンド250は複数の送信処理を連
続して行う等の処理内容を指示する情報である。
【0053】ステータス260はユーザプログラムが要
求した送信処理の多重化ネットワークアダプタ110で
の処理結果を示すステータス情報である。管理テーブル
270は回線制御情報格納領域161の各領域の使用状
況を示すテーブルである。
【0054】回線制御情報格納領域161は、ユーザプ
ログラムが通信制御を行う際に書き込みを行う制御ブロ
ックである受け付け状態210からステータス260の
テーブルと、それらを管理する管理テーブル270とか
ら構成されている。なお図中の受け付け状態210から
ステータス260に付加された数字は対応するN個の通
信回線を識別する整数を表している。
【0055】上記受け付け状態210からステータス2
60までの制御ブロックと独立に存在する管理テーブル
270は、OSが管理する資源で各通信回線の使用状況
を示しており、OSが更新するテーブルである。管理テ
ーブル270以外の他の資源はユーザプログラム間での
共有情報を有していない為、一度各ユーザプログラムに
割り当てられた後には排他制御を行う必要はない。
【0056】ユーザ空間170は各ユーザプログラム毎
に分かれており、転送対象となるユーザ転送データ17
1が格納された領域は、OSのメモリ常駐処理部162
を介してDMA転送前にメインメモリ150に常駐され
る様に設定される。
【0057】また回線要求解放処理部163の呼出し時
に回線制御情報格納領域161の特定領域が呼出し側の
ユーザプログラムの空間に割り当てられる。この割り当
ては仮想メモリによって実現することができる。
【0058】次に図3を用いて、ユーザ転送データ17
1を転送するネットワークパケットとメインメモリ15
0上のメモリ構造の対応について説明する。
【0059】図3は本実施形態の転送ネットワークパケ
ットの構成例を示す図である。図3に示す様に本実施形
態の転送ネットワークパケットのヘッダ情報240は、
タイプ310と、送信元アドレス320と、受信先アド
レス330とを有している。
【0060】タイプ310はネットワークパケットの種
別を示す情報である。送信元アドレス320は送信元を
示すアドレスである。受信先アドレス330は受信先を
特定するアドレスである。
【0061】図3に示す様にネットワークパケットは、
メインメモリ150上のユーザ転送データ171及びヘ
ッダ情報240から構成されている。なお図中のユーザ
転送データ171及びヘッダ情報240に付加された
「i」は、対応するN個のユーザプログラム及び通信回
線を識別する整数を表している。
【0062】以下、ユーザプログラムが多重化ネットワ
ークアダプタ110で通信を行う際に通信回線を要求す
る処理の流れを図4を用いて説明する。
【0063】図4は本実施形態の回線要求処理の処理手
順を示すフローチャートである。まずステップ410で
ユーザプログラムはOSの回線要求解放処理部163に
対して回線要求を発行する。
【0064】次にステップ420で回線要求解放処理部
163は、回線制御情報格納領域161の管理テーブル
270において未使用の通信回線を検索する。
【0065】ステップ430で前記検索結果を調べ、回
線制御情報格納領域161の管理テーブル270中に未
使用の通信回線がある場合にはステップ450に進み、
未使用の通信回線の起動回線IDを取得して前記回線要
求を発行したユーザプログラムに返し、当該起動回線I
Dに対応する特定領域を前記ユーザプログラムのユーザ
空間170に割り当てる。その際に管理テーブル270
に前記ユーザプログラムのプロセスIDと、当該通信回
線が使用されていることを示す情報を設定する。
【0066】ステップ430で前記検索結果を調べた結
果、未使用の通信回線が無い場合にはステップ440に
進み、前記ユーザプログラムに通信回線無しを通知す
る。
【0067】以下、ユーザプログラムが多重化ネットワ
ークアダプタ110で通信を行った後に通信回線の解放
を要求する処理の流れを図5を用いて説明する。
【0068】図5は本実施形態の回線解放要求処理の処
理手順を示すフローチャートである。まずステップ51
0でユーザプログラムは起動回線IDを指定してOSの
回線要求解放処理部163に対して当該起動回線IDの
通信回線の解放を要求する回線解放要求を発行する。
【0069】次にステップ520で回線要求解放処理部
163は、回線制御情報格納領域161の管理テーブル
270に対して、解放要求のあった起動回線IDの通信
回線のテーブルを検索する。
【0070】ステップ530で前記検索結果を調べ、回
線解放要求を発行したユーザプログラムが当該通信回線
の利用者であるかどうかを確認する。この確認は、呼出
し側のユーザプログラムのプロセスIDと管理テーブル
270に設定されているプロセスIDが一致するか否か
によって行う。
【0071】ステップ530で前記検索結果を調べた結
果、該当回線解放要求が正しいユーザプログラムからの
ものである場合にはステップ550に進み、該当通信回
線を解放し、回線制御情報格納領域161の該当領域を
ユーザプログラムの仮想空間から解放する。その際に管
理テーブル270から前記ユーザプログラムのプロセス
IDと当該通信回線が使用されていることを示す情報を
削除する。
【0072】ステップ530で前記検索結果を調べた結
果、該当回線解放要求が正しいユーザプログラムからの
ものでない場合にはステップ540に進み、前記ユーザ
プログラムに該当通信回線無しを通知する。
【0073】以下、ユーザプログラムが多重化ネットワ
ークアダプタ110に対してユーザ転送データ171の
送信処理要求を行う際の処理の流れを図6を用いて説明
する。
【0074】図6は本実施形態の送信処理要求の処理手
順を示すフローチャートである。まずステップ610で
ユーザプログラムは、転送対象となるユーザ転送データ
171が格納された領域をOSのメモリ常駐処理部16
2によりメインメモリ150に常駐させる。
【0075】次にステップ620でユーザプログラム
は、回線要求処理を行って回線要求解放処理部163か
ら起動回線IDを取得し、回線制御情報格納領域161
の前記取得した起動回線IDに対応する特定領域に、ユ
ーザ転送データ171のDMA先頭アドレス220、D
MA長230、ヘッダ情報240及びコマンド250を
書き込む。これらの処理の対象となる空間はユーザ空間
170に割り当てられており、ユーザプログラムが排他
的にアクセスすることが保証されている為、排他制御を
行う必要はない。
【0076】次にステップ630でユーザプログラム
は、前記起動回線IDを示す単一の書き込みを多重化ネ
ットワークアダプタ110に発行する。起動回線IDを
示す書き込みは単一の書き込みである為、ここでも他の
ユーザプログラムとの排他制御を行う必要はない。
【0077】多重化ネットワークアダプタ110は、こ
の起動回線IDを示す書き込みに対して回線制御情報格
納領域161の前記起動回線IDに対応する特定領域に
受け付け状態210の書き込みを行う。
【0078】続いてステップ640でユーザプログラム
は、回線制御情報格納領域161の前記起動回線IDに
対応する特定領域中の受け付け状態210を参照し、先
ほどの送信処理要求の受け付けが成功したか否かを確認
する。
【0079】ステップ640で受け付け状態210を確
認した結果、受け付けが成功した場合には当該送信処理
要求処理を終了し、受け付けが失敗した場合にはステッ
プ630に戻って以下同様の処理を繰り返す。但しユー
ザプログラムの処理手順によっては、この再要求処理を
すぐに繰り返さずに他の処理を実行してから再要求処理
を行っても良い。
【0080】次に多重化ネットワークアダプタ110が
ユーザプログラムから送信処理要求を受け付けた際の回
線ID保持手段113と受け付け判定部122の処理の
流れを図7を用いて説明する。
【0081】図7は本実施形態の受け付け判定部122
の処理手順を示すフローチャートである。まずステップ
710で多重化ネットワークアダプタ110は、ユーザ
プログラムから発行された起動回線IDを示す単一の書
き込みを回線ID保持手段113で受け取る。
【0082】次にステップ720で多重化ネットワーク
アダプタ110の受け付け判定部122は、受け付けF
IFOメモリ120の空き状態を調べ、受け付けFIF
Oメモリ120に空き領域があればステップ730に進
み、空き領域がなければステップ750に進む。
【0083】ステップ730で受け付け判定部122
は、回線ID保持手段113に保持された起動回線ID
に対応する回線制御情報格納領域161中の特定領域の
位置情報を回線制御情報位置保持手段112から読み出
し、その位置情報を用いて回線制御情報格納領域161
中の前記起動回線IDに対応する回線制御情報の受け付
け状態210に、受け付け成功の値として「1」を書き
込み、ステップ740に進む。
【0084】ステップ740で受け付け判定部122
は、回線ID保持手段113に保持された起動回線ID
を受け付けFIFOメモリ120の空き領域に格納す
る。
【0085】またステップ750で受け付け判定部12
2は、回線制御情報格納領域161中の前記起動回線I
Dに対応する回線制御情報の受け付け状態210に、受
け付け失敗の値として「0」を書き込んで処理を終了す
る。
【0086】次に多重化ネットワークアダプタ110が
ユーザプログラムから送信処理要求を受け付けた際の状
態回復退避部121の処理の流れを図8を用いて説明す
る。
【0087】図8は本実施形態の状態回復退避部121
の処理手順を示すフローチャートである。まずステップ
810で状態回復退避部121は、ネットワーク多重化
送受信部111の初期化を行う。続いてステップ820
で状態回復退避部121は、起動回線IDを受け付けF
IFOメモリ120から取り出す。ここで受け付けFI
FOメモリ120が空の場合は、起動回線IDを示す書
き込みがユーザプログラムから発行されるまで待つ。
【0088】次にステップ830で、受け付けFIFO
メモリ120から取り出した起動回線IDに対応する回
線制御情報格納領域161中の特定領域の位置情報を回
線制御情報位置保持手段112から読み出し、その位置
情報を用いて回線制御情報格納領域161中の前記起動
回線IDに対応する回線制御情報をメインメモリ150
から取得する。
【0089】なおここで取得する回線制御情報は、DM
A先頭アドレス220、DMA長230、ヘッダ情報2
40及びコマンド250である。但し複数の領域からの
DMA処理を行う為には複数の情報構造を持つものとし
ても良い。
【0090】次にステップ840で状態回復退避部12
1は、前記取得した回線制御情報をネットワーク多重化
送受信部111に投入し、ステップ850で処理完了を
待つ。
【0091】本実施形態の共有装置制御装置のステップ
840及びステップ850では、一回の制御のみ行う例
を示すが、複数の制御を行う為の情報を回線制御情報と
して保持しても良い。その場合、状態回復退避部121
は複数の制御を行う様にコマンド250の解釈を行いな
がら動作する。
【0092】次にステップ860で状態回復退避部12
1は、ネットワーク多重化送受信部111からの処理完
了時のステータス情報を取得する。ここで、複数の制御
を行う場合には各制御のステータス情報の履歴を各々と
っておく必要がある。
【0093】最後にステップ870で状態回復退避部1
21は、前記取得したステータス情報を、メインメモリ
150の回線制御情報格納領域161中の前記起動回線
IDに対応する回線制御情報のステータス260に設定
し、ステップ820以下の処理を繰り返す。
【0094】以上説明した様に本実施形態の共有装置制
御装置によれば、単一の書き込みにより共有装置への処
理要求を受け付けてその処理要求を実行するので、OS
による排他制御を行うことなく複数のプログラムから共
有装置にアクセスすることが可能である。
【0095】(実施形態2)以下に他の計算機と通信を
行う為のネットワークアダプタを排他制御することなく
複数のユーザプログラムから利用可能とする実施形態2
の共有装置制御装置について説明する。
【0096】図9は本実施形態の共有装置制御装置の概
略構成を示す図である。図9に示す様に本実施形態の計
算機100はネットワークアダプタ910を有してい
る。ネットワークアダプタ910は排他制御を行うこと
なく複数のユーザプログラムからの送信処理要求を受け
付けてユーザ転送データ171を送受信するアダプタで
ある。
【0097】ネットワークアダプタ910は、ネットワ
ーク送受信部911と、通信制御情報位置保持手段91
2と、制御情報ID保持手段913と、バスインタフェ
ース制御部914と、受け付けFIFOメモリ920
と、状態回復退避部921と、受け付け判定部922と
を有している。
【0098】ネットワーク送受信部911は複数のユー
ザプログラムからのユーザ転送データ171をネットワ
ーク190経由で送受信する回路である。通信制御情報
位置保持手段912は通信制御情報格納領域961中の
各通信制御情報が格納された特定領域の位置を制御情報
IDに対応付けて保持するレジスタである。制御情報I
D保持手段913は通信制御情報格納領域961中の特
定領域を示す制御情報IDを単一の書き込みにより保持
するレジスタ等の保持手段である。
【0099】バスインタフェース制御部914はネット
ワークアダプタ910をシステムバス180に接続する
制御部である。受け付けFIFOメモリ920は複数の
制御情報IDを格納する受け付け制御情報ID格納手段
であり、複数の制御情報IDを先入れ先出しで処理する
RAM等のメモリである。
【0100】状態回復退避部921は受け付けFIFO
メモリ920中の制御情報IDに対応する特定領域の通
信制御情報を通信制御情報格納領域961から取得して
送信処理を行い、その処理結果を示す情報を通信制御情
報格納領域961中の前記制御情報IDに対応する特定
領域に書き込む回路である。
【0101】受け付け判定部922は受け付けFIFO
メモリ920の空き領域の有無に応じて当該送信処理の
受け付け結果を示す情報を通信制御情報格納領域961
中の当該制御情報IDに対応する特定領域に書き込み、
受け付けFIFOメモリ920の空き領域に制御情報I
D保持手段913中の制御情報IDを格納する回路であ
る。
【0102】メインメモリ150は、通信制御情報格納
領域961と、制御情報ID要求解放処理部963とを
有している。
【0103】通信制御情報格納領域961はネットワー
クアダプタ910で送信処理を行う為の複数の通信制御
情報を格納する制御情報格納領域である。制御情報ID
要求解放処理部963はユーザプログラムからの制御情
報IDの要求に対して通信制御情報格納領域961中の
未使用領域の制御情報IDを応答し、呼出し側のユーザ
プログラムのユーザ空間170での当該制御情報IDに
対応する特定領域の割り付けや解放を行う処理部であ
る。
【0104】図9はネットワークアダプタ910によっ
て通信を行う計算機システムの一例を示しており、この
疎結合計算機システムは計算機100がネットワーク1
90に2つ以上結合されて構成される。前記説明した以
外の各部の構成は図1に示したものと同様とする。
【0105】ネットワークアダプタ910は、複数のユ
ーザプログラムからの送信処理要求を排他制御を行うこ
となく受け付けることが可能である。これを実現する為
に、送信を行う為に必要な通信制御情報の本体はメイン
メモリ150上の通信制御情報格納領域961に置かれ
る。
【0106】ユーザプログラムは、通信制御情報格納領
域961中の特定領域を示す制御情報IDを有する単一
の書き込みを発行し、ネットワークアダプタ910から
のこの制御情報IDに対応する受け付け状況のメインメ
モリ150への書き込みにより、送信処理要求の成否を
確認する。
【0107】ユーザプログラムからのネットワークアダ
プタ910への書き込みが単一の書き込みである為、ネ
ットワークアダプタ910への書き込みは一度に単一の
ユーザプログラムのみから行われることとなり、複数の
ユーザプログラム間での排他制御は必要ではなくなる。
【0108】受け付け判定部922は、ネットワークア
ダプタ910に対して発行された送信処理要求を行う書
き込みを受け付けて、後で処理する為に受け付けFIF
Oメモリ920に取り込むことができるか否かを判定
し、受け付けFIFOメモリ920に制御情報IDを保
持する為の空があるかないかによって値の異なる受け付
け状態情報(例えば、空がある場合には「1」、空がな
い場合には「0」となる)を、制御情報ID保持手段9
13の内容である制御情報ID及び通信制御情報位置保
持手段912から得られる通信制御情報格納領域961
内の特定の位置に書き戻す処理を行う回路であり、例え
ばTTLやCMOS等の論理によって構成される。
【0109】状態回復退避部921は、受け付けFIF
Oメモリ920に貯えられた制御情報IDの内容と通信
制御情報位置保持手段912に保持された位置情報とか
ら、メインメモリ150上にある通信制御情報をDMA
処理により取得してネットワーク送受信部911に設定
して送信処理を行い、その送信処理の結果をメインメモ
リ150上の通信制御情報格納領域961に書き戻す回
路であり、例えばTTLやCMOS等の論理とRAMに
よって構成される。
【0110】制御情報ID要求解放処理部963は、ユ
ーザプログラムからの制御情報IDの要求に対して、通
信制御情報格納領域961中の未使用の制御情報IDの
番号及び該制御情報IDに対応する領域のアドレスを呼
出し側のプロセスのユーザ空間170に割り付ける処理
を行う。OS空間160内のデータ構造として通信制御
情報格納領域961があり、この詳細を図10に示す。
【0111】図10は本実施形態の通信制御情報格納領
域961の一例を示す図である。図10に示す様に本実
施形態の通信制御情報格納領域961は、受け付け状態
1010と、DMA先頭アドレス1020と、DMA長
1030と、ヘッダ情報1040と、コマンド1050
と、ステータス1060と、管理テーブル1070とを
有している。
【0112】受け付け状態1010はユーザプログラム
が要求した送信処理のネットワークアダプタ910での
受け付け結果を示す情報である。DMA先頭アドレス1
020はDMA処理によって送信されるユーザ転送デー
タ171の先頭アドレスであり、状態回復退避部921
がネットワーク送受信部911に設定するアドレスであ
る。
【0113】DMA長1030は前記DMA処理を行う
データ長を示す情報である。ヘッダ情報1040はユー
ザ転送データ171を送信するネットワークパケットの
ヘッダの情報である。コマンド1050は複数の送信処
理を連続して行う等の処理内容を指示する情報である。
【0114】ステータス1060はユーザプログラムが
要求した送信処理のネットワークアダプタ910での処
理結果を示すステータス情報である。管理テーブル10
70は通信制御情報格納領域961の各領域の使用状況
を示すテーブルである。
【0115】通信制御情報格納領域961は、ユーザプ
ログラムが通信制御を行う際に書き込みを行う制御ブロ
ックである受け付け状態1010からステータス106
0のテーブルと、それらを管理する管理テーブル107
0とから構成されている。なお図中の受け付け状態10
10からステータス1060に付加された数字は対応す
るN個の領域を識別する整数を表している。
【0116】上記受け付け状態1010からステータス
1060までの制御ブロックと独立に存在する管理テー
ブル1070は、OSが管理する資源で各制御情報ID
の使用状況を示しており、OSが更新するテーブルであ
る。管理テーブル1070以外の他の資源はユーザプロ
グラム間での共有情報を有していない為、一度各ユーザ
プログラムに割り当てられた後には排他制御を行う必要
はない。
【0117】ユーザ空間170は各ユーザプログラム毎
に分かれており、転送対象となるユーザ転送データ17
1が格納された領域は、OSのメモリ常駐処理部162
を介してDMA転送前にメインメモリ150に常駐され
る様に設定される。
【0118】また制御情報ID要求解放処理部963の
呼出し時に通信制御情報格納領域961の特定領域が呼
出し側のユーザプログラムの空間に割り当てられる。こ
の割り当ては仮想メモリによって実現することができ
る。
【0119】以下、ユーザプログラムがネットワークア
ダプタ910で通信を行う際に制御情報IDを要求する
処理の流れを図11を用いて説明する。
【0120】図11は本実施形態の制御情報ID要求処
理の処理手順を示すフローチャートである。まずステッ
プ1110でユーザプログラムはOSの制御情報ID要
求解放処理部963に対して制御情報ID要求を発行す
る。
【0121】次にステップ1120で制御情報ID要求
解放処理部963は、通信制御情報格納領域961の管
理テーブル1070において未使用の制御情報IDを検
索する。
【0122】ステップ1130で前記検索結果を調べ、
通信制御情報格納領域961の管理テーブル1070中
に未使用の制御情報IDがある場合にはステップ115
0に進み、未使用の制御情報IDを取得して前記制御情
報ID要求を発行したユーザプログラムに返し、当該制
御情報IDに対応する特定領域を前記ユーザプログラム
のユーザ空間170に割り当てる。その際に管理テーブ
ル1070に前記ユーザプログラムのプロセスIDと、
当該制御情報IDが使用されていることを示す情報を設
定する。
【0123】ステップ1130で前記検索結果を調べた
結果、未使用の制御情報IDが無い場合にはステップ1
140に進み、前記ユーザプログラムに制御情報ID無
しを通知する。
【0124】以下、ユーザプログラムがネットワークア
ダプタ910で通信を行った後に制御情報IDの解放を
要求する処理の流れを図12を用いて説明する。
【0125】図12は本実施形態の制御情報ID解放要
求処理の処理手順を示すフローチャートである。まずス
テップ1210でユーザプログラムは制御情報IDを指
定してOSの制御情報ID要求解放処理部963に対し
て当該制御情報IDの解放を要求する。
【0126】次にステップ1220で制御情報ID要求
解放処理部963は、通信制御情報格納領域961の管
理テーブル1070に対して、解放要求のあった制御情
報IDのテーブルを検索する。
【0127】ステップ1230で前記検索結果を調べ、
制御情報ID解放要求を発行したユーザプログラムが当
該制御情報IDの利用者であるかどうかを確認する。こ
の確認は、呼出し側のユーザプログラムのプロセスID
と管理テーブル1070に設定されているプロセスID
が一致するか否かによって行う。
【0128】ステップ1230で前記検索結果を調べた
結果、該当制御情報ID解放要求が正しいユーザプログ
ラムからのものである場合にはステップ1250に進
み、該当制御情報IDを解放し、通信制御情報格納領域
961の該当領域をユーザプログラムの仮想空間から解
放する。その際に管理テーブル1070から前記ユーザ
プログラムのプロセスIDと当該制御情報IDが使用さ
れていることを示す情報を削除する。
【0129】ステップ1230で前記検索結果を調べた
結果、該当制御情報ID解放要求が正しいユーザプログ
ラムからのものでない場合にはステップ1240に進
み、前記ユーザプログラムに該当制御情報ID無しを通
知する。
【0130】以下、ユーザプログラムがネットワークア
ダプタ910に対してユーザ転送データ171の送信処
理要求を行う際の処理の流れを図13を用いて説明す
る。
【0131】図13は本実施形態の送信処理要求の処理
手順を示すフローチャートである。まずステップ131
0でユーザプログラムは、転送対象となるユーザ転送デ
ータ171が格納された領域をOSのメモリ常駐処理部
162によりメインメモリ150に常駐させる。
【0132】次にステップ1320でユーザプログラム
は、制御情報ID要求処理を行って制御情報ID要求解
放処理部963から制御情報IDを取得し、通信制御情
報格納領域961の前記取得した制御情報IDに対応す
る特定領域に、ユーザ転送データ171のDMA先頭ア
ドレス1020、DMA長1030、ヘッダ情報104
0及びコマンド1050を書き込む。これらの処理の対
象となる空間はユーザ空間170に割り当てられてお
り、ユーザプログラムが排他的にアクセスすることが保
証されている為、排他制御を行う必要はない。
【0133】次にステップ1330でユーザプログラム
は、前記制御情報IDを示す単一の書き込みをネットワ
ークアダプタ910に発行する。制御情報IDを示す書
き込みは単一の書き込みである為、ここでも他のユーザ
プログラムとの排他制御を行う必要はない。
【0134】ネットワークアダプタ910は、この制御
情報IDを示す書き込みに対して通信制御情報格納領域
961の前記制御情報IDに対応する特定領域に受け付
け状態1010の書き込みを行う。
【0135】続いてステップ1340でユーザプログラ
ムは、通信制御情報格納領域961の前記制御情報ID
に対応する特定領域中の受け付け状態1010を参照
し、先ほどの送信処理要求の受け付けが成功したか否か
を確認する。
【0136】ステップ1340で受け付け状態1010
を確認した結果、受け付けが成功した場合には当該送信
処理要求処理を終了し、受け付けが失敗した場合にはス
テップ1330に戻って以下同様の処理を繰り返す。但
しユーザプログラムの処理手順によっては、この再要求
処理をすぐに繰り返さずに他の処理を実行してから再要
求処理を行っても良い。
【0137】次にネットワークアダプタ910がユーザ
プログラムから送信処理要求を受け付けた際の制御情報
ID保持手段913と受け付け判定部922の処理の流
れを図14を用いて説明する。
【0138】図14は本実施形態の受け付け判定部92
2の処理手順を示すフローチャートである。まずステッ
プ1410でネットワークアダプタ910は、ユーザプ
ログラムから発行された制御情報IDを示す単一の書き
込みを制御情報ID保持手段913で受け取る。
【0139】次にステップ1420でネットワークアダ
プタ910の受け付け判定部922は、受け付けFIF
Oメモリ920の空き状態を調べ、受け付けFIFOメ
モリ920に空き領域があればステップ1430に進
み、空き領域がなければステップ1450に進む。
【0140】ステップ1430で受け付け判定部922
は、制御情報ID保持手段913に保持された制御情報
IDに対応する通信制御情報格納領域961中の特定領
域の位置情報を通信制御情報位置保持手段912から読
み出し、その位置情報を用いて通信制御情報格納領域9
61中の前記制御情報IDに対応する通信制御情報の受
け付け状態1010に、受け付け成功の値として「1」
を書き込み、ステップ1440に進む。
【0141】ステップ1440で受け付け判定部922
は、制御情報ID保持手段913に保持された制御情報
IDを受け付けFIFOメモリ920の空き領域に格納
する。
【0142】またステップ1450で受け付け判定部9
22は、通信制御情報格納領域961中の前記制御情報
IDに対応する通信制御情報の受け付け状態1010
に、受け付け失敗の値として「0」を書き込んで処理を
終了する。
【0143】次にネットワークアダプタ910がユーザ
プログラムから送信処理要求を受け付けた際の状態回復
退避部921の処理の流れを図15を用いて説明する。
【0144】図15は本実施形態の状態回復退避部92
1の処理手順を示すフローチャートである。まずステッ
プ1510で状態回復退避部921は、ネットワーク送
受信部911の初期化を行う。続いてステップ1520
で状態回復退避部921は、制御情報IDを受け付けF
IFOメモリ920から取り出す。ここで受け付けFI
FOメモリ920が空の場合は、制御情報IDを示す書
き込みがユーザプログラムから発行されるまで待つ。
【0145】次にステップ1530で、受け付けFIF
Oメモリ920から取り出した制御情報IDに対応する
通信制御情報格納領域961中の特定領域の位置情報を
通信制御情報位置保持手段912から読み出し、その位
置情報を用いて通信制御情報格納領域961中の前記制
御情報IDに対応する通信制御情報をメインメモリ15
0から取得する。
【0146】なおここで取得する通信制御情報は、DM
A先頭アドレス1020、DMA長1030、ヘッダ情
報1040及びコマンド1050が通信制御情報であ
る。但し複数の領域からのDMA処理を行う為には複数
の情報構造を持つものとしても良い。
【0147】次にステップ1540で状態回復退避部9
21は、前記取得した通信制御情報をネットワーク送受
信部911に投入し、ステップ1550で処理完了を待
つ。
【0148】本実施形態の共有装置制御装置のステップ
1540及びステップ1550では、一回の制御のみ行
う例を示すが、複数の制御を行う為の情報を通信制御情
報として保持しても良い。その場合、状態回復退避部9
21は複数の制御を行う様にコマンド1050の解釈を
行いながら動作する。
【0149】次にステップ1560で状態回復退避部9
21は、ネットワーク送受信部911からの処理完了時
のステータス情報を取得する。ここで、複数の制御を行
う場合には各制御のステータス情報の履歴を各々とって
おく必要がある。
【0150】最後にステップ1570で状態回復退避部
921は、前記取得したステータス情報を、メインメモ
リ150の通信制御情報格納領域961中の前記制御情
報IDに対応する通信制御情報のステータス1060に
設定し、ステップ1520以下の処理を繰り返す。
【0151】以上説明した様に本実施形態の共有装置制
御装置によれば、単一の書き込みにより共有装置への処
理要求を受け付けてその処理要求を実行するので、OS
による排他制御を行うことなく複数のプログラムから共
有装置にアクセスすることが可能である。
【0152】(実施形態3)以下にI/O装置との間で
データ転送を行う為のSCSI(Small Comp
uter System Interface)アダプ
タを排他制御することなく複数のユーザプログラムから
利用可能とする実施形態3の共有装置制御装置について
説明する。
【0153】図16は本実施形態の共有装置制御装置の
概略構成を示す図である。図16に示す様に本実施形態
の計算機100は、SCSIアダプタ1610と、磁気
ディスク装置1690とを有している。
【0154】SCSIアダプタ1610は排他制御を行
うことなく複数のユーザプログラムからの転送処理要求
を受け付けてユーザ転送データ171を転送するアダプ
タである。磁気ディスク装置1690はSCSIアダプ
タ1610の制御により複数のユーザプログラムとの間
でユーザ転送データ171の転送を行うI/O装置であ
る。
【0155】SCSIアダプタ1610は、データ送受
信部1611と、SCSI制御情報位置保持手段161
2と、制御情報ID保持手段1613と、バスインタフ
ェース制御部1614と、受け付けFIFOメモリ16
20と、状態回復退避部1621と、受け付け判定部1
622とを有している。
【0156】データ送受信部1611は磁気ディスク装
置1690との間で複数のユーザプログラムからのユー
ザ転送データ171の転送を行う回路である。SCSI
制御情報位置保持手段1612はSCSI制御情報格納
領域1661中の各SCSI制御情報が格納された特定
領域の位置を制御情報IDに対応付けて保持するレジス
タである。
【0157】制御情報ID保持手段1613はSCSI
制御情報格納領域1661中の特定領域を示す制御情報
IDを単一の書き込みにより保持するレジスタ等の保持
手段である。
【0158】バスインタフェース制御部1614はSC
SIアダプタ1610をシステムバス180に接続する
制御部である。受け付けFIFOメモリ1620は複数
の制御情報IDを格納する受け付け制御情報ID格納手
段であり、複数の制御情報IDを先入れ先出しで処理す
るRAM等のメモリである。
【0159】状態回復退避部1621は受け付けFIF
Oメモリ1620中の制御情報IDに対応する特定領域
のSCSI制御情報をSCSI制御情報格納領域166
1から取得して転送処理を行い、その処理結果を示す情
報をSCSI制御情報格納領域1661中の前記制御情
報IDに対応する特定領域に書き込む回路である。
【0160】受け付け判定部1622は受け付けFIF
Oメモリ1620の空き領域の有無に応じて当該転送処
理の受け付け結果を示す情報をSCSI制御情報格納領
域1661中の当該制御情報IDに対応する特定領域に
書き込み、受け付けFIFOメモリ1620の空き領域
に制御情報ID保持手段1613中の制御情報IDを格
納する回路である。
【0161】メインメモリ150は、SCSI制御情報
格納領域1661と、制御情報ID要求解放処理部16
63とを有している。
【0162】SCSI制御情報格納領域1661はSC
SIアダプタ1610で転送処理を行う為の複数のSC
SI制御情報を格納する制御情報格納領域である。制御
情報ID要求解放処理部1663はユーザプログラムか
らの制御情報IDの要求に対してSCSI制御情報格納
領域1661中の未使用領域の制御情報IDを応答し、
呼出し側のユーザプログラムのユーザ空間170での当
該制御情報IDに対応する特定領域の割り付けや解放を
行う処理部である。
【0163】図16はSCSIアダプタ1610によっ
て通信を行う計算機システムの一例を示している。前記
説明した以外の各部の構成は図1に示したものと同様と
する。
【0164】SCSIアダプタ1610は、複数のユー
ザプログラムからの処理要求を排他制御を行うことなく
受け付けることが可能である。これを実現する為に、転
送を行う為に必要なSCSI制御情報の本体はメインメ
モリ150上のSCSI制御情報格納領域1661に置
かれる。
【0165】ユーザプログラムは、SCSI制御情報格
納領域1661中の特定領域を示す制御情報IDを有す
る単一の書き込みを発行し、SCSIアダプタ1610
からのこの制御情報IDに対応する受け付け状況のメイ
ンメモリ150への書き込みにより、処理要求の成否を
確認する。
【0166】ユーザプログラムからのSCSIアダプタ
1610への書き込みが単一の書き込みである為、SC
SIアダプタ1610への書き込みは一度に単一のユー
ザプログラムのみから行われることとなり、複数のユー
ザプログラム間での排他制御は必要ではなくなる。
【0167】受け付け判定部1622は、SCSIアダ
プタ1610に対して発行された処理要求を行う書き込
みを受け付けて、後で処理する為に受け付けFIFOメ
モリ1620に取り込むことができるか否かを判定し、
受け付けFIFOメモリ1620に制御情報IDを保持
する為の空があるかないかによって値の異なる受け付け
状態情報(例えば、空がある場合には「1」、空がない
場合には「0」となる)を、制御情報ID保持手段16
13の内容である制御情報ID及びSCSI制御情報位
置保持手段1612から得られるSCSI制御情報格納
領域1661内の特定の位置に書き戻す処理を行う回路
であり、例えばTTLやCMOS等の論理によって構成
される。
【0168】状態回復退避部1621は、受け付けFI
FOメモリ1620に貯えられた制御情報IDの内容と
SCSI制御情報位置保持手段1612に保持された位
置情報とから、メインメモリ150上にあるSCSI制
御情報をDMA処理により取得してデータ送受信部16
11に設定して転送処理を行い、その転送処理の結果を
メインメモリ150上のSCSI制御情報格納領域16
61に書き戻す回路であり、例えばTTLやCMOS等
の論理とRAMによって構成される。
【0169】制御情報ID要求解放処理部1663は、
ユーザプログラムからの制御情報IDの要求に対して、
SCSI制御情報格納領域1661中の未使用の制御情
報IDの番号及び該制御情報IDに対応する領域のアド
レスを呼出し側のプロセスのユーザ空間170に割り付
ける処理を行う。OS空間160内のデータ構造として
SCSI制御情報格納領域1661があり、この詳細を
図17に示す。
【0170】図17は本実施形態のSCSI制御情報格
納領域1661の一例を示す図である。図17に示す様
に本実施形態のSCSI制御情報格納領域1661は、
受け付け状態1710と、DMA先頭アドレス1720
と、DMA長1730と、ヘッダ情報1740と、コマ
ンド1750と、ステータス1760と、管理テーブル
1770とを有している。
【0171】受け付け状態1710はユーザプログラム
が要求した転送処理のSCSIアダプタ1610での受
け付け結果を示す情報である。DMA先頭アドレス17
20はDMA処理によって転送されるユーザ転送データ
171の先頭アドレスであり、状態回復退避部1621
がデータ送受信部1611に設定するアドレスである。
【0172】DMA長1730は前記DMA処理を行う
データ長を示す情報である。ヘッダ情報1740はユー
ザ転送データ171を転送するネットワークパケットの
ヘッダの情報である。コマンド1750は複数の転送処
理を連続して行う等の処理内容を指示する情報である。
【0173】ステータス1760はユーザプログラムが
要求した転送処理のSCSIアダプタ1610での処理
結果を示すステータス情報である。管理テーブル177
0はSCSI制御情報格納領域1661の各領域の使用
状況を示すテーブルである。
【0174】SCSI制御情報格納領域1661は、ユ
ーザプログラムが通信制御を行う際に書き込みを行う制
御ブロックである受け付け状態1710からステータス
1760のテーブルと、それらを管理する管理テーブル
1770とから構成されている。なお図中の受け付け状
態1710からステータス1760に付加された数字は
対応するN個の領域を識別する整数を表している。
【0175】上記受け付け状態1710からステータス
1760までの制御ブロックと独立に存在する管理テー
ブル1770は、OSが管理する資源で各制御情報ID
の使用状況を示しており、OSが更新するテーブルであ
る。管理テーブル1770以外の他の資源はユーザプロ
グラム間での共有情報を有していない為、一度各ユーザ
プログラムに割り当てられた後には排他制御を行う必要
はない。
【0176】ユーザ空間170は各ユーザプログラム毎
に分かれており、転送対象となるユーザ転送データ17
1が格納された領域は、OSのメモリ常駐処理部162
を介してDMA転送前にメインメモリ150に常駐され
る様に設定される。
【0177】また制御情報ID要求解放処理部1663
の呼出し時にSCSI制御情報格納領域1661の特定
領域が呼出し側のユーザプログラムの空間に割り当てら
れる。この割り当ては仮想メモリによって実現すること
ができる。
【0178】以下、ユーザプログラムがSCSIアダプ
タ1610で通信を行う際に制御情報IDを要求する処
理の流れを図18を用いて説明する。
【0179】図18は本実施形態の制御情報ID要求処
理の処理手順を示すフローチャートである。まずステッ
プ1810でユーザプログラムはOSの制御情報ID要
求解放処理部1663に対して制御情報ID要求を発行
する。
【0180】次にステップ1820で制御情報ID要求
解放処理部1663は、SCSI制御情報格納領域16
61の管理テーブル1770において未使用の制御情報
IDを検索する。
【0181】ステップ1830で前記検索結果を調べ、
SCSI制御情報格納領域1661の管理テーブル17
70中に未使用の制御情報IDがある場合にはステップ
1850に進み、未使用の制御情報IDを取得して前記
制御情報ID要求を発行したユーザプログラムに返し、
当該制御情報IDに対応する特定領域を前記ユーザプロ
グラムのユーザ空間170に割り当てる。その際に管理
テーブル1770に前記ユーザプログラムのプロセスI
Dと、当該制御情報IDが使用されていることを示す情
報を設定する。
【0182】ステップ1830で前記検索結果を調べた
結果、未使用の制御情報IDが無い場合にはステップ1
840に進み、前記ユーザプログラムに制御情報ID無
しを通知する。
【0183】以下、ユーザプログラムがSCSIアダプ
タ1610で通信を行った後に制御情報IDの解放を要
求する処理の流れを図19を用いて説明する。
【0184】図19は本実施形態の制御情報ID解放要
求処理の処理手順を示すフローチャートである。まずス
テップ1910でユーザプログラムは制御情報IDを指
定してOSの制御情報ID要求解放処理部1663に対
して当該制御情報IDの解放を要求する。
【0185】次にステップ1920で制御情報ID要求
解放処理部1663は、SCSI制御情報格納領域16
61の管理テーブル1770に対して、解放要求のあっ
た制御情報IDのテーブルを検索する。
【0186】ステップ1930で前記検索結果を調べ、
制御情報ID解放要求を発行したユーザプログラムが当
該制御情報IDの利用者であるかどうかを確認する。こ
の確認は、呼出し側のユーザプログラムのプロセスID
と管理テーブル1770に設定されているプロセスID
が一致するか否かによって行う。
【0187】ステップ1930で前記検索結果を調べた
結果、該当制御情報ID解放要求が正しいユーザプログ
ラムからのものである場合にはステップ1950に進
み、該当制御情報IDを解放し、SCSI制御情報格納
領域1661の該当領域をユーザプログラムの仮想空間
から解放する。その際に管理テーブル1770から前記
ユーザプログラムのプロセスIDと当該制御情報IDが
使用されていることを示す情報を削除する。
【0188】ステップ1930で前記検索結果を調べた
結果、該当制御情報ID解放要求が正しいユーザプログ
ラムからのものでない場合にはステップ1940に進
み、前記ユーザプログラムに該当制御情報ID無しを通
知する。
【0189】以下、ユーザプログラムがSCSIアダプ
タ1610に対してユーザ転送データ171の転送処理
要求を行う際の処理の流れを図20を用いて説明する。
【0190】図20は本実施形態の転送処理要求の処理
手順を示すフローチャートである。まずステップ201
0でユーザプログラムは、転送対象となるユーザ転送デ
ータ171が格納された領域をOSのメモリ常駐処理部
162によりメインメモリ150に常駐させる。
【0191】次にステップ2020でユーザプログラム
は、制御情報ID要求処理を行って制御情報ID要求解
放処理部1663から制御情報IDを取得し、SCSI
制御情報格納領域1661の前記取得した制御情報ID
に対応する特定領域に、ユーザ転送データ171のDM
A先頭アドレス1720、DMA長1730、ヘッダ情
報1740及びコマンド1750を書き込む。これらの
処理の対象となる空間はユーザ空間170に割り当てら
れており、ユーザプログラムが排他的にアクセスするこ
とが保証されている為、排他制御を行う必要はない。
【0192】次にステップ2030でユーザプログラム
は、前記制御情報IDを示す単一の書き込みをSCSI
アダプタ1610に発行する。制御情報IDを示す書き
込みは単一の書き込みである為、ここでも他のユーザプ
ログラムとの排他制御を行う必要はない。
【0193】SCSIアダプタ1610は、この制御情
報IDを示す書き込みに対してSCSI制御情報格納領
域1661の前記制御情報IDに対応する特定領域に受
け付け状態1710の書き込みを行う。
【0194】続いてステップ2040でユーザプログラ
ムは、SCSI制御情報格納領域1661の前記制御情
報IDに対応する特定領域中の受け付け状態1710を
参照し、先ほどの処理要求の受け付けが成功したか否か
を確認する。
【0195】ステップ2040で受け付け状態1710
を確認した結果、受け付けが成功した場合には当該処理
要求処理を終了し、受け付けが失敗した場合にはステッ
プ2030に戻って以下同様の処理を繰り返す。但しユ
ーザプログラムの処理手順によっては、この再要求処理
をすぐに繰り返さずに他の処理を実行してから再要求処
理を行っても良い。
【0196】次にSCSIアダプタ1610がユーザプ
ログラムから転送処理要求を受け付けた際の制御情報I
D保持手段1613と受け付け判定部1622の処理の
流れを図21を用いて説明する。
【0197】図21は本実施形態の受け付け判定部16
22の処理手順を示すフローチャートである。まずステ
ップ2110でSCSIアダプタ1610は、ユーザプ
ログラムから発行された制御情報IDを示す単一の書き
込みを制御情報ID保持手段1613で受け取る。
【0198】次にステップ2120でSCSIアダプタ
1610の受け付け判定部1622は、受け付けFIF
Oメモリ1620の空き状態を調べ、受け付けFIFO
メモリ1620に空き領域があればステップ2130に
進み、空き領域がなければステップ2150に進む。
【0199】ステップ2130で受け付け判定部162
2は、制御情報ID保持手段1613に保持された制御
情報IDに対応するSCSI制御情報格納領域1661
中の特定領域の位置情報をSCSI制御情報位置保持手
段1612から読み出し、その位置情報を用いてSCS
I制御情報格納領域1661中の前記制御情報IDに対
応するSCSI制御情報の受け付け状態1710に、受
け付け成功の値として「1」を書き込み、ステップ21
40に進む。
【0200】ステップ2140で受け付け判定部162
2は、制御情報ID保持手段1613に保持された制御
情報IDを受け付けFIFOメモリ1620の空き領域
に格納する。
【0201】またステップ2150で受け付け判定部1
622は、SCSI制御情報格納領域1661中の前記
制御情報IDに対応するSCSI制御情報の受け付け状
態1710に、受け付け失敗の値として「0」を書き込
んで処理を終了する。
【0202】次にSCSIアダプタ1610がユーザプ
ログラムから転送処理要求を受け付けた際の状態回復退
避部1621の処理の流れを図22を用いて説明する。
【0203】図22は本実施形態の状態回復退避部16
21の処理手順を示すフローチャートである。まずステ
ップ2210で状態回復退避部1621は、データ送受
信部1611の初期化を行う。続いてステップ2220
で状態回復退避部1621は、制御情報IDを受け付け
FIFOメモリ1620から取り出す。ここで受け付け
FIFOメモリ1620が空の場合は、制御情報IDを
示す書き込みがユーザプログラムから発行されるまで待
つ。
【0204】次にステップ2230で、受け付けFIF
Oメモリ1620から取り出した制御情報IDに対応す
るSCSI制御情報格納領域1661中の特定領域の位
置情報をSCSI制御情報位置保持手段1612から読
み出し、その位置情報を用いてSCSI制御情報格納領
域1661中の前記制御情報IDに対応するSCSI制
御情報をメインメモリ150から取得する。
【0205】なおここで取得するSCSI制御情報は、
DMA先頭アドレス1720、DMA長1730、ヘッ
ダ情報1740及びコマンド1750がSCSI制御情
報である。但し複数の領域からのDMA処理を行う為に
は複数の情報構造を持つものとしても良い。
【0206】次にステップ2240で状態回復退避部1
621は、前記取得したSCSI制御情報をデータ送受
信部1611に投入し、ステップ2250で処理完了を
待つ。
【0207】本実施形態の共有装置制御装置のステップ
2240及びステップ2250では、一回の制御のみ行
う例を示すが、複数の制御を行う為の情報をSCSI制
御情報として保持しても良い。その場合、状態回復退避
部1621は複数の制御を行う様にコマンド1750の
解釈を行いながら動作する。
【0208】次にステップ2260で状態回復退避部1
621は、データ送受信部1611からの処理完了時の
ステータス情報を取得する。ここで、複数の制御を行う
場合には各制御のステータス情報の履歴を各々とってお
く必要がある。
【0209】最後にステップ2270で状態回復退避部
1621は、前記取得したステータス情報を、メインメ
モリ150のSCSI制御情報格納領域1661中の前
記制御情報IDに対応するSCSI制御情報のステータ
ス1760に設定し、ステップ2220以下の処理を繰
り返す。
【0210】以上説明した様に本実施形態の共有装置制
御装置によれば、単一の書き込みにより共有装置への処
理要求を受け付けてその処理要求を実行するので、OS
による排他制御を行うことなく複数のプログラムから共
有装置にアクセスすることが可能である。
【0211】
【発明の効果】本発明によれば単一の書き込みにより共
有装置への処理要求を受け付けてその処理要求を実行す
るので、OSによる排他制御を行うことなく複数のプロ
グラムから共有装置にアクセスすることが可能である。
【図面の簡単な説明】
【図1】実施形態1の共有装置制御装置の概略構成を示
す図である。
【図2】実施形態1の回線制御情報格納領域161の一
例を示す図である。
【図3】実施形態1の転送ネットワークパケットの構成
例を示す図である。
【図4】実施形態1の回線要求処理の処理手順を示すフ
ローチャートである。
【図5】実施形態1の回線解放要求処理の処理手順を示
すフローチャートである。
【図6】実施形態1の送信処理要求の処理手順を示すフ
ローチャートである。
【図7】実施形態1の受け付け判定部122の処理手順
を示すフローチャートである。
【図8】実施形態1の状態回復退避部121の処理手順
を示すフローチャートである。
【図9】実施形態2の共有装置制御装置の概略構成を示
す図である。
【図10】実施形態2の通信制御情報格納領域961の
一例を示す図である。
【図11】実施形態2の制御情報ID要求処理の処理手
順を示すフローチャートである。
【図12】実施形態2の制御情報ID解放要求処理の処
理手順を示すフローチャートである。
【図13】実施形態2の送信処理要求の処理手順を示す
フローチャートである。
【図14】実施形態2の受け付け判定部922の処理手
順を示すフローチャートである。
【図15】実施形態2の状態回復退避部921の処理手
順を示すフローチャートである。
【図16】実施形態3の共有装置制御装置の概略構成を
示す図である。
【図17】実施形態3のSCSI制御情報格納領域16
61の一例を示す図である。
【図18】実施形態3の制御情報ID要求処理の処理手
順を示すフローチャートである。
【図19】実施形態3の制御情報ID解放要求処理の処
理手順を示すフローチャートである。
【図20】実施形態3の転送処理要求の処理手順を示す
フローチャートである。
【図21】実施形態3の受け付け判定部1622の処理
手順を示すフローチャートである。
【図22】実施形態3の状態回復退避部1621の処理
手順を示すフローチャートである。
【符号の説明】
100…計算機、130…プロセッサ、150…メイン
メモリ、110…多重化ネットワークアダプタ、131
…キーボード、132…ディスプレイ装置、133…磁
気ディスク装置、134…CD−ROM装置、180…
システムバス、111…ネットワーク多重化送受信部、
112…回線制御情報位置保持手段、113…回線ID
保持手段、114…バスインタフェース制御部、120
…受け付けFIFOメモリ、121…状態回復退避部、
122…受け付け判定部、160…OS空間、161…
回線制御情報格納領域、162…メモリ常駐処理部、1
63…回線要求解放処理部、170…ユーザ空間、17
1…ユーザ転送データ、190…ネットワーク、210
…受け付け状態、220…DMA先頭アドレス、230
…DMA長、240…ヘッダ情報、250…コマンド、
260…ステータス、270…管理テーブル、310…
タイプ、320…送信元アドレス、330…受信先アド
レス、910…ネットワークアダプタ、911…ネット
ワーク送受信部、912…通信制御情報位置保持手段、
913…制御情報ID保持手段、914…バスインタフ
ェース制御部、920…受け付けFIFOメモリ、92
1…状態回復退避部、922…受け付け判定部、961
…通信制御情報格納領域、963…制御情報ID要求解
放処理部、1010…受け付け状態、1020…DMA
先頭アドレス、1030…DMA長、1040…ヘッダ
情報、1050…コマンド、1060…ステータス、1
070…管理テーブル、1610…SCSIアダプタ、
1690…磁気ディスク装置、1611…データ送受信
部、1612…SCSI制御情報位置保持手段、161
3…制御情報ID保持手段、1614…バスインタフェ
ース制御部、1620…受け付けFIFOメモリ、16
21…状態回復退避部、1622…受け付け判定部、1
661…SCSI制御情報格納領域、1663…制御情
報ID要求解放処理部、1710…受け付け状態、17
20…DMA先頭アドレス、1730…DMA長、17
40…ヘッダ情報、1750…コマンド、1760…ス
テータス、1770…管理テーブル。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 北野 昌宏 神奈川県海老名市下今泉810番地 株式会 社日立製作所オフィスシステム事業部内

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 複数のプログラムで共有される共有装置
    を制御する共有装置制御方法において、 共有装置で特定の処理を行う為の制御情報を制御情報格
    納領域中の特定領域に格納し、前記制御情報を格納した
    特定領域を示す制御情報IDを単一の書き込みにより制
    御情報ID保持手段に保持し、 複数の制御情報IDを格納する受け付け制御情報ID格
    納手段の空き領域に前記制御情報ID保持手段中の制御
    情報IDを格納し、前記受け付け制御情報ID格納手段
    中の制御情報IDに対応する特定領域の制御情報を制御
    情報格納領域から取得して前記特定の処理を行うことを
    特徴とする共有装置制御方法。
  2. 【請求項2】 前記受け付け制御情報ID格納手段の空
    き領域の有無に応じて当該処理の受け付け結果を示す情
    報を制御情報格納領域中の前記制御情報IDに対応する
    特定領域に格納することを特徴とする請求項1に記載さ
    れた共有装置制御方法。
  3. 【請求項3】 前記制御情報IDに対応する特定領域の
    制御情報を制御情報格納領域から取得して前記特定の処
    理を行った後に、その処理結果を示す情報を制御情報格
    納領域中の前記制御情報IDに対応する特定領域に格納
    することを特徴とする請求項1または請求項2のいずれ
    かに記載された共有装置制御方法。
  4. 【請求項4】 複数のプログラムで共有される共有装置
    を制御する共有装置制御装置において、 共有装置で特定の処理を行う為の制御情報を格納した制
    御情報格納領域中の特定領域を示す制御情報IDを単一
    の書き込みにより保持する制御情報ID保持手段と、複
    数の制御情報IDを格納する受け付け制御情報ID格納
    手段と、 前記受け付け制御情報ID格納手段の空き領域に前記制
    御情報ID保持手段中の制御情報IDを格納する受け付
    け判定部と、前記受け付け制御情報ID格納手段中の制
    御情報IDに対応する特定領域の制御情報を制御情報格
    納領域から取得して前記特定の処理を行う状態回復退避
    部とを備えることを特徴とする共有装置制御装置。
  5. 【請求項5】 前記受け付け判定部は、前記受け付け制
    御情報ID格納手段の空き領域の有無に応じて当該処理
    の受け付け結果を示す情報を制御情報格納領域中の前記
    制御情報IDに対応する特定領域に格納するものである
    ことを特徴とする請求項4に記載された共有装置制御装
    置。
  6. 【請求項6】 前記状態回復退避部は、前記制御情報I
    Dに対応する特定領域の制御情報を制御情報格納領域か
    ら取得して前記特定の処理を行った後に、その処理結果
    を示す情報を制御情報格納領域中の前記制御情報IDに
    対応する特定領域に格納するものであることを特徴とす
    る請求項4または請求項5のいずれかに記載された共有
    装置制御装置。
JP9315209A 1997-11-17 1997-11-17 共有装置制御方法及びその実施装置 Pending JPH11149387A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9315209A JPH11149387A (ja) 1997-11-17 1997-11-17 共有装置制御方法及びその実施装置
US09/192,218 US6477560B1 (en) 1997-11-17 1998-11-16 Method and apparatus for controlling resource

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9315209A JPH11149387A (ja) 1997-11-17 1997-11-17 共有装置制御方法及びその実施装置

Publications (1)

Publication Number Publication Date
JPH11149387A true JPH11149387A (ja) 1999-06-02

Family

ID=18062724

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9315209A Pending JPH11149387A (ja) 1997-11-17 1997-11-17 共有装置制御方法及びその実施装置

Country Status (2)

Country Link
US (1) US6477560B1 (ja)
JP (1) JPH11149387A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7370123B2 (en) 2004-10-12 2008-05-06 Nec Electronics Corporation Information processing apparatus

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4176973B2 (ja) * 2001-05-15 2008-11-05 アルパイン株式会社 受信機
US7207041B2 (en) * 2001-06-28 2007-04-17 Tranzeo Wireless Technologies, Inc. Open platform architecture for shared resource access management
US7181744B2 (en) * 2002-10-24 2007-02-20 International Business Machines Corporation System and method for transferring data between virtual machines or other computer entities
US7299468B2 (en) * 2003-04-29 2007-11-20 International Business Machines Corporation Management of virtual machines to utilize shared resources
US7251815B2 (en) * 2003-04-29 2007-07-31 International Business Machines Corporation Multiple virtual machines sharing processor and work queue in memory having program/dispatch functions for assigning and accessing work items while the virtual machine was not idle
JP4012517B2 (ja) 2003-04-29 2007-11-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 仮想計算機環境におけるロックの管理
US20050267958A1 (en) * 2004-04-28 2005-12-01 International Business Machines Corporation Facilitating management of resources by tracking connection usage of the resources
US20050257223A1 (en) * 2004-05-13 2005-11-17 International Business Machines Corporation Method, system, and computer program product for returning constant values as per-process variables

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02195453A (ja) * 1989-01-25 1990-08-02 Toshiba Corp ファイルアクセス制御方式
JP3385091B2 (ja) * 1994-05-13 2003-03-10 三菱電機株式会社 計算機間の排他制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7370123B2 (en) 2004-10-12 2008-05-06 Nec Electronics Corporation Information processing apparatus

Also Published As

Publication number Publication date
US6477560B1 (en) 2002-11-05

Similar Documents

Publication Publication Date Title
US5991797A (en) Method for directing I/O transactions between an I/O device and a memory
JP3605573B2 (ja) ネットワーク処理システムにおけるメモリ管理方法およびネットワーク処理システム
US6397316B2 (en) System for reducing bus overhead for communication with a network interface
USRE38134E1 (en) System for communications where first priority data transfer is not disturbed by second priority data transfer and where allocated bandwidth is removed when process terminates abnormally
US5907684A (en) Independent channel coupled to be shared by multiple physical processing nodes with each node characterized as having its own memory, CPU and operating system image
US5530905A (en) Temporary state preservation for a distributed file service which purges virtual circuit control information after expiration of time limit of inactivity
US7934220B2 (en) Method and system for optimizing file table usage
KR100326864B1 (ko) 네트워크통신방법및네트워크시스템
US6728803B1 (en) Interconnection architecture for managing multiple low bandwidth connections over a high bandwidth link
JP3165022B2 (ja) コンピュータ・システム及びメッセージ転送方法
US5781741A (en) Message communications system in a parallel computer
US20030097488A1 (en) Efficient method for determining record based I/O on top of streaming protocols
US20040252709A1 (en) System having a plurality of threads being allocatable to a send or receive queue
JPH03130863A (ja) 制御要素転送システム
JP4788124B2 (ja) データ処理システム
JPH08241263A (ja) I/o要求処理計算機システム及び処理方法
US20060059244A1 (en) Communication mechanism and method for easily transferring information between processes
US11792272B2 (en) Establishment of socket connection in user space
US6430645B1 (en) Fibre channel and SCSI address mapping for multiple initiator support
JPH10143461A (ja) 周辺装置システム
JPH11149387A (ja) 共有装置制御方法及びその実施装置
US20060095608A1 (en) Buffer utilization in a frame based communication system
US6345329B1 (en) Method and apparatus for exchanging data using a queued direct input-output device
US6332171B1 (en) Self-contained queues with associated control information for receipt and transfer of incoming and outgoing data using a queued direct input-output device
JP2001237868A (ja) ファイバチャネルノードにおいて効率の良いi/o操作を達成するための方法及びシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041102

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070219

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070814