JPH04314130A - 直接編成ファイルへの入出力方法 - Google Patents

直接編成ファイルへの入出力方法

Info

Publication number
JPH04314130A
JPH04314130A JP7965991A JP7965991A JPH04314130A JP H04314130 A JPH04314130 A JP H04314130A JP 7965991 A JP7965991 A JP 7965991A JP 7965991 A JP7965991 A JP 7965991A JP H04314130 A JPH04314130 A JP H04314130A
Authority
JP
Japan
Prior art keywords
input
output
data
length
record
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
JP7965991A
Other languages
English (en)
Inventor
Hisaharu Ohata
大畠 寿春
Hironori Shiohata
宏規 塩幡
Susumu Hatake
畠   進
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 JP7965991A priority Critical patent/JPH04314130A/ja
Publication of JPH04314130A publication Critical patent/JPH04314130A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、直接編成ファイルの一
つのレコードの長さよりも長いデータを、一度の入出力
文により入出力しようとしているプログラムを、このプ
ログラムが実行不可となってしまうシステム上にプログ
ラムを移植する場合に、プログラムを効率よく実行させ
る方法に関する。
【0002】
【従来の技術】直接編成ファイルの一つのレコードの長
さを、プログラム内で一度の入出力文により入出力しよ
うとしているデータの総バイト長に対し、十分大きな長
さのレコード長になるような直接編成ファイルの指定を
行い、一度の入出力文により入出力しようとしているデ
ータの総バイト長が、一つのレコードの長さを絶対に越
えることのないような入出力方法をとるか、シーケンシ
ャルファイルを用い、プログラム内でデータの入ってい
るファイルの番地を管理し、データを入力する時に必要
なデータが入っている番地までダミーの入力文で読みと
ばさなくてはならない。この様なものにはプログラムプ
ロダクトFORTRAN77言語プログラムプロダクト
FORTRAN77使用の手引がある。
【0003】
【発明が解決しようとする課題】従来の方法のままで、
一度の入出力文により入出力しようとしているデータの
総バイト長が、その入出力対象である直接編成ファイル
の一つのレコードの長さよりも長いプログラムの場合に
、このプログラムが実行不可となってしまうシステム上
でプログラムを実行し、直接、編成ファイルにデータの
入出力を行うと、直接編成ファイルの一つのレコードの
長さに対し、一度の入出力文により入出力しようとして
いるデータの総バイト長が大きい場合、一つのレコード
に対しすべてのデータが出力しきれなかった時点、又は
、一つのレコードからすべてのデータが入力しきれなか
った時点で、実行不可となってしまう。また、直接編成
フアィルの効率をあげるために一つのレコードの長さを
小さくした場合も同様の現象がおきる、これらの問題を
解決し直接編成ファイルを効率良く使用する方法である
【0004】
【課題を解決するための手段】前述した課題は、一度の
入出力文により入出力しようとしているデータの総バイ
ト長が、どれ位のデータ量かを計算してやり、その全デ
ータが入出力対象である直接編成ファイルの一つのレコ
ードの長さに対して何レコード必要かを計算し、その必
要レコード数に応じてデータを分割する。その後、その
必要レコード数回の入出力文になるように一度の入出力
文を分割し、入出力することにより解決することができ
る。
【0005】
【作用】一度の入出力文により入出力しようとしている
データの総バイト長が、その入出力対象である直接編成
ファイルの一つのレコードの長さよりも長いプログラム
の場合に、このプログラムが実行可能なシステム上から
、このプログラムが実行不可能なシステム上にプログラ
ムの移植を行うことができる。また、直接編成ファイル
の一つのレコードの長さを小さくし、データを分割して
直接編成ファイルへ入出力することができる。これによ
り、直接編成ファイルを効率よく使用することができ、
シーケンシャルファイルを用いる場合よりも高速にデー
タの入出力が可能となる。
【0006】
【実施例】図1に、本手法を用いてプログラムを実行し
たとき及び、従来の方法により汎用大型計算機上のシス
テムでプログラムを実行したときの直接編成ファイルの
内容例を示す。図2に、本手法を用いて直接編成ファイ
ルの利用効率を考慮し、プログラムを実行したときの直
接編成ファイルの内容例を示す。又、図3及び図4は、
従来方法のフロー及び本手法のフローである。図1は、
従来の方法を用いて汎用大型計算機上のシステムを用い
直接編成ファイルへデータを出力したものである。第一
レコード目および第二レコード目のデータは、一つの入
出力文にて出力されたデータである。これを汎用大型計
算機上用システムと同一の従来式フローのまま、一度の
入出力文により入出力しようとしているデータの総バイ
ト長が、その入出力対象である直接編成ファイルの一つ
のレコードの長さよりも長いプログラムの場合に、この
プログラムが実行不可となってしまうシステム上でプロ
グラムを実行した場合、第一レコード目の入出力が完了
した時点で、実行不可となってしまう。そこで、図3の
ようなフローになっていたプログラムを、図4のように
まず、一度の入出力文により入出力しようとしているデ
ータの総バイト長が、その入出力対象である直接編成フ
ァイルの一つのレコードの長さ以内であるかをチェック
し、一つのレコードの長さ以内であればそのまま入出力
文を実行し、一つのレコードの長さよりも大きいときは
、そのデータを入出力するのに、何レコードの領域が必
要かを計算する。その後、この入出力文によって入出力
しようとしているデータを必要レコード数分に分割し、
その必要レコード数回,入出力文を繰り返えすようにプ
ログラムを書き換える。これにより、汎用大型計算機上
で図1のようになっていた直接編成ファイルを、一度の
入出力文により入出力しようとしているデータの総バイ
ト長が、その入出力対象である直接編成ファイルの一つ
のレコードの長さよりも長いプログラムの場合に、この
プログラムが実行不可となってしまうシステム上でもそ
のままのファイル構成でプログラムを実行可能とするこ
とができる。
【0007】しかし、このままでは、第二レコード以後
のレコードでは、各レコードの先頭からの一部分だけに
しかデータが出力されていなく、直接編成ファイルの未
使用領域ができ直接編成ファイルの利用効率が非常に低
くなっている。これを解決するには、直接編成ファイル
の一レコード分の長さを小さくして、データ量の多いデ
ータを複数のレコードに分割して出力し、データ量の少
ないデータを出力した時の未使用領域を小さくすれば直
接編成ファイルの利用効率をあげることができる。しか
し、本手法を用いずに直接編成ファイルの一レコードの
長さだけを小さくした場合、図1の第一レコード目およ
び第二レコード目のような長いデータを、一度の入出力
文で入出力した場合、一度の入出力文により入出力しよ
うとしているデータの総バイト長が、その入出力対象で
ある直接編成ファイルの一つのレコードの長さよりも長
くなってしまい、一つのレコードに対しすべてのデータ
が出力しきれなかった時点、又は、一つのレコードから
すべてのデータが入力しきれなかった時点で、実行不可
となってしまう。しかし、この場合も、本手法を用いる
ことにより、図1の第一レコード目のデータと第二レコ
ード目のデータを分割して入出力することができるよう
になり、直接編成ファイルを図2のように管理すること
が可能となる。これにより直接編成ファイルを効率良く
、しかも、シーケンシャルファイルを使用したときより
も高速にデータ入出力をすることが可能となった。
【0008】
【発明の効果】本発明によれば、入出力対象である直接
編成ファイルの一つのレコードの長さを越えたデータを
、一度の入出力文により入出力しようとした場合でも実
行不可となることがなく、直接、編成ファイルを効率よ
く管理し、データ入出力を高速に行うことができる。
【図面の簡単な説明】
【図1】本発明および従来の方法によりプログラムを実
行したときの直接編成ファイルの説明図。
【図2】本発明を用い直接編成ファイルの利用効率を考
慮した時の、直接編成ファイルの説明図。
【図3】従来方法のプログラムの流れを示すフローチャ
ート。
【図4】本発明のプログラムの流れを示すフローチャー
ト。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】汎用大型計算機を用いたプログラム内の、
    実行可能な直接編成ファイルへの入出力文で、一度の前
    記入出力文により入出力しようとしているデータの総バ
    イト長が、その入出力対象である直接編成ファイルの一
    つのレコードの長さよりも長いプログラムの場合に、前
    記プログラムが実行不可となってしまうシステム上に前
    記プログラムを移植する場合に、一つの入出力文を必要
    レコード数分に分割して入出力を行い、一度の前記入出
    力文により入出力しようとしているデータの前記総バイ
    ト長が、前記入出力対象である前記直接編成ファイルの
    一つのレコードの長さよりも長くなることのないように
    したことを特徴とする直接編成ファイルへの入出力方法
