JPH0778781B2 - 情報転送方法 - Google Patents

情報転送方法

Info

Publication number
JPH0778781B2
JPH0778781B2 JP61125725A JP12572586A JPH0778781B2 JP H0778781 B2 JPH0778781 B2 JP H0778781B2 JP 61125725 A JP61125725 A JP 61125725A JP 12572586 A JP12572586 A JP 12572586A JP H0778781 B2 JPH0778781 B2 JP H0778781B2
Authority
JP
Japan
Prior art keywords
transfer
buffer
data
receiving
information
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.)
Expired - Fee Related
Application number
JP61125725A
Other languages
English (en)
Other versions
JPS62284452A (ja
Inventor
克也 香田
政春 岩永
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 JP61125725A priority Critical patent/JPH0778781B2/ja
Priority to DE3751487T priority patent/DE3751487T2/de
Priority to EP87107883A priority patent/EP0249116B1/en
Publication of JPS62284452A publication Critical patent/JPS62284452A/ja
Priority to US07/464,587 priority patent/US5161215A/en
Publication of JPH0778781B2 publication Critical patent/JPH0778781B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/122Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Systems (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、コンピュータシステムにおいて、転送用バッ
ファを使用して情報の送受を行うような場合に、当バッ
ファ量に限りがあるような時に好適なバッファ管理法で
ある。
〔従来の技術〕
従来技術は、転送先の受信能力を考慮することなく、転
送元において転送要求が出されるとそのまま転送用バッ
ファに転送データが格納される構造となっていた。ま
た、こうした転送用バッファがオーバフローすることが
ないように特開58−1222号に示されるようにデータバッ
ファを共用化する技術も知られている。
〔発明が解決しようとする問題点〕
主記憶装置の中で複数のユーザプログラムのそれぞれの
ためにユーザ空間と呼ばれるメモリエリアが割り当てら
れる。
これらの空間の間でデータの転送が行なわれるときはこ
れらのユーザプログラムによって共通にアクセスされる
メモリエリアに設けられた転送用バッファへ転送元のユ
ーザプログラムの制御で転送データを格納し、転送先の
ユーザプログラムの制御で転送用バッファのデータを転
送先のユーザプログラムが属するメモリエリアに受け入
れるという処理が行なわれている。従来技術は転送先受
信能力の状況について十分な配慮がされておらず、転送
要求の発生に応じて転送キューへ情報をエンキューして
いるため、共有している転送用バッファエリアに滞留し
てしまい、大量のデータをある空間間で転送しているよ
うな場合に、受信側で受信の準備ができなく受信ができ
ないまま長時間経過することがあると、このデータだけ
でバッファエリアのほとんどを占有すると共に、長時間
の滞留が発生して、他の無関係な転送処理に対しても転
送用バッファの不足や、枯渇などの転送不能を引き起こ
す重大な要因となっていた。
本発明の目的は、転送先受信バッファが引き取ることが
できない転送要求は、バッファ上ではなく要求のまま
で、転送元で待たせることによって他の転送処理に影響
を与えず、共有バッファエリアは、パイプラインのよう
に滞留することなく流すものとする管理を実現すること
にある。
〔問題点を解決するための手段〕
上記目的は、各空間中に設けられている受信バッファの
状況を表示する表示部を、システムの共通領域に設置す
る。この表示部の情報を転送元が参照し転送先の受信バ
ッファの状況を把握する。それによって転送先が直ぐに
受信可能かどうかの判断を行なう。
〔作用〕
それぞれの空間にある受信バッファの状況を、表示する
表示部がシステム共通部に設置されているので、この表
示部が現在の受信可能な情報量を常時、表示することに
よって、送信側は相手が受け取ることが可能な量を判断
して、その量だけを送ることが可能となるので、受信で
きないような量を、バッファ上へ流入させることを防ぐ
ことができる。さらに、転送要求は、要求が発行された
各空間上で、転送処理とは別にFIFO方式でキューイング
されているので、転送を待たされても特別の処理を行う
ことなく、転送可能になるまで待つことができる。この
要求のキューイングは、転送先別にキューイングするの
で、転送不能になっている転送先のキューからは、デキ
ュー動作を行わないことで、誤動作などを防止すること
もできる。
〔実施例〕
以下、本発明の一実施例を第1図により説明する。図上
でA、B、D、Eは、それぞれあるユーザプログラムの
ためのメモリ空間であり、また、Cはこれらの空間間で
共用するバッファエリアである。このCを通して各空間
間で情報の転送を行う。今、空間A内で空間Bへの情報
転送要求が出されると、転送要求処理プログラム7Aがそ
の要求を転送待ちキュー1Aへエンキュー命令により登録
する。このとき転送要求処理プログラム7Aは、転送先を
判断して同一転送先への情報を集めてキューを作ると共
に、転送実行処理プログラム2Aに対して起動信号を送
る。この結果各々の転送要求キューから先入れ先出しを
守りながらデキューを行う(100)。デキューされた情
報はチェックされる。即ち、共通バッファエリアC内に
設置されている各空間内受信バッファカウンタ12と、共
有バッファカウンタ9をチェックする。まず、転送用共
有バッファプール10の中には、同一の大きさに切り分け
られたバッファがあり、その中で現在誰にも使われてお
らずフリーな状態にあるバッファが、どれだけあるかを
カウントしているカウンタ9をチェックする(101)。
カウンタ9が0を示していれば、デキュー命令は取り消
される(106)。カウンタ9が0でない場合は、転送用
バッファとして1面を確保しカウンタ9を1減する(10
2)。次に、この転送用バッファとそれぞれの面が同一
サイズに切り分けられた転送先空間内の受信バッファ8B
の中に、受信可能なバッファエリアがいくつあるかをカ
ウントしているカウンタ12Bをチェックする(103)。こ
のときカウンタ12Bが0の場合は、転送を中止して先の
デキュー命令は取り消される(107),(106)。そのた
め転送要求はキュー1A上で待たされる。一方、カウンタ
12Bが0でない場合は、転送可能であることになり、転
送情報を先に確保した転送バッファ10へコピーする(10
4)。その後、当転送バッファを転送キュー11へエンキ
ューする(105)。この転送キュー11は、バッファ10の
各エリアを示すアドレスが同一宛先毎に発生順にチェイ
ニングされたものであり、即ち、転送要求キュー1Aと同
様に、各転送先別にキューイングされている。この時、
転送先空間の転送実行処理2Bへ起動信号を送り2Bを起動
する。次にデータを受け取る場合の転送実行処理プログ
ラム2の処理を第3図により説明する。起動された2B中
の転送キュー・デキュー処理5Bが、転送キュー11から先
入れ先出しを守りながら自分への転送キューの先頭をデ
キューする(201)。デキューされた情報は受信処理部6
Bへ渡され、その内容が受信バッファ8Bへコピされる(2
02)。コピーが終了した後に、当転送バッファは、バッ
ファプール10へ返却される。即ち、空き状態とする。こ
の時、カウンタ9を1増加させて、すべての転送作業が
終了する(203)。また、受信バッファ8Bは、空間B内
で所要の処理が行われた後で解放されることになるが、
この解放の際に、カウンタ12Bを1増加させる。
以上のように、本実施例によれば転送先の受信バッファ
が受信不能の場合は、転送元で要求は待たされることに
なり、転送用の共有バッファを長時間占有することはな
い。逆に、共有バッファ上の情報は、必ず転送先が引き
取ることを保証しているので、長時間滞留することはな
い。このように、一部の転送不良によって他の転送処理
が影響を受けることを全く無くすことができる。といっ
た効果がある。
〔発明の効果〕
本発明によれば、送信元において受信側の受信バッファ
の状況を把握することができるので、受信できない量の
情報が転送用バッファ上に乗ることはなくなるため、常
にバッファ上をデータが流れ続けることが可能であり、
ある特定の転送は受信バッファの飽和などで不可能にな
っても、他の転送は、それと全く無関係に流れ続けるこ
とができる。これによって、転送用バッファをパイプラ
インのようにして使用することができ、バッファ閉塞や
バッファ不足による転送不能の発生を無くすことができ
る。
【図面の簡単な説明】
第1図は本発明の一実施例を説明する図、第2図は、送
信処理フローの一例を示すフローチャート、第3図は受
信処理フローの一例を示すフローチャート。 1…転送要求キュー、9…フリーバッファカウンタ、10
…フリーバッファプール、11…転送キュー、12…受信バ
ッファ状況表示部。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 松本吉彦「トランジスタ技術別冊つくる シリーズ5私だけのマイコン設計&製作」 (昭52−12)CQ出版P.82−84 インターフェース.6〔11〕(昭55− 11)CQ出版P.124−129

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】複数のメモリエリア間でそれらメモリエリ
    アに属するプログラムから共通してアクセスされる共通
    領域に設けた転送バッファを介してデータが転送される
    データ処理システムにおいて、前記共通領域に前記複数
    のメモリエリアの各々に対する受信可能なデータ量に関
    するデータ受信可能バッファ情報を表示する受信能力表
    示部を設け、送信側及び受信側メモリエリアに属するプ
    ログラムが互いに前記受信能力表示部に表示されるデー
    タ受信可能バッファ情報を操作して、前記受信能力表示
    部に表示される転送先メモリエリアのデータ受信可能バ
    ッファ情報に基づいて、送信側メモリエリアから受信側
    メモリエリアへ転送するデータを前記送信側メモリエリ
    アに属するプログラムが前記転送バッファへ格納し、前
    記受信側メモリエリアに属するプログラムが前記転送バ
    ッファに格納されたデータを受け入れることを特徴とす
    る情報転送方法。
JP61125725A 1986-06-02 1986-06-02 情報転送方法 Expired - Fee Related JPH0778781B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP61125725A JPH0778781B2 (ja) 1986-06-02 1986-06-02 情報転送方法
DE3751487T DE3751487T2 (de) 1986-06-02 1987-06-01 Verfahren zur Steuerung eines Datenübertragungspuffers.
EP87107883A EP0249116B1 (en) 1986-06-02 1987-06-01 Method for controlling data transfer buffer
US07/464,587 US5161215A (en) 1986-06-02 1990-01-11 Method for controlling data transfer buffer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61125725A JPH0778781B2 (ja) 1986-06-02 1986-06-02 情報転送方法

Publications (2)

Publication Number Publication Date
JPS62284452A JPS62284452A (ja) 1987-12-10
JPH0778781B2 true JPH0778781B2 (ja) 1995-08-23

Family

ID=14917226

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61125725A Expired - Fee Related JPH0778781B2 (ja) 1986-06-02 1986-06-02 情報転送方法

Country Status (4)

Country Link
US (1) US5161215A (ja)
EP (1) EP0249116B1 (ja)
JP (1) JPH0778781B2 (ja)
DE (1) DE3751487T2 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4965793A (en) * 1989-02-03 1990-10-23 Digital Equipment Corporation Method and apparatus for interfacing a system control unit for a multi-processor
DE4102151A1 (de) * 1991-01-25 1992-07-30 Philips Patentverwaltung Empfaenger fuer ein digitales uebertragungssystem
JP2793399B2 (ja) * 1991-12-09 1998-09-03 日本電気株式会社 バッファ装置
US5440690A (en) * 1991-12-27 1995-08-08 Digital Equipment Corporation Network adapter for interrupting host computer system in the event the host device driver is in both transmit and receive sleep states
AU4219693A (en) * 1992-09-30 1994-04-14 Apple Computer, Inc. Inter-task buffer and connections
US5448708A (en) * 1992-10-30 1995-09-05 Ward; James P. System for asynchronously delivering enqueue and dequeue information in a pipe interface having distributed, shared memory
JPH06187302A (ja) * 1992-12-18 1994-07-08 Fujitsu Ltd 転送要求キュー制御方式
JP3360856B2 (ja) * 1992-12-18 2003-01-07 富士通株式会社 プロセッサ
US5664224A (en) * 1993-07-23 1997-09-02 Escom Ag Apparatus for selectively loading data blocks from CD-ROM disks to buffer segments using DMA operations
US5524110A (en) * 1993-11-24 1996-06-04 Intel Corporation Conferencing over multiple transports
US5687392A (en) * 1994-05-11 1997-11-11 Microsoft Corporation System for allocating buffer to transfer data when user buffer is mapped to physical region that does not conform to physical addressing limitations of controller
US5606666A (en) * 1994-07-19 1997-02-25 International Business Machines Corporation Method and apparatus for distributing control messages between interconnected processing elements by mapping control messages of a shared memory addressable by the receiving processing element
US5799314A (en) * 1995-06-30 1998-08-25 Sun Microsystems, Inc. System and method of controlling mapping of data buffers for heterogenous programs in digital computer system
JPH09167076A (ja) * 1995-12-15 1997-06-24 Fuji Photo Film Co Ltd 出力同期方法及び装置
US5907717A (en) * 1996-02-23 1999-05-25 Lsi Logic Corporation Cross-connected memory system for allocating pool buffers in each frame buffer and providing addresses thereof
US5797043A (en) * 1996-03-13 1998-08-18 Diamond Multimedia Systems, Inc. System for managing the transfer of data between FIFOs within pool memory and peripherals being programmable with identifications of the FIFOs
US5784649A (en) * 1996-03-13 1998-07-21 Diamond Multimedia Systems, Inc. Multi-threaded FIFO pool buffer and bus transfer control system
US6065059A (en) * 1996-12-10 2000-05-16 International Business Machines Corporation Filtered utilization of internet data transfers to reduce delay and increase user control
US5940466A (en) * 1997-10-29 1999-08-17 Micron Electronics, Inc. Apparatus for counting parts in a tray
US6282589B1 (en) 1998-07-30 2001-08-28 Micron Technology, Inc. System for sharing data buffers from a buffer pool
US6161153A (en) * 1998-07-30 2000-12-12 Micron Technology, Inc. Method for sharing data buffers from a buffer pool
US6516361B2 (en) * 1998-09-17 2003-02-04 Sony Corporation Method of and apparatus for capturing and processing continuous media-based data streams transmitted over an IEEE 1394 serial bus

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2253418A5 (ja) * 1973-11-30 1975-06-27 Honeywell Bull Soc Ind
SE414087B (sv) * 1977-02-28 1980-07-07 Ellemtel Utvecklings Ab Anordning i ett datorsystem vid utsendning av signaler fran en processor till en eller flera andra processorer varvid prioriterade signaler sends direkt utan tidsfordrojning och oprioriterade signalers ordningsfoljd ...
US4158235A (en) * 1977-04-18 1979-06-12 Burroughs Corporation Multi port time-shared associative buffer storage pool
US4449182A (en) * 1981-10-05 1984-05-15 Digital Equipment Corporation Interface between a pair of processors, such as host and peripheral-controlling processors in data processing systems
US4543627A (en) * 1981-12-14 1985-09-24 At&T Bell Laboratories Internal communication arrangement for a multiprocessor system
US4594657A (en) * 1983-04-22 1986-06-10 Motorola, Inc. Semaphore for memory shared by two asynchronous microcomputers
JPS60110064A (ja) * 1983-08-04 1985-06-15 テクトロニツクス・インコ−ポレイテツド 非同期緩衝通信インタフエ−ス

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
インターフェース.6〔11〕(昭55−11)CQ出版P.124−129
松本吉彦「トランジスタ技術別冊つくるシリーズ5私だけのマイコン設計&製作」(昭52−12)CQ出版P.82−84

Also Published As

Publication number Publication date
EP0249116A3 (en) 1989-12-27
EP0249116A2 (en) 1987-12-16
US5161215A (en) 1992-11-03
DE3751487T2 (de) 1996-02-29
DE3751487D1 (de) 1995-10-05
JPS62284452A (ja) 1987-12-10
EP0249116B1 (en) 1995-08-30

Similar Documents

Publication Publication Date Title
JPH0778781B2 (ja) 情報転送方法
EP0543512B1 (en) Multiprocessor system
JP3360856B2 (ja) プロセッサ
US7415540B2 (en) Scheduling processing threads
US6470415B1 (en) Queue system involving SRAM head, SRAM tail and DRAM body
US5325492A (en) System for asynchronously delivering self-describing control elements with a pipe interface having distributed, shared memory
EP1247168B1 (en) Memory shared between processing threads
US5247671A (en) Scalable schedules for serial communications controller in data processing systems
KR950009578B1 (ko) 동기고속 패키트 교환방식 버스를 위한 장치 및 방법
US7751402B2 (en) Method and apparatus for gigabit packet assignment for multithreaded packet processing
EP1856623B1 (en) Including descriptor queue empty events in completion events
US6950912B2 (en) Memory manager for a common memory
US20050015768A1 (en) System and method for providing hardware-assisted task scheduling
EP2383659B1 (en) Queue depth management for communication between host and peripheral device
US6931643B2 (en) Interrupt throttling for inter-processor communications
CN108958903B (zh) 嵌入式多核中央处理器任务调度方法与装置
CN109426562B (zh) 优先级加权轮转调度器
JPH08202566A (ja) プロセス間通信システム
CN108958905B (zh) 嵌入式多核中央处理器的轻量级操作系统
EP1249757B1 (en) Interrupt throttling for inter-processor communications
JP3693183B2 (ja) データ処理装置
Rowan et al. Toward the design of a network manager for a distributed computer network
JPS60225969A (ja) マルチプロセツサ制御方式
JPS6048781B2 (ja) サブシステム間通信方式
JPH0377160A (ja) 分散メモリ計算機における高速キュー操作方式

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees