JPH1078875A - Data processor - Google Patents

Data processor

Info

Publication number
JPH1078875A
JPH1078875A JP23373996A JP23373996A JPH1078875A JP H1078875 A JPH1078875 A JP H1078875A JP 23373996 A JP23373996 A JP 23373996A JP 23373996 A JP23373996 A JP 23373996A JP H1078875 A JPH1078875 A JP H1078875A
Authority
JP
Japan
Prior art keywords
data
time
read
storage device
processing program
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
JP23373996A
Other languages
Japanese (ja)
Inventor
Naoki Nishiguchi
直樹 西口
Kiyomi Shibata
清己 柴田
Tomoko Moronaga
知子 諸永
Toshihiro Sonoda
俊浩 園田
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 JP23373996A priority Critical patent/JPH1078875A/en
Publication of JPH1078875A publication Critical patent/JPH1078875A/en
Withdrawn legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To exactly transfer prescribed data from an outside storage device to a buffer memory before the data are necessary. SOLUTION: This device is provided with a scheduling part 40 for reading data from an outside storage device 50. Whether or not the designated amounts of data are readable from the outside storage device 50 to a buffer memory 53 until a designated time is judged based on the designated time and data amounts designated by a processing program 30, and the reading from the outside storage device is scheduled. Thus, prescribed data can be exactly transferred to the buffer memory until the necessary time.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、複数の処理プログ
ラムが稼働し、外部記憶装置からバッファメモリへの読
み出しが競合するような、マルチタスク処理を行うデー
タ処理装置の改良に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an improvement in a data processing apparatus for performing a multitasking process in which a plurality of processing programs are operated and reading from an external storage device to a buffer memory competes.

【0002】[0002]

【従来の技術】従来、外部記憶装置とバッファ間でのデ
ータ転送は、図2に示すように、処理プログラムからの
READ命令を契機として実行されている。3つの処理
プログラムが稼働しているとする。図中のRは処理プロ
グラムから発行されるREAD命令を示し、前後の区切
り線はREAD命令を契機に外部記憶装置からバッファ
メモリへの転送を開始し終了するまでの所要時間を表し
ている。Rの右横の添字は、どの処理プログラムから何
番目に発行されたREAD命令かを表している。図中の
Wは、WRITE命令を示し、READ命令で読み出し
たデータを画面表示するなどの処理を行うタイミングを
表している。
2. Description of the Related Art Conventionally, data transfer between an external storage device and a buffer is executed by a READ instruction from a processing program as shown in FIG. It is assumed that three processing programs are running. In the figure, R indicates a READ instruction issued from the processing program, and the preceding and following delimiters indicate the time required from the start of the transfer from the external storage device to the buffer memory to the end thereof upon the READ instruction. The subscript on the right side of R indicates which processing program issued the READ instruction. W in the figure indicates a WRITE instruction, and indicates a timing at which processing such as displaying data read by the READ instruction on a screen is performed.

【0003】ここで、処理プログラム1は、大量のデー
タを読み出すため、外部記憶装置からバッファメモリへ
の転送時間を考慮して、事前に余裕をもってREAD命
令を発行している。処理プログラム2,3は、データを
読み出して、すぐに画面表示などの処理を行うプログラ
ムであり、発行されるREAD命令は即時性が要求され
ている。
Here, the processing program 1 issues a READ instruction in advance with a margin in consideration of the transfer time from the external storage device to the buffer memory in order to read a large amount of data. The processing programs 2 and 3 are programs that read data and immediately perform processing such as screen display, and the issued READ instruction requires immediacy.

【0004】従来の外部記憶装置からのデータの読み出
しは、各処理プログラムから要求された順番に行われる
ため、余裕を持って発行された処理プログラム1のRE
AD命令R1-1 も即座に実行される。このREAD命令
は大量のデータを読み出すため、実行時間が長い。この
ため、その後で発行される処理プログラム2のREAD
命令R2-1 は、処理プログラム1のREAD命令R1-1
が完了するまで実行待ちとなる。さらに、その後発行さ
れる処理プログラム3のREAD命令R3-1 も、処理プ
ログラム1のREAD命令R1-1 および処理プログラム
2のREAD命令R2-1 が完了するまで実行待ちとな
る。このため、事前に余裕をもって発行されたREAD
命令が、即時性が求められているREAD命令よりも先
に実施され、所望するレスポンスが期待できないことが
あった。
Conventionally, data is read from the external storage device in the order requested from each processing program, and therefore, the RE of the processing program 1 issued with a margin is provided.
The AD instruction R1-1 is also executed immediately. Since the READ instruction reads a large amount of data, the execution time is long. Therefore, the READ of the processing program 2 issued after that
Instruction R 2-1 is processing programs 1 READ command R 1-1
Wait for execution to complete. Furthermore, READ command R 3-1 processing program 3 subsequently issued also, READ command R 2-1 of READ command R 1-1 and program 2 processes the program 1 is waiting for execution to completion. For this reason, READ issued in advance with a margin
The command is executed before the READ command which requires immediacy, and a desired response may not be expected.

【0005】[0005]

【発明が解決しようとする課題】このように、従来技術
では、プログラム実行部であるプロセッサの処理に比し
外部記憶装置からバッファメモリへのデータ転送速度が
遅いことを意識して作成した処理プログラムも、即時性
が要求されることを意識して作成した処理プログラム
も、そのどちらの処理能力も保証されない。文書処理な
どのように対象文書の読み出しが完了するまで処理プロ
グラムがウエイトするような処理では上記の現象はあま
り問題とならないが、例えば画像や音声を取り扱うマル
チメディア処理では動画が停止したり、画像と音声が非
同期になってしまう、といったような状態が発生してい
た。
As described above, in the prior art, the processing program created with the awareness that the data transfer speed from the external storage device to the buffer memory is lower than the processing of the processor as the program execution unit. Neither is the processing capability of a processing program created in consideration of the need for immediacy, either. The above phenomenon is not so problematic in processing where the processing program waits until reading of the target document is completed, such as document processing.However, in multimedia processing that handles images and audio, moving images may stop, And the audio became out of sync.