JP7965991A 1991-04-12 1991-04-12 直接編成ファイルへの入出力方法 Pending JPH04314130A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7965991A JPH04314130A (ja) 1991-04-12 1991-04-12 直接編成ファイルへの入出力方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7965991A JPH04314130A (ja) 1991-04-12 1991-04-12 直接編成ファイルへの入出力方法

Publications (1)

Publication Number Publication Date
JPH04314130A true JPH04314130A (ja) 1992-11-05

Family

ID=13696279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7965991A Pending JPH04314130A (ja) 1991-04-12 1991-04-12 直接編成ファイルへの入出力方法

Country Status (1)

Country Link
JP (1) JPH04314130A (ja)

Similar Documents

Publication Publication Date Title
CN110222123A (zh) 用于教育平台的Hive动态分区加载的方法及电子设备
JPH04314130A (ja) 直接編成ファイルへの入出力方法
JP3887097B2 (ja) コンパイル方法,コンパイル装置および、コンパイル用プログラムを記憶したコンピュータ読み取り可能な記憶媒体
US5854919A (en) Processor and its operation processing method for processing operation having bit width exceeding data width of bit storage unit
JPH0465717A (ja) プログラム呼び出し方法
JPS62168497A (ja) 交換処理プログラムにおけるデ−タベ−ス処理方式
JPS59123936A (ja) 移動制御方式
JP2601541B2 (ja) Fortran入出力並び処理方式
JP3625878B2 (ja) コンパイラによるスタック領域割り付け方法
JPH0553827A (ja) ダイナミツクリンク最適化方式
JPH03138731A (ja) ジョブ間データ共有方式
JPS6375838A (ja) アドレス修飾方式
JPH0635772A (ja) 入出力処理システム
JPS62182843A (ja) 高速コンパイル/リンク方式
JPH0675757A (ja) 仮想空間常駐プログラムのリンク方式
JPH04260139A (ja) ファイルアクセス処理装置
JPH01159728A (ja) 情報検索処理装置
JPH0334029A (ja) 索引入出力の指定方式
JPH0264828A (ja) アドレストレース回路
JPS6359091A (ja) 蓄積プログラム制御方式電話交換システムにおけるメモリ割付け情報出力方式
JPH038044A (ja) マルチプロセッサ・システムにおける時計制御方式
JPH01191241A (ja) ファイル削除方式
JPS61224042A (ja) 仮想記憶システムにおける配列要素接近に関する最適化コ−ド生成方式
JPS60214039A (ja) デ−タ処理装置
JPH04181324A (ja) 繰り返しデータ構造のアクセス方式