JP2009181474A - Priority controller for input/output request, priority control method for input/output request, and priority control program for input/output request - Google Patents
Priority controller for input/output request, priority control method for input/output request, and priority control program for input/output request Download PDFInfo
- Publication number
- JP2009181474A JP2009181474A JP2008021727A JP2008021727A JP2009181474A JP 2009181474 A JP2009181474 A JP 2009181474A JP 2008021727 A JP2008021727 A JP 2008021727A JP 2008021727 A JP2008021727 A JP 2008021727A JP 2009181474 A JP2009181474 A JP 2009181474A
- Authority
- JP
- Japan
- Prior art keywords
- input
- priority
- output request
- output
- request
- 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.)
- Granted
Links
Images
Abstract
Description
本発明は、入出力要求の優先度コントローラ、入出力要求の優先度制御方法、及び、入出力要求の優先度制御プログラムに関する。 The present invention relates to an input / output request priority controller, an input / output request priority control method, and an input / output request priority control program.
ある応答を、ある決められた時間内に行うリアルタイムOS(Operating System)が知られる。リアルタイムOSは、カーナビゲーション、デジタルカメラ、情報家電、携帯電話機の組み込みシステムなどで使用されている。特に、組み込みシステムにおいては、近年、リアルタイム処理に加えて、音声データや動画データを扱うマルチメディア処理を行うなど、システムの高機能化が求められている。 A real-time OS (Operating System) that performs a certain response within a predetermined time is known. Real-time OSs are used in car navigation systems, digital cameras, information appliances, mobile phone embedded systems, and the like. In particular, in an embedded system, in recent years, in addition to real-time processing, it has been demanded to increase the functionality of the system such as performing multimedia processing that handles audio data and moving image data.
高機能化を実現する手法の一つとして、ハイブリッドOSが知られる。ハイブリッドOSは、リアルタイム処理を行うリアルタイムOSと、マルチメディア処理などを行う汎用OSとの2種類のOSを擁したOSである。OSのハイブリッド化により、リアルタイムOSが持つ高リアルタイム性や高信頼性、及び、汎用OSが持つ高スケーラビリティや高スループットなど、二つのOSの特長を併せ持つシステムが実現可能となる。 A hybrid OS is known as one method for realizing high functionality. The hybrid OS is an OS having two types of OSs, a real-time OS that performs real-time processing and a general-purpose OS that performs multimedia processing. By hybridizing the OS, it is possible to realize a system having the features of two OSs such as the high real-time property and high reliability of the real-time OS and the high scalability and high throughput of the general-purpose OS.
組み込みシステムでOSのハイブリッド化を行う場合、省スペースの制約などのため、OS毎にディスクを設けることが難しい。そのため、OS間でディスクを共有する必要がある。しかし、共有ディスクを設けた場合、リアルタイムOSの入出力処理が、汎用OSの入出力処理によって阻害され、レスポンスが低下することがある。 When hybridizing an OS in an embedded system, it is difficult to provide a disk for each OS due to space-saving restrictions. Therefore, it is necessary to share a disk between OSs. However, when a shared disk is provided, the input / output processing of the real-time OS may be hindered by the input / output processing of the general-purpose OS, and the response may decrease.
加えて、汎用OSでは、スループットを重視するため、入出力要求の入出力ブロックサイズが、リアルタイムOSの入出力要求の入出力ブロックサイズと比較して大きくなるという傾向が見られる。入出力ブロックサイズが大きいと、入出力要求あたりの入出力処理の実行時間が長くなるため、汎用OSの入出力処理により、リアルタイムOSの入出力処理を開始できず、かなりの頻度で遅延が生じてしまう。 In addition, in general-purpose OSs, the input / output block size for input / output requests tends to be larger than the input / output block size for input / output requests of the real-time OS because throughput is important. If the input / output block size is large, the execution time of the input / output processing per input / output request becomes long. Therefore, the input / output processing of the general-purpose OS cannot start the input / output processing of the real-time OS, and a delay occurs with considerable frequency. End up.
特開平11−39246号公報(特許文献1参照)には、通常優先度のI/Oブロックを分割可能なディスクアクセス方式の発明が記載されている。このディスクアクセス方式の発明においては、現在処理中のI/O要求よりも高優先度I/O要求が発生した場合に、ディスクのI/Oブロックを分割した単位であるI/Oサブブロックの切れ目にて、高優先度I/O要求を割り込ませて先に処理する。 Japanese Patent Application Laid-Open No. 11-39246 (see Patent Document 1) describes a disk access system invention capable of dividing a normal priority I / O block. In this disk access system invention, when an I / O request having a higher priority than an I / O request currently being processed is generated, the I / O sub-block which is a unit obtained by dividing the I / O block of the disk At the break, the high priority I / O request is interrupted and processed first.
本発明の課題は、ハイブリッドOSにおいて、リアルタイムOSのレスポンスが遅延することを回避すると共に、汎用OSのスループットが低下することを抑止するための優先度制御を行うことである。 An object of the present invention is to perform priority control for preventing a response of a real-time OS from being delayed and suppressing a decrease in throughput of a general-purpose OS in a hybrid OS.
本発明の一つ目のアスペクトによる入出力要求の優先度コントローラは、優先度管理テーブルと、優先度制御部と、入出力要求キューとを備える。優先度管理テーブルは、リアルタイムオペレーティングシステムに発行される第一の入出力要求の優先度に応じて、汎用オペレーティングシステムに発行される第二の入出力要求に許容する入出力ブロックの大きさを決定するためのテーブルである。優先度制御部は、第一の入出力要求と、第二の入出力要求とを受け取ると共に、優先度管理テーブルに基づいて、第二の入出力要求を分割する。入出力要求キューは、第一の入出力要求と、優先度制御部によって分割された第二の入出力要求とを、優先度順にエンキューする。 An input / output request priority controller according to a first aspect of the present invention includes a priority management table, a priority control unit, and an input / output request queue. The priority management table determines the size of the I / O block allowed for the second I / O request issued to the general-purpose operating system according to the priority of the first I / O request issued to the real-time operating system. It is a table to do. The priority control unit receives the first input / output request and the second input / output request, and divides the second input / output request based on the priority management table. The input / output request queue enqueues the first input / output request and the second input / output request divided by the priority control unit in order of priority.
本発明の二つ目のアスペクトによる入出力要求の優先度制御方法は、受け取ることと、決定することと、分割することと、エンキューすることとを備える。受け取ることは、リアルタイムオペレーティングシステムに発行される第一の入出力要求を受け取ると共に、汎用オペレーティングシステムに発行される第二の入出力要求を受け取る。決定することは、第一の入出力要求の優先度に応じて、第二の入出力要求に許容する入出力ブロックの大きさを決定する。分割することは、その大きさに基づいて、第二の入出力要求を分割する。エンキューすることは、第一の入出力要求と、分割することによって分割された第二の入出力要求とを、優先度順に入出力要求キューにエンキューする。 The input / output request priority control method according to the second aspect of the present invention comprises receiving, determining, dividing, and enqueuing. Receiving receives a first I / O request issued to the real-time operating system and a second I / O request issued to the general purpose operating system. The determination determines the size of the input / output block allowed for the second input / output request in accordance with the priority of the first input / output request. Splitting splits the second I / O request based on its size. Enqueuing enqueues the first input / output request and the second input / output request divided by dividing into the input / output request queue in order of priority.
本発明の三つ目のアスペクトによる入出力要求の優先度制御プログラムは、受け取る手順と、決定する手順と、分割する手順と、エンキューする手順とをコンピュータに実行させる。受け取る手順は、リアルタイムオペレーティングシステムに発行される第一の入出力要求を受け取ると共に、汎用オペレーティングシステムに発行される第二の入出力要求を受け取る。決定する手順は、第一の入出力要求の優先度に応じて、第二の入出力要求に許容する入出力ブロックの大きさを決定する。分割する手順は、この大きさに基づいて、第二の入出力要求を分割する。エンキューする手順は、第一の入出力要求と、分割することによって分割された第二の入出力要求とを、優先度順に入出力要求キューにエンキューする。 The input / output request priority control program according to the third aspect of the present invention causes a computer to execute a receiving procedure, a determining procedure, a dividing procedure, and an enqueuing procedure. The receiving procedure receives a first I / O request issued to the real-time operating system and a second I / O request issued to the general-purpose operating system. The determining procedure determines the size of the input / output block allowed for the second input / output request in accordance with the priority of the first input / output request. The dividing procedure divides the second input / output request based on this size. The enqueueing procedure enqueues the first input / output request and the second input / output request divided by dividing into the input / output request queue in order of priority.
本発明によれば、ハイブリッドOSにおいて、リアルタイムOSのレスポンスが遅延することを回避すると共に、汎用OSのスループットが低下することを抑止するための優先度制御を行うことができる。 According to the present invention, in the hybrid OS, it is possible to perform priority control for preventing the response of the real-time OS from being delayed and preventing the throughput of the general-purpose OS from being lowered.
本発明を実施するための最良の形態の一つについて、図面を参照して詳細に説明する。図1に、一つの実施の形態による入出力要求の優先度コントローラを、組み込みシステムに適用した構成図を示す。図1において、組み込みシステムはハイブリッドOSを装備しており、リアルタイムOS 3と、OS間通信部4と、汎用OS 5とを有している。リアルタイムOS 3の上ではリアルタイムOS・アプリケーション1が動作し、汎用OS 4の上では汎用OS・アプリケーション2が動作している。これらのソフトウェア1〜5は、組み込みシステムが備えるシングルプロセッサ又はマルチコアプロセッサで実行されている。図中、組み込みシステムは一つのみの共有ディスク6を備え、両OS 3,5は同一の共有ディスク6を使用するようになっている。
One of the best modes for carrying out the present invention will be described in detail with reference to the drawings. FIG. 1 shows a configuration diagram in which an input / output request priority controller according to one embodiment is applied to an embedded system. In FIG. 1, the embedded system is equipped with a hybrid OS, and has a real-
図1において、リアルタイムOS・アプリケーション1として、二つのタスク11,12が動作している。また、汎用OS・アプリケーション2として、二つのプロセス21,22が動作している。タスク11,12は、リアルタイムOS 3の入出力受付部31に対して、入出力要求を発行する。一方、プロセス21,22は、汎用OS 5の入出力受付部51に対して、入出力要求を発行する。リアルタイムOS 3の入出力受付部31は、タスク11,22から入出力要求を受け取ると、この入出力要求を、入出力要求の優先度コントローラ70に通知する。汎用OSの入出力受付部51は、プロセス21,22から入出力要求を受け取ると、この入出力要求を、OS間通信部4を経由して、優先度コントローラ70に通知する。
In FIG. 1, two
優先度コントローラ70は、入出力受付部31から、又は、入出力受付部51から入出力要求を受け取る。そして、一定条件下、入出力要求を分割するなどして、入出力要求の優先度を制御する。入出力処理部35は、優先度コントローラ70から、優先度順に従って入出力要求を取り出し、共有ディスク6に対する入出力を実行する。入出力が完了すると、優先度コントローラ70は、入出力要求元に入出力の完了を通知する。
The
図2は、入出力要求の優先度コントローラの一例を説明する構成図である。図示するように、優先度コントローラ70は、優先度制御部71と、優先度管理テーブル72と、入出力要求キュー73とを有している。図2において、優先度制御部71は、入出力要求を受け取ると共に、受け取った入出力要求を、入出力要求キュー33に優先度順にエンキューする。このとき、優先度制御部32は、優先度管理テーブルを参照して、汎用OS 5の入出力受付部51からの入出力要求を、一定条件下、予め決められたアルゴリズムに従って分割する。
FIG. 2 is a configuration diagram illustrating an example of a priority controller for input / output requests. As illustrated, the
図3は、優先度管理テーブルの具体例を示す説明図である。図3に例示する優先度管理テーブル72は、二つのサブテーブルを備えている。図3において、一つ目のサブテーブルは、二つ目のサブテーブルにおけるタスクの優先度と、汎用OS 5の入出力受付部51からの入出力要求について、入出力ブロックの大きさを制限する部分ブロックサイズとの対応表である。タスクの優先度が高いほど、より小さなサイズの部分ブロックサイズが割り当てられ、タスクの優先度が低いほど、より大きなサイズの部分ブロックサイズが割り当てられている。二つ目のサブテーブルは、入出力要求キュー33にエンキューされている入出力要求を発行したタスクと、そのタスクの優先度との対応表である。ここでは、入出力要求の優先度は、その入出力要求を発行したタスクの優先度と等価になっていて、同一のタスクから発行される入出力要求は、全て、同じ優先度を割り当てられている。
FIG. 3 is an explanatory diagram of a specific example of the priority management table. The priority management table 72 illustrated in FIG. 3 includes two sub tables. In FIG. 3, the first sub-table limits the size of the input / output block for the priority of the task in the second sub-table and the input / output request from the input /
図4は、入出力要求の説明図である。図示するように、タスク11,12及びプロセス21,22が発行する入出力要求は、発行元のタスク(又はプロセス)を特定するタスク識別子(又はプロセス識別子)と、そのタスク(又はプロセス)の優先度と、入出力ブロックとに関する情報を含んでいる。入出力ブロックの欄には、例えば、簡便に説明すると、アドレスが#0から#9までというような入出力データを特定する情報が含まれている。
FIG. 4 is an explanatory diagram of an input / output request. As shown in the figure, the input / output request issued by the
図5は、優先度制御部の動作を説明する流れ図である。リアルタイムOS・アプリケーション1のタスク11,12、又は、汎用OS・アプリケーション2のプロセス21,22が入出力要求を発行すると、優先度制御部71は、入出力受付部31又は入出力受付部51から、その入出力要求を受け取る(ステップA1)。優先度制御部71は、この入出力要求が、汎用OS・アプリケーション2のプロセス21,22から発行されたものか否かを確認する(ステップA2)。
FIG. 5 is a flowchart for explaining the operation of the priority control unit. When the
汎用OS 5からの入出力要求の場合(ステップA2:イエス)、優先度制御部71は、優先度管理テーブル72を参照する(ステップA3)。ここで、優先度制御部71は、まず、第二のサブテーブルから、エントリされているタスクの優先度の最高値を取り出す(ステップA4)。次に、第一のサブテーブルから、優先度の最高値に対応する部分ブロックサイズを取り出す(ステップA5)。優先度制御部71は、入出力要求における入出力ブロックの欄のサイズが、取り出した部分ブロックサイズよりも大きかった場合には、部分ブロックサイズ以下になるように、汎用OS 5からの入出力要求を分割する(ステップA6)。そして、分割された入出力要求を、優先度順になるように入出力要求キュー73にエンキューする(ステップA7)。
In the case of an input / output request from the general-purpose OS 5 (step A2: YES), the
リアルタイムOS・アプリケーション1のタスク11,12が発行した入出力要求の場合(ステップA2:ノー)、優先度制御部71は、入出力要求を分割せずに、優先度順になるように入出力要求キュー73にエンキューする(ステップA7)。このとき、優先度制御部71は、優先度管理テーブル72における第二のサブテーブルに、その入出力要求を発行したタスクのタスク識別子と、優先度とを有するエントリを追加する。
In the case of an input / output request issued by the
優先度制御部の動作と並行して、入出力処理部35は、入出力要求キュー73から、優先度が最も高い先頭の入出力要求をデキューし、共有ディスク6に対し入出力を実行する。入出力が完了すると、優先度制御部71は、その入出力要求に関するエントリを、優先度管理テーブル72における第二のサブテーブルから削除する。同時に、入出力要求の発行元であるリアルタイムOS・アプリケーション1のタスク11、タスク12へ、又は、汎用OS・アプリケーション2のプロセス21、プロセス22へ入出力の完了を通知する。
In parallel with the operation of the priority control unit, the input /
図5の動作例では、第二のサブテーブルを参照することにより優先度を取得し、これらの優先度の最高位を算出し、その後、第一のサブテーブルを参照した。別の動作例として、第二のサブテーブルを参照することにより優先度を取得し、これらの優先度の全てについて、第一のサブテーブルを参照することによりそれぞれの部分ブロックサイズを取得し、最後に、これらの部分ブロックサイズの最小値を算出するようにしても良い。 In the operation example of FIG. 5, the priority is acquired by referring to the second sub-table, the highest rank of these priorities is calculated, and then the first sub-table is referred to. As another example of operation, the priority is obtained by referring to the second sub-table, and the partial block size is obtained for each of these priorities by referring to the first sub-table. In addition, the minimum value of these partial block sizes may be calculated.
このように、本実施の形態では、汎用OS 5からの入出力要求を、優先度管理テーブル72で制限している部分ブロックサイズ以下の入出力ブロックを有する複数の入出力要求に分割している。分割を行えば、入出力要求あたりの入出力の実行時間が短くなるので、リアルタイムOSの入出力の開始が遅延しないようになる。
As described above, in the present embodiment, the input / output request from the general-
一般的に、リアルタイムOSの入出力は、タスクの優先度が高いほど高レスポンス性が必要とされる。本実施の形態では、汎用OS 5からの入出力要求における入出力ブロックの大きさを制限する部分ブロックサイズを、リアルタイムOSのタスクの優先度により可変としている。従って、リアルタイムOSのタスクで、非常に高いレスポンス性を要求するものがある場合には、部分ブロックサイズを小さくすることにより、相応の高レスポンス性を確保することができる。同時に、リアルタイムOSのタスクで、高いレスポンス性を必要とするものが無い場合には、部分ブロックサイズを大きくすることにより、汎用OSのスループットの低下を抑止することができる。
In general, the input / output of a real-time OS requires higher response as the task priority is higher. In this embodiment, the partial block size that limits the size of the input / output block in the input / output request from the general-
以上説明したように、本実施の形態によれば、一定条件下、汎用OSからの入出力要求を分割することにより、入出力要求あたりの入出力の実行時間を短くするようにしているため、リアルタイムOSの特長である高レスポンス性を十分に確保することができる。また、分割後における入出力ブロックの最大サイズとなる部分ブロックサイズを、リアルタイムOSのタスクの優先度により可変としているので、汎用OSのスループットの低下を抑止することができる。 As described above, according to the present embodiment, since the input / output request from the general-purpose OS is divided under a certain condition, the input / output execution time per input / output request is shortened. The high response characteristic of the real-time OS can be sufficiently secured. In addition, since the partial block size, which is the maximum size of the input / output block after the division, is variable depending on the priority of the task of the real-time OS, it is possible to suppress a decrease in the throughput of the general-purpose OS.
1,2 アプリケーション
3,5 OS
4 OS間通信部
6 共有ディスク
11,12 タスク
21,22 プロセス
31,51 入出力受付部
35 入出力処理部
70 入出力要求の優先度コントローラ
71 優先度制御部
72 優先度管理テーブル
73 入出力要求キュー
1, 2
4
Claims (25)
前記第一の入出力要求と、前記第二の入出力要求とを受け取ると共に、前記優先度管理テーブルに基づいて、前記第二の入出力要求を分割する優先度制御手段と、
前記第一の入出力要求と、前記優先度制御手段によって分割された第二の入出力要求とを、優先度順にエンキューする入出力要求キューとを備える
入出力要求の優先度コントローラ。 Priority management to determine the I / O block size allowed for the second I / O request issued to the general-purpose operating system according to the priority of the first I / O request issued to the real-time operating system Table,
Priority control means for receiving the first input / output request and the second input / output request, and dividing the second input / output request based on the priority management table;
An input / output request priority controller, comprising: an input / output request queue that enqueues the first input / output request and the second input / output request divided by the priority control means in order of priority.
前記優先度が高いほど、より小さなサイズの入出力ブロックの大きさを、また、前記優先度が低いほど、より大きなサイズの入出力ブロックの大きさを決定するためのテーブルである
請求項1記載の入出力要求の優先度コントローラ。 The priority management table includes:
The table for determining the size of an input / output block having a smaller size as the priority is higher and the size of an input / output block having a larger size as the priority is lower. I / O request priority controller.
前記優先度の欄と、その優先度を有する第一の入出力要求があった場合に、前記第二の入出力要求に許容する入出力ブロックの大きさとなる部分ブロックサイズの欄とを具備する第一のサブテーブルを含む
請求項2記載の入出力要求の優先度コントローラ。 The priority management table includes:
The priority column and a partial block size column that is the size of an input / output block allowed for the second input / output request when there is a first input / output request having the priority. The input / output request priority controller according to claim 2, comprising a first sub-table.
所定の手順によって、前記入出力要求キューにエンキューされている第一の入出力要求が有する優先度の中で、最高位の優先度を取得すると共に、前記第一のサブテーブルを参照して、前記最高位の優先度に対応する部分ブロックサイズを取得し、この部分ブロックサイズを超えないように、前記第二の入出力要求を分割する
請求項3記載の入出力要求の優先度コントローラ。 The priority control means includes:
According to a predetermined procedure, the highest priority among the priorities of the first input / output request enqueued in the input / output request queue is obtained, and referring to the first sub-table, The input / output request priority controller according to claim 3, wherein a partial block size corresponding to the highest priority is obtained, and the second input / output request is divided so as not to exceed the partial block size.
前記入出力要求キューにエンキューされている第一の入出力要求を発行したタスクのタスク識別子の欄と、そのタスクが発行する入出力要求に割り当てられる優先度の欄とを具備する第二のサブテーブルを更に含む
請求項4記載の入出力要求の優先度コントローラ。 The priority management table includes:
A second sub-field comprising a task identifier field of a task that has issued the first input / output request enqueued in the input / output request queue, and a priority field assigned to the input / output request issued by the task; The input / output request priority controller according to claim 4, further comprising a table.
前記第二のサブテーブルを参照することによって、前記最高位の優先度を取得する
請求項5記載の入出力要求の優先度コントローラ。 The priority control means includes:
The input / output request priority controller according to claim 5, wherein the highest priority is acquired by referring to the second sub-table.
前記入出力要求キューにエンキューされている第一の入出力要求に応じて、前記第二のサブテーブルを更新する
請求項6記載の入出力要求の優先度コントローラ。 The priority control means includes:
The input / output request priority controller according to claim 6, wherein the second sub-table is updated in response to a first input / output request enqueued in the input / output request queue.
前記第一の入出力要求の優先度に応じて、前記第二の入出力要求に許容する入出力ブロックの大きさを決定することと、
前記大きさに基づいて、前記第二の入出力要求を分割することと、
前記第一の入出力要求と、前記分割することによって分割された第二の入出力要求とを、優先度順に入出力要求キューにエンキューすることとを備える
入出力要求の優先度制御方法。 Receiving a first I / O request issued to the real-time operating system and receiving a second I / O request issued to the general purpose operating system;
Determining a size of an input / output block allowed for the second input / output request according to a priority of the first input / output request;
Dividing the second I / O request based on the size;
A priority control method for an input / output request, comprising: enqueuing the first input / output request and the second input / output request divided by the division into an input / output request queue in order of priority.
前記第一の入出力要求の優先度に応じて、前記第二の入出力要求に許容する入出力ブロックの大きさを決定するための優先度管理テーブルを参照することを含む
請求項8記載の入出力要求の優先度制御方法。 The determination is
9. The priority management table for determining a size of an input / output block allowed for the second input / output request according to the priority of the first input / output request is included. Priority control method for I / O requests.
前記優先度が高いほど、より小さなサイズの入出力ブロックの大きさを、また、前記優先度が低いほど、より大きなサイズの入出力ブロックの大きさを決定するための優先度管理テーブルを参照することを更に含む
請求項9記載の入出力要求の優先度制御方法。 The determination is
The higher the priority, the smaller the size of the input / output block is referred to, and the lower the priority, the higher priority is referred to the priority management table for determining the size of the input / output block. The input / output request priority control method according to claim 9.
前記優先度の欄と、その優先度を有する第一の入出力要求があった場合に、前記第二の入出力要求に許容する入出力ブロックの大きさとなる部分ブロックサイズの欄とを具備する第一のサブテーブルを含む優先度管理テーブルを参照することを更に含む
請求項10記載の入出力要求の優先度制御方法。 The determination is
The priority column and a partial block size column that is the size of an input / output block allowed for the second input / output request when there is a first input / output request having the priority. The input / output request priority control method according to claim 10, further comprising referring to a priority management table including a first sub-table.
所定の手順によって、前記入出力要求キューにエンキューされている第一の入出力要求が有する優先度の中で、最高位の優先度を取得すると共に、前記第一のサブテーブルを参照して、前記最高位の優先度に対応する部分ブロックサイズを取得し、この部分ブロックサイズを超えないように、前記第二の入出力要求の分割を行うことを含む
請求項11記載の入出力要求の優先度制御方法。 The division is
According to a predetermined procedure, the highest priority among the priorities of the first input / output request enqueued in the input / output request queue is obtained, and referring to the first sub-table, The priority of the input / output request according to claim 11, further comprising: obtaining a partial block size corresponding to the highest priority and dividing the second input / output request so as not to exceed the partial block size. Degree control method.
前記入出力要求キューにエンキューされている第一の入出力要求を発行したタスクのタスク識別子の欄と、そのタスクが発行する入出力要求に割り当てられる優先度の欄とを具備する第二のサブテーブルを更に含む優先度管理テーブルを参照することを更に含む
請求項12記載の入出力要求の優先度制御方法。 The determination is
A second sub-field comprising a task identifier field of a task that has issued the first input / output request enqueued in the input / output request queue, and a priority field assigned to the input / output request issued by the task; The input / output request priority control method according to claim 12, further comprising referring to a priority management table further including a table.
前記第二のサブテーブルを参照することによって、前記最高位の優先度を取得することを更に含む
請求項13記載の入出力要求の優先度制御方法。 The division is
The input / output request priority control method according to claim 13, further comprising: acquiring the highest priority by referring to the second sub-table.
前記入出力要求キューにエンキューされている第一の入出力要求に応じて、前記第二のサブテーブルを更新することを含む
請求項14記載の入出力要求の優先度制御方法。 The enqueue is
The input / output request priority control method according to claim 14, comprising updating the second sub-table in response to a first input / output request enqueued in the input / output request queue.
前記第一の入出力要求の優先度に応じて、前記第二の入出力要求に許容する入出力ブロックの大きさを決定する手順と、
前記大きさに基づいて、前記第二の入出力要求を分割する手順と、
前記第一の入出力要求と、前記分割することによって分割された第二の入出力要求とを、優先度順に入出力要求キューにエンキューする手順とをコンピュータに実行させるための
入出力要求の優先度制御プログラム。 Receiving a first I / O request issued to the real-time operating system and receiving a second I / O request issued to the general-purpose operating system;
Determining a size of an input / output block allowed for the second input / output request according to the priority of the first input / output request;
Dividing the second I / O request based on the size;
Priority of input / output request for causing a computer to execute a procedure for enqueuing the first input / output request and the second input / output request divided by dividing into an input / output request queue in order of priority Degree control program.
前記第一の入出力要求の優先度に応じて、前記第二の入出力要求に許容する入出力ブロックの大きさを決定するための優先度管理テーブルを参照する
請求項16記載の入出力要求の優先度制御プログラム。 The procedure for determining is as follows:
The input / output request according to claim 16, wherein a priority management table for determining a size of an input / output block allowed for the second input / output request is referred to according to the priority of the first input / output request. Priority control program.
前記優先度が高いほど、より小さなサイズの入出力ブロックの大きさを、また、前記優先度が低いほど、より大きなサイズの入出力ブロックの大きさを決定するための優先度管理テーブルを参照する
請求項17記載の入出力要求の優先度制御プログラム。 The procedure for determining is as follows:
The higher the priority, the smaller the size of the input / output block is referred to, and the lower the priority, the higher priority is referred to the priority management table for determining the size of the input / output block. 18. The priority control program for input / output requests according to claim 17.
前記優先度の欄と、その優先度を有する第一の入出力要求があった場合に、前記第二の入出力要求に許容する入出力ブロックの大きさとなる部分ブロックサイズの欄とを具備する第一のサブテーブルを含む優先度管理テーブルを参照する
請求項18記載の入出力要求の優先度制御プログラム。 The procedure for determining is as follows:
The priority column and a partial block size column that is the size of an input / output block allowed for the second input / output request when there is a first input / output request having the priority. 19. The input / output request priority control program according to claim 18, wherein the priority management table including the first sub-table is referred to.
前記入出力要求キューにエンキューされている第一の入出力要求が有する優先度の中で、最高位の優先度を取得すると共に、
前記第一のサブテーブルを参照して、前記最高位の優先度に対応する部分ブロックサイズを取得する
請求項19記載の入出力要求の優先度制御プログラム。 The procedure for determining is as follows:
Among the priorities of the first input / output request enqueued in the input / output request queue, the highest priority is obtained,
The input / output request priority control program according to claim 19, wherein a partial block size corresponding to the highest priority is obtained with reference to the first sub-table.
前記入出力要求キューにエンキューされている第一の入出力要求を発行したタスクのタスク識別子の欄と、そのタスクが発行する入出力要求に割り当てられる優先度の欄とを具備する第二のサブテーブルを更に含む優先度管理テーブルを参照する
請求項20記載の入出力要求の優先度制御プログラム。 The procedure for determining is as follows:
A second sub-field comprising a task identifier field of a task that has issued the first input / output request enqueued in the input / output request queue, and a priority field assigned to the input / output request issued by the task; 21. The input / output request priority control program according to claim 20, wherein the priority management table further includes a table.
前記第二のサブテーブルを参照することによって、前記最高位の優先度を取得することを含む
請求項21記載の入出力要求の優先度制御プログラム。 The procedure for determining is as follows:
The input / output request priority control program according to claim 21, further comprising: acquiring the highest priority by referring to the second sub-table.
前記入出力要求キューにエンキューされている第一の入出力要求に応じて、前記第二のサブテーブルを更新する
請求項14記載の入出力要求の優先度制御プログラム。 The enqueue procedure is:
The input / output request priority control program according to claim 14, wherein the second sub-table is updated according to a first input / output request enqueued in the input / output request queue.
前記優先度コントローラが制御する入出力要求を受け付けるリアルタイムオペレーティングシステム及び汎用オペレーティングシステムに共用される共有記憶装置とを具備する
組み込みシステム。 A priority controller for input / output requests according to any one of claims 1 to 7,
An embedded system comprising: a real-time operating system that receives an input / output request controlled by the priority controller; and a shared storage device shared by a general-purpose operating system.
組み込みシステム。 An embedded system using the priority control method for input / output requests according to any one of claims 8 to 15.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008021727A JP4984165B2 (en) | 2008-01-31 | 2008-01-31 | Priority controller for input / output request, priority control method for input / output request, and priority control program for input / output request |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008021727A JP4984165B2 (en) | 2008-01-31 | 2008-01-31 | Priority controller for input / output request, priority control method for input / output request, and priority control program for input / output request |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009181474A true JP2009181474A (en) | 2009-08-13 |
JP4984165B2 JP4984165B2 (en) | 2012-07-25 |
Family
ID=41035381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008021727A Expired - Fee Related JP4984165B2 (en) | 2008-01-31 | 2008-01-31 | Priority controller for input / output request, priority control method for input / output request, and priority control program for input / output request |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4984165B2 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01228045A (en) * | 1988-03-08 | 1989-09-12 | Hitachi Ltd | Input/output control system |
JPH1139246A (en) * | 1997-07-18 | 1999-02-12 | Nec Corp | Disk access system |
JP2001229621A (en) * | 2000-12-28 | 2001-08-24 | Sony Corp | Data transmitter |
JP2003005987A (en) * | 2001-06-19 | 2003-01-10 | Hitachi Ltd | Emulation device |
JP2005513644A (en) * | 2001-12-20 | 2005-05-12 | ノキア コーポレイション | Method and system for performing operating system functions and electronic device |
JP2007220086A (en) * | 2006-01-17 | 2007-08-30 | Ntt Docomo Inc | Input/output controller, input/output control system, and input/output control method |
-
2008
- 2008-01-31 JP JP2008021727A patent/JP4984165B2/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01228045A (en) * | 1988-03-08 | 1989-09-12 | Hitachi Ltd | Input/output control system |
JPH1139246A (en) * | 1997-07-18 | 1999-02-12 | Nec Corp | Disk access system |
JP2001229621A (en) * | 2000-12-28 | 2001-08-24 | Sony Corp | Data transmitter |
JP2003005987A (en) * | 2001-06-19 | 2003-01-10 | Hitachi Ltd | Emulation device |
JP2005513644A (en) * | 2001-12-20 | 2005-05-12 | ノキア コーポレイション | Method and system for performing operating system functions and electronic device |
JP2007220086A (en) * | 2006-01-17 | 2007-08-30 | Ntt Docomo Inc | Input/output controller, input/output control system, and input/output control method |
Also Published As
Publication number | Publication date |
---|---|
JP4984165B2 (en) | 2012-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9396154B2 (en) | Multi-core processor for managing data packets in communication network | |
WO2009147802A1 (en) | Priority controller and priority control method | |
US9632977B2 (en) | System and method for ordering packet transfers in a data processor | |
US8191073B2 (en) | Method and system for polling network controllers | |
JP6170553B2 (en) | System and method for providing low latency for applications using heterogeneous processors | |
JP4888731B2 (en) | Computer system, input / output priority control method, and program | |
US20180006806A1 (en) | Dual-mode processing of cryptographic operations | |
US11201836B2 (en) | Method and device for managing stateful application on server | |
US20170052979A1 (en) | Input/Output (IO) Request Processing Method and File Server | |
EP3369238B1 (en) | Method, apparatus, computer-readable medium and computer program product for cloud file processing | |
US10977200B2 (en) | Method, apparatus and computer program product for processing I/O request | |
CN104702534A (en) | Method and device for processing data of multi-process sharing port | |
US10877790B2 (en) | Information processing apparatus, control method and storage medium | |
JP2013143653A (en) | Information processing apparatus and information processing method | |
JP4984165B2 (en) | Priority controller for input / output request, priority control method for input / output request, and priority control program for input / output request | |
US10423546B2 (en) | Configurable ordering controller for coupling transactions | |
CN110764710A (en) | Data access method and storage system of low-delay and high-IOPS | |
JP4089506B2 (en) | File sharing system, server and program | |
US20180174592A1 (en) | Spatial audio resource management utilizing minimum resource working sets | |
JP6219771B2 (en) | Load distribution apparatus, load distribution method, and load distribution system | |
US9330036B2 (en) | Interrupt reduction by dynamic application buffering | |
TW201421420A (en) | Graphic processing unit virtual apparatus, graphic processing unit host apparatus, and graphic processing unit program processing methods thereof | |
CN115328665B (en) | Hypervisor-based GPU virtualization method and device and electronic equipment | |
JP2019003245A (en) | Service providing system, service providing server, service providing method and service providing program | |
US7974300B2 (en) | Configuration for messaging multiplexed channel instances with varying connection speeds |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110728 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110729 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110921 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120329 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120411 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4984165 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150511 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |