JPH08147234A - ストリーム処理装置及び方法 - Google Patents

ストリーム処理装置及び方法

Info

Publication number
JPH08147234A
JPH08147234A JP6283081A JP28308194A JPH08147234A JP H08147234 A JPH08147234 A JP H08147234A JP 6283081 A JP6283081 A JP 6283081A JP 28308194 A JP28308194 A JP 28308194A JP H08147234 A JPH08147234 A JP H08147234A
Authority
JP
Japan
Prior art keywords
stream
unit
buffer
speed
streams
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.)
Withdrawn
Application number
JP6283081A
Other languages
English (en)
Inventor
Yasuo Noguchi
泰生 野口
Naoteru Akaboshi
直輝 赤星
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 JP6283081A priority Critical patent/JPH08147234A/ja
Priority to US08/520,299 priority patent/US5640597A/en
Publication of JPH08147234A publication Critical patent/JPH08147234A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【目的】速度の異なるストリームの入出力要求を、時間
を掛けずに効率良く処理し、資源の無駄を抑え、更に、
ビジィ応答も迅速にできるようにする。 【構成】基準速度で同時に供給可能な複数の単位ストリ
ームを定め、スケジュール作成部26で、全ての単位ス
トリームに対して記憶装置25、入出力装置16、及び
バッファメモリ18の時間的な使用を割り当てるスケジ
ュールを予め作成する。実際のストリームの要求時に
は、ストリーム割当部30によって、要求速度に応じて
未使用の単位ストリームを必要な個数割り当て、割り当
てた単位ストリームのスケジュールに従って要求ストリ
ームを供給する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、磁気ディスクユニット
等の記憶装置に動画や音声のデータストリームを格納し
て外部からの要求に応じてストリームを供給するストリ
ーム処理装置及び方法に関し、特に、異なる速度指定の
ストリーム要求を効率的に処理するストリーム処理装置
及び方法に関する。
【0002】
【従来の技術】従来、大量のデータをデータストリーム
として連続的に供給するストリーム処理システムとして
は、例えばビデオ・オン・デマンド・システム、マルチ
メディア・データベース、デスクトップ・プレゼンテー
ション・システム等がある。このようなストリーム処理
システムは、通常、外部と通信する入出力装置、磁気デ
ィスク装置などの記憶装置、更にバッファメモリで構成
されている。
【0003】ビデオ・オン・デマンド・システムなど
は、動画や音声のデータストリームを供給しており、ユ
ーザが要求するストリームの速度は様々であることか
ら、速度の異なる複数のストリーム要求を受け付け、効
率良く処理することが重要である。またリレーショナル
・データベースのようなテキストのみを取り扱う場合で
も、デシジョン・サポート・データベースのように大量
のデータを読み込んで処理し結果を書き出す場合は、パ
イプライン的な処理が有効である。この場合、外部との
間のストリームの供給速度を処理内容にあわせて指定で
きれば、バッファメモリを効率的に使用することができ
る。
【0004】従来のシステムでは、速度の異なるストリ
ームの要求があると、未使用の資源のリストから、記憶
装置、バッファメモリ及び入出力装置の使用に関する時
間的なスケジュールを作成し、作成したスケジュールに
従ってストリームを供給している。
【0005】
【発明が解決しようとする課題】しかしながら、このよ
うな従来のストリーム処理システムにあっては、次の問
題があった。まず要求ごとにスケジュールを作成するの
では、スケジューリングに時間がかかり、応答速度を遅
くする。また要求ごとにスケジュールを作るのでは、資
源に無駄が生じ、同時に供給できるストリームの数が少
なくなる可能性がある。更に、新たな要求に応じられる
かどうかは、スケジュールを作成してみなければわから
ないので、応じられない要求に対しビジィを応答するま
での時間が長くなる。
【0006】本発明は、このような従来の問題点に鑑み
てなされたもので、速度の異なるストリームの入出力要
求を、時間を掛けずに効率良く処理し、資源の無駄を抑
え、更に、ビジィ応答も迅速にできる高性能のストリー
ム処理装置および方法を提供することを目的とする。
【0007】
【課題を解決するための手段】図1は本発明の原理説明
図である。本発明のストリーム処理装置は、外部入出力
装置16、記憶装置25及びバッファメモリ18を備え
る。外部入出力装置16は、外部から複数の入出力要求
を受け付け、要求されたストリームの送受信を、所定の
基準速度又はその所定倍数の速度で並列的に行う。記憶
装置25は、ストリームを格納し、ストリームのリード
又はライトを、基準速度より高速のN倍のアクセス速度
により所定データ長のブロック単位で行う。バッファメ
モリ18は、外部入出力装置16と記憶装置25の間に
設けられ、ストリームをアクセスブロック単位で一時的
に記憶する。
【0008】これに加え本発明は、スケジュール作成部
26とストリーム割当部30を備える。スケジュール作
成部26は、基準速度で同時に供給可能な複数の単位ス
トリームを定め、全ての単位ストリームに対して記憶装
置25、入出力装置16、バッファメモリ18の時間的
な使用を割り当てるスケジュールを格納したスケジュー
ルテーブル28を作成する。
【0009】ストリーム割当部30は、ストリームの入
出力要求時に、要求速度に応じて未使用の単位ストリー
ムを必要な個数割り当て、割り当てた単位ストリームの
スケジュールテーブル28に従って要求ストリームを供
給する。スケジュール作成部26は、アクセス速度を基
準速度で割った速度比で決まる数Nの単位ストリームに
ついてスケジュールを作成する。例えば基準速度が1M
B/sで、記憶装置のアクセス速度が4倍の4MB/s
の場合、速度比N=4であることから、4つの単位スト
リームを定義し、各単位ストリームのスケジュールを作
成する。
【0010】バッファメモリ18は、バッファ領域を単
位ストリーム数Nに1を加えた(N+1)個の単位バッ
ファBi(i=0〜N)に分割している。各単位バッフ
ァは記憶装置25の1回のアクセスで転送される1ブロ
ック分の領域である。スケジュール作成部30は、周期
N(N+1)で定義される繰返し周期Tをフェーズp=
0〜(T−1)に分け、単位バッファ番号をi、前記単
位ストリーム番号をjとした場合、次式に従って単位バ
ッファの割当スケジュールを作成する。
【0011】まずフェーズpと単位バッファ番号iをパ
ラメータとした場合、ストリーム番号jを、 j={(p+i) div (N+1)−i} mod N から求めてスケジュールを作成する。ここで、A div
BはA/Bによる商の整数部分である。また、A mod
Bは、A/Bによる剰余であり、負の場合はBを加えた
値とする またフェーズpと単位ストリーム番号jをパラメータと
した場合、次のケース1,2から単位バッファ番号iを
求めてスケジュールを作成する。
【0012】[ケース1]フェーズpが(p−j) mod
N=0のとき、即ち(p−j)がNで割り切れる場
合、 i1={(p−j) div N−j} mod (N+1) i2=(i1−1) mod (N+1) として求めた2つのバッファ番号i1,i2の単位バッ
ファBi1,Bi2を、ストリーム番号jの単位ストリーム
に割り当てる。
【0013】[ケース2]フェーズpが(p−j) mod
N≠0のとき、即ち、(p−j)が割り切れない場
合、 i1={(p−j) div N−j} mod (N+1) として求めたバッファ番号i1の単位バッファBi1を、
ストリーム番号jの単位ストリームに割り当てたスケジ
ュールを作成する。
【0014】またストリーム割当部30は、要求速度を
指定したストリームの入出力要求時に、要求速度に応じ
て未使用の単位ストリームの必要な個数を、要求ストリ
ームに割り当てる。この場合、外部からのストリームの
要求速度は、基準速度からそのN倍までの速度であり、
ストリーム割当部30は、指定速度を基準速度で割った
速度比K=1〜Nに一致する数の未使用の単位ストリー
ムを要求ストリームに割り当てる。
【0015】速度比Kが小数を含む場合、小数を切り上
げて整数化した速度比に一致する数の未使用の単位スト
リームを要求ストリームに割り当てる。例えば速度比K
=1.5の場合は、2つの単位ストリームを割り当て
る。ストリーム割当部30は、要求ストリームが出力ス
トリームの場合、スケジュールテーブル28に従ってN
+1フェーズ毎に要求ストリームの単位バッファを切り
替え、バッファ切替後の先頭フェーズで、記憶装置から
の1ブロック分のストリームを読み出させて単位バッフ
ァに格納し、残りNフェーズの間に単位バッファからス
トリームを読み出して外部に送信させる。
【0016】例えば、出力ストリームの要求速度が基準
速度の場合、バッファ切替後の先頭フェーズで記憶装置
25からの1ブロック分のストリームを読み出して単位
バッファに格納する。続いてNフェーズの各々で単位バ
ッファから(1/N)ブロック単位にストリームを順次
読み出して外部に送信させる。また出力ストリームの要
求速度が基準速度より大きい場合、速度比Kに応じて割
り当てられた数の各単位ストリームのスケジュールに従
ったバッファ切替後の先頭フェーズで、記憶装置25か
らの1ブロック分のストリームを読み出して単位バッフ
ァに格納し、次の(N/K)フェーズの各々で単位バッ
ファから(K/N)ブロック単位にストリームを順次読
み出して外部に送信させる。例えばN=4で、要求速度
が基準速度の2倍の場合(K=2)、割り当てられた単
位バッファはN+1=5フェーズに分けて使用される。
最初のフェーズは、記憶装置25から要求ストリームを
1ブロック分読み出して単位バッファに格納する。次の
2フェーズで単位バッファから読み出して基準速度の2
倍の速度(1/2ブロック単位)で外部に送信させる。
【0017】一方、要求ストリームが入力ストリームの
場合は、バッファ切替後のNフェーズの間に、外部から
受信したストリームを単位バッファに格納し、最終フェ
ーズで単位バッファから1ブロック分のストリームを読
み出して記憶装置25に書き込ませる。例えば、入力ス
トリームの要求速度が基準速度の場合、バッファ切替後
のNフェーズの各々で外部から(1/N)ブロック単位
に受信されたストリームを単位バッファに順次格納し、
最終フェーズで単位バッファから1ブロック分のストリ
ームを読み出して前記記憶装置25に書き込ませる。
【0018】また入力ストリームの要求速度が基準速度
より大きい場合、速度比Kに応じて割り当てられた数の
各単位ストリームのスケジュールに従ったバッファ切替
後の(N/K)フェーズの各々で、外部から(K/N)
ブロック単位に受信されたストリームを単位バッファに
順次格納し、最終フェーズで単位バッファから1ブロッ
ク分のストリームを読み出して記憶装置25に書き込ま
せる。
【0019】ストリーム割当部30は、要求ストリーム
の供給が終了した場合、割り当てていた単位ストリーム
を回収して空きストリームとする。またストリーム割当
部30は、外部からストリームの要求を受けた時、未使
用の単位ストリームの中のストリーム番号jの最も小さ
い単位ストリームを割り当てる。更に、単位ストリーム
を回収した際に、割当中の単位ストリームより小さい番
号の空きストリームが発生した場合、割当中の単位スト
リームを番号の小さい空き単位ストリームに変更するガ
ベージコレクション処理を行う。
【0020】更に、本発明は、ストリームの処理方法を
提供する。この処理方法は、 基準速度で同時に供給可能な複数の単位ストリームを
定め、全ての単位ストリームに対して記憶装置25、入
出力装置16、及びバッファメモリ18の時間的な使用
を割り当てるスケジュールを作成する; ストリームの要求時に、要求速度に応じて未使用の単
位ストリームを必要な個数割り当て、割り当てた単位ス
トリームのスケジュールに従って要求ストリームを供給
する;ことを特徴とする。この方法における各処理の詳
細は、前述した装置構成と基本的に同じになる。
【0021】
【作用】このような本発明のストリーム処理装置及び方
法によれば、基準速度の単位ストリームを複数定め、予
め同時に供給可能な全ての単位ストリームに対して、シ
ステムの記憶装置、入出力装置、バッファメモリを割り
当てるスケジュールを作成しておく。実際にストリーム
の入出力があった時は、要求速度に応じて未使用の単位
ストリームを必要な個数割り当て、割り当てた単位スト
リームのスケジュールでストリームを供給し、ストリー
ムが終了すると単位ストリームを回収する。
【0022】このため、予め用意されたスケジュールを
使うので、要求ごとのスケジューリングに時間が掛から
ない。また予め全ての単位ストリームに関してスケジュ
ールを行うので、資源の無駄をせずに、最大数の単位ス
トリームを供給できる。更に、1つのシステムで供給で
きる単位ストリームの最大数と、現在供給している単位
ストリームの数を簡単に管理でき、システムの限界を越
える要求が成された場合にもシステムは直ちにビジィ応
答を行うことができる。また外部から単位ストリームの
空き状態を簡単に管理できるので、ビジィ待ちとなって
しまうような要求を最初から出さなくすることが可能で
ある。
【0023】
【実施例】
<目 次> 1.動作環境 2.ストリームのスケジュール作成 3.単位ストリームの割当て 4.単位ストリームの回収とガベージコレクション 5.他の動作環境 1.動作環境 図2は、本発明のストリーム処理装置および方法が適用
される動作環境となるハードウェア構成の実施例であ
る。図2において、本発明のストリーム処理装置は、M
PU10のシステムバス12にローカルメモリ14を接
続しており、外部入出力装置として複数の外部インタフ
ェース15−1〜15−Nを備えた入出力装置16を設
けている。
【0024】またシステムバス12には、バッファメモ
リとして使用されるマルチポートメモリ18が接続され
る。更にシステムバス12には、ディスクコントローラ
20が接続される。ディスクコントローラ20の配下に
は、磁気ディスクドライブユニット24−1,24−2
がディスクバス22を介して接続される。ディスクコン
トローラ20と磁気ディスクドライブユニット24−
1,24−2によって、本発明のストリーム処理装置に
おける記憶装置が構成される。
【0025】ここで、ディスクコントローラ20が磁気
ディスクドライブユニット24−1,24−2に対しデ
ータを読み書きするためのアクセス速度(転送速度)
は、例えば4MB/sとなっている。これに対し、入出
力装置16に対し外部インタフェース15−1〜15−
Nによってデータを送受信するための転送速度は、磁気
ディスク側のアクセス速度4MB/s以下の速度とな
る。
【0026】例えば、外部インタフェース15−1〜1
5−Nの転送速度は、1MB/s,2MB/s,3MB
/s,4MB/sのいずれかとなる。また、0〜4MB
/sの範囲であれば、小数点を持った例えば1.5MB
/sであってもよい。バッファメモリとして使用される
マルチポートメモリ18は、入出力装置16に対する外
部インタフェース15−1〜15−N分のポートをも
ち、Nポートを使用して同時に複数のリードライトを行
うことのできるメモリである。
【0027】図3は、図2の動作環境において、MPU
10により実現される本発明のストリーム処理装置の機
能ブロックである。図3において、入出力装置16に
は、外部との間で4つの外部インタフェース15−1〜
15−4が設けられている。ディスクコントローラ20
とディスクユニット24は、記憶装置25を構成する。
記憶装置25と入出力装置16の間には、バッファメモ
リ18が設けられる。
【0028】まず本発明のストリーム処理にあっては、
ストリームの送受信に用いる基準速度を定める。基準速
度は、磁気ディスクドライブユニット24に対するアク
セス速度と入出力装置16で同時に行う外部との送受信
チャネル数で決まる。例えば、磁気ディスクユニット2
4の転送速度を4MB/sとすると、入出力装置16の
チャネルは4チャネルであることから、アクセス速度の
4分の1の速度1MBsを基準速度とする。
【0029】バッファメモリ18は、同時にアクセス可
能な単位バッファ領域B0〜B4に分けられている。バ
ッファメモリ18の単位バッファの数は、ディスクアク
セス速度を基準速度で割った値をNとすると、(N+
1)個の単位バッファを設ける。この実施例で、アクセ
ス速度を基準速度で割った値はN=4であることから、
単位バッファの数は(N+1)=5となる。この単位バ
ッファは、IDにより図示のように、B0〜B4で示さ
れる。ここで、0〜4はバッファ番号であり、一般的に
はiを使用する。即ち、単位バッファはBiとして表さ
れる。
【0030】MPU10には、そのプログラム制御によ
り、スケジュール作成部26、スケジュールテーブル2
8、ストリーム割当部30およびガベージ処理部32が
設けられる。スケジュール作成部26は、基準速度で同
時に供給可能な複数の単位ストリームを定める。この実
施例にあっては、基準速度で同時に供給可能な単位スト
リームの数は、N=4個となる。更にスケジュール作成
部26は、全ての単位ストリームに対し、記憶装置2
5、入出力装置16およびバッファメモリ18の時間的
な使用を割り当てるスケジュールを作成して、スケジュ
ールテーブル28に格納する。
【0031】ストリーム割当部30は、実際に入出力装
置16に対し外部からストリームの入出力要求があった
ときに、要求速度に応じて未使用の単位ストリームを必
要な個数割り当て、割り当てた単位ストリームのスケジ
ュールテーブル28に格納されたスケジュールに従っ
て、記憶装置20、バッファメモリ18および入出力装
置16を使用して要求ストリームの供給、即ち要求スト
リームの記憶装置25への入力または記憶装置25から
外部への要求ストリームの出力を行う。
【0032】図4のフローチャートは、図3のMPU1
0による本発明のストリーム処理の全体的な動作であ
る。装置を起動すると、まずステップS1で、スケジュ
ール作成処理を行う。スケジュール作成処理は後の説明
で明らかにされる。スケジュール作成が済むと、ステッ
プS2で、外部からのストリームの入出力要求をチェッ
クしている。
【0033】入出力要求があると、ステップS3に進
み、未使用の単位ストリームがあるか否かチェックす
る。もしなければ、ステップS9でビジィ応答を返す。
未使用の空きストリームがあると、ステップS4に進
み、ストリーム割当処理を行い、ステップS5で、割当
処理に従ったストリームの入出力処理を実行する。この
ストリーム割当処理およびストリーム入出力処理も、後
の説明で明らかにされる。
【0034】続いてステップS6で、終了ストリームの
有無をチェックする。もし終了したストリームがあれ
ば、終了したストリームに割り当てている単位ストリー
ムをステップS7で回収する処理を行う。続いてステッ
プS8で、ガベージコレクション処理を行う。ガベージ
コレクション処理は、ステップS7で回収した後に、使
用中の単位ストリームの割当てを、ストリーム番号の若
い空きストリームに変更する処理である。ガベージ処理
が済むと、ステップS9でサービスの終了有無をチェッ
クし、サービス中は、再びステップS2に戻り、次の入
出力要求に対応する。 2.ストリームのスケジュール作成 図5は、外部に送信する出力ストリームの単位バッファ
における割当てを示している。まず、図3のバッファメ
モリ18に設けた単位バッファB0〜B4の各容量は、
ディスクコントローラ20によって磁気ディスクドライ
ブユニット24の1回のアクセスで転送可能な1ブロッ
ク分の所定データ長としている。このため、図5の出力
ストリームについては、フェーズ0のタイミングで磁気
ディスクドライブユニット24から要求ストリームにつ
いて1ブロック分のストリームを読み出して、読出デー
タDR1として単位バッファB0に格納する。
【0035】この1回のディスクアクセスで得られた読
出データDR1は、入出力装置16の要求速度が4分の
1の基準速度であったとすると、フェーズ1〜4に示す
ように、4回の外部書込みAW1〜AW4に分けて出力
される。フェーズ4にあっては、単位バッファB0から
最後の外部出力AW4が行われるが、データストリーム
を断つことなく連続的に外部出力させるため、フェーズ
4のタイミングで同時に磁気ディスクドライブユニット
24の読出アクセスを行い、次の隣接する単位バッファ
B1に読出データDR2を格納する。そして、フェーズ
5からは単位バッファB1に切り替えた外部出力AW5
〜AW8を順次行う。
【0036】図6は、逆に、外部からストリームを記憶
装置25に書き込む入力ストリームの割当てであり、入
力ストリームの要求速度が基準速度の場合である。基準
速度の入力ストリームに対しては、まず単位バッファB
0に対し、フェーズ0〜3の4フェーズを使用して1/
4ブロック単位の外部入力AR1〜AR3のストリーム
を書き込む。フェーズ4では、フェーズ0〜3で単位バ
ッファB0に書き込んだ外部入力AR1〜AR3を、4
倍の転送速度によって磁気ディスクドライブユニット2
4に書き込むディスクライトDW1を行う。
【0037】また、外部から基準速度によってストリー
ムは連続的に供給されていることから、入力ストリーム
をとぎれることなくバッファに格納するため、同じフェ
ーズ4で同時に単位バッファB1を割り当て、外部入力
AR5を格納する。単位バッファB1に切り替えた後の
フェーズ5〜7までで4つの外部入力AR5〜AR8を
格納し、最後のフェーズ8で一括して磁気ディスクドラ
イブユニット24に1ブロック分のデータを書き込むデ
ィスクライトDW2を実行する。
【0038】このような図5,図6における基準速度で
同時に供給可能な4つの単位ストリームのバッファ割当
てについてのタイムスケジュールを作成すると、図7の
ようになる。図7は、縦軸に5つの単位バッファB0〜
B4を示し、横軸に時間軸としてフェーズp=0〜19
を示している。ここで、フェーズpは、N=4とした場
合、N(N+1)回で繰り返すこととなる。これを繰返
し周期Tと定義し、T=N(N+1)=20となる。し
たがって、フェーズpの値は、0〜(T−1)で表すこ
とができる。
【0039】更に、この実施例で同時に供給可能な単位
ストリーム数はN=4であることから、下側に取り出し
て示す4種類の単位ストリームst#0,st#1,s
t#2,st#3を定める。ここで、単位ストリームは
stの略号をもち、続く#0〜#3は単位ストリームの
ID番号である。一般的には、ID番号の数字0〜3は
jで表現される。したがって、単位ストリームはst#
jと表現することができる。
【0040】スケジュールの作成は、繰返し周期Tを与
えるp=0〜19についての単位バッファB0〜B4に
鋳する単位ストリームst#0〜st#3の4つの割当
パターンを作成する。まず、番号の一番小さい単位スト
リームst#0を見ると、フェーズ0〜4で単位バッフ
ァB0に割り当てられ、フェーズ4では下位の隣接する
単位バッファB1に同時に割り当てられる。以下、同様
に、5フェーズごとに単位バッファの切替えが割り当て
られる。次の単位ストリームst#1は、先頭の単位バ
ッファB0の単位ストリームst#0に続くフェーズ5
〜9が割り当てられ、フェーズ9では、同時に次の単位
バッファB1が割り当てられ、これを以降繰り返す。残
りの単位ストリームst#2,st#3についても同様
である。勿論、フェーズ19の次は先頭のフェーズ0に
戻るようになる。
【0041】図8(A)は、図7の作成スケジュールを
図3のスケジュール作成部26がスケジュールテーブル
28に登録した内容である。このスケジュールテーブル
28は、水平方向に配置したフェーズpで指定されるア
ドレス0〜19と、縦方向に並んだ単位バッファB0〜
B4で指定されるアドレスの2次元アドレスで指定され
るメモリ領域に、割当対象となる単位ストリームst#
0〜st#3の番号0〜3を格納している。
【0042】このスケジュールテーブル28は、実際に
入出力要求があった際にストリーム割当部30により参
照され、入出力装置16、バッファメモリ18および記
憶装置25の使用が作成スケジュールに従って割り当て
られる。例えば、外部からの要求速度が基準速度で単位
ストリームst#0が割り当てられると、フェーズp=
0〜19ごとにスケジュールテーブル28を参照し、割
り当てた単位ストリームst#0のID番号=0に対応
する単位バッファB0〜B4のいずれか1つあるいは2
つを使用した出力ストリームまたは入力ストリームの供
給が行われる。
【0043】ここで図8(A)は、フェーズp=0〜1
9と単位バッファB0〜B4によって該当する単位スト
リームを特定するテーブル内容としているが、これを変
更して、図8(B)のように、各フェーズと単位ストリ
ームst#0〜#3によって割当単位バッファのバッフ
ァ番号0〜4を求めるテーブルとしてもよい。図7及び
図8(A)に示した単位ストリームの記憶装置、入出力
装置、バッファメモリの割当スケジュールは、単位スト
リームst#jのストリーム番号jをj=0〜N+1、
単位バッファBiのバッファ番号iを i=0〜N、フ
ェーズp=0〜T−1とすると、次式で定義される。
【0044】まず、単位時間tで決まる単位フェーズp
で単位バッファiに単位ストリームjを割り当てる式
は、次式で与えられる。 j={(p+i) div (N+1)−i} mod N (1) ここで、一般形としての A div Bは、A/Bによる
商を意味する。また一般形としての A mod Bは、A
/Bによる剰余を意味し、負の場合はBを加算した値と
なる。
【0045】図8(A)のフェーズp=0、単位バッフ
ァ番号i=0〜4の単位ストリーム番号を具体的に求め
てみる。 単位バッファ番号i=0 j={(p+i) div (N+1)−i} mod N ={(0+0) div 5 −0} mod 4 ={ 0 div 5 −0} mod 4 ={ 0 −0} mod 4 = 0 mod 4 = 0 単位バッファ番号i=1 j={(0+1) div 5 −1} mod 4 =−1 mod 4 =3 単位バッファ番号i=2 j={(0+2) div 5 −2} mod 4 =−2 mod 4 =2 単位バッファ番号i=3 j={(0+3) div 5 −3} mod 4 =−3 mod 4 =1 単位バッファ番号i=4 j={(0+4) div 5 −4} mod 4 =−4 mod 4 = 0 また図8(B)の単位時間tで決まる単位フェーズpに
おいて、単位ストリームjから単位バッファiに割り当
てる式は、次式で与えられる。 ケース1;(p−j) mod N=0の場合 i1={(p−j) div N−j} mod (N+1) i2=(i1−1) mod (N+1) (2) ケース2;(p−j) mod N≠0の場合 i1={(p−j) div N−j} mod (N+1) i2= なし (3) そこで、図8(B)の単位ストリームj=0の単位フェ
ーズp=0〜8のそれぞれにおいて割り当てる単位バッ
ファi1,i2を具体的に求めてみると、次のようにな
る。 p=0のとき; i1=5−0mod 5=0 バッファB0 i2=(0−1)mod 5=4 バッファB4 p=1のとき: i1=1 div 4 mod 5=0 バッファB0 p=2のとき: i1=2 div 4 mod 5=0 バッファB0 p=3のとき: i1=3 div 4 mod 5=0 バッファB0 p=4のとき i1=1 mod 5=1 バッファB1 i2=(1−1)mod 5=0 バッファB0 p=5のとき: i1=1(1 div 4) div 4 mod 5=1 バッファB1 p=6のとき: i1=1(2 div 4) mod 5=1 バッファB1 p=7のとき: i1=1(3 div 4) mod 5=1 バッファB1 p=8のとき i1=2mod 5=2 バッファB2 i2=(2−1)mod 5=1 バッファB1 図9のフローチャートは、(2)(3)式を用いた本発
明のスケジュール作成処理である。まずステップS1
で、パラメータのセットを行う。パラメータとしては、
単位バッファ数N+1、単位ストリーム数N、バッファ
番号i、ストリーム番号jおよびフェーズp=0〜(T
−1)をセットする。続いてステップS2で、バッファ
番号i、ストリーム番号jおよびフェーズpをそれぞれ
0に初期化する。
【0046】次にステップS3で、(p−j)modN
が0か否かチェックする。0は(p−j)がNで割り切
れた場合である。この場合にはステップS4に進み、前
記(2)式に従って、ケース1の場合のバッファ番号i
1,i2を計算する。一方、ステップS3で、0以外の
値であった場合、即ち(p−j)がNで割り切れなかっ
た場合には、ステップS5に進み、ケース2の場合の前
記(3)式に従って、バッファ番号i1を計算する。
【0047】計算が済んだら、ステップS6で、例えば
図8(B)のテーブル登録を行う。続いてステップS7
で、フェーズpが最終フェーズ(T−1)か否かチェッ
クし、最終フェーズでなければ、ステップS10でフェ
ーズを1つインクリメントし、ステップS3〜S6の処
理を繰り返す。ステップS7で、最終フェーズ(T−
1)であった場合には、ステップS8で、ストリーム番
号jを1つインクリメントする。
【0048】ステップS9で、最終ストリーム番号Nに
達していなければ、ステップS11で、フェーズpを0
に初期化した後、再びステップS3に戻り、次のストリ
ーム番号jについてのバッファ番号の計算によるテーブ
ル登録を行う。ステップS9でストリーム番号jが最終
番号Nであれば、一連のスケジュール作成処理を終了す
る。 3.単位ストリームの割当て 図3のスケジュール作成部26において、スケジュール
が作成されてスケジュールテーブル28に登録が済む
と、ストリーム割当部30によって入出力要求に対する
単位ストリームの割当てとストリーム供給が行われる。
まず図7の作成スケジュールから明らかなように、要求
速度が基準速度に等しい速度比K=1の場合には、出力
ストリームおよびまたは入力ストリームの要求に対し順
番に4つの単位ストリームst#0〜st#3を割り当
てることで、同時に要求ストリームの出力およびまたは
入力を行うことができる。
【0049】図10は、最初、要求速度を基準速度とす
るストリームの出力要求を受けて単位ストリームst#
0を割り当て、次に要求速度を基準速度とするストリー
ムの入力要求を受けて単位ストリームstを割り当てた
場合である。また図11は、図10の1本ずつの出力ス
トリームと入力ストリームの単位ストリームの割当時に
おけるスケジュールテーブル28の有効領域を示す。
【0050】図12は、要求速度が基準速度の2倍とな
る速度比K=2の場合の2倍速の出力ストリームを要求
された場合である。このように2倍速の出力ストリーム
を要求された場合には、速度比K=2に対応した2つの
単位ストリームst#0,st#1を要求ストリームに
割り当てる。具体的には、フェーズ0で単位バッファB
0を割り当てて、磁気ディスクドライブユニット24か
ら読み出した一定データ長のストリームをディスクリー
ドDR1として格納する。次のフェーズ1,2では、基
準速度の2倍の要求速度で単位バッファB0からストリ
ームを読み出して外部に供給する外部出力AW1,AW
2を送る。またフェーズ1にあっては、単位バッファB
4を割り当ててディスクリードDR2を行う。
【0051】単位バッファB0はフェーズ3,4のタイ
ミングでは空きとなることから、このタイミングで単位
バッファB4からの外部出力AW3,AW4を行う。こ
のようなフェーズごとの単位バッファの割当てにより、
2つの単位ストリームst#0,st#1を使用して、
基準速度の2倍の要求速度で外部出力AW1〜AW20
を跡切れることなく連続的に行うことができる。
【0052】図13は、図12の2倍速出力ストリーム
におけるスケジュールテーブル28のストリーム割当て
に使用する有効エリアの値を表わす。図14は、要求速
度が基準速度の3倍となる速度比K=3の場合のストリ
ーム割当てである。要求速度が基準速度の3倍となる場
合には、1つの要求ストリームに3つの単位ストリーム
st#0,st#1,st#2を割り当てる。まず、フ
ェーズ0で単位バッファB0を割り当てて、ディスクリ
ードDR1を行う。次のフェーズ1,2で外部出力AW
1,AW2を行うが、要求速度が基準速度の3倍である
ことから、フェーズ1の時間にフェーズ2の3分の1の
時間を加えた時間t1で外部出力を終了する。
【0053】一方、フェーズ1のタイミングで単位バッ
ファB4を割り当てて、2回目のディスクリードDR2
を行っている。そして次のフェーズ2で単位バッファB
0における外部出力AW2が3分の1の時間を使用して
終了すると、同じフェーズ2の残り3分の2の時間に次
のフェーズ3の3分の2を加えた時間でディスクリード
DR2のストリームを外部出力AW3,AW4として行
う。
【0054】また、フェーズ2で3回目のディスクリー
ドDR3を行っており、次のフェーズ3で単位バッファ
B4からの外部出力A4は、その3分の2の時間で終了
することから、この時点で単位バッファB3の割当てに
切り替え、次のフェーズ4を加えてディスクリードDR
3の外部出力AW5,AW6を行う。以下、同様にし
て、基準速度の3倍の要求速度によって外部出力AW1
〜AW30をフェーズp=0〜19ごとに繰り返す。
【0055】図15は、図14の3倍速ストリームにお
けるスケジュールテーブルの割当て有効領域のデータを
表わす。図16は、要求速度が基準速度の4倍となる速
度比K=4の場合のストリーム割当てである。要求速度
が基準速度の4倍となる場合には、4つの単位ストリー
ムst#0〜st#3を割り当てる。この場合には、要
求速度とディスクアクセス速度が一致している場合であ
る。したがって、フェーズ0で単位バッファB0を割り
当てて最初のディスクリードDR1を行い、次のフェー
ズ1で、その外部出力AW1を行う。同時に、単位バッ
ファB0を割り当てて2回目のディスクリードDR2を
行い、次のフェーズ2で外部出力AW2を行う。
【0056】以下、同様に、同じフェーズで2つの単位
バッファを割り当てながらディスクリードと外部出力を
同時に行うことで、4倍速の要求速度によりフェーズ0
〜19で外部出力AW1〜AW20を繰り返すようにな
る。図17は、図16の4倍速ストリームで使用するス
ケジュールテーブルの有効領域の値である。なお、図1
2〜図17は出力ストリームの割当てを例にとっている
が、入力ストリームについても同様である。
【0057】図18のフローチャートは、本発明のスト
リーム割当処理である。まずステップS1で、要求速度
を読み込み、ステップS2で、速度比Kを算出する。続
いてステップS3で、速度比Kを判定し、K=1の基準
速度、K=2の2倍速、K=3の3倍速またはK=4の
4倍速のそれぞれについて、ステップS4〜S7で速度
比Kに応じた数の単位ストリームを割り当ててストリー
ムの供給を行う。
【0058】図19は、図18のストリーム割当てに続
くストリーム入出力処理である。この処理は現在サービ
ス中の各ストリームに対し、並列に実行される。まずス
テップS1でストリームに割当てられている最も小さい
単位ストリーム番号をj0 とし、ステップS2で、単位
バッファの切替タイミングか否かチェックしている。単
位バッファの切替タイミングに達すると、ステップS3
に進み、現在のフェーズpと現在使用中の単位ストリー
ム番号jにより、次のストリーム番号j´を j´=(j−j´+1) mod K+j0 から得る。ただし、j0 は、ストリームに割り当てた最
も小さい単位ストリーム番号、Kは速度比である。
【0059】続いてステップS4で、現在のフェーズp
と次に使用する単位ストリーム番号j´によってスケジ
ュールテーブル28を参照し、単位バッファを選択す
る。続いてステップS5で、選択した単位バッファを使
用してストリームの外部入出力とディスク装置側に対す
る読み書きを行い、図4のメインルーチンにリターンす
る。 4.単位ストリームの回収とガベージコレクション 図4のメインルーチンのフローチャートにおいて、ステ
ップS4でストリーム割当処理を行い、ステップS5で
ストリームの入出力処理を行うと、ステップS6でスト
リームの終了があるかどうかチェックする。終了したス
トリームがあれば、ステップS7で単位ストリームを回
収し、未使用の単位ストリームに戻す回収処理を行う。
【0060】次にステップS8で、回収により未使用と
なった単位ストリームの番号j1が現在使用中の単位ス
トリームのストリーム番号j2より小さい場合には、使
用中の単位ストリームを番号の小さい未使用となった単
位ストリームに変更するガベージコレクションの処理を
行う。このガベージコレクション処理を具体的に説明す
ると次のようになる。
【0061】図20は、ある時点における要求ストリー
ムとその基準速度に対する要求速度の速度比を示す。こ
こで、要求ストリーム#Aの要求速度は基準速度の2倍
であり、速度比は2となっている。また、要求ストリー
ム#B,#Cは共に基準速度であり、速度比は1となっ
ている。このような要求速度をもつ要求ストリーム#
A,#B,#Cに対し、図21(A)に示すように、要
求速度に応じた数の単位ストリームの割当てが行われて
いる。
【0062】即ち、要求ストリーム#Aは速度比がK=
2であることから、2本の単位ストリームst#0,s
t#1を割り当てている。また、要求ストリーム#B,
#Cは基準速度で速度比K=1であることから、1本の
単位ストリームst#2,st#3のそれぞれを割り当
てている。この図21(A)の単位ストリームの割当状
態で、要求ストリーム#Aの入出力が終了すると、要求
ストリーム#Aに割り当てていた単位ストリーム#0,
#1をそれぞれ回収し、図21(B)のように未使用
(NULL)とする。このように、回収により未使用と
なった単位ストリーム#0,#1が、現在使用中の単位
ストリーム#2,#3に対しストリーム番号が小さい場
合には、図4のステップS8のガベージコレクション処
理を行う。
【0063】最初、単位ストリーム#2を割り当ててい
る要求ストリーム#Bについてガベージコレクションを
行い、図21(C)のように、要求ストリーム#Bに対
する単位ストリームをst#2から先頭のst#0に変
更する。次に図21(D)のように、単位ストリームs
t#3を割り当てていた要求ストリーム#Cを、未使用
となった単位ストリーム#1に変更する処理を行う。
【0064】このようなガベージコレクションによっ
て、未使用の単位ストリームは常にストリーム番号の大
きい側に連続し、その結果、未使用の単位ストリームは
常にまとめられており、基準速度を越える要求速度のス
トリーム入出力要求に対する複数の連続した単位ストリ
ームの割当てを可能とする。例えば図22のように、要
求ストリームBに単位ストリームst#0を割り当て、
要求ストリームCに単位ストリームst#2を割り当
て、単位ストリーム#1,st#3が未使用となってい
た場合、基準速度に対し2倍の要求速度をもつストリー
ムの入出力要求があると、2つの単位ストリームを割り
当てる必要がある。しかし、この場合には未使用の単位
ストリームst#1,st#3が連続していないことか
ら、2つの単位ストリームを割り当てることができな
い。
【0065】したがって、未使用の単位ストリームをス
トリーム番号の大きい側にまとめるガベージコレクショ
ンを行っておくことで、基準速度を越える要求速度のス
トリーム入出力要求に対し、連続したストリーム番号を
もつ複数の空き状態にある単位ストリームを適切に割り
当てることができる。次に、ガベージコレクションにお
ける単位ストリームの割当変更を説明する。
【0066】図23は、出力ストリームにおける単位ス
トリームの変更である。いま出力ストリーム#Bに単位
ストリームst#2を割り当てており、未使用の単位ス
トリームst#0に切り替える。この単位ストリームの
切替えは、図7のように、各単位ストリームst#0〜
st#3が各単位バッファB0〜B4においてN+1の
フェーズ数の繰返し構造をもっていることを利用する。
例えば番号の小さい切替先の単位ストリームをst#j
1、番号の大きい切替元の単位ストリームをst#j2と
すると、単位ストリームst#j1が単位ストリームst
#j2よりフェーズが(j2−j1)進んでいることを利用し
て、単位ストリームを切り替える。
【0067】図23の場合は、j1=0、j2=2となるこ
とから、 (j2−j1)=2フェーズ となる。ここで単位ストリームst#2は、切替直前の
出力ストリーム#Bに割当てており、最初のフェーズで
単位バッファへディスクリードDR1を行い、残り4つ
のフェーズで同じバッファから外部出力AW1〜AW4
を行っている。
【0068】図24は、切替前の単位ストリームst#
2の割当てによる出力ストリーム(要求ストリーム)B
のアクセス領域を示し、オフセットx〜x+Δxが1回
のディスクリードDR1によるアクセスブロックとな
る。図23で、単位ストリームst#2から単位ストリ
ームst#0に切り替える際には、切替前の単位ストリ
ームst#2から両者のフェーズ差(j2−j1)=2
フェーズ離れたタイミングで、切替先の単位ストリーム
st#0のディスクリードDR2を行う。このディスク
リードDR2で読み出す領域は、(j2−j1)分の位
相差を考慮し、 {x+Δx−(j2−j1)Δx/N}〜 {x+2Δ
x−(j2−j1)Δx/N} であるから、即ち、 (x+Δx/2) 〜 (x+Δx/2+Δx) となる。
【0069】図25は、切替先単位ストリームst#0
のディスクリードDR2で読み出す領域を一般形として
示している。まず、単位ストリームst#2をそのまま
継続した場合の次のディスクリードで読み出す領域は、 (x+Δx)〜(x+2Δx) となる。これに対し、単位ストリームst#0のディス
クリードDR2で読み出すブロックは、(j2−j1)=2
フェーズだけ元に戻った領域 (x+2Δx/4) 〜 (6Δx/4) を読み出す。
【0070】図26は、図23のディスクリードDR
1,DR2の対象となるストリームの領域であり、各外
部出力の単位をAW1,AW2,・・・で示している。
まず、切替直前の単位ストリームst#2のディスクリ
ードDR1にあっては、AW1〜AW4で示す4単位の
データをリードする。次の切替先の単位ストリームst
#0のディスクリードDR2にあっては、AW3〜AW
6の4単位をリードする。このため、AW3,AW4の
2ブロックは重複してリードされることになる。
【0071】再び図23を参照するに、切替先単位スト
リームst#0でのディスクリードDR2により、AW
3〜AW6がリードされても、この時点では切替えが行
われていないことから、単位ストリームst#2の割当
バッファからの外部出力AW3,AW4が行われる。単
位ストリームst#2の外部出力が終了すると、この時
点で単位ストリームst#0への切替えが行われる。
【0072】このとき単位ストリームst#0の割当単
位バッファには、ディスクリードDR2によりAW3〜
AW6が既に格納されていることから、単位ストリーム
st#2からの切替時にはAW5からバッファ読出しを
開始し、AW6まで外部出力する。これ以降は、外部出
力AW6と同一フェーズで次のディスクリードDR2が
切り替えられた単位ストリームst#0について行わ
れ、切替先の単位ストリームst#0の割当てによる出
力ストリームの供給状態となる。このため、単位ストリ
ームst#2から単位ストリームst#0の割当てに切
り替えても、外部ストリームはAW1〜AW6と連続的
に供給できる。
【0073】図27は、要求ストリームが入力ストリー
ムの場合の単位ストリームの割当切替えである。図27
も、図23の出力ストリームの切替えと同様、切替元の
単位ストリームがst#2であり、切替先の単位ストリ
ームがst#0となっている。したがって、両者のフェ
ーズ差は同じ2フェーズである。まず切替直前の単位ス
トリームst#2にあっては、外部入力AR1,AR2
の2ブロック分のストリーム入力があった時点でフェー
ズ差=2に達することから、切替先の単位ストリームs
t#0に切り替え、続く外部入力AR3を、単位ストリ
ーム#0の割当てに対応する単位バッファに格納する。
【0074】単位ストリームst#0への割当て切替後
は、外部入力AR3〜AR6を順次入力する。ここで、
外部入力AR5のフェーズにあっては、切替前の単位ス
トリームst#2のディスクライトDW1のフェーズで
あり、このディスクライトDW1を有効に行って、切替
前の単位ストリームst#2の外部入力AR1,AR2
をディスクに書き込む。
【0075】続いて、切替先の単位ストリームst#0
で外部入力AR6が終了すると、ディスクライトDW2
のフェーズとなり、外部入力AR3〜AR6として得た
4ブロックのデータをディスクライトDW2によってデ
ィスク側に書き込む。このとき切替前の単位ストリーム
st#2のディスクライトDW1によってAR1,AR
2のデータに加え、2単位の空きデータも書き込まれて
いるので、次の切替先の単位ストリームst#0のディ
スクライトDW2による外部入力AR3〜AR6の内、
AR3とAR4については重複した書込みが行われる。
【0076】この結果、ディスクトラック上の書込デー
タは単位ストリームst#2からst#0への切替えが
あっても、連続した外部入力AR1〜AR6のデータと
なる。図28は、図27の入力ストリームの割当て単位
ストリームの切替えにおける切替元単位ストリームst
#2の入力領域x〜x+Δxと、切替先の単位ストリー
ムst#0における切替後の入力領域 {x+Δx−(j2−j1)Δx/N}〜 {x+2Δ
x−(j2−j1)Δx/N} を示している。
【0077】図29のフローチャートは、本発明のガベ
ージコレクション処理である。まずステップS1で、ガ
ベージ対象は出力ストリームか否かチェックする。出力
ストリームであれば、ステップS2に進み、切替元の単
位ストリームと切替先の単位ストリームのフェーズ位相
差に基づく切替先の空きストリームのディスクリードの
タイミングか否かチェックする。
【0078】ディスクリードのタイミングであれば、ス
テップS3で、ディスクリードを行って、該当する単位
バッファに格納する。続いてステップS4で、ガベージ
対象ストリーム(切替元単位ストリーム)のバッファ出
力終了か否かチェックし、終了であれば、ステップS5
で、出力ストリーム、単位出力ストリームを切り替え
る。
【0079】一方、ガベージ対象が入力ストリームであ
った場合には、ステップS6に進み、同じく切替先の空
きストリームの開始タイミングか否かチェックし、開始
タイミングであれば、ステップS7で、単位ストリーム
を切り替える。続いてステップS8で、ガベージ対象ス
トリーム(切替元単位ストリーム)のディスクライトの
タイミングか否かチェックする。ディスクライトのタイ
ミングであれば、ステップS9で、切替前に単位バッフ
ァに格納していた入力ストリームの各ブロックをディス
クに書き込むライトアクセスを行う。5.他の動作環境 図29は、本発明のストリーム処理装置の動作環境の他
の実施例である。この実施例にあっては、外部入出力装
置として入出力装置16−1〜16−3を3つ設け、更
に記憶装置についても3つのディスクコントローラ20
−1〜20−3と各ディスクコントローラ20−1〜2
0−3ごとに2台ずつの磁気ディスクドライブユニット
24−11,24−21,24−12,24−22,2
4−13,24−23を設けたことを特徴とする。機能
的には、図2の実施例によるストリームの入出力機能を
3つ設けたことに相当する。
【0080】図30は、本発明のストリーム処理装置の
動作環境の他の実施例であり、図29の実施例に更にホ
ストインタフェース34を設け、ホストコンピュータか
らのコマンドに基づいたストリーム入出力処理の管理を
行えるようにしたことを特徴とする。尚、上記の実施例
は、基準速度に対しディスク側のアクセス速度を4倍と
することで4つの単位ストリームst#0〜st#3の
割当スケジュールを作成して入出力処理を行う場合を例
にとっているが、基準速度とアクセス速度の速度比を適
宜に定めることで、任意の数の単位ストリームを使用し
た割当スケジュールを作成してストリームの入出力処理
を行ってもよい。勿論、本発明は実施例に示した数値に
よる限定は受けない。
【0081】
【発明の効果】以上説明してきたように本発明によれ
ば、次の効果が得られる。まず、予め用意されたスケジ
ュールを使用してストリームの入出力要求を処理するた
め、要求を受けた際のスケジューリングに時間がかから
ず、高速に対応できる。
【0082】また、割当て可能な全ての単位ストリーム
についてスケジュールを作成しているため、外部入出力
装置、記憶装置、バッファメモリで構成される資源の無
駄使いを発生せず、ストリームの入出力要求に応じて必
要な最大数の単位ストリームを使用したストリーム供給
ができる。更に、同時に供給できる単位ストリームの最
大数と現在供給している単位ストリームの数が簡単に管
理できるため、新たなストリームの入出力要求があった
場合、要求速度に応じた空き単位ストリームがなければ
直ちにビジィ応答を返すことができる。
【0083】更に、単位ストリームの使用状態は簡単で
あることから、外部から同時に供給可能な単位ストリー
ムの最大数と現在供給している単位ストリームの数を管
理でき、自己の要求速度に見合った空き状態にある単位
ストリームが存在しなければ、ストリームの入出力要求
を行ってもビジィ応答となってしまうことが予め判り、
ビジィ応答となるような要求は最初から出さないで済ま
すことができる。したがって、外部のユーザにおけるス
トリームの入出力要求を効率良く行うことができる。
【図面の簡単な説明】
【図1】本発明の原理説明図
【図2】本発明の動作環境の実施例のブロック図
【図3】本発明の機能のブロック図
【図4】本発明のストリームの全体処理のフローチャー
【図5】出力ストリームのディスクリードとバッファ割
当ての説明図
【図6】入力ストリームのバッファ割当てとディスクラ
イトの説明図
【図7】N=4の場合の単位バッファとフェーズに対す
る単位ストリームの割当てのスケジュールの説明図
【図8】スケジュールテーブルの説明図
【図9】スケジュール作成処理のフローチャート
【図10】基準速度で出力要求と出力要求の各1に対す
る単位ストリーム割当ての説明図
【図11】図10に対応したスケジュールテーブルの説
明図
【図12】要求速度が2倍の出力要求に対する単位スト
リームの割当ての説明図
【図13】図12に対応したスケジュールテーブルの説
明図
【図14】要求速度が3倍の出力要求に対する単位スト
リームの割当ての説明図
【図15】図14に対応したスケジュールテーブルの説
明図
【図16】要求速度が4倍の出力要求に対する単位スト
リームの割当ての説明図
【図17】図16に対応したスケジュールテーブルの説
明図
【図18】ストリーム割当処理のフローチャート
【図19】ストリーム入出力処理のフローチャート
【図20】要求ストリームと要求速度の速度比のテーブ
ル説明図
【図21】単位ストリームの割当、終了、回収及びガベ
ージコレクションのテーブル説明図
【図22】未使用の単位ストリームが不連続となったテ
ーブル説明図
【図23】出力単位ストリームの切替えの説明図
【図24】切替直前の切替元の単位ストリームのアクセ
スブロックの説明図
【図25】切替元の次のアクセスブロックと切替先のア
クセスブロックの説明図
【図26】出力単位ストリーム切替え時のディスクリー
ドのディスクトラック説明図
【図27】入力単位ストリームの切替えの説明図
【図28】切替元の次のアクセスブロックと切替先のア
クセスブロックの説明図
【図29】ガベージコレクション処理のフローチャート
【図30】本発明の動作環境の他の実施例のブロック図
【図31】本発明の動作環境の他の実施例のブロック図
【符号の説明】
10:MPU 12:システムバス 14:ローカルメモリ 15−1〜15−N:外部インタフェース 16,16−1〜16−3:入出力装置(外部入出力装
置) 18:マルチポートメモリ(バッファメモリ) 20,20−1〜20−3:ディスクコントローラ 22:ディスクバス 24−1〜24−3,24−11,24−12,24−
21,24−22,24−31,24−32:磁気ディ
スクドライブユニット 25:記憶装置 26:スケジュール作成部 28:スケジュールテーブル 30:ストリーム割当部 32:ガベージ処理部
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成7年8月28日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0058
【補正方法】変更
【補正内容】
【0058】図19は、図18のストリーム割当てに続
くストリーム入出力処理である。この処理は現在サービ
ス中の各ストリームに対し、並列に実行される。まずス
テップS1で単位バッファの切り替えタイミングか否か
チェックしている。単位バッファの切り替えタイミング
に達すると、ステップS2に進み、該当する単位バッフ
ァを使用してストリームの外部入出力とディスク装置側
に対する読み書きを行い、図4のメインルーチンにリタ
ーンする。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0059
【補正方法】変更
【補正内容】
【0059】4.単位ストリームの回収とガベージコレ
クション 図4のメインルーチンのフローチャートにおいて、ステ
ップS4でストリーム割当処理を行い、ステップS5で
ストリームの入出力処理を行うと、ステップS6でスト
リームの終了があるかどうかチェックする。終了したス
トリームがあれば、ステップS7で単位ストリームを回
収し、未使用の単位ストリームに戻す回収処理を行う。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0069
【補正方法】変更
【補正内容】
【0069】図25は、切替先単位ストリームst#0
のディスクリードDR2で読み出す領域を一般形として
示している。まず、単位ストリームst#2をそのまま
継続した場合の次のディスクリードで読み出す領域は、 (x+△x)〜(x+2△x) となる。これに対し、単位ストリームst#0のディス
クリードDR2で読み出すブロックは、(j2−j1)=2
フェーズだけ元に戻った領域 (x+2△x/4) 〜 (x+6△x/4) を読み出す。
【手続補正4】
【補正対象書類名】図面
【補正対象項目名】図19
【補正方法】変更
【補正内容】
【図19】