【0006】[0006]

【課題を解決するための手段】前項の課題は、各処理プ
ログラムで必要とするデータの量を意識して、プログラ
ムで読み出し命令の発行タイミングを規定しているが、
複数の処理プログラムが稼働している場合に、READ
命令の緊急度が不明なために、READ命令が処理プロ
グラムからの要求順に実行されるために発生している。
The problem described in the preceding paragraph is that the timing of issuing a read instruction is specified in a program in consideration of the amount of data required in each processing program.
READ when multiple processing programs are running
This occurs because the urgency of the instructions is unknown, and the READ instructions are executed in the order requested by the processing program.

【0007】本発明では、処理プログラムからのREA
D命令に時間的制約を設け、即ち何時までに所定のデー
タが必要かを指定させることにより、その指定された時
間を考慮しつつ、各READ命令の実行順序をスケジュ
ールすることにより、所定のデータが必要な時までに外
部記憶装置からバッファメモリへ転送されていることを
確実にするものである。
In the present invention, the REA from the processing program
By setting a time constraint on the D instruction, that is, by designating by what time the predetermined data is required, the execution order of each READ instruction is scheduled while taking the specified time into account. Is transferred from the external storage device to the buffer memory by the required time.

【0008】即ち、本発明は、処理プログラムのリード
命令即ちリクエストに基づいて、外部記憶装置に記憶さ
れたデータをバッファメモリに読み出すデータ処理装置
において、外部記憶装置からデータを読み出す順序を規
定するスケジューリング部を有し、このスケジューリン
グ部は、処理プログラムから指定される時間とデータ量
に基づいて、指定された時間までに指定された量のデー
タが外部記憶装置からバッファメモリへ読み出し可能か
どうかを判断して、外部記憶装置からの読み出し順序を
スケジュールすることを特徴とする。
That is, the present invention provides a data processing apparatus for reading data stored in an external storage device into a buffer memory based on a read instruction or request of a processing program. The scheduling unit determines whether or not the specified amount of data can be read from the external storage device to the buffer memory by the specified time based on the time and the data amount specified by the processing program. Then, the reading order from the external storage device is scheduled.

【0009】[0009]

【発明の実施の形態】本発明の実施例の概略を図1に基
づいて説明する。本構成は、CPU10とRAM20を有す
る処理装置90と外部記憶装置50とからなる。RAM20
は、プログラム実行領域70とデータ領域80とからなり、
プログラム実行領域70には、外部記憶装置50にアクセス
する複数の処理プログラム30がローディングされ、CP
U10で実行される。外部記憶装置50へのアクセスは、同
じくRAM20にローディングされているデバイスドライ
バ51を介して行われる。
DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be schematically described with reference to FIG. This configuration includes a processing device 90 having a CPU 10 and a RAM 20, and an external storage device 50. RAM20
Consists of a program execution area 70 and a data area 80,
A plurality of processing programs 30 for accessing the external storage device 50 are loaded in the program execution area 70,
Executed in U10. Access to the external storage device 50 is performed via a device driver 51 which is also loaded into the RAM 20.

【0010】処理プログラム30は、READ命令を発行
する際に読み込むべきデータ量304だけでなく、そのデ
ータの外部記憶装置50からバッファメモリ53へ読み込み
が終了すべき時間305 を指定する。さらに、各処理プロ
グラム30とデバイスドライバ51の間にスケジューリング
部40とスケジュール監視部41を介在させ、前記READ
命令より指示された時間305 を意識したスケジューリン
グを行い、そのスケジュールに則って、デバイスドライ
バ51の制御を行う。
The processing program 30 specifies not only the amount of data 304 to be read when issuing a READ instruction, but also a time 305 at which reading of the data from the external storage device 50 to the buffer memory 53 should be completed. Further, a scheduling unit 40 and a schedule monitoring unit 41 are interposed between each processing program 30 and the device driver 51, and the READ
The scheduling is performed in consideration of the time 305 specified by the instruction, and the device driver 51 is controlled in accordance with the schedule.

【0011】スケジューリング部40は、各処理プログラ
ム30から発行されるREAD命令を受け、指定されたデ
ータ量304 および時間305 から、指定の時刻迄に外部記
憶装置50上の所定のデータ52がバッファメモリ53へ転送
されるようにスケジューリングし、スケジューリングし
た内容をスケジュールデータ42として、 RAM20上のデ
ータ領域80に書き込む。
The scheduling unit 40 receives a READ instruction issued from each processing program 30 and stores predetermined data 52 on the external storage device 50 from the specified data amount 304 and time 305 to the buffer memory by the specified time. Scheduling is performed so as to be transferred to 53, and the contents of the scheduling are written as schedule data 42 in the data area 80 on the RAM 20.

【0012】スケジュール監視部41は、一定時間毎に発
生するように指定したタイマー60からの割り込み信号を
受け、スケジューリング部40で作成されたスケジュール
データ42を読み込み、外部記憶装置50上の所定のデータ
52をバッファメモリ53へ転送するようにデバイスドライ
バ51へ指示する。以下、詳細に説明する。
The schedule monitoring unit 41 receives an interrupt signal from a timer 60 designated to be generated at regular intervals, reads the schedule data 42 created by the scheduling unit 40, and stores a predetermined data in the external storage device 50.
The device driver 51 is instructed to transfer 52 to the buffer memory 53. The details will be described below.

【0013】まず、各処理プログラム30のREAD命令
のデータ構成を図3に基づいて説明する。READ命令
のデータ構成は、アプリケーション識別子300 、ファイ
ル識別子301 、ファイルオフセット302 、バッファアド
レス303 、指定データ量304 、指定時間305 から構成さ
れる。
First, the data structure of the READ instruction of each processing program 30 will be described with reference to FIG. The data structure of the READ instruction includes an application identifier 300, a file identifier 301, a file offset 302, a buffer address 303, a specified data amount 304, and a specified time 305.

【0014】アプリケーション識別子300 は、READ
命令がどの処理プログラム30から発行されたかを識別す
るために、READ命令を発行した処理プログラム名が
格納されている。ファイル識別子301 は、処理プログラ
ム30が外部記憶装置50のどのファイルのデータ52を読み
出すのかを識別するために、読み出しの対象となるファ
イル名が格納されている。
The application identifier 300 is READ
In order to identify which processing program 30 issued the instruction, the name of the processing program that issued the READ instruction is stored. The file identifier 301 stores the name of a file to be read in order to identify which file data 52 of the external storage device 50 the processing program 30 reads.

【0015】ファイルオフセット302 は、前記ファイル
識別子301 で指定された読み出し対象ファイルのどの部
分を読み出すのかを指示するために、読み出し開始位置
の外部記憶装置50上のアドレスが格納されている。バッ
ファアドレス303 は、外部記憶装置50から読み出したデ
ータ52をバッファメモリ53のどこへ転送するのかを指示
するために、転送先のバッファメモリ53のアドレスが格
納されている。
The file offset 302 stores the address of the read start position on the external storage device 50 to indicate which part of the file to be read specified by the file identifier 301 is to be read. The buffer address 303 stores the address of the transfer destination buffer memory 53 in order to indicate where in the buffer memory 53 the data 52 read from the external storage device 50 is to be transferred.

【0016】指定データ量304 は、外部記憶装置50から
読み出すデータ52の量を指示するために、読み出すデー
タの量が格納されている。指定時間305 は、何時までに
外部記憶装置50から所定のデータ52をバッファメモリ53
へ転送しておくべきかを指定するために、READ命令
発行時からの相対時間が格納されている。
The designated data amount 304 stores the amount of data to be read to indicate the amount of data 52 to be read from the external storage device 50. The designated time 305 corresponds to the time when the predetermined data 52 from the external storage device 50 is
The relative time from when the READ instruction is issued is stored in order to specify whether or not the transfer should be performed.

【0017】次に、スケジュールデータ42の構成につい
て、図4に基づいて説明する。外部記憶装置50からバッ
ファメモリ53へのデータ52の転送は、指定されたデータ
量304 が一度にまとめて行われる訳ではなく、実際には
外部記憶装置50ごとに固有に規定されるブロック単位に
行われる。本例では、1ブロック当たりのデータ量をS
0 、1ブロックを外部記憶装置50からバッファメモリ53
へ転送する際の所要時間をT0 と仮定する。
Next, the structure of the schedule data 42 will be described with reference to FIG. The transfer of the data 52 from the external storage device 50 to the buffer memory 53 does not mean that the designated data amount 304 is collectively performed at once, but is actually performed in block units uniquely defined for each external storage device 50. Done. In this example, the data amount per block is S
0 , one block is transferred from the external storage device 50 to the buffer memory 53.
It is assumed that the T 0 the time required to transfer to.

【0018】前記により、スケジュールデータ42は図4
の(1)に示すように、データ量にしてS0 単位、所要時
間にしてT0 単位に、分割して作成される。スケジュー
ルデータ42のレイアウト例を図4の(2)に基づいて、説
明する。スケジュールデータ42には、図4の(2)に示す
ように、未計画部分の空きデータ500 と処理プログラム
30からのREAD命令が計画された計画データ400 とが
ある。
As described above, the schedule data 42 is shown in FIG.
As shown in the (1), S 0 units in the amount of data, the T 0 units in the required time, are created by dividing. A layout example of the schedule data 42 will be described with reference to FIG. As shown in FIG. 4 (2), the schedule data 42 includes the unplanned portion of the free data 500 and the processing program.
There are READ data from 30 and planned data 400.

【0019】スケジュールデータ42は、まず空きデータ
500 の状態に初期化しておく。処理プログラム30よりR
EAD命令が発生したら、当該空きデータ500 を計画デ
ータ400 に書き換える。空きデータ500 のレイアウト
を、図4の(2)のに基づいて説明する。空きデータ50
0 は、ダミー501 、転送データ量502 、完了時刻503 か
ら構成される。
The schedule data 42 first includes free data.
Initialize to 500 state. R from processing program 30
When the EAD instruction occurs, the empty data 500 is rewritten to the plan data 400. The layout of the vacant data 500 will be described with reference to FIG. Free data 50
0 is composed of a dummy 501, a transfer data amount 502, and a completion time 503.

【0020】ダミー501 は、計画データ400 に書換える
際に、後述の計画データ400 のアプリケーション識別子
401 からバッファアドレス404 までが格納される領域で
ある。転送データ量502 は、スケジューリング部40によ
り分割された読み出しブロック単位のデータ量を指定す
る。本例では、S0 となる。
When the dummy 501 is rewritten to the plan data 400, an application identifier of the plan data 400 described later is used.
This area stores 401 to 404 buffer addresses. The transfer data amount 502 designates the data amount of the read block unit divided by the scheduling unit 40. In this example, the S 0.

【0021】完了時刻503 は、当該スケジュールデータ
42が完了する時刻が格納されている。計画データ400 の
レイアウトを、図4の(2)のに基づいて説明する。計
画データ400 は、アプリケーション識別子401 、ファイ
ル識別子402 、ファイルオフセット403 、バッファアド
レス404 、転送データ量405 、完了時刻406から構成さ
れる。
The completion time 503 corresponds to the schedule data
The time when 42 is completed is stored. The layout of the plan data 400 will be described with reference to FIG. The plan data 400 includes an application identifier 401, a file identifier 402, a file offset 403, a buffer address 404, a transfer data amount 405, and a completion time 406.

【0022】アプリケーション識別子401 は、スケジュ
ーリングされたREAD命令がどの処理プログラムから
発行されたのかを識別するために、READ命令を発行
した処理プログラム名(アプリケーション識別子300 )
を格納している。ファイル識別子402 は、外部記憶装置
50のどのファイルのデータ52を読み出すのかを識別する
ために、READ命令で指定されたファイル識別子301
のファイル名を格納している。
The application identifier 401 is the name of the processing program that issued the READ instruction (application identifier 300) in order to identify from which processing program the scheduled READ instruction was issued.
Is stored. File identifier 402 is an external storage device
The file identifier 301 specified by the READ instruction is used to identify which file data 50 is to be read.
The file name is stored.

【0023】ファイルオフセット403 は、スケジューリ
ングにより分割された読み出しの単位に、READ命令
で指定されたファイルオフセット302 に基づいて算出さ
れた読み出し開始位置の外部記憶装置50上のアドレスを
格納している。バッファアドレス404 は、スケジューリ
ングにより分割された読み出しの単位に、READ命令
で指定されたバッファアドレス303 に基づいて算出され
た転送先のバッファメモリ53のアドレスを格納してい
る。
The file offset 403 stores the address of the read start position on the external storage device 50 calculated based on the file offset 302 specified by the READ instruction in the read unit divided by the scheduling. The buffer address 404 stores the address of the transfer destination buffer memory 53 calculated based on the buffer address 303 specified by the READ instruction in the read unit divided by the scheduling.

【0024】転送データ量405 は、スケジューリングに
より分割された読み出しの単位に転送するデータ量が格
納されている。本例では、S0 あるいは分割により発生
した端数となる。完了時刻406 は、前述したデータ52の
読み出しが完了する時刻を格納している。
The transfer data amount 405 stores the amount of data to be transferred in a read unit divided by scheduling. In this example, it is S 0 or a fraction generated by division. The completion time 406 stores the time at which the reading of the data 52 is completed.

【0025】以上が、データ量にしてS0 単位、所要時
間にしてT0 単位に分割して作成するスケジュールデー
タ42に関する説明である。次に、図5に基づいてスケジ
ュールデータ42を作成するスケジューリング部40の処理
を説明する。スケジューリング部40は、システム立ち上
げと同時に起動され、処理プログラム30からREAD命
令が発行されるのを待つ(図5 ステップ 101)。
The above is a description of the schedule data 42 that is created by dividing the data amount into S 0 units and the required time into T 0 units. Next, processing of the scheduling unit 40 for creating the schedule data 42 will be described based on FIG. The scheduling unit 40 is started up at the same time as the start-up of the system, and waits until a READ instruction is issued from the processing program 30 (Step 101 in FIG. 5).

【0026】処理プログラム30からREAD命令を受け
取ると、システム時刻にREAD命令から指示された指
定時間305 (図7 Tn, n:整数)を加えて、指定時刻
(図7 tn, n:整数)に変換する(図5 ステップ 1
02)。これにより、当該READ命令が何時までに完了
しないといけないかの完了時刻503,406 (図7tn, n
整数)が確定する。
When a READ command is received from the processing program 30, a specified time 305 (T n, n : integer) specified by the READ command is added to the system time, and the specified time (t n, n : integer in FIG. 7) is added. ) (Fig. 5 Step 1)
02). Thus, the completion time 503, 406 of when the READ instruction must be completed (tn , n in FIG. 7:
Integer).

【0027】さらに、指定データ量304 (図7
n, n:整数)を、読み出しブロックサイズ(本例では
0 )で割ることにより、外部記憶装置50からバッファ
メモリ53へのデータ52の転送に要する所要時間を割り出
す(図5 ステップ 103)。これにより、前記完了時刻
503,406 までにデータ52の転送が可能かどうかの判断根
拠が確定する。
Further, the designated data amount 304 (FIG. 7)
By dividing S n, n : an integer) by the read block size (S 0 in this example), the time required for transferring the data 52 from the external storage device 50 to the buffer memory 53 is determined (Step 103 in FIG. 5). . Thus, the completion time
The basis for determining whether the data 52 can be transferred is determined by 503,406.

【0028】例えば、図7の(a)処理プログラム1のR
EAD命令R1-1 を例にとると、指定データ量S1 から
所要時間がT0 ×2であることを割り出し、指定時間T
1 から指定時刻t5 を割り出している。これらの判断根
拠を確定したのち、スケジュールデータ42を検索し、ス
ケジューリング可能かどうかを判断する。
For example, in FIG.
Taking EAD instruction R 1-1 as an example, indexing the required time from the specified amount of data S 1 is a T 0 × 2, specified time T
And indexing the specified time t 5 from 1. After these determination grounds are determined, the schedule data 42 is searched to determine whether scheduling is possible.

