JPH04260139A - ファイルアクセス処理装置 - Google Patents

ファイルアクセス処理装置

Info

Publication number
JPH04260139A
JPH04260139A JP3021759A JP2175991A JPH04260139A JP H04260139 A JPH04260139 A JP H04260139A JP 3021759 A JP3021759 A JP 3021759A JP 2175991 A JP2175991 A JP 2175991A JP H04260139 A JPH04260139 A JP H04260139A
Authority
JP
Japan
Prior art keywords
buffer
data
processing unit
record
file
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
JP3021759A
Other languages
English (en)
Inventor
Takanori Terada
孝則 寺田
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 JP3021759A priority Critical patent/JPH04260139A/ja
Publication of JPH04260139A publication Critical patent/JPH04260139A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機におけるファイ
ルアクセス処理、特にFORTRAN プログラミング
言語のいわゆる書式なし直接アクセス機能等を利用する
場合の、ファイルアクセスの処理装置に関する。
【0002】
【従来の技術】計算機の、例えはFORTRAN プロ
グラミング言語で記述するプログラムで、いわゆる書式
なし直接アクセス機能が利用できる。
【0003】この機能は、いわゆる直接アクセス法でア
クセスするファイルのデータについて、ファイル上の一
定長データブロックについて、そのプログラム内では、
そのデータブロックのデータ長の整数分の1の、所要の
長さのレコードに分割して扱えるようにする公知の機能
である。
【0004】例えば、プログラムを、       INTEGER            
  A(100)      OPEN(1,ACCE
SS=’DIRECT’,RECL=100)    
  WRITE(1,REC=2)Aとする。
