JPH06133006A - データ分割方式 - Google Patents
データ分割方式Info
- Publication number
- JPH06133006A JPH06133006A JP4284180A JP28418092A JPH06133006A JP H06133006 A JPH06133006 A JP H06133006A JP 4284180 A JP4284180 A JP 4284180A JP 28418092 A JP28418092 A JP 28418092A JP H06133006 A JPH06133006 A JP H06133006A
- Authority
- JP
- Japan
- Prior art keywords
- data
- user data
- encoded
- length
- buffer
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 239000000872 buffer Substances 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 45
- 238000004891 communication Methods 0.000 claims abstract description 40
- 230000008569 process Effects 0.000 claims abstract description 20
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 238000005192 partition Methods 0.000 claims 1
- 238000007726 management method Methods 0.000 abstract description 26
- 230000005540 biological transmission Effects 0.000 abstract description 11
- 238000004364 calculation method Methods 0.000 abstract description 11
- 238000013500 data storage Methods 0.000 abstract description 10
- 230000003213 activating effect Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000007796 conventional method Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
- Communication Control (AREA)
Abstract
(57)【要約】
【目的】データ送信時のAP空間から通信管理空間への
ユーザデータのコピーと、符号化処理とデータ分割処理
を兼ねて行なうことでレイヤ処理におけるデータ分割処
理でデータムーブをしない。 【構成】通信管理空間103上のデータ分割処理手段1
30が、OS空間102にある符号化後データ長算出手段
120により符号化後のユーザデータ長を得る。データ
分割処理手段130は、符号化後のユーザデータ長に基
づいて符号化後ユーザデータ格納手段150を制御し、
符号化後ユーザデータ格納手段150を構成するバッフ
ァ単位151の先頭アドレスと符号化前のユーザデータ
140aとを指定して符号化データムーブ手段120を
起動することにより、最下位レイヤ層の最大データ単位
長以下のデータサイズに各バッファ単位151へ分割し
て符号化後のユーザデータ140bを格納する。
ユーザデータのコピーと、符号化処理とデータ分割処理
を兼ねて行なうことでレイヤ処理におけるデータ分割処
理でデータムーブをしない。 【構成】通信管理空間103上のデータ分割処理手段1
30が、OS空間102にある符号化後データ長算出手段
120により符号化後のユーザデータ長を得る。データ
分割処理手段130は、符号化後のユーザデータ長に基
づいて符号化後ユーザデータ格納手段150を制御し、
符号化後ユーザデータ格納手段150を構成するバッフ
ァ単位151の先頭アドレスと符号化前のユーザデータ
140aとを指定して符号化データムーブ手段120を
起動することにより、最下位レイヤ層の最大データ単位
長以下のデータサイズに各バッファ単位151へ分割し
て符号化後のユーザデータ140bを格納する。
Description
【0001】
【産業上の利用分野】本発明は、データ通信システムの
データ分割方式に係り、特に、計算機に依存したローカ
ルな形式で表現されたユーザデータを計算機に依存しな
いネットワークワイドな形式への符号化処理をする通信
管理、例えば、開放型システム間相互接続(OSI)の
プレゼンテーション(以下PL)層以上のプロトコルを
処理する通信管理が、仮想記憶方式のオペレーティング
システム(以下OS)上で実行されるときの、送信時の
データ分割方式に関する。
データ分割方式に係り、特に、計算機に依存したローカ
ルな形式で表現されたユーザデータを計算機に依存しな
いネットワークワイドな形式への符号化処理をする通信
管理、例えば、開放型システム間相互接続(OSI)の
プレゼンテーション(以下PL)層以上のプロトコルを
処理する通信管理が、仮想記憶方式のオペレーティング
システム(以下OS)上で実行されるときの、送信時の
データ分割方式に関する。
【0002】
【従来の技術】通常、仮想記憶方式のOSが走る計算機
システムでは、ファイル転送プログラムのようなアプリ
ケーションプログラム(以下AP)が動作するメモリ空
間(AP空間)と、OSIプロトコルのような階層化され
た通信プロトコルを処理する通信管理プログラムが動作
するメモリ空間(通信管理空間)とは、異なるメモリ空
間である。そして、これらのメモリ空間は、OSによっ
て管理されている。従って、APが処理しているユーザ
データを送信する場合は、ユーザデータがアプリケーシ
ョン空間上のバッファに格納されているため、メモリ空
間を管理しているOSによってユーザデータを通信管理
の空間上のバッファにデータムーブしてから後にはじめ
て通信管理プログラムのユーザデータに対するプロトコ
ル処理が可能となる。
システムでは、ファイル転送プログラムのようなアプリ
ケーションプログラム(以下AP)が動作するメモリ空
間(AP空間)と、OSIプロトコルのような階層化され
た通信プロトコルを処理する通信管理プログラムが動作
するメモリ空間(通信管理空間)とは、異なるメモリ空
間である。そして、これらのメモリ空間は、OSによっ
て管理されている。従って、APが処理しているユーザ
データを送信する場合は、ユーザデータがアプリケーシ
ョン空間上のバッファに格納されているため、メモリ空
間を管理しているOSによってユーザデータを通信管理
の空間上のバッファにデータムーブしてから後にはじめ
て通信管理プログラムのユーザデータに対するプロトコ
ル処理が可能となる。
【0003】さて、階層化された通信プロトコル処理に
おける送信データのデータ分割方式に関しては(図4参
照)、例えば、特開平3−274847 号公報に示されている
ように、一つのバッファ長が最下位レイヤの最大データ
単位長以上のバッファを持ち、送信要求で示されたユー
ザデータ長から、以後行なうプロトコル処理の結果必要
となるバッファ数を予め決定し、最下位レイヤの最大デ
ータ単位長以下に送信データを分割し、各バッファに格
納し、これらを例えば、チェーンで結合することによっ
て、下位レイヤのデータ分割処理を軽減するという手法
がある。本従来方式におけるバッファ数の決定は、各層
のプロトコル処理によって付加されるヘッダ長を加算し
たデータ単位の長さが、最下位レイヤ層の最大データ単
位長以下になるように決めている。又、各レイヤでのデ
ータ分割処理は、バッファのチェーンを操作することに
より、データコピーを行なわないデータ分割処理を実現
している。
おける送信データのデータ分割方式に関しては(図4参
照)、例えば、特開平3−274847 号公報に示されている
ように、一つのバッファ長が最下位レイヤの最大データ
単位長以上のバッファを持ち、送信要求で示されたユー
ザデータ長から、以後行なうプロトコル処理の結果必要
となるバッファ数を予め決定し、最下位レイヤの最大デ
ータ単位長以下に送信データを分割し、各バッファに格
納し、これらを例えば、チェーンで結合することによっ
て、下位レイヤのデータ分割処理を軽減するという手法
がある。本従来方式におけるバッファ数の決定は、各層
のプロトコル処理によって付加されるヘッダ長を加算し
たデータ単位の長さが、最下位レイヤ層の最大データ単
位長以下になるように決めている。又、各レイヤでのデ
ータ分割処理は、バッファのチェーンを操作することに
より、データコピーを行なわないデータ分割処理を実現
している。
【0004】
【発明が解決しようとする課題】上述した従来のデータ
分割方式では、特に、予めユーザデータ長から必要とな
るバッファ数を決定する処理において、ユーザデータ長
が変化しないことが前提となっており、APと通信管理
がOSI参照モデルの第5層であるトランスポート層
(以下TL)以下でインタフェースする場合に実施でき
る方式である。しかし、OSIでは、TLの上位層も規
定されており、例えば、最上位層(第7層)であるアプ
リケーション層(以下AL)でAPと通信管理がインタ
フェースする場合では、従来方式を実施できない。その
理由は、OSI参照モデルの第6層であるプレゼンテー
ション層(以下PL)では、抽象構文表記法1(AS
N.1)で表記されるユーザデータ(抽象構文:実装上
は抽象構文をコンパイルした結果であるローカルなコー
ド)をネットワークワイドなコード(転送構文)へASN.
1符号化規則により変換するため、ユーザデータ長がこ
の符号化処理により変化してしまうからである。故に、
従来の方式では、TLより上位のレイヤでAPと通信管
理がインタフェースする場合、データコピーと分割処理
を一括して行なうことが出来ないという問題点があっ
た。
分割方式では、特に、予めユーザデータ長から必要とな
るバッファ数を決定する処理において、ユーザデータ長
が変化しないことが前提となっており、APと通信管理
がOSI参照モデルの第5層であるトランスポート層
(以下TL)以下でインタフェースする場合に実施でき
る方式である。しかし、OSIでは、TLの上位層も規
定されており、例えば、最上位層(第7層)であるアプ
リケーション層(以下AL)でAPと通信管理がインタ
フェースする場合では、従来方式を実施できない。その
理由は、OSI参照モデルの第6層であるプレゼンテー
ション層(以下PL)では、抽象構文表記法1(AS
N.1)で表記されるユーザデータ(抽象構文:実装上
は抽象構文をコンパイルした結果であるローカルなコー
ド)をネットワークワイドなコード(転送構文)へASN.
1符号化規則により変換するため、ユーザデータ長がこ
の符号化処理により変化してしまうからである。故に、
従来の方式では、TLより上位のレイヤでAPと通信管
理がインタフェースする場合、データコピーと分割処理
を一括して行なうことが出来ないという問題点があっ
た。
【0005】また、仮想記憶方式のOSが走る計算機シ
ステムでは(図5参照)、AP空間上のユーザデータを
OSが提供するデータムーブ処理501により通信管理
上のバッファにデータムーブし、その後、符号化処理5
02を行なうので、符号化前のユーザデータと符号化後
のユーザデータを格納するバッファ(503a,503b)を
双方用意しなければならないため、通信管理が確保する
バッファが大きいという問題点もあった。
ステムでは(図5参照)、AP空間上のユーザデータを
OSが提供するデータムーブ処理501により通信管理
上のバッファにデータムーブし、その後、符号化処理5
02を行なうので、符号化前のユーザデータと符号化後
のユーザデータを格納するバッファ(503a,503b)を
双方用意しなければならないため、通信管理が確保する
バッファが大きいという問題点もあった。
【0006】本発明は、このような点を改善するもので
あり、ユーザデータ長が変化する場合でも、データコピ
ーと分割処理を一括して行なうユーザデータの分割方式
を提供することを目的としている。
あり、ユーザデータ長が変化する場合でも、データコピ
ーと分割処理を一括して行なうユーザデータの分割方式
を提供することを目的としている。
【0007】
【課題を解決するための手段】図1を用いて、本課題を
解決する手段を示す。本発明では、それぞれ所定の長さ
のデータを格納する複数のバッファ151からなる符号
化後ユーザデータ格納手段150をもつ。なお、バッフ
ァ151は、次バッファへのチェーンポインタとバッフ
ァ長とデータ格納位置を示すオフセットとを持つ。
解決する手段を示す。本発明では、それぞれ所定の長さ
のデータを格納する複数のバッファ151からなる符号
化後ユーザデータ格納手段150をもつ。なお、バッフ
ァ151は、次バッファへのチェーンポインタとバッフ
ァ長とデータ格納位置を示すオフセットとを持つ。
【0008】また、指定されたAP空間101上のユー
ザデータ140aを読み込み、与えられた符号化規則に
よりユーザデータ140aを符号化し、この結果を指定
された通信管理空間103上の符号化後ユーザデータ格
納手段150へ格納するOS空間102上の符号化デー
タムーブ手段110を持つ。
ザデータ140aを読み込み、与えられた符号化規則に
よりユーザデータ140aを符号化し、この結果を指定
された通信管理空間103上の符号化後ユーザデータ格
納手段150へ格納するOS空間102上の符号化デー
タムーブ手段110を持つ。
【0009】また、指定されたAP空間101上のユー
ザデータ140aを読み込み、与えられた符号化規則に
よりユーザデータ140aを符号化した後のユーザデー
タ140bの長さを算出するOS空間102上の符号化
後ユーザデータ長算出手段120をもつ。
ザデータ140aを読み込み、与えられた符号化規則に
よりユーザデータ140aを符号化した後のユーザデー
タ140bの長さを算出するOS空間102上の符号化
後ユーザデータ長算出手段120をもつ。
【0010】また、符号化後ユーザデータ長算出手段1
20を実行し、これより得た符号化後ユーザデータ長か
ら、以後のプロトコル処理に必要なバッファサイズに符
号化後ユーザデータ格納手段150のバッファ151の
チェーンを制御し、符号化データムーブ手段110によ
り、符号化後ユーザデータ格納手段150に格納させる
通信管理空間103内のデータ分割処理手段130をも
つ
20を実行し、これより得た符号化後ユーザデータ長か
ら、以後のプロトコル処理に必要なバッファサイズに符
号化後ユーザデータ格納手段150のバッファ151の
チェーンを制御し、符号化データムーブ手段110によ
り、符号化後ユーザデータ格納手段150に格納させる
通信管理空間103内のデータ分割処理手段130をも
つ
【0011】
【作用】APのデータ送信要求により、ユーザデータ1
40aのアドレスを得た通信管理プログラムは、まず、
初めにデータ分割処理手段130を起動する。データ分
割処理手段130は、ユーザデータ140aの先頭アド
レスとユーザデータ140aの長さとを渡して符号化後ユー
ザデータ長算出手段120を起動する。符号化後ユーザ
データ長算出手段120は、先頭アドレスから順に、ユ
ーザデータ140aの内容を読み込み、符号化処理規則に従
って符号化後のユーザデータの長さを算出する。データ
分割処理手段130は、符号化後のユーザデータの長さ
をバッファ格納時の所定の長さ(最下位レイヤでの最大
データ単位長−以後行なうプロトコル処理で追加される
ヘッダ長(固定値))で除算することにより必要なバッ
ファ数を求めることができる。データ分割処理手段13
0は、符号化後ユーザデータ格納手段150を構成する
バッファ単位151で必要な個数分のチェーンを作成
し、チェーンされたバッファ単位151の先頭アドレス
とユーザデータ140aのアドレスとユーザデータ14
0aの長さとを渡して符号化データムーブ手段110を
起動する。符号化データムーブ手段110は、AP空間
101からユーザデータ140aを読み込み、符号化処
理規則に従って符号化後のコードを生成し、この情報
を、通信管理空間103上の符号化後ユーザデータ格納
手段150上のバッファチェーンを辿り、次々オフセッ
トの位置から所定の長さ分格納する。これにより通信管
理プログラムは、符号化後ユーザデータ格納手段150
のチェーンされた複数のバッファ単位151上に、最下
位レイヤの最大データ単位長以下に分割された符号化後
のユーザデータ140bを得る。
40aのアドレスを得た通信管理プログラムは、まず、
初めにデータ分割処理手段130を起動する。データ分
割処理手段130は、ユーザデータ140aの先頭アド
レスとユーザデータ140aの長さとを渡して符号化後ユー
ザデータ長算出手段120を起動する。符号化後ユーザ
データ長算出手段120は、先頭アドレスから順に、ユ
ーザデータ140aの内容を読み込み、符号化処理規則に従
って符号化後のユーザデータの長さを算出する。データ
分割処理手段130は、符号化後のユーザデータの長さ
をバッファ格納時の所定の長さ(最下位レイヤでの最大
データ単位長−以後行なうプロトコル処理で追加される
ヘッダ長(固定値))で除算することにより必要なバッ
ファ数を求めることができる。データ分割処理手段13
0は、符号化後ユーザデータ格納手段150を構成する
バッファ単位151で必要な個数分のチェーンを作成
し、チェーンされたバッファ単位151の先頭アドレス
とユーザデータ140aのアドレスとユーザデータ14
0aの長さとを渡して符号化データムーブ手段110を
起動する。符号化データムーブ手段110は、AP空間
101からユーザデータ140aを読み込み、符号化処
理規則に従って符号化後のコードを生成し、この情報
を、通信管理空間103上の符号化後ユーザデータ格納
手段150上のバッファチェーンを辿り、次々オフセッ
トの位置から所定の長さ分格納する。これにより通信管
理プログラムは、符号化後ユーザデータ格納手段150
のチェーンされた複数のバッファ単位151上に、最下
位レイヤの最大データ単位長以下に分割された符号化後
のユーザデータ140bを得る。
【0012】
【実施例】図2は、本発明を実施する計算機のブロック
図である。201は、ホスト計算機を示しており、20
2はホスト計算機201の中央処理装置(以下CPU)
を示しており203は、ホスト計算機201のメモリを
示しており、203は、ホスト計算機201の内部バス
を示しており、204は、外部記憶装置205とホスト
計算機201の内部バス203とのインタフェースを制
御する入出力制御装置を示しており、207は、回線制
御装置を示しており、本装置を仲介にして内部バス20
3と回線206を結んでいる。ホスト計算機201は、
回線206を解してデータ通信を行なう。なお、本ホス
ト計算機201は、仮想記憶方式を採用しているため、
メモリスワッパ等のOS基本部が、メモリ202上に常
駐しており、通信管理等の制御プログラムやファイル転
送プログラム等のAPは、その全体が外部記憶装置20
5に格納されており、CPU202の処理に必要な部分
がメモリ202に展開している。
図である。201は、ホスト計算機を示しており、20
2はホスト計算機201の中央処理装置(以下CPU)
を示しており203は、ホスト計算機201のメモリを
示しており、203は、ホスト計算機201の内部バス
を示しており、204は、外部記憶装置205とホスト
計算機201の内部バス203とのインタフェースを制
御する入出力制御装置を示しており、207は、回線制
御装置を示しており、本装置を仲介にして内部バス20
3と回線206を結んでいる。ホスト計算機201は、
回線206を解してデータ通信を行なう。なお、本ホス
ト計算機201は、仮想記憶方式を採用しているため、
メモリスワッパ等のOS基本部が、メモリ202上に常
駐しており、通信管理等の制御プログラムやファイル転
送プログラム等のAPは、その全体が外部記憶装置20
5に格納されており、CPU202の処理に必要な部分
がメモリ202に展開している。
【0013】図3は、ホスト計算機201の仮想記憶の
内容を示したものである。310は、ファイル転送プロ
グラム等の回線により接続されたリモートのホスト計算
機201上のプログラムとデータ通信を行なうAPであ
り、CPU202に対するオブジェクトコードである。
310は、リモートの計算機とのデータ通信を実現する
通信プロトコル処理を実行する通信管理のオブジェクト
コードである。通信管理310は、API処理151,
AL312,PL313,TL314,ネットワークレ
イヤ処理(以下NL)315,回線アダプタドライバ処
理(以下DRV)316からなる。API処理151で、デ
ータ分割処理手段130を実現する。なお、API31
1は、AL312とPL313の二つのインタフェース
を提供する。
内容を示したものである。310は、ファイル転送プロ
グラム等の回線により接続されたリモートのホスト計算
機201上のプログラムとデータ通信を行なうAPであ
り、CPU202に対するオブジェクトコードである。
310は、リモートの計算機とのデータ通信を実現する
通信プロトコル処理を実行する通信管理のオブジェクト
コードである。通信管理310は、API処理151,
AL312,PL313,TL314,ネットワークレ
イヤ処理(以下NL)315,回線アダプタドライバ処
理(以下DRV)316からなる。API処理151で、デ
ータ分割処理手段130を実現する。なお、API31
1は、AL312とPL313の二つのインタフェース
を提供する。
【0014】320は、メモリやプロセスの管理を行な
うOSのオブジェクトコードである。320で、符号化
データムーブ手段110を符号化データムーブ関数とし
て、また、符号化後ユーザデータ長算出手段120を符
号化後ユーザデータ長算出関数として実現する。140
aは、符号化前のユーザデータである。350は、通信
管理のバッファである。330は、通信管理310の制
御テーブルであり、通信管理のバッファ350の管理情
報を納める。340は、OS320の制御テーブルであ
り、メモリ空間の管理情報を納める。
うOSのオブジェクトコードである。320で、符号化
データムーブ手段110を符号化データムーブ関数とし
て、また、符号化後ユーザデータ長算出手段120を符
号化後ユーザデータ長算出関数として実現する。140
aは、符号化前のユーザデータである。350は、通信
管理のバッファである。330は、通信管理310の制
御テーブルであり、通信管理のバッファ350の管理情
報を納める。340は、OS320の制御テーブルであ
り、メモリ空間の管理情報を納める。
【0015】図6は、API151でのデータムーブと
データ分割を兼ねて行なう処理のフローチャートであ
る。AP301の要求を受け付けるAPI151は、そ
の要求がデータ送信である場合に、データムーブとデー
タ分割を兼ねて行なう処理を実行する。また、データ送
信要求により、符号化前ユーザデータ140aの先頭ア
ドレスとその長さを得る(602)。
データ分割を兼ねて行なう処理のフローチャートであ
る。AP301の要求を受け付けるAPI151は、そ
の要求がデータ送信である場合に、データムーブとデー
タ分割を兼ねて行なう処理を実行する。また、データ送
信要求により、符号化前ユーザデータ140aの先頭ア
ドレスとその長さを得る(602)。
【0016】次に、符号化前ユーザデータ140aの先
頭アドレスとその長さを引き数としてOS320の内部
関数である符号化後ユーザデータ長算出関数120をコ
ールし、そのリターン値で符号化した後のユーザデータ
の長さを得る(604)。
頭アドレスとその長さを引き数としてOS320の内部
関数である符号化後ユーザデータ長算出関数120をコ
ールし、そのリターン値で符号化した後のユーザデータ
の長さを得る(604)。
【0017】次に、符号化後データ長と通信管理制御テ
ーブル340に記憶されたバッファ格納時の所定長に基
づいて必要なバッファ数を求める(作用の項参照)(6
06)。
ーブル340に記憶されたバッファ格納時の所定長に基
づいて必要なバッファ数を求める(作用の項参照)(6
06)。
【0018】次に、符号化されたユーザデータを格納す
るためのバッファ350を、空きバッファ350のチェ
ーンを外すことにより準備し、バッファのオフセットを
設定する(608)。
るためのバッファ350を、空きバッファ350のチェ
ーンを外すことにより準備し、バッファのオフセットを
設定する(608)。
【0019】次に、ユーザデータ140bのアドレスと
その長さ、確保したバッファ350の先頭アドレスを引
き数としてOS320の提供関数である符号化データム
ーブ関数110をコールする(610)。符号化データ
ムーブ関数110は、指定されたバッファに符号化後の
ユーザデータ140bを格納する。こうして、符号化後
のユーザデータが複数のバッファ350に格納される。
その長さ、確保したバッファ350の先頭アドレスを引
き数としてOS320の提供関数である符号化データム
ーブ関数110をコールする(610)。符号化データ
ムーブ関数110は、指定されたバッファに符号化後の
ユーザデータ140bを格納する。こうして、符号化後
のユーザデータが複数のバッファ350に格納される。
【0020】図7は、符号前/符号化後ユーザデータの
構造を示したものである。
構造を示したものである。
【0021】140aは、符号前のユーザデータ構造で
ある。701は、構造ID(S)であり、データ構造の
要素数を示す。702は型ID(t)であり整数等の符
号前の値(v)の型を示す。なお、構造ID(S)70
1と型ID(t)702は、固定長であり、構造化フラ
グ710により両者を識別する。703は、内容長
(l)であり符号前の内容(v)の長さを示す。704
は、内容(v)を表す。720は、ASN.1記法によ
る構造化したユーザデータ列を見易くしたものである。
本例での、初めの構造ID(S1)の要素数は、4であ
り、2番目の構造ID(S1)の要素数は、2である。
ある。701は、構造ID(S)であり、データ構造の
要素数を示す。702は型ID(t)であり整数等の符
号前の値(v)の型を示す。なお、構造ID(S)70
1と型ID(t)702は、固定長であり、構造化フラ
グ710により両者を識別する。703は、内容長
(l)であり符号前の内容(v)の長さを示す。704
は、内容(v)を表す。720は、ASN.1記法によ
る構造化したユーザデータ列を見易くしたものである。
本例での、初めの構造ID(S1)の要素数は、4であ
り、2番目の構造ID(S1)の要素数は、2である。
【0022】140bは、基本符号化規則(BER)に
よる符号化後のユーザデータの形式である。タグ705
(T)と長さフィールド706(L)と値707(V)
から構成されている。
よる符号化後のユーザデータの形式である。タグ705
(T)と長さフィールド706(L)と値707(V)
から構成されている。
【0023】図8は、符号化後ユーザデータ長算出手段
120の処理フローチャートである。まず、ユーザデー
タを読み込む(802)。次に、構造化フラグ730に
より、構造ID701であるか型ID702であるかを
判定する(804)。次に、これが、構造IDであるな
らば、構造階数ポインタ(n)を増加する(806)。構
造階数ポインタ(n)の内容に要素数を代入する。次
に、長さを増加する(810)。
120の処理フローチャートである。まず、ユーザデー
タを読み込む(802)。次に、構造化フラグ730に
より、構造ID701であるか型ID702であるかを
判定する(804)。次に、これが、構造IDであるな
らば、構造階数ポインタ(n)を増加する(806)。構
造階数ポインタ(n)の内容に要素数を代入する。次
に、長さを増加する(810)。
【0024】次に、ユーザデータのポインタを更新し
(812)、ステップ802へ戻る。
(812)、ステップ802へ戻る。
【0025】もし、ステップ804で、型ID702で
ある場合は、長さを増加する(820)。次に、値長(l)
703を読み込み、長さに加算する(822)。次に、
構造階数ポインタ(n)の内容を減らす(824)。次
に、構造階数ポインタ(n)の内容判定(826)、0
なら次ステップへ、0でないならステップ802を実行
する。次に、構造階数ポインタ(n)を減らし、構造階
数ポインタ(n)の内容も減らす(828)。次に、ま
た、構造階数ポインタ(n)の内容判定(830)、0なら
終了、0でないならステップ(802)を実行する。
ある場合は、長さを増加する(820)。次に、値長(l)
703を読み込み、長さに加算する(822)。次に、
構造階数ポインタ(n)の内容を減らす(824)。次
に、構造階数ポインタ(n)の内容判定(826)、0
なら次ステップへ、0でないならステップ802を実行
する。次に、構造階数ポインタ(n)を減らし、構造階
数ポインタ(n)の内容も減らす(828)。次に、ま
た、構造階数ポインタ(n)の内容判定(830)、0なら
終了、0でないならステップ(802)を実行する。
【0026】図9は、符号化データムーブ手段110の
処理フローチャートである。まず、ユーザデータを読み
基本符号化規則に則り、構造ID701や型ID702
をタグ705に変換する(904)。オフセットで指定
された位置から始めて、バッファのエリアをチェック
し、バッファへ書き込む。バッファがメモリ203上に
ない場合は、スワップインすることで、メモリ203上
にバッファを配置する。また、現行のバッファに書き込
めなくなったら、バッファのチェーンを辿り、次のバッ
ファへ書き込む。このときも同様にバッファのエリアを
チェックする(906)。次に、該当するタグ705に
属する値(V)の長さを計算することで、長さフィール
ド706を作成する(908)。次に、ステップ(90
6)と同様な処理を行ない、バッファに長さフィールド
706の値を書き込む(910)。次に、ユーザデータの
内容704を読み込み、必要があればバイトオーダ等の
変換を行なう(912)。次に、ステップ(906)と
同様な処理を行ない、変換したユーザデータ内容をバッ
ファに書き込み値707を生成する(914)。ユーザデ
ータの符号化の終了をユーザデータ長に基づき判定する
(916)。終了でない場合は、ステップ(904)に
戻る。以上の処理により、通信管理のバッファに符号化
後のユーザデータを生成する。
処理フローチャートである。まず、ユーザデータを読み
基本符号化規則に則り、構造ID701や型ID702
をタグ705に変換する(904)。オフセットで指定
された位置から始めて、バッファのエリアをチェック
し、バッファへ書き込む。バッファがメモリ203上に
ない場合は、スワップインすることで、メモリ203上
にバッファを配置する。また、現行のバッファに書き込
めなくなったら、バッファのチェーンを辿り、次のバッ
ファへ書き込む。このときも同様にバッファのエリアを
チェックする(906)。次に、該当するタグ705に
属する値(V)の長さを計算することで、長さフィール
ド706を作成する(908)。次に、ステップ(90
6)と同様な処理を行ない、バッファに長さフィールド
706の値を書き込む(910)。次に、ユーザデータの
内容704を読み込み、必要があればバイトオーダ等の
変換を行なう(912)。次に、ステップ(906)と
同様な処理を行ない、変換したユーザデータ内容をバッ
ファに書き込み値707を生成する(914)。ユーザデ
ータの符号化の終了をユーザデータ長に基づき判定する
(916)。終了でない場合は、ステップ(904)に
戻る。以上の処理により、通信管理のバッファに符号化
後のユーザデータを生成する。
【0027】通信管理301の各レイヤのデータ分割処
理では、従来と同様にバッファのチェーンを解除するこ
とでデータ分割を行なう。
理では、従来と同様にバッファのチェーンを解除するこ
とでデータ分割を行なう。
【0028】
【発明の効果】本発明によれば、ユーザデータ長が変化
するときでも、レイヤプロトコルの各レイヤの処理にお
いて送信データのコピーを行なうことなく、送信データ
の分割が行なえるので、送信データの分割処理に要する
時間を短縮できる。また、符号化処理をOS内部関数と
してAP空間からのデータムーブと兼ねあわせて実現す
ることにより、AP空間のユーザデータを受ける通信管
理のバッファが必要でなく、符号化後のユーザデータを
格納するバッファのみでよいため、使用バッファの量を
軽減できる。また、符号化の処理時間に、データムーブ
処理時間がマスクされるため、データムーブ処理に要す
る時間を大幅に短縮できる。
するときでも、レイヤプロトコルの各レイヤの処理にお
いて送信データのコピーを行なうことなく、送信データ
の分割が行なえるので、送信データの分割処理に要する
時間を短縮できる。また、符号化処理をOS内部関数と
してAP空間からのデータムーブと兼ねあわせて実現す
ることにより、AP空間のユーザデータを受ける通信管
理のバッファが必要でなく、符号化後のユーザデータを
格納するバッファのみでよいため、使用バッファの量を
軽減できる。また、符号化の処理時間に、データムーブ
処理時間がマスクされるため、データムーブ処理に要す
る時間を大幅に短縮できる。
【図1】本発明であるデータ分割方式の原理の説明図。
【図2】本発明の一実施例であるデータ分割方式を適用
する通信システムのブロック図。
する通信システムのブロック図。
【図3】本発明の一実施例であるデータ分割方式を適用
した通信システムにおけるブロック図。
した通信システムにおけるブロック図。
【図4】従来のデータ分割方式の動作の説明図。
【図5】従来のデータ分割方式による本発明の課題の説
明図。
明図。
【図6】本発明の一実施例におけるデータ分割手段の処
理フローチャート。
理フローチャート。
【図7】本発明の一実施例における符号化前後のユーザ
データ構造の説明図。
データ構造の説明図。
【図8】本発明の一実施例における符号化後データ長算
出手段の処理フローチャート。
出手段の処理フローチャート。
【図9】本発明の一実施例における符号化データムーブ
手段の処理フローチャート。
手段の処理フローチャート。
101…APのメモリ空間、102…OSのメモリ空
間、103…通信管理プログラムのメモリ空間、110
…符号化データムーブ手段、120…符号化後ユーザデ
ータ長算出手段、130…データ分割処理手段、140
a…符号化前ユーザデータ、140b…符号化後ユーザ
データ、150…符号化後ユーザデータ格納手段、15
1…バッファ単位。
間、103…通信管理プログラムのメモリ空間、110
…符号化データムーブ手段、120…符号化後ユーザデ
ータ長算出手段、130…データ分割処理手段、140
a…符号化前ユーザデータ、140b…符号化後ユーザ
データ、150…符号化後ユーザデータ格納手段、15
1…バッファ単位。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 川飛 達夫 神奈川県横浜市戸塚区戸塚町5030番地 株 式会社日立製作所ソフトウェア開発本部内
Claims (1)
- 【請求項1】仮想記憶方式のオペレーティングシステム
が動作している計算機のメモリ上でアプリケーションプ
ログラム空間上に格納されたローカルな形式で表現され
たユーザデータを前記計算機に依存しないネットワーク
ワイドな形式へ変換する符号化処理を行なう階層化され
たプロトコル処理プログラムの空間へ前記ユーザデータ
をムーブして、前記ユーザデータに対するプロトコル処
理を実行する通信システムにおいて、前記アプリケーシ
ョンプログラム空間上のユーザデータを参照して符号化
後のユーザデータ長を算出する手段と、前記アプリケー
ションプログラム空間上のユーザデータを符号化しその
結果を通信管理のバッファへ格納する手段とを前記オペ
レーションシステム内部に設け、前記アプリケーション
プログラムからの送信要求受付時に、前記手段により得
た符号化後のユーザデータ長に基づいて、階層化された
プロトコル処理プログラムが符号化後のユーザデータを
分割した結果生じるデータ単位の個数分のバッファを確
保し、後者の手段により、符号化後のユーザデータを上
記バッファに分割して格納することで、以降のプロトコ
ル処理で実行するデータ分割では、データムーブを発生
させないデータ分割処理手段を備えたことを特徴とする
データ分割方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4284180A JPH06133006A (ja) | 1992-10-22 | 1992-10-22 | データ分割方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4284180A JPH06133006A (ja) | 1992-10-22 | 1992-10-22 | データ分割方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH06133006A true JPH06133006A (ja) | 1994-05-13 |
Family
ID=17675217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4284180A Pending JPH06133006A (ja) | 1992-10-22 | 1992-10-22 | データ分割方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH06133006A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3802900A1 (de) * | 1987-01-30 | 1988-08-11 | Murata Machinery Ltd | Vorrichtung zum verbinden eines spulautomaten mit einer doppeldrahtzwirnmaschine |
-
1992
- 1992-10-22 JP JP4284180A patent/JPH06133006A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3802900A1 (de) * | 1987-01-30 | 1988-08-11 | Murata Machinery Ltd | Vorrichtung zum verbinden eines spulautomaten mit einer doppeldrahtzwirnmaschine |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7925863B2 (en) | Hardware device comprising multiple accelerators for performing multiple independent hardware acceleration operations | |
US7502826B2 (en) | Atomic operations | |
US5797041A (en) | Communication control system utilizing a shared buffer composed of first and second descriptors which are managed by high and low level protocols | |
US20030188110A1 (en) | Method for performing compressed I/O with memory expansion technology | |
JPH04308956A (ja) | 受信バッファ | |
CN115168259B (zh) | 一种数据存取方法、装置、设备和计算机可读存储介质 | |
EP3792776B1 (en) | Nvme-based data reading method, apparatus and system | |
JPH04227562A (ja) | データ処理システムのオペレーション実行装置とその方法 | |
US20040054837A1 (en) | Controlling flow of data between data processing systems via a memory | |
US5594878A (en) | Bus interface structure and system for controlling the bus interface structure | |
US8180985B2 (en) | Storage switch, storage system, and data copying method using bitmaps representing different sized regions | |
CN117312201B (zh) | 一种数据传输方法、装置及加速器设备、主机和存储介质 | |
JPH06133006A (ja) | データ分割方式 | |
CN116089477B (zh) | 分布式训练方法及系统 | |
JPH08212178A (ja) | 並列計算機 | |
AU780501B2 (en) | Distributed memory type parallel computer and write data transfer end confirming method thereof | |
US6237038B1 (en) | Method of data communication and system for carrying out the method | |
US7251248B2 (en) | Connection device | |
JPH0844652A (ja) | 計算機システムおよび入出力命令の発行方法 | |
JPH06274463A (ja) | データ通信システム | |
US6434592B1 (en) | Method for accessing a network using programmed I/O in a paged, multi-tasking computer | |
US6308147B1 (en) | Data structure synthesis in hardware using memory transaction translation techniques | |
WO2020255760A1 (ja) | 車両用制御装置 | |
JP7206485B2 (ja) | 情報処理システム、半導体集積回路及び情報処理方法 | |
CN114372009B (zh) | 传输控制电路、数据传输系统及操作数据传输系统的方法 |