【0029】指定時刻に達するまでスケジュールデータ
42を読み込み(図5 ステップ 104,106)、空きデータ
500 を累積する(図5 ステップ 107,108)。もし、指
定時刻に達するまでに、スケジュールデータ42が終わっ
た場合は(図5 ステップ105)、以後にスケジューリ
ングされておらず、十分な空きがあるということなの
で、READ命令を処理単位に分割し(図5 ステップ
110)、スケジュールデータ42を作成する(図5 ステ
ップ 111)。
Schedule data until the specified time is reached
Reads 42 (Fig. 5, steps 104, 106), free data
500 is accumulated (steps 107 and 108 in FIG. 5). If the schedule data 42 is completed before the specified time is reached (step 105 in FIG. 5), it means that scheduling has not been performed thereafter and there is sufficient space, so the READ instruction is divided into processing units ( Figure 5 Step
110), and create schedule data 42 (FIG. 5, step 111).

【0030】指定時刻より完了時刻503,406 が大きいス
ケジュールデータ42まで達したら、空き時間と前記算出
した所要時間を比較して、READ命令が実行可能かど
うかを判断し(図5 ステップ 109)、実行可能であれ
ばREAD命令を読み出しブロック単位に分割して(図
5 ステップ 110)スケジュールデータ42を作成し(図
5 ステップ 111)、実行不可能であれば実行できない
旨を当該処理プログラム30に通知する(図5 ステップ
112)。実行できない旨の通知を受け取った処理プログ
ラム30は、その通知を受けて代替手段を講じる。例え
ば、画像表示プログラムでは、1画面の画像データにつ
いて、標準の画像データと簡略化した画像データを用意
しておき、標準の画像データで読み込みが不可能である
と通知された場合は、簡略化した画像データの方を読み
出すようにREAD命令を発行し直す処理を行う。この
場合、1画面の画像データのパターンを複数用意してお
き、スケジューリング部40から実行不可能の通知ととも
に、指定時間までの空き時間も通知してもらい、空き時
間に応じて、どのパターンの画像データを読み出し直す
かを判断して、READ命令を発行し直すことも可能で
ある。
When reaching the schedule data 42 whose completion time 503, 406 is larger than the designated time, the free time is compared with the calculated required time to judge whether or not the READ instruction can be executed (step 109 in FIG. 5). If so, the READ instruction is divided into read blocks (step 110 in FIG. 5) to create the schedule data 42 (step 111 in FIG. 5). Figure 5 Step
112). The processing program 30 that has received the notification that it cannot be executed receives the notification and takes an alternative. For example, in an image display program, standard image data and simplified image data are prepared for one screen of image data, and if it is notified that the standard image data cannot be read, the simplified image data is used. A process of reissuing a READ instruction to read out the read image data is performed. In this case, a plurality of patterns of image data of one screen are prepared, and the scheduling unit 40 notifies the non-executable state and the idle time until the designated time. It is also possible to determine whether to read the data again and issue the READ instruction again.

【0031】図7に基づいて、上記スケジューリングを
説明する。まず、読み込むデータ量が多いため、余裕を
もってREAD命令を発行している処理プログラム1か
ら発行されたREAD命令R1-1 がスケジューリング部
40に通知されたとする。スケジューリング部40は、指定
データ量S1 から所要時間がT0 ×2、指定時間T1
ら指定時刻t5 と変換し、これに基づいてスケジュール
データ42を検索する。検索した結果、時刻t5 までにT
0 ×2が空きデータ500 であることを確認して、REA
D命令R1-1 の計画データ400 に書き換える。ここで、
指定時刻ないしは指定時刻までの最終の空きデータを終
点としてスケジューリングすることにより、より現時点
に近い部分のスケジュールは指定時間305 の短い、つま
り即時性の要求される処理プログラムからのREAD命
令が受入れ可能となる。さらに、READ命令を分割し
てスケジュールすることにより、本例では連続した空き
データ500 が存在していたことを前提としてスケジュー
リングしているが、空きデータ500 が連続して確保でき
ないが分散して確保できる場合にも指定時間305 までに
スケジュールすることができ、処理プログラム30からの
READ命令をより受け入れることが可能となる。
The above scheduling will be described with reference to FIG. First, because more data amount to be read, READ command R 1-1 issued from the processing program 1 that issues a READ instruction with ease scheduling unit
Suppose that 40 was notified. The scheduling unit 40 converts the required time to T 0 × 2 from the specified data amount S 1 and the specified time T 1 to the specified time t 5, and searches the schedule data 42 based on the converted time. As a result of the search, T until the time t 5
Check that 0 × 2 is free data 500, and
Rewriting the program data 400 of D instruction R 1-1. here,
By scheduling the end point at the specified time or the last available data until the specified time, the schedule of the part closer to the present time has a shorter specified time 305, that is, a READ instruction from a processing program that requires immediacy can be accepted. Become. Furthermore, by dividing and scheduling the READ instruction, in this example, scheduling is performed on the assumption that continuous free data 500 exists. However, free data 500 cannot be secured continuously, but is distributed and secured. When possible, the schedule can be scheduled by the designated time 305, and the READ command from the processing program 30 can be more accepted.