【0005】このプログラムは公知のように、INTE
GER文で宣言されている100個の要素を持つ整数型
の配列データA(従ってAのデータ領域は400バイト
)を、WRITE文で指定されるように、このプログラ
ムでファイル「1」として定義されるファイルに、第2
レコード(「REC=2」による)から書き出すプログ
ラムである。
【0006】このファイル「1」は、OPEN文によっ
て、直接アクセス法(「DIRECT」による)のファ
イルとし、レコード長が100の書式なし直接アクセス
として処理する(「RECL=100」の指定による)
ようにオープン処理を行なうことが指定されている。
【0007】このプログラムを実行する場合に、コンパ
イラは図3に示すようにアクセス処理部1と並び処理部
2を設け、プログラム本体を実行するレコード処理部3
で、前記のWRITE文を処理する場合に、WRITE
文のパラメータに相当する制御情報を渡してアクセス処
理部1と並び処理部2を起動する。
【0008】ここでファイル「1」は各データブロック
が500バイトの長さであるとすると、アクセス処理部
1は500バイトのバッファ4を準備する。並び処理部
2は、先ずアクセス処理部1の初期呼出を行なうと、ア
クセス処理部は、バッファ4内の書込み開始アドレスと
、そのアドレスから書込むデータ長としてレコード長を
返す。
【0009】図4は、バッファの構成を説明する図であ
って、500バイト長のバッファを100バイトごとの
レコードに分割して、この場合にWRITE文の指定が
第2レコードからの書出しであるので、■で示す第2レ
コードの先頭位置のアドレスと、レコード長として10
0とをアクセス処理部1から並び処理部2に返す。
【0010】そこで並び処理部2は、レコード処理部3
が保持する配列データAのデータ領域から最初の100
バイトを、バッファ4の■のアドレス以後の領域に転送
し、再びアクセス処理部1を呼ぶ。
【0011】そこで、アクセス処理部1は、次の書込み
開始位置として図4に■で示す位置のアドレスと、レコ
ード長として100とを並び処理部2に返すので、並び
処理部2によって1レコードの転送が行なわれ、以後図
4に■、■で示すアドレスから始めるレコードについて
も、図3に示すようにレコードごとにアクセス処理部1
が呼び出される。
【0012】このようにしてデータをすべて転送し終わ
ると、並び処理部2からアクセス処理部1を呼び、アク
セス処理部1がデータ管理部5によってバッファ4の内
容をファイル「1」で定まるファイル6に書き出す。
【0013】図5は以上の処理を行なう並び処理部2の
処理の流れを示す図であり、処理ステップ20でアクセ
ス処理部1を呼び出し、処理ステップ21でアクセス処
理部1からの応答として、アドレスとレコード長を受け
取ると、処理ステップ22で1レコードをバッファへ転
送する。
【0014】処理ステップ23で識別して、必要なレコ
ードの転送を終わるまで、処理ステップ20〜22の処
理を繰り返し、転送を終わると処理ステップ24でアク
セス処理部1を呼び出してバッファをファイルに書き出
す。
【0015】以上はデータをファイルに書き出すWRI
TE文の実行についての説明であるが、例えばREAD
文によってファイルからデータを読み込む場合にも、ア
クセス処理部1がファイル6からバッファ4に読み込ん
だブロックを、並び処理部2が前記と同様にしてレコー
ドごとにデータ領域へ転送する。
【0016】
【発明が解決しようとする課題】以上の処理によれば、
プログラムで定義したレコードごとに並び処理部2から
アクセス処理部1の呼出しと、データ転送が繰り返され
なければならないので、処理装置の実行のオーバヘッド
が大きくなり、プログラムの実行時間を長くしやすいと
いう問題がある。
【0017】本発明は、FORTRAN の書式なし直
接アクセス機能等を使用する、ファイルのアクセス処理
を高速化するファイルアクセス処理装置を目的とする。
【0018】
【課題を解決するための手段】図1は、本発明の構成を
示すブロック図である。図はファイルアクセス処理装置
の構成であって、計算機の所定形式のファイルのデータ
ブロックを、所要の一定長のレコードに分割してアクセ
スするに際し、レコード処理部3と、アクセス処理部1
1と、並び処理部12とを有する。
【0019】レコード処理部3は、所要のアクセス要求
の場合に、該ファイルと、該レコードのデータ長と、所
要の先頭レコード番号と、データ領域とを指定して、ア
クセス要求を発行する。
【0020】アクセス処理部11と並び処理部12は該
アクセス要求を受け取って、読出しアクセス要求の場合
には、アクセス処理部11が、指定の該データブロック
を該ファイルからバッファ4に読出し、並び処理部12
がバッファ4から所要の該レコードを該データ領域へ転
送する。
【0021】書込みアクセス要求の場合には、並び処理
部12が該データ領域の所要の該レコードをバッファ4
に転送し、アクセス処理部11がバッファ4のデータを
該ファイルの指定の該データブロックに書出す。
【0022】並び処理部12は、該所要のレコードの転
送の場合に、アクセス処理部11に問い合わせて、バッ
ファ4上の指定の該レコードの先頭アドレスと、該アド
レスからバッファ4の末端までのデータ長とを取得し、
該所要のレコードについて、該取得したデータ長を越え
ない最大数の該レコードを、バッファ4の該取得したア
ドレス以後の領域と、該データ領域との間で一括して転
送する。
【0023】
【作用】本発明のファイルアクセス処理装置により、F
ORTRAN の書式なし直接アクセス等によるファイ
ルアクセスの処理の場合に、並び処理部からアクセス処
理部を呼び出すのは、バッファごとの一連のレコードの
転送の開始と終了時のみとなり、データの転送も、1バ
ッファに転送するレコードを1回にまとめて行なえるの
で、オーバヘッドを減少して、処理を高速化できる。
【0024】
【実施例】前記の説明と同じFORTRAN プログラ
ムにより、WRITE文を実行する場合について述べる
と、このプログラムを実行する場合に、コンパイラは図
1に示すようにアクセス処理部11と並び処理部12を
設け、プログラム本体を実行するレコード処理部3で、
前記のWRITE文を処理するために、WRITE文の
パラメータに相当する制御情報を渡してアクセス処理部
11と並び処理部12を起動し、そこでアクセス処理部
11は500バイトのバッファ4を準備する。
【0025】並び処理部12は、先ずアクセス処理部1
1の初期呼出を行なうと、アクセス処理部11は、バッ
ファ4内の書込み開始アドレスと、そのアドレスからバ
ッファ4の末端までのデータ長を返す。
【0026】即ち、この場合にWRITE文の指定が第
2レコードからの書出しであるので、図4に■で示す位
置のアドレスと、バッファ末端迄のデータ長(バイト数
)を示す400が並び処理部12に返される。
【0027】そこで並び処理部12は、レコード処理部
3が保持する配列データAのデータ領域が丁度400バ
イトであることから、400バイトを一度に転送し、そ
れでデータをすべて転送し終わるのでアクセス処理部1
1を呼び、アクセス処理部11がデータ管理部5によっ
てバッファ4の内容をファイル「1」で定まるファイル
6に書き出す。
【0028】従って以上から明らかなように、前記従来
の場合はアクセス処理部1の呼出しが5回必要で、デー
タ転送は4回に分けて行なわれたが、本発明の場合には
同じデータを処理するのに、アクセス処理部11の呼出
しは2回となり、データ転送は1回でよい。
【0029】図2は以上の処理を行なう並び処理部12
による1バッファに対する処理の流れの一例を示す図で
あり、処理ステップ30でアクセス処理部11を呼び出
し、処理ステップ31でアクセス処理部11からの応答
として、アドレスとバッファ末端までのデータ長を受け
取る。
【0030】そこで、処理ステップ32で転送するレコ
ード数を、所要レコード数か、バッファ末端までのデー
タ長から定まるレコード数か、何れか少ない方に決定し
、処理ステップ33で決定したレコード数のレコードを
バッファへ一括して転送する。
【0031】転送を終わると処理ステップ34でアクセ
ス処理部11を呼び出してバッファをファイルに書き出
す。 以上はデータをファイルに書き出すWRITE文の実行
についての説明であるが、READ文によってファイル
からデータを読み込む場合にも、アクセス処理部11が
ファイル6からバッファ4に読み込んだブロックを、並
び処理部12が前記と同様にして一括してデータ領域へ
転送することができる。
【0032】
【発明の効果】以上の説明から明らかなように本発明に
よれば、計算機におけるファイルアクセス処理において
、FORTRAN の書式なし直接アクセス機能等を使
用する、ファイルのアクセス処理を高速化できるという
著しい工業的効果がある。
【図面の簡単な説明】
【図1】  本発明の構成を示すブロック図
【図2】 
 本発明の処理の流れ図