Claims (32)

    【特許請求の範囲】
  1. 【請求項1】外部に対するストリームの入出力要求を複
    数受け、要求されたストリームの送受信を所定の基準速
    度又はその所定倍数の速度で並列的に行う外部入出力装
    置と、 ストリームを格納し、ストリームのリード又はライト
    を、前記基準速度のN倍のアクセス速度により所定デー
    タ長のブロック単位で行う記憶装置と、 前記外部入出力装置と記憶装置の間に設けられ、ストリ
    ームを前記ブロック単位で一時的に記憶するバッファメ
    モリと、 前記基準速度で同時に供給可能な複数の単位ストリーム
    を定め、全ての単位ストリームに対して前記記憶装置、
    入出力装置、バッファメモリの時間的な使用を割り当て
    るスケジュールを作成するスケジュール作成部と、 ストリームの入出力要求時に、要求速度に応じて未使用
    の前記単位ストリームを必要な個数割り当て、割り当て
    た単位ストリームのスケジュールに従って要求ストリー
    ムを供給するストリーム割当部と、を備えたことを特徴
    とするストリーム処理装置。
  2. 【請求項2】請求項1記載のストリーム処理装置に於い
    て、前記スケジュール作成部は、前記記憶装置のアクセ
    ス速度を前記基準速度で割った速度比で決まるN個の単
    位ストリームについて前記スケジュールを作成すること
    を特徴とするストリーム処理装置。
  3. 【請求項3】請求項2記載のストリーム処理装置に於い
    て、 前記バッファメモリは、バッファ領域を前記単位ストリ
    ーム数Nに1を加えた(N+1)個の単位バッファBi
    (i=0〜N)に分割し、各単位バッファは前記記憶装
    置の1回のアクセスで転送される前記1ブロック分の領
    域であり、 前記スケジュール作成部は、周期N(N+1)で定義さ
    れる繰返し周期Tをフェーズp=0〜(T−1)に分
    け、前記単位バッファ番号をi、前記単位ストリーム番
    号をjとした場合、 j={(p+i) div (N+1)−i} mod N (但し、A div BはA/Bによる商の整数部分であ
    り、A mod BはA/Bによる剰余であり、この剰余が
    負の場合はBを加えた値とする)により求めたストリー
    ム番号jを割り当てたスケジュールを作成することを特
    徴とするストリーム処理装置。
  4. 【請求項4】請求項2記載のストリーム処理装置に於い
    て、 前記バッファメモリは、バッファ領域を前記単位ストリ
    ーム数Nに1を加えた(N+1)個の単位バッファBi
    (i=0〜N)に分割し、各単位バッファは前記記憶装
    置の1回のアクセスで転送される前記1ブロック分の領
    域であり、 前記スケジュール作成部は、周期N(N+1)で定義さ
    れる繰返し周期Tをフェーズp=0〜(T−1)に分
    け、前記単位バッファ番号をi、前記単位ストリーム番
    号をjとした場合、 前記フェーズpが(p−j) mod N=0のとき、 i1={(p−j) div N−j} mod (N+1) i2=(i1−1) mod (N+1) により求めた2つのバッファ番号i1,i2の単位バッ
    ファを、ストリーム番号jの単位ストリームに割り当
    て、 前記フェーズpが(p−j) mod N≠0のとき、 i1={(p−j) div N−j} mod (N+1) により求めたバッファ番号i1の単位バッファを、スト
    リーム番号jの単位ストリームに割り当てたスケジュー
    ルを作成することを特徴とするストリーム処理装置。
  5. 【請求項5】請求項1記載のストリーム処理装置に於い
    て、前記ストリーム割当部は、要求速度を指定したスト
    リームの入出力要求時に、前記要求速度に応じた数の未
    使用の単位ストリームを、前記要求ストリームの入出力
    に割り当てることを特徴とするストリーム処理装置。
  6. 【請求項6】請求項5記載のストリーム処理装置に於い
    て、前記外部からのストリームの要求速度は、前記基準
    速度からそのN倍までの速度であり、前記ストリーム割
    当部は、前記要求速度を前記基準速度で割った速度比K
    =1〜Nに一致する数の未使用の単位ストリームを前記
    要求ストリームの入出力に割り当てることを特徴とする
    ストリーム処理装置。
  7. 【請求項7】請求項6記載のストリーム処理装置に於い
    て、前記ストリーム割当部は、前記速度比Kが小数を含
    む場合、該小数を切り上げて整数化した速度比に一致す
    る数の未使用の単位ストリームを前記要求ストリームの
    入出力に割り当てることを特徴とするストリーム処理装
    置。
  8. 【請求項8】請求項1記載のストリーム処理装置に於い
    て、前記ストリーム割当部は、前記外部からの要求スト
    リームが出力ストリームの場合、割り当てた単位ストリ
    ームのスケジュールに従って、(N+1)フェーズ毎に
    前記単位バッファを切り替え、該バッファ切替後の先頭
    フェーズで、前記記憶装置からの1ブロック分のストリ
    ームを読み出して前記単位バッファに格納し、残りNフ
    ェーズの間に前記単位バッファから前記ストリームを読
    み出して前記外部に送信させることを特徴とするストリ
    ーム処理装置。
  9. 【請求項9】請求項8記載のストリーム処理装置に於い
    て、前記ストリーム割当部は、前記出力ストリームの要
    求速度が基準速度の場合、割り当てられた単位ストリー
    ムのスケジュールに従ったバッファ切替後の先頭フェー
    ズで、前記記憶装置からの1ブロック分のストリームを
    読み出して前記単位バッファに格納し、残りNフェーズ
    の各々で前記単位バッファから(1/N)ブロック単位
    にストリームデータを順次読み出して前記外部に送信さ
    せることを特徴とするストリーム処理装置。
  10. 【請求項10】請求項8記載のストリーム処理装置に於
    いて、前記ストリーム割当部は、前記出力ストリームの
    要求速度が基準速度より大きい場合、速度比Kに応じて
    割当てられた各単位ストリームのスケジュールに従った
    バッファ切替後の先頭フェーズで、前記記憶装置からの
    1ブロック分のストリームを読み出して前記単位バッフ
    ァに格納し、次の(N/K)フェーズの各々で前記単位
    バッファから(K/N)ブロック単位にストリームを順
    次読出して前記外部に送信させることを特徴とするスト
    リームの処理装置。
  11. 【請求項11】請求項1記載のストリーム処理装置に於
    いて、前記ストリーム割当部は、前記要求ストリームが
    入力ストリームの場合、割り当てられた単位ストリーム
    のスケジュールに従ってN+1フェーズ毎に要求ストリ
    ームの前記単位バッファの割当てを切り替え、該バッフ
    ァ切替後のNフェーズの間に、前記外部から受信したス
    トリームを前記単位バッファに格納し、最終フェーズで
    前記単位バッファから1ブロック分読み出して前記記憶
    装置に書き込ませることを特徴とするストリーム処理装
    置。
  12. 【請求項12】請求項11記載のストリーム処理装置に
    於いて、前記ストリーム割当部は、前記入力ストリーム
    の要求速度が基準速度の場合、割当られた単位ストリー
    ムのスケジュールに従ったバッファ切替後のNフェーズ
    の各々で、前記外部から(1/N)ブロック単位に受信
    したストリームを前記単位バッファに順次格納し、最終
    フェーズで前記単位バッファから1ブロック分のストリ
    ームを読出して前記記憶装置に書込ませることを特徴と
    するストリーム処理装置。
  13. 【請求項13】請求項11記載のストリーム処理装置に
    於いて、前記ストリーム割当部は、前記入力ストリーム
    の要求速度が基準速度より大きい場合、速度比Kに応じ
    て割り当てられた各単位ストリームのスケジュールに従
    ったバッファ切替後の(N/K)フェーズの各々で、外
    部から(K/N)ブロック単位に受信したストリームを
    前記単位バッファに順次格納し、最終フェーズで前記単
    位バッファから1ブロック分のストリームを読み出して
    前記記憶装置に書き込ませることを特徴とするストリー
    ム処理装置。
  14. 【請求項14】請求項1記載のストリーム処理装置に於
    いて、前記ストリーム割当部は、前記要求ストリームの
    供給が終了した場合、割り当てていた単位ストリームを
    回収して空きストリームとすることを特徴とするストリ
    ーム処理装置。
  15. 【請求項15】請求項1記載のストリーム処理装置に於
    いて、前記ストリーム割当部は、ストリームの入出力要
    求を受けた時、未使用の単位ストリームの中のストリー
    ム番号jの最も小さい単位ストリームを割当てることを
    特徴とするストリーム処理装置。
  16. 【請求項16】請求項15記載のストリーム処理装置に
    於いて、前記ストリーム割当部は、単位ストリームを回
    収して割当中の単位ストリームより小さい番号の空きス
    トリームが発生した場合、割当中の単位ストリームを番
    号の小さい空き単位ストリームに変更することを特徴と
    するストリーム処理装置。
  17. 【請求項17】外部に対するストリームの入出力要求を
    複数受け、要求されたストリームの送受信を所定の基準
    速度又はその所定倍数の速度で並列的に行う外部入出力
    装置と、 ストリームを格納し、ストリームのリード又はライト
    を、前記基準速度のN倍のアクセス速度により所定デー
    タ長のブロック単位で行う記憶装置と、 前記外部入出力装置と記憶装置の間に設けられ、ストリ
    ームを前記ブロック単位で一時的に記憶するバッファメ
    モリと、を備えた装置のストリーム処理方法に於いて、 基準速度で同時に供給可能な複数の単位ストリームを定
    め、全ての単位ストリームに対して前記記憶装置、入出
    力装置、バッファメモリの時間的な使用を割り当てるス
    ケジュールを作成し、 ストリームの入出力要求時に、要求速度に応じて未使用
    の単位ストリームを必要な個数割り当て、割り当てた単
    位ストリームのスケジュールに従って要求ストリームを
    供給することを特徴とするストリーム処理方法。
  18. 【請求項18】請求項17記載のストリーム処理方法に
    於いて、前記アクセス速度を前記基準速度で割った速度
    比Nで決まる数の単位ストリームについて前記スケジュ
    ールを作成することを特徴とするストリーム処理方法。
  19. 【請求項19】請求項18記載のストリーム処理方法に
    於いて、 前記バッファメモリは、バッファ領域を前記単位ストリ
    ーム数Nに1を加えた(N+1)個の単位バッファBi
    (i=0〜N)に分割し、各単位バッファは前記記憶装
    置の1回のアクセスで転送される前記1ブロック分の領
    域であり、 前記スケジュール作成部は、周期N(N+1)で定義さ
    れる繰返し周期Tをフェーズp=0〜(T−1)に分
    け、前記単位バッファ番号をi、前記単位ストリーム番
    号をjとした場合、 j={(p+i) div (N+1)−i} mod N (但し、A div BはA/Bによる商の整数部分であ
    り、A mod BはA/Bによる剰余であり、この剰余が
    負の場合はBを加えた値とする)により求めたストリー
    ム番号jを割り当てたスケジュールを作成することを特
    徴とするストリーム処理方法。
  20. 【請求項20】請求項17記載のストリーム処理方法に
    於いて、 前記バッファメモリは、バッファ領域を前記単位ストリ
    ーム数Nに1を加えた(N+1)個の単位バッファBi
    (i=0〜N)に分割し、各単位バッファは前記記憶装
    置の1回のアクセスで転送される前記1ブロック分の領
    域であり、 前記スケジュールの作成は、N(N+1)で定義される
    繰返し周期Tをフェーズp=0〜(T−1)に分け、前
    記単位バッファの番号をi、前記単位ストリームの番号
    をjとした場合、 前記フェーズpが(p−j) mod N=0のとき、 i1={(p−j) div N−j} mod (N+1) i2=(i1−1) mod (N+1) により求めた2つのバッファ番号i1,i2の単位バッ
    ファを、ストリーム番号jの単位ストリームに割り当
    て、 前記フェーズpが(p−j) mod N≠0のとき、 i1={(p−j) div N−j} mod (N+1) により求めたバッファ番号i1の単位バッファを、スト
    リーム番号jの単位ストリームに割り当てることを特徴
    とするストリーム処理方法。
  21. 【請求項21】請求項17記載のストリーム処理方法に
    於いて、要求速度を指定したストリームの入出力要求時
    に、前記要求速度に応じた数の未使用の単位ストリーム
    を、要求ストリームの入出力に割り当てることを特徴と
    するストリーム処理方法。
  22. 【請求項22】請求項21記載のストリーム処理方法に
    於いて、前記ストリームの要求速度は、前記基準速度か
    らそのN倍までの速度であり、前記要求速度を前記基準
    速度で割った速度比K=1〜Nに一致する数の未使用の
    単位ストリームを前記要求ストリームの入出力に割り当
    てることを特徴とするストリーム処理方法。
  23. 【請求項23】請求項22記載のストリーム処理方法に
    於いて、前記速度比Kが小数を含む場合、該小数を切り
    上げて整数化した速度比に一致する数の未使用の単位ス
    トリームを前記要求ストリームの入出力に割り当てるこ
    とを特徴とするストリーム処理方法。
  24. 【請求項24】請求項17記載のストリーム処理方法に
    於いて、前記要求ストリームが出力ストリームの場合、
    割り当てられた単位ストリームのスケジュールに従って
    N+1フェーズ毎に要求ストリームの前記単位バッファ
    を切り替え、該バッファ切替後の先頭フェーズで、前記
    記憶装置からの1ブロック分のストリームを読み出して
    前記単位バッファに格納し、残りNフェーズの間に前記
    単位バッファから前記ストリームを読み出して前記外部
    に送信させることを特徴とするストリーム処理方法。
  25. 【請求項25】請求項24記載のストリーム処理方法に
    於いて、前記出力ストリームの要求速度が基準速度の場
    合、割り当てられた単位ストリームのスケジュールに従
    ったバッファ切替後の先頭フェーズで、前記記憶装置か
    らの1ブロック分のストリームを読み出して前記単位バ
    ッファに格納し、残りNフェーズの各々で前記単位バッ
    ファからストリームを(1/N)ブロック単位に順次読
    出して外部に送信させることを特徴とするストリーム処
    理方法。
  26. 【請求項26】請求項24記載のストリーム処理装置に
    於いて、前記出力ストリームの要求速度が基準速度より
    大きい場合、速度比Kに応じて割り当てられた各単位ス
    トリームのスケジュールに従ったバッファ切替後の先頭
    フェーズで、前記記憶装置からの1ブロック分のストリ
    ームを読み出して前記単位バッファに格納し、次の(N
    /K)フェーズの各々で前記単位バッファからストリー
    ムを(K/N)ブロック単位に順次読み出して前記外部
    に送信させることを特徴とするストリーム処理方法。
  27. 【請求項27】請求項17記載のストリーム処理方法に
    於いて、前記要求ストリームが入力ストリームの場合、
    割り当てられた単位ストリームのスケジュールに従って
    N+1フェーズ毎に前記単位バッファの割当てを切り替
    え、該バッファ切替後のNフェーズの間に、前記外部か
    ら受信したストリームを前記単位バッファに格納し、最
    終フェーズで前記単位バッファから1ブロック分のスト
    リームを読み出して前記記憶装置に書き込ませることを
    特徴とするストリーム処理方法。
  28. 【請求項28】請求項27記載のストリーム処理方法に
    於いて、前記入力ストリームの要求速度が基準速度の場
    合、割り当てられた単位ストリームのスケジュールに従
    ったバッファ切替後のNフェーズの各々で、前記外部か
    ら(1/N)ブロック単位に受信したストリームを前記
    単位バッファに順次格納し、最終フェーズで前記単位バ
    ッファから1ブロック分のストリームを読み出して前記
    記憶装置に書き込ませることを特徴とするストリーム処
    理方法。
  29. 【請求項29】請求項27記載のストリーム処理方法に
    於いて、前記入力ストリームの要求速度が基準速度より
    大きい場合、速度比Kに応じて割り当てられた各単位ス
    トリームのスケジュールに従った単位バッファ切替後の
    (N/K)フェーズの各々で、前記外部から(K/N)
    ブロック単位に受信したストリームを前記単位バッファ
    に順次格納し、最終フェーズで前記単位バッファから1
    ブロック分のストリームを読み出して前記記憶装置に書
    き込ませることを特徴とするストリーム処理方法。
  30. 【請求項30】請求項17記載のストリーム処理装置に
    於いて、前記要求ストリームの入力又は出力が終了した
    場合、割り当てていた単位ストリームを回収して空きス
    トリームとすることを特徴とするストリーム処理方法。
  31. 【請求項31】請求項17記載のストリーム処理方法に
    於いて、前記ストリームの入出力要求を受けた時、未使
    用の単位ストリームの中のストリーム番号jの最も小さ
    い単位ストリームを割り当てることを特徴とするストリ
    ーム処理方法。
  32. 【請求項32】請求項31記載のストリーム処理方法に
    於いて、単位ストリームを回収して割当中の単位ストリ
    ームより小さい番号の空きストリームが発生した場合、
    割当中の単位ストリームを番号の小さい空き単位ストリ
    ームに変更することを特徴とするストリーム処理方法。