【0032】その後、即時性が求められる処理プログラ
ム2からREAD命令R2-1 がスケジューリング部40に
通知されたとする。スケジューリング部40は、指定デー
タ量S3 から所要時間がT0 、指定時間T3 から指定時
刻t2 と変換し、これに基づいてスケジュールデータ42
を検索する。検索した結果、時刻t2 までにT0 が空き
データ500 であることを確認して、READ命令R2-1
の計画データ400 に書き換える。つまり、先にも述べた
ように指定時刻を終点にスケジュールしていることによ
り、余裕をもって発行している処理プログラム1のRE
AD命令R1-1 は指定時刻に間に合うように後回しにス
ケジュールされ、即時性の求められている処理プログラ
ム2のREAD命令R2-1 が先に実行されるようにスケ
ジュールされ、それぞれの処理プログラム30が所望する
レスポンスが確保できるようになる。
Thereafter, it is assumed that a READ instruction R2-1 is notified to the scheduling unit 40 from the processing program 2 which requires immediacy. The scheduling unit 40 converts the required time from the specified data amount S 3 to the required time T 0 , and converts the specified time T 3 to the specified time t 2, and based on the converted data, the schedule data 42.
Search for. As a result of the search, it is confirmed that T 0 is empty data 500 by time t 2 , and the READ instruction R 2-1
Is rewritten to the planning data 400. That is, since the specified time is scheduled as the end point as described above, the RE of the processing program 1 which has been issued with a margin is provided.
AD instruction R 1-1 is scheduled deferred in time for the specified time, READ command R 2-1 processing program 2 sought immediacy is scheduled to be executed first, each of the processing program 30 can secure the desired response.

【0033】その後さらに、即時性が求められる処理プ
ログラム3からREAD命令R3-1がスケジューリング
部40に通知されたとする。スケジューリング部40は、指
定データ量S5 から所要時間がT0 、指定時間T5 から
指定時刻t3 と 変換し、これに基づいてスケジュール
データ42を検索する。検索した結果、時刻t3 までにT
0 が空きデータ500 であることを確認して、READ命
令R3-1 の計画データ400 に書き換える。
Thereafter, it is further assumed that a READ instruction R3-1 is notified to the scheduling unit 40 from the processing program 3 which requires immediacy. The scheduling unit 40, the required time from the specified data amount S 5 is T 0, converted from the specified time T 5 the designated time t 3, searches the schedule data 42 based on this. As a result of the search, T until the time t 3
0 is confirmed to be free data 500, rewrites the planning data 400 of the READ command R 3-1.

【0034】このように、従来であれば、図2に示した
ように、緊急性の無い処理プログラム1のREAD命令
1-1 から実行されていたが、本発明では、図7に示す
ように、緊急性の無い処理プログラム1のREAD命令
1-1 は指定する時間までに実行が終わるようにし、そ
れまでに発生した緊急性の高い処理プログラム2及び3
のREAD命令R2-1,3-1 が先に実行されるように、
スケジューリングすることが可能となる。
[0034] Thus, if conventional, as shown in FIG. 2, had been executed from READ command R 1-1 without processing program 1 urgency, in the present invention, as shown in FIG. 7 to, READ command R 1-1 without processing program 1 urgency is the ending is executed up time specified until then urgent that occurred in the processing program 2 and 3
So that the READ instructions R 2-1 and R 3-1 are executed first,
It becomes possible to schedule.

【0035】次に、図6に基づいて、スケジュール監視
部41の処理を説明する。スケジュール監視部41は、一定
時間毎に発行されるタイマー60からの割り込み信号によ
り動作する。タイマー60からの割り込み信号の発行タイ
ミングは、外部記憶装置50固有の読み出しブロックサイ
ズの読み出しに要する時間に合わせる。本例では、読み
出しブロックサイズがS0 、読み出しに要する時間がT
0 と仮定しているので、タイマー60からはT0 毎に割り
込み信号が発行されるように設定している。
Next, the processing of the schedule monitor 41 will be described with reference to FIG. The schedule monitor 41 operates according to an interrupt signal from the timer 60 issued at regular intervals. The timing of issuing the interrupt signal from the timer 60 is set to the time required for reading the read block size specific to the external storage device 50. In this example, the read block size is S 0 , and the time required for read is T
Since it is assumed to be 0 , the timer 60 is set to issue an interrupt signal every T 0 .

【0036】スケジュール監視部41は、タイマーからの
割り込み信号を監視し(図6 ステップ 201) 、割り込
み信号が通知されたら、先頭のスケジュールデータ42を
読み込む(図6 ステップ 202)。読み込んだ先頭のス
ケジュールデータ42が計画データ400 であればその内容
に基づいてデバイスドライバ51に指示を出し(図6ステ
ップ 204)、空きデータ500 であれば次のスケジュール
データ42を読み込む(図6 ステップ 205)。スケジュ
ールデータ42が計画データ400 であれば(図6 ステッ
プ 207)、計画された内容を繰り上げてデバイスドライ
バ51へ指示する(図6 ステップ 208)。繰り上げて実
行されたスケジュールデータ42は、実行済となるため、
空きデータ500 に書き換える(図6 ステップ 209)。
これにより、スケジューリング可能となる空きデータ50
0 が増加し、処理プログラムから新たなREAD命令が
通知された際に、スケジュールされる精度が向上する。
さらに、先頭のスケジュールデータ42を削除し(図6
ステップ 210)、最新の計画データ400 が先頭にくるよ
うにする。
The schedule monitor 41 monitors the interrupt signal from the timer (step 201 in FIG. 6), and when the interrupt signal is notified, reads the first schedule data 42 (step 202 in FIG. 6). If the read first schedule data 42 is the plan data 400, an instruction is given to the device driver 51 on the basis of the contents (step 204 in FIG. 6), and if it is free data 500, the next schedule data 42 is read (FIG. 6 step). 205). If the schedule data 42 is the plan data 400 (step 207 in FIG. 6), the planned contents are advanced to instruct the device driver 51 (step 208 in FIG. 6). Since the schedule data 42 executed earlier is already executed,
The data is rewritten to the empty data 500 (step 209 in FIG. 6).
As a result, available data 50 that can be scheduled
0 is increased, and when a new READ instruction is notified from the processing program, the scheduling accuracy is improved.
Further, the first schedule data 42 is deleted (FIG. 6).
Step 210), so that the latest plan data 400 comes first.