【図3】  従来の構成例を示すブロック図
【図4】 
 バッファの構成を説明する図
【図5】  従来例の処
理の流れ図
【符号の説明】
1、11  アクセス処理部 2、12  並び処理部 3  レコード処理部 4  バッファ 5  データ管理部 6  ファイル

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  計算機の所定形式のファイルのデータ
    ブロックを、所要の一定長のレコードに分割してアクセ
    スするに際し、レコード処理部(3)と、アクセス処理
    部(11)と、並び処理部(12)とを有し、該レコー
    ド処理部(3) は、所要のアクセス要求の場合に、該
    ファイルと、該レコードのデータ長と、所要の先頭レコ
    ード番号と、データ領域とを指定して、アクセス要求を
    発行し、該アクセス処理部(11)と該並び処理部(1
    2)は該アクセス要求を受け取って、読出しアクセス要
    求の場合には、該アクセス処理部(11)が、指定の該
    データブロックを該ファイルからバッファ(4) に読
    出し、該並び処理部(12)が該バッファから所要の該
    レコードを該データ領域へ転送し、書込みアクセス要求
    の場合には、該並び処理部(12)が該データ領域の所
    要の該レコードを該バッファ(4) に転送し、該アク
    セス処理部(11)が該バッファのデータを該ファイル
    の指定の該データブロックに書出し、該並び処理部(1
    2)は、該所要のレコードの転送の場合に、該アクセス
    処理部に問い合わせて、該バッファ(4) 上の指定の
    該レコードの先頭アドレスと、該アドレスから該バッフ
    ァの末端までのデータ長とを取得し、該所要のレコード
    について、該取得したデータ長を越えない最大数の該レ
    コードを、該バッファの該取得したアドレス以後の領域
    と、該データ領域との間で一括して転送するように構成
    されていることを特徴とするファイルアクセス処理装置