JP6283081A 1994-11-17 1994-11-17 ストリーム処理装置及び方法 Withdrawn JPH08147234A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP6283081A JPH08147234A (ja) 1994-11-17 1994-11-17 ストリーム処理装置及び方法
US08/520,299 US5640597A (en) 1994-11-17 1995-08-28 Method and apparatus for servicing simultaneously a plurality of requests for data streams

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6283081A JPH08147234A (ja) 1994-11-17 1994-11-17 ストリーム処理装置及び方法

Publications (1)

Publication Number Publication Date
JPH08147234A true JPH08147234A (ja) 1996-06-07

Family

ID=17660972

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6283081A Withdrawn JPH08147234A (ja) 1994-11-17 1994-11-17 ストリーム処理装置及び方法

Country Status (2)

Country Link
US (1) US5640597A (ja)
JP (1) JPH08147234A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010525738A (ja) * 2007-04-26 2010-07-22 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ビデオ・オン・デマンドストリーミングのためのフレームの正確な配信
US8239588B2 (en) 2008-04-02 2012-08-07 Nec Corporation System and method for improved I/O node control in computer system

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3617879B2 (ja) * 1995-09-12 2005-02-09 株式会社東芝 実時間ストリームサーバのディスク修復方法及びディスク修復装置
US5870551A (en) * 1996-04-08 1999-02-09 Lucent Technologies Inc. Lookahead buffer replacement method using ratio of clients access order offsets and buffer data block offsets
US5907683A (en) * 1996-12-02 1999-05-25 International Business Machines Corporation System for maintaining a quality of service in a multimedia datastream system by inhibiting blocking of real-time writes to a multimedia file system
US6427184B1 (en) * 1997-06-03 2002-07-30 Nec Corporation Disk drive with prefetch and writeback algorithm for sequential and nearly sequential input/output streams
US6535963B1 (en) 1999-06-30 2003-03-18 Cisco Technology, Inc. Memory apparatus and method for multicast devices
JP3440219B2 (ja) * 1999-08-02 2003-08-25 富士通株式会社 入出力装置及びディスク・タイムシェアリング方法
US6587936B1 (en) 2001-02-21 2003-07-01 Cisco Technology, Inc. Multi-bank memory access method and apparatus
US7743169B1 (en) * 2001-10-01 2010-06-22 Avaya, Inc. Multi-phase detection algorithm
US8375137B2 (en) * 2008-07-22 2013-02-12 Control4 Corporation System and method for streaming audio using a send queue
US8250122B2 (en) * 2009-11-24 2012-08-21 International Business Machines Corporation Systems and methods for simultaneous file transfer and copy actions
JP2012221340A (ja) * 2011-04-12 2012-11-12 Fujitsu Ltd 制御方法及びプログラム、並びにコンピュータ

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5249292A (en) * 1989-03-31 1993-09-28 Chiappa J Noel Data packet switch using a primary processing unit to designate one of a plurality of data stream control circuits to selectively handle the header processing of incoming packets in one data packet stream
JPH043119A (ja) * 1990-04-20 1992-01-08 Canon Inc 表示制御装置
US5497187A (en) * 1991-11-29 1996-03-05 Scientific-Atlanta, Inc. In-band/out-of-band data transmission method and apparatus for a television system
US5339413A (en) * 1992-08-21 1994-08-16 International Business Machines Corporation Data stream protocol for multimedia data streaming data processing system
US5442747A (en) * 1993-09-27 1995-08-15 Auravision Corporation Flexible multiport multiformat burst buffer
US5510905A (en) * 1993-09-28 1996-04-23 Birk; Yitzhak Video storage server using track-pairing

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010525738A (ja) * 2007-04-26 2010-07-22 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ビデオ・オン・デマンドストリーミングのためのフレームの正確な配信
US8239588B2 (en) 2008-04-02 2012-08-07 Nec Corporation System and method for improved I/O node control in computer system