【0037】以上、本発明の実施例を説明した。なお、
本実施例の変形例では、以下のようなものが考えられ
る。本例では、処理プログラム30のREAD命令により
指定された指定時間305 (図7 Tn, n:整数)に基づ
いて変換された指定時刻と、一定間隔で作成するスケジ
ュールデータ42の完了時刻503,406 (図7 tn, n:整
数)とが一致するようになっているが、一致しないこと
を前提とした実施例でもよい。つまり、 本例では、完了
時刻503,406 (図7 tn, n:整数)は、システム立ち
上げ時を起点に一定時間毎に区切られた時刻としている
が、かたやREAD命令は処理プログラム30から随時発
行されるものであり、その指定時間305 に基づいて変換
される指定時刻は不定期なものとなるため、指定時刻は
ある完了時刻503,406 (図7 tn, n:整数)とその次
の完了時刻との間になることがある。
The embodiments of the present invention have been described above. In addition,
In the modified example of the present embodiment, the following can be considered. In this example, the designated time converted based on the designated time 305 (T n, n : an integer) designated by the READ instruction of the processing program 30 and the completion time 503, 406 of the schedule data 42 created at regular intervals (FIG. 7 T n, n : integer) (T n, n : integer) in FIG. 7, but may be an embodiment on the assumption that they do not match. In other words, in this example, the completion times 503, 406 (t n, n : integers in FIG. 7) are times that are delimited at regular time intervals from the start of the system, but the READ instruction is issued from the processing program 30 as needed. Since the designated time converted based on the designated time 305 is irregular, the designated time is a certain completion time 503, 406 (t n, n : an integer in FIG. 7) and the next completion time And between.

【0038】READ命令で指定する時間も、本例では
相対時間で指定するようになっているが、時刻など他の
時間を表す方法で指定してもよい。また、処理プログラ
ムのREAD命令から指定された時間に対して、受入れ
の制限を設けることにより、スケジュールデータ42の容
量をより少なくすることが可能である。具体的には、ス
ケジューリング部40において、READ命令を受けた時
点で、まず指定時間305 の指定内容を判断し、予め定め
た所定時間を超える時間が指定されていたら、スケジュ
ールできない旨を処理プログラムに通知し、スケジュー
リングを行わないようにする。指定時間305 が時刻で指
定されている場合は、その時刻とREAD命令発行時の
システム時刻との差を求め、その差が所定時間を超える
場合に、スケジュールできない旨を処理プログラムに通
知し、スケジューリングを行わないようにする。これに
より、所定時間分のスケジュールしか計画および保存さ
れないため、スケジュールデータ42の容量をより少なく
することができる。例えば、所定時間を10分間とした
場合、指定時間305 に15分を指定した場合は所定時間
の10分を超えるためスケジューリング不可とし、RE
AD命令が13時10分に発行され、その指定時刻が1
3時30分の場合も、その差が20分となり所定時間の
10分を超えるため、スケジューリング不可とする。こ
れにより、スケジュールデータ42は常にその時点から1
0分間分しか保存されない。
The time specified by the READ instruction is also specified by a relative time in this example, but may be specified by another method such as a time. In addition, by setting a restriction on the reception for the time specified from the READ instruction of the processing program, the capacity of the schedule data 42 can be further reduced. Specifically, at the time of receiving the READ instruction, the scheduling unit 40 first determines the specified content of the specified time 305, and if a time exceeding the predetermined time is specified, the processing program informs the processing program that scheduling cannot be performed. Notify and do not schedule. If the designated time 305 is designated by the time, the difference between the time and the system time at the time of issuing the READ instruction is obtained, and if the difference exceeds a predetermined time, the processing program is notified that scheduling is not possible, and the scheduling is performed. Do not do. As a result, only the schedule for the predetermined time is planned and stored, so that the capacity of the schedule data 42 can be further reduced. For example, if the predetermined time is 10 minutes, and if the specified time 305 is set to 15 minutes, the predetermined time exceeds 10 minutes, so that scheduling is not possible.
An AD instruction is issued at 13:10, and the designated time is 1
Also at 3:30, the difference is 20 minutes, which exceeds the predetermined time of 10 minutes, so that scheduling is not possible. As a result, the schedule data 42 is always 1
Only stored for 0 minutes.

【0039】また、スケジューリングの単位を、外部記
憶装置50の物理的な読み出しのブロック単位にしている
が、幾つかのブロックを1単位としてスケジューリング
するようにしてもよい。スケジュールデータ42の構成
も、空きデータ500 および計画データ400 が所定の単位
に1データとして用意するのではなく、特に空きデータ
500 が続く場合は幾つの空きデータ500 が続くかの情報
を持つようにして1つにまとめるなど、スケジュールデ
ータ42の容量を削減することも可能である。
Although the unit of scheduling is the block unit of physical reading of the external storage device 50, the scheduling may be performed with some blocks as one unit. In the configuration of the schedule data 42, the empty data 500 and the plan data 400 are not prepared as one data in a predetermined unit.
When 500 continues, it is also possible to reduce the capacity of the schedule data 42 by, for example, having information on how many free data 500 continue and combining them into one.

【0040】スケジュール監視部41がスケジュール監視
を行うタイミングをタイマー60からの割り込み信号とし
ているが、スケジュール監視部41自体で監視を行うタイ
ミングを制御するようにしてもよい。
Although the timing at which the schedule monitor 41 performs the schedule monitoring is an interrupt signal from the timer 60, the schedule monitoring unit 41 itself may control the timing at which the monitoring is performed.