JP3021759A 1991-02-15 1991-02-15 ファイルアクセス処理装置 Pending JPH04260139A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3021759A JPH04260139A (ja) 1991-02-15 1991-02-15 ファイルアクセス処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3021759A JPH04260139A (ja) 1991-02-15 1991-02-15 ファイルアクセス処理装置

Publications (1)

Publication Number Publication Date
JPH04260139A true JPH04260139A (ja) 1992-09-16

Family

ID=12063995

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3021759A Pending JPH04260139A (ja) 1991-02-15 1991-02-15 ファイルアクセス処理装置

Country Status (1)

Country Link
JP (1) JPH04260139A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09330179A (ja) * 1996-06-13 1997-12-22 Hitachi Telecom Technol Ltd 情報書込方法およびこの方法を利用した電話交換装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61251940A (ja) * 1985-05-01 1986-11-08 Nec Corp 障害時デ−タ収集方式
JPS62279422A (ja) * 1986-05-28 1987-12-04 Mitsubishi Electric Corp フアイル入出力方式
JPS6358540A (ja) * 1986-08-28 1988-03-14 Nec Corp フアイル・バツフアの登録・参照方式
JPS6359639A (ja) * 1986-08-29 1988-03-15 Fujitsu Ltd フアイルアクセス互換制御方式
JPS63153651A (ja) * 1986-12-17 1988-06-27 Alps Electric Co Ltd バツフアリングi/o方式

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61251940A (ja) * 1985-05-01 1986-11-08 Nec Corp 障害時デ−タ収集方式
JPS62279422A (ja) * 1986-05-28 1987-12-04 Mitsubishi Electric Corp フアイル入出力方式
JPS6358540A (ja) * 1986-08-28 1988-03-14 Nec Corp フアイル・バツフアの登録・参照方式
JPS6359639A (ja) * 1986-08-29 1988-03-15 Fujitsu Ltd フアイルアクセス互換制御方式
JPS63153651A (ja) * 1986-12-17 1988-06-27 Alps Electric Co Ltd バツフアリングi/o方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09330179A (ja) * 1996-06-13 1997-12-22 Hitachi Telecom Technol Ltd 情報書込方法およびこの方法を利用した電話交換装置

Similar Documents

Publication Publication Date Title
US6539500B1 (en) System and method for tracing
US5113509A (en) Method of changing data on disk
JPH0340868B2 (ja)
JPH04260139A (ja) ファイルアクセス処理装置
JP2669911B2 (ja) Dmaコントローラおよび情報処理システム
JPS62168497A (ja) 交換処理プログラムにおけるデ−タベ−ス処理方式
JPS6019816B2 (ja) マイクロプログラム制御アダプタ
JPH04181454A (ja) データアクセス制御装置
JP2511012B2 (ja) タスクタ−ミネ−シヨン方式
KR950004227B1 (ko) 정보처리시스템
JP3182279B2 (ja) データ転送方法
JP2876488B2 (ja) 半導体ファイルメモリ装置
JPS63237143A (ja) プログラマブルコントロ−ラ
JPS5936838A (ja) インタフエ−ス制御方式
JPH0234058B2 (ja)
JPS60159958A (ja) デ−タ転送制御回路
JPH03271852A (ja) データ先行セット装置
JPS6349935A (ja) 中央制御装置
JPS61175731A (ja) マイクロプログラム制御方式
JPH03191460A (ja) 共有メモリ方式
JPS60176144A (ja) レジスタフアイル装置
JPH04182750A (ja) データ処理装置
JPH02165247A (ja) 記憶装置
JPH02230326A (ja) パイプライン情報処理装置
JPS63141144A (ja) アクセス領域制御方式

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19961210