Also Published As

Publication number Publication date
US5640597A (en) 1997-06-17

Similar Documents

Publication Publication Date Title
JP3251815B2 (ja) 対等サブシステム間のデータストリーミング機能を効率的に処理するコンピュータシステム
CA2069711C (en) Multi-media signal processor computer system
US6286092B1 (en) Paged based memory address translation table update method and apparatus
JP3364587B2 (ja) 通信システムで比較的大きなデータ・オブジェクトの伝送を制御するシステムと方法
US5337410A (en) Data stream concentrator providing attribute data storage and graphics pipeline access
US5832308A (en) Apparatus for controlling data transfer between external interfaces through buffer memory using a FIFO, an empty signal, and a full signal
EP1492295A1 (en) Stream data processing device, stream data processing method, program, and medium
US5983259A (en) Systems and methods for transmitting and receiving data in connection with a communications stack in a communications system
JPH08147234A (ja) ストリーム処理装置及び方法
JPH0330897B2 (ja)
JPH04213129A (ja) メモリ管理システム及びメモリ管理方法
JP2005500620A (ja) 移動するメモリブロックを備えるメモリプール
JP2845162B2 (ja) データ転送装置
US5581735A (en) System for supplying unit image data to requesting users from multiple storage devices based on directory information and token queues identifying the requester and data
US5842035A (en) Parallel computer utilizing less memory by having first and second memory areas
EP0494056A2 (en) Dynamically partitionable and allocable bus structure
JP2001014139A (ja) ワークファイルを使用するマルチスレッドソート処理方式及び処理方法
JPH10177541A (ja) データ転送装置及びデータ転送システム
KR19980056298A (ko) 환형 큐를 이용한 동적 데이터 블럭 전송 장치 및 방법
EP0369920A2 (en) Interleaving circular buffers
JP2004046900A (ja) 情報処理システムの制御方法
JP2000330923A (ja) データ転送システム及び転送方法並びに記録媒体
JPS63233451A (ja) 主記憶ペ−ジリプレ−ス方式
JPH0793199A (ja) 記憶システム
JPS63103344A (ja) 実アドレス連続空きメモリ生成方式

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020205