【0041】[0041]

【発明の効果】以上により、本発明では、処理プログラ
ムのリード命令即ちリクエストに基づいて、外部記憶装
置に記憶されたデータをバッファメモリに読み出すデー
タ処理装置において、リード命令で指定された時間を考
慮して、各リード命令の実行順序をスケジュールするこ
とにより、所定のデータが必要な時までに外部記憶装置
からバッファメモリへ転送されていることを確実にす
る。特に、大量のデータを所定の時間までに外部記憶装
置からバッファメモリへ転送しておくことが必要とされ
るマルチメディア処理を行う処理プログラムとマルチタ
スク処理を行う際に有効である。
As described above, according to the present invention, in a data processing device for reading data stored in an external storage device into a buffer memory based on a read instruction, that is, a request of a processing program, the time specified by the read instruction is considered. By scheduling the execution order of each read instruction, it is ensured that predetermined data has been transferred from the external storage device to the buffer memory by the time required. In particular, the present invention is effective when a processing program for performing a multimedia process and a multitask process, which require transferring a large amount of data from an external storage device to a buffer memory by a predetermined time.

【図面の簡単な説明】[Brief description of the drawings]

【図1】構成図FIG. 1 is a configuration diagram

【図2】従来のREAD命令の実行順序FIG. 2 shows the execution order of a conventional READ instruction

【図3】READ命令で指示される内容の例FIG. 3 is an example of the content specified by a READ instruction;

【図4】スケジュールデータの構成FIG. 4 shows the structure of schedule data.

【図5】スケジューリング部の処理を示すフローチャー
FIG. 5 is a flowchart showing processing of a scheduling unit;

【図6】スケジュール監視部の処理を示すフローチャー
FIG. 6 is a flowchart showing processing of a schedule monitoring unit;

【図7】本発明でのREAD命令の実行順序FIG. 7 is an execution order of a READ instruction according to the present invention;

───────────────────────────────────────────────────── フロントページの続き (72)発明者 諸永 知子 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 (72)発明者 園田 俊浩 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 ────────────────────────────────────────────────── ─── Continuing from the front page (72) Inventor Tomoko Moronaga 4-1-1, Kamidadanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture Inside Fujitsu Limited (72) Inventor Toshihiro Sonoda 4-chome, Kamiodanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture No. 1 in Fujitsu Limited

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 処理プログラムのリード命令に基づい
て、外部記憶装置に記憶されたデータをバッファメモリ
に読み出すデータ処理装置において、外部記憶装置から
データを読み出す順序を規定するスケジューリング部を
有し、このスケジューリング部は、処理プログラムから
指定される時間とデータ量に基づいて、指定された時間
までに指定された量のデータが外部記憶装置からバッフ
ァメモリへ読み出し可能かどうかを判断して、外部記憶
装置からの読み出し順序をスケジュールすることを特徴
とするデータ処理装置。
1. A data processing device for reading data stored in an external storage device into a buffer memory based on a read instruction of a processing program, comprising: a scheduling unit for defining an order of reading data from the external storage device. The scheduling unit determines whether a specified amount of data can be read from the external storage device to the buffer memory by the specified time based on the time and the data amount specified by the processing program, and A data processing device for scheduling the order of reading data from the data.
JP23373996A 1996-09-04 1996-09-04 Data processor Withdrawn JPH1078875A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23373996A JPH1078875A (en) 1996-09-04 1996-09-04 Data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23373996A JPH1078875A (en) 1996-09-04 1996-09-04 Data processor

Publications (1)

Publication Number Publication Date
JPH1078875A true JPH1078875A (en) 1998-03-24

Family

ID=16959827

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23373996A Withdrawn JPH1078875A (en) 1996-09-04 1996-09-04 Data processor

Country Status (1)

Country Link
JP (1) JPH1078875A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2006059493A1 (en) * 2004-11-30 2008-08-07 日本電気株式会社 Information processing apparatus, device access control method, and device access control program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2006059493A1 (en) * 2004-11-30 2008-08-07 日本電気株式会社 Information processing apparatus, device access control method, and device access control program

Similar Documents

Publication Publication Date Title
JP3273202B2 (en) Method of transferring data through a plurality of data channels and circuit architecture thereof
JP3271125B2 (en) Method and apparatus for transferring data and apparatus for interleaving data transfer
EP0464615B1 (en) Microcomputer equipped with DMA controller
JP3273367B2 (en) Method for asynchronously reading / writing data to / from memory and direct memory access controller therefor
JPH1078875A (en) Data processor
US20080209085A1 (en) Semiconductor device and dma transfer method
JPS6336023B2 (en)
JP3130798B2 (en) Bus transfer device
JP3056000B2 (en) Multimedia data network transfer method
JPH1185673A (en) Method and device for controlling shared bus
JPH06131294A (en) Data transfer device
JPH067373B2 (en) Data transfer method
JP3259503B2 (en) Data processing device
JPH05173936A (en) Data transfer processing device
JPH11203059A (en) Image input and output device and its memory access method, and storage medium storing computer readable program
JPS6053335B2 (en) information processing equipment
JPH0418639A (en) Program activating system
JPH1040213A (en) Method for transferring dma data of information processor
JPH0659947A (en) Competition management system for receiving processing
JPH0646391B2 (en) Data transfer device
JPH0937044A (en) Graphics system
JPH10269171A (en) Data communication system
JPH04306747A (en) Block transfer controller
JP2000268165A (en) Image information processor and image information processing method
JP2000311249A (en) Graphic processor and graphic command processing method therefor

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20031104