図面 (/)

技術 ハードディスクのアクセス制御装置及びハードディスクのアクセス制御タスク

出願人 セイコーエプソン株式会社
発明者 小野義之
出願日 1999年12月24日 (20年11ヶ月経過) 出願番号 1999-367016
公開日 2001年7月6日 (19年4ヶ月経過) 公開番号 2001-184171
状態 未査定
技術分野 外部記憶装置との入出力 デジタル記録再生の信号処理
主要キーワード データ転送率 総アクセス数 同期オブジェクト 転送率 ハードディスクドライバ 移動回数 ヒューマンインターフェース マイクロプロセッシングユニット
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2001年7月6日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (4)

課題

マルチタスク機能を損なうことなく、ハードディスクに対するアクセス時間を低減するとともにハードディスクの劣化を防止するのに好適なハードディスクのアクセス制御装置およびハードディスクのアクセス制御タスクを提供する。

解決装置

マルチタスクで動作するOSにおいて、タスクAは、第1のデータ転送量ごとにデータ転送を行うことをOSに要求するとともに、第1のデータ転送量ごとのデータ転送を行っている間は、タスクA以外のタスクの実行を禁止することをOSに要求するようになっており、タスクBは、第1のデータ転送量よりも大きい第2のデータ転送量ごとにデータ転送を行うことをOSに要求するとともに、第2のデータ転送量ごとのデータ転送を行っている間は、タスクB以外のタスクの実行を禁止することをOSに要求するようになっている。

概要

背景

従来、マルチタスクで動作するオペレーションシステム(以下、単にOSという。)では、実行中の複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、各アクセス要求に係るアクセスデータ読出またはデータ書込)を所定のアクセス単位(例えば、32[kbyte])ごとに時分割で交互に行うようになっている。

ハードディスクのデータ構造は、磁気ディスクにおいてトラックと呼ばれる記憶領域が同心円上に配列され、このトラック上にアドレスを付加されたセクタと呼ばれるさらに小さな記憶領域が配列されており、データへのアクセスは、磁気ヘッドをトラックまで移動するシークというヘッドシーク動作と、ディスクが回転してセクタがヘッドの下に移動してくるのを待ってデータの転送を開始する回転待ち動作と、セクタを検出してから実際にデータの読出または書込を行うデータ転送動作とにより行われる。

したがって、ハードディスクでは、OSからのアクセス命令を受けて対象データの読出または書込を行うときは、ハードディスクの記憶領域のうち対象データが記憶されているトラックまで磁気ヘッドを移動し、そのトラックのうち対象データが記憶されている先頭セクタがヘッドの下に移動してくるのを待って対象データの読出または書込を開始する。

概要

マルチタスク機能を損なうことなく、ハードディスクに対するアクセス時間を低減するとともにハードディスクの劣化を防止するのに好適なハードディスクのアクセス制御装置およびハードディスクのアクセス制御タスクを提供する。

マルチタスクで動作するOSにおいて、タスクAは、第1のデータ転送量ごとにデータ転送を行うことをOSに要求するとともに、第1のデータ転送量ごとのデータ転送を行っている間は、タスクA以外のタスクの実行を禁止することをOSに要求するようになっており、タスクBは、第1のデータ転送量よりも大きい第2のデータ転送量ごとにデータ転送を行うことをOSに要求するとともに、第2のデータ転送量ごとのデータ転送を行っている間は、タスクB以外のタスクの実行を禁止することをOSに要求するようになっている。

目的

そこで、本発明は、このような従来の技術の有する未解決の課題に着目してなされたものであって、マルチタスク機能を損なうことなく、ハードディスクに対するアクセス時間を低減するとともにハードディスクの劣化を防止するのに好適なハードディスクのアクセス制御装置およびハードディスクのアクセス制御タスクを提供することを目的としている。

効果

実績

技術文献被引用数
2件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

ハードディスクに対する複数のアクセス要求を受け、前記各アクセス要求に係るアクセス時分割で交互に行う装置であって、前記複数のアクセス要求のうち所定数のアクセス要求に係るアクセスを、前記複数のアクセス要求のうち前記所定数のアクセス要求以外の他のアクセス要求に係るアクセスに比して制限するアクセス制限手段を備えることを特徴とするハードディスクのアクセス制御装置

請求項2

ハードディスクに対する複数のアクセス要求を受け、前記各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行う装置であって、前記複数のアクセス要求に係るアクセスのアクセス単位を調整するアクセス制限手段を備え、前記アクセス制限手段は、前記複数のアクセス要求のうち所定数のアクセス要求に係るアクセスのアクセス単位と、前記複数のアクセス要求のうち前記所定数のアクセス要求以外の他のアクセス要求に係るアクセスのアクセス単位とが異なるように、前記アクセス単位を調整するようになっていることを特徴とするハードディスクのアクセス制御装置。

請求項3

請求項2において、前記アクセス制限手段は、前記所定数のアクセス要求に係るアクセスのアクセス単位が前記他のアクセス要求に係るアクセスのアクセス単位よりも小さくするように、前記アクセス単位を調整するようになっていることを特徴とするハードディスクのアクセス制御装置。

請求項4

請求項2及び3のいずれかにおいて、前記ハードディスクのデータ転送率を算出する転送率算出手段を備え、前記アクセス制限手段は、前記転送率算出手段で算出したデータ転送率に基づいて、前記所定数のアクセス要求に係るアクセスのアクセス単位と前記他のアクセス要求に係るアクセスのアクセス単位との差を調整するようになっていることを特徴とするハードディスクのアクセス制御装置。

請求項5

請求項4において、前記アクセス制限手段は、前記転送率算出手段で算出したデータ転送率が所定値を超えるときは、前記所定数のアクセス要求に係るアクセスのアクセス単位と前記他のアクセス要求に係るアクセスのアクセス単位との差が小さくなるように、前記アクセス単位を調整し、前記転送率算出手段で算出したデータ転送率が前記所定値以下であるときは、前記所定数のアクセス要求に係るアクセスのアクセス単位と前記他のアクセス要求に係るアクセスのアクセス単位との差が大きくなるように、前記アクセス単位を調整するようになっていることを特徴とするハードディスクのアクセス制御装置。

請求項6

請求項2乃至5のいずれかにおいて、前記アクセス制限手段は、前記所定数のアクセス要求について前記アクセス単位の調整を、前記他のアクセス要求に係るアクセスが完了するまでの間でのみ行うようになっていることを特徴とするハードディスクのアクセス制御装置。

請求項7

ハードディスクに対する複数のアクセス要求を受け、前記各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行う装置であって、前記複数のアクセス要求のうち所定数のアクセス要求に係るアクセスのアクセス単位について上限を設けるアクセス制限手段を備えることを特徴とするハードディスクのアクセス制御装置。

請求項8

複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、前記各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行うオペレーティングシステムを利用し、前記ハードディスクに対するアクセスを制御するタスクであって、前記複数のタスクのうち所定数のタスクは、第1のデータ転送量ごとにデータ転送を行うことを前記オペレーティングシステムに要求するとともに、前記第1のデータ転送量ごとのデータ転送を行っている間は、前記複数のタスクのうち前記所定数のタスク以外の他のタスクの実行を禁止することを前記オペレーティングシステムに要求するようになっており、前記他のタスクは、前記第1のデータ転送量よりも大きい第2のデータ転送量ごとにデータ転送を行うことを前記オペレーティングシステムに要求するとともに、前記第2のデータ転送量ごとのデータ転送を行っている間は、前記所定数のタスクの実行を禁止することを前記オペレーティングシステムに要求するようになっていることを特徴とするハードディスクのアクセス制御タスク。

請求項9

請求項8において、前記所定数のタスク及び前記他のタスクのいずれかは、前記ハードディスクのデータ転送率を算出する転送率算出手段を備え、前記転送率算出手段で算出したデータ転送率に基づいて、前記第1のデータ転送量又は前記第2のデータ転送量を調整するようになっていることを特徴とするハードディスクのアクセス制御タスク。

請求項10

請求項9において、前記所定数のタスク及び前記他のタスクのいずれかは、前記転送率算出手段で算出したデータ転送率が所定値を超えるときは、前記第1のデータ転送量と前記第2のデータ転送量との差が小さくなるように、前記第1のデータ転送量又は前記第2のデータ転送量を調整し、前記転送率算出手段で算出したデータ転送率が前記所定値以下であるときは、前記第1のデータ転送量と前記第2のデータ転送量との差が大きくなるように、前記第1のデータ転送量又は前記第2のデータ転送量を調整するようになっていることを特徴とするハードディスクのアクセス制御タスク。

技術分野

0001

本発明は、ハードディスクに対する複数のアクセス要求を受け、各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行う装置およびタスク係り、特に、マルチタスク機能を損なうことなく、ハードディスクに対するアクセス時間を低減するとともにハードディスクの劣化を防止するのに好適なハードディスクのアクセス制御装置およびハードディスクのアクセス制御タスクに関する。

背景技術

0002

従来、マルチタスクで動作するオペレーションシステム(以下、単にOSという。)では、実行中の複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、各アクセス要求に係るアクセス(データ読出またはデータ書込)を所定のアクセス単位(例えば、32[kbyte])ごとに時分割で交互に行うようになっている。

0003

ハードディスクのデータ構造は、磁気ディスクにおいてトラックと呼ばれる記憶領域が同心円上に配列され、このトラック上にアドレスを付加されたセクタと呼ばれるさらに小さな記憶領域が配列されており、データへのアクセスは、磁気ヘッドをトラックまで移動するシークというヘッドシーク動作と、ディスクが回転してセクタがヘッドの下に移動してくるのを待ってデータの転送を開始する回転待ち動作と、セクタを検出してから実際にデータの読出または書込を行うデータ転送動作とにより行われる。

0004

したがって、ハードディスクでは、OSからのアクセス命令を受けて対象データの読出または書込を行うときは、ハードディスクの記憶領域のうち対象データが記憶されているトラックまで磁気ヘッドを移動し、そのトラックのうち対象データが記憶されている先頭セクタがヘッドの下に移動してくるのを待って対象データの読出または書込を開始する。

発明が解決しようとする課題

0005

上記従来のOSでは、実行中のタスクからハードディスクに対するアクセス要求を単独で受けたときは、例えば、そのアクセス要求がファイルの読出を行う要求である場合は、通常一つのファイルは連続したトラックに記憶されているため、磁気ヘッドの移動時間が少なくてすみ、比較的短時間でデータの読出を行うことができる。

0006

しかしながら、上記従来のOSにあっては、実行中の複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、マルチタスク機能の要請上各タスクのアクセス待ち時間をほぼ均一にする必要があることから、各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行う構成となっているため、次のような問題がある。

0007

すなわち、実行中の複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、例えば、各アクセス要求がデータの読出を行う要求である場合は、一のアクセス要求についてデータを少し読み出しては、別のアクセス要求についてデータを少し読み出すことを繰り返しながら各アクセス要求についてデータの読出を行うこととなるので、磁気ヘッドをあちこち頻繁に移動することにより、磁気ヘッドの移動時間が多くなる。このため、各アクセス要求に係るアクセスを順次(シーケンシャルに)行うよりも、全体としてアクセス時間が大幅に増大する。これは、ハードディスクに対するアクセス時間のうち、データ転送動作に要する時間よりも、ヘッドシーク動作および回転待ち動作に要する時間のほうがはるかに大きいためである。

0008

また、磁気ヘッドをあちこち頻繁に移動することから、ハードディスクの劣化を招く要因ともなり得る。

0009

そこで、本発明は、このような従来の技術の有する未解決の課題に着目してなされたものであって、マルチタスク機能を損なうことなく、ハードディスクに対するアクセス時間を低減するとともにハードディスクの劣化を防止するのに好適なハードディスクのアクセス制御装置およびハードディスクのアクセス制御タスクを提供することを目的としている。

課題を解決するための手段

0010

本発明者は、鋭意検討を重ねた結果、上記従来のOSにおいて、実行中の複数のタスクからハードディスクに対するアクセス要求を同時に受けたときに、ハードディスクに対するアクセス時間が大きくなるという原因には、各アクセスのアクセス単位が同じであること、およびアクセス単位が小さいことがあるということを見出した。すなわち、前者の場合は、例えば、各アクセス要求に係るデータ転送量がいずれも同じである場合に、各アクセスのアクセス単位が同じであれば、各アクセスが同じ割合で行われることになるので、磁気ヘッドの移動回数が多くなる。また、後者の場合は、アクセス単位が小さければ、各アクセスの切換回数が多くなるので、これに伴って同様に磁気ヘッドの移動回数が多くなる。

0011

しかし、これら原因はいずれも、マルチタスク機能の要請を満たすために行われる処理の必要性から生ずるものであるので、ハードディスクに対するアクセス時間が増大するからといって、各アクセス要求に係るアクセスをシーケンシャルで行ったり、アクセス単位を無制限に大きくしたりするのでは、今度は逆にマルチタスク機能の要請を満たすことができなくなる。そこで、本発明者は、マルチタスク機能の要請を満たすこと、同時アクセス要求が発生したときにハードディスクに対するアクセス時間の過大な増大を防止することの両方を考慮し、上記原因に着目して上記従来のOSにおけるアクセス制御に改良を加えた。

0012

したがって、上記目的を達成するために、本発明に係る請求項1記載のハードディスクのアクセス制御装置は、ハードディスクに対する複数のアクセス要求を受け、前記各アクセス要求に係るアクセスを時分割で交互に行う装置であって、前記複数のアクセス要求のうち所定数のアクセス要求に係るアクセスを、前記複数のアクセス要求のうち前記所定数のアクセス要求以外の他のアクセス要求に係るアクセスに比して制限するアクセス制限手段を備える。

0013

このような構成であれば、ハードディスクに対する複数のアクセス要求を受けたときは、アクセス制限手段により、所定数のアクセス要求に係るアクセスが、他のアクセス要求に係るアクセスに比して制限されつつ、各アクセス要求に係るアクセスが時分割で交互に行われる。

0014

上記のように、各アクセスのアクセス単位が同じであれば、磁気ヘッドの移動回数が多くなる。したがって、所定数のアクセス要求に係るアクセスを他のアクセス要求に係るアクセスに比して制限することによりアクセス単位を異ならせれば、例えば、各アクセス要求に係るデータ転送量がいずれも同じである場合は、他のアクセス要求に係るアクセスが、所定数のアクセス要求に係るアクセスよりも先に完了するので、他のアクセス要求に係るアクセスが完了した後は所定数のアクセス要求についてだけ磁気ヘッドが移動することとなり、磁気ヘッドの移動回数が少なくなる。

0015

ここで、制限するアクセスには、例えば、ハードディスクに対するアクセス回数、ハードディスクに対するアクセス時間、またはハードディスクに対するアクセス量(例えば、1回のアクセスにおけるデータ転送量)が含まれる。

0016

また、アクセスの制限を過大にしてしまうことは、ハードディスクに対するアクセス時間がシーケンシャルに行った場合のアクセス時間に近づいて短くなっていくので、アクセス時間を低減するという観点からは好ましいが、所定数のアクセス要求を発した処理のアクセス待ち時間が他のアクセス要求を発した処理のそれに比して多くなるので、マルチタスク機能の要請を満たすという観点からは好ましくない。その逆に、アクセスの制限を過小にしてしまうことは、上記問題が顕著になってくるので、マルチタスク機能の要請を満たすという観点からは好ましいが、アクセス時間を低減するという観点からは好ましくない。したがって、マルチタスク機能を損なわない限度でアクセス時間を最も低減することができる程度に、アクセスを制限するのが好ましい。

0017

また、所定数のアクセス要求は、1または複数のアクセス要求であればよいが、その所定数は、総アクセス数未満であることが必要である。これは、所定数が総アクセス数と同じであれば、他のアクセス要求が存在しないこととなるからである。以下、請求項2または7記載のハードディスクのアクセス制御装置において同じである。

0018

さらに、本発明に係る請求項2記載のハードディスクのアクセス制御装置は、ハードディスクに対する複数のアクセス要求を受け、前記各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行う装置であって、前記複数のアクセス要求に係るアクセスのアクセス単位を調整するアクセス制限手段を備え、前記アクセス制限手段は、前記複数のアクセス要求のうち所定数のアクセス要求に係るアクセスのアクセス単位と、前記複数のアクセス要求のうち前記所定数のアクセス要求以外の他のアクセス要求に係るアクセスのアクセス単位とが異なるように、前記アクセス単位を調整するようになっている。

0019

このような構成であれば、ハードディスクに対する複数のアクセス要求を受けたときは、アクセス制限手段により、所定数のアクセス要求に係るアクセスのアクセス単位と、他のアクセス要求に係るアクセスのアクセス単位とが異なるように、アクセス単位が調整されつつ、各アクセス要求に係るアクセスが時分割で交互に行われる。

0020

上記のように、各アクセスのアクセス単位が同じであれば、磁気ヘッドの移動回数が多くなる。したがって、アクセス単位を異ならせれば、例えば、各アクセス要求に係るデータ転送量がいずれも同じである場合は、他のアクセス要求および所定数のアクセス要求の一方に係るアクセスが、他方に係るアクセスよりも先に完了するので、一方に係るアクセスが完了した後は他方についてだけ磁気ヘッドが移動することとなり、磁気ヘッドの移動回数が少なくなる。

0021

さらに、本発明に係る請求項3記載のハードディスクのアクセス制御装置は、請求項2記載のハードディスクのアクセス制御装置において、前記アクセス制限手段は、前記所定数のアクセス要求に係るアクセスのアクセス単位が前記他のアクセス要求に係るアクセスのアクセス単位よりも小さくするように、前記アクセス単位を調整するようになっている。

0022

このような構成であれば、アクセス制限手段により、所定数のアクセス要求に係るアクセスのアクセス単位が他のアクセス要求に係るアクセスのアクセス単位よりも小さくするように、アクセス単位が調整される。

0023

さらに、本発明に係る請求項4記載のハードディスクのアクセス制御装置は、請求項2および3のいずれかに記載のハードディスクのアクセス制御装置において、前記ハードディスクのデータ転送率を算出する転送率算出手段を備え、前記アクセス制限手段は、前記転送率算出手段で算出したデータ転送率に基づいて、前記所定数のアクセス要求に係るアクセスのアクセス単位と前記他のアクセス要求に係るアクセスのアクセス単位との差を調整するようになっている。

0024

このような構成であれば、転送率算出手段により、ハードディスクのデータ転送率が算出され、アクセス制限手段により、算出されたデータ転送率に基づいて、所定数のアクセス要求に係るアクセスのアクセス単位と他のアクセス要求に係るアクセスのアクセス単位との差が調整される。

0025

同じデータ量のデータを転送する場合にアクセス時間が大きくなるということは、データ転送率、すなわち単位時間当たりに転送されるデータ量が少なくなるということである。したがって、データ転送率を算出しながら、データ転送率が減少してきたり増大してきたりしたときに、所定数のアクセス要求に係るアクセスのアクセス単位と他のアクセス要求に係るアクセスのアクセス単位との差を調整してやれば、現在のアクセス状況に応じて、他のアクセス要求および所定数のアクセス要求の一方に係るアクセスを適切に制限することができる。

0026

ここで、データ転送率とは、単位時間当たりに転送されるデータ量をいい、この値は、例えば、現時点から単位時間過去までの間に転送されたデータ量をその値とする等の瞬間的な値であってもよいし、現時点から所定時間(例えば、1分)過去までの間に転送されたデータ量の平均値をその値とする等の平均的な値であってもよい。以下、請求項9記載のハードディスクのアクセス制御タスクにおいて同じである。

0027

さらに、本発明に係る請求項5記載のハードディスクのアクセス制御装置は、請求項4記載のハードディスクのアクセス制御装置において、前記アクセス制限手段は、前記転送率算出手段で算出したデータ転送率が所定値を超えるときは、前記所定数のアクセス要求に係るアクセスのアクセス単位と前記他のアクセス要求に係るアクセスのアクセス単位との差が小さくなるように、前記アクセス単位を調整し、前記転送率算出手段で算出したデータ転送率が前記所定値以下であるときは、前記所定数のアクセス要求に係るアクセスのアクセス単位と前記他のアクセス要求に係るアクセスのアクセス単位との差が大きくなるように、前記アクセス単位を調整するようになっている。

0028

このような構成であれば、算出されたデータ転送率が所定値を超えるときは、アクセス制限手段により、所定数のアクセス要求に係るアクセスのアクセス単位と他のアクセス要求に係るアクセスのアクセス単位との差が小さくなるように、アクセス単位が調整される。これに対し、算出されたデータ転送率が所定値以下であるときは、アクセス制限手段により、所定数のアクセス要求に係るアクセスのアクセス単位と他のアクセス要求に係るアクセスのアクセス単位との差が大きくなるように、アクセス単位が調整される。

0029

さらに、本発明に係る請求項6記載のハードディスクのアクセス制御装置は、請求項2ないし5のいずれかに記載のハードディスクのアクセス制御装置において、前記アクセス制限手段は、前記所定数のアクセス要求について前記アクセス単位の調整を、前記他のアクセス要求に係るアクセスが完了するまでの間でのみ行うようになっている。

0030

このような構成であれば、アクセス制御手段により、所定数のアクセス要求についてアクセス単位の調整が、他のアクセス要求に係るアクセスが完了するまでの間でのみ行われる。

0031

所定数のアクセス要求についてアクセス単位の調整は、他のアクセス要求に係るアクセスが完了するまでの間、所定数のアクセス要求に係るアクセスのアクセス単位と、他のアクセス要求に係るアクセスのアクセス単位とを異ならせるために行うものであるので、マルチタスク機能の要請を満たすという観点からは、こうした調整を同時アクセス要求という例外期間でのみ認め、他のアクセス要求に係るアクセスが完了した後は、所定数のアクセス要求についてアクセス単位を元通りにするのが好ましい。

0032

さらに、本発明に係る請求項7記載のハードディスクのアクセス制御装置は、ハードディスクに対する複数のアクセス要求を受け、前記各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行う装置であって、前記複数のアクセス要求のうち所定数のアクセス要求に係るアクセスのアクセス単位について上限を設けるアクセス制限手段を備える。

0033

このような構成であれば、ハードディスクに対する複数のアクセス要求を受けたときは、アクセス制限手段により、所定数のアクセス要求に係るアクセスのアクセス単位について上限が設けられるので、その上限により、所定数のアクセス要求に係るアクセスが、他のアクセス要求に係るアクセスに比して制限されつつ、各アクセス要求に係るアクセスが時分割で交互に行われる。

0034

上記のように、各アクセスのアクセス単位が同じであれば、磁気ヘッドの移動回数が多くなる。したがって、所定数のアクセス要求に係るアクセスのアクセス単位について上限を設け、所定数のアクセス要求に係るアクセスを他のアクセス要求に係るアクセスに比して制限することによりアクセス単位を異ならせれば、例えば、各アクセス要求に係るデータ転送量がいずれも同じである場合は、他のアクセス要求に係るアクセスが、所定数のアクセス要求に係るアクセスよりも先に完了するので、他のアクセス要求に係るアクセスが完了した後は所定数のアクセス要求についてだけ磁気ヘッドが移動することとなり、磁気ヘッドの移動回数が少なくなる。

0035

一方、上記目的を達成するために、本発明に係る請求項8記載のハードディスクのアクセス制御タスクは、複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、前記各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行うオペレーティングシステムを利用し、前記ハードディスクに対するアクセスを制御するタスクであって、前記複数のタスクのうち所定数のタスクは、第1のデータ転送量ごとにデータ転送を行うことを前記オペレーティングシステムに要求するとともに、前記第1のデータ転送量ごとのデータ転送を行っている間は、前記複数のタスクのうち前記所定数のタスク以外の他のタスクの実行を禁止することを前記オペレーティングシステムに要求するようになっており、前記他のタスクは、前記第1のデータ転送量よりも大きい第2のデータ転送量ごとにデータ転送を行うことを前記オペレーティングシステムに要求するとともに、前記第2のデータ転送量ごとのデータ転送を行っている間は、前記所定数のタスクの実行を禁止することを前記オペレーティングシステムに要求するようになっている。

0036

このような構成であれば、所定数のタスクでは、第1のデータ転送量ごとにデータ転送を行うことがオペレーティングシステムに要求されるとともに、第1のデータ転送量ごとのデータ転送を行っている間は、他のタスクの実行を禁止することがオペレーティングシステムに要求される。

0037

一方、他のタスクでは、第1のデータ転送量よりも大きい第2のデータ転送量ごとにデータ転送を行うことがオペレーティングシステムに要求されるとともに、第2のデータ転送量ごとのデータ転送を行っている間は、所定数のタスクの実行を禁止することがオペレーティングシステムに要求される。

0038

オペレーティングシステムでは、複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、これらの要求を受け、所定数のタスクについて第1のデータ転送量ごとのデータ転送を行っている間は、他のタスクの実行が禁止され、他のタスクについて第1のデータ転送量ごとのデータ転送を行っている間は、所定数のタスクの実行が禁止される。したがって、所定数のタスクと他のタスクとでは、一回のデータ転送量がそれぞれ異なることとなる。

0039

上記のように、各アクセスのアクセス単位が同じであれば、磁気ヘッドの移動回数が多くなる。したがって、所定数のタスクと他のタスクとで一回のデータ転送量を異ならせれば、すなわち所定数のタスクと他のタスクとでアクセス単位を異ならせれば、例えば、各アクセス要求に係るデータ転送量がいずれも同じである場合は、他のタスクについてのアクセスが、所定数のタスクについてのアクセスよりも先に完了するので、他のタスクについてのアクセスが完了した後は所定数のタスクについてだけ磁気ヘッドが移動することとなり、磁気ヘッドの移動回数が少なくなる。

0040

ここで、同時とは、時間的に同時であるということだけでなく、一のタスクについてのアクセスが完了するまでの間に他のタスクがアクセス要求を発した場合も含まれる。

0041

さらに、本発明に係る請求項9記載のハードディスクのアクセス制御タスクは、請求項8記載のハードディスクのアクセス制御タスクにおいて、前記所定数のタスクおよび前記他のタスクのいずれかは、前記ハードディスクのデータ転送率を算出する転送率算出手段を備え、前記転送率算出手段で算出したデータ転送率に基づいて、前記第1のデータ転送量または前記第2のデータ転送量を調整するようになっている。

0042

このような構成のうち所定数のタスクについての構成であれば、所定数のタスクでは、転送率算出手段により、ハードディスクのデータ転送率が算出され、算出されたデータ転送率に基づいて、第1のデータ転送量が調整される。

0043

また、このような構成のうち他のタスクについての構成であれば、他のタスクでは、転送率算出手段により、ハードディスクのデータ転送率が算出され、算出されたデータ転送率に基づいて、第2のデータ転送量が調整される。

0044

さらに、本発明に係る請求項10記載のハードディスクのアクセス制御タスクは、請求項9記載のハードディスクのアクセス制御タスクにおいて、前記所定数のタスクおよび前記他のタスクのいずれかは、前記転送率算出手段で算出したデータ転送率が所定値を超えるときは、前記第1のデータ転送量と前記第2のデータ転送量との差が小さくなるように、前記第1のデータ転送量または前記第2のデータ転送量を調整し、前記転送率算出手段で算出したデータ転送率が前記所定値以下であるときは、前記第1のデータ転送量と前記第2のデータ転送量との差が大きくなるように、前記第1のデータ転送量または前記第2のデータ転送量を調整するようになっている。

0045

このような構成のうち所定数のタスクについての構成であれば、所定数のタスクでは、算出されたデータ転送率が所定値を超えるときは、第1のデータ転送量と第2のデータ転送量との差が小さくなるように、第1のデータ転送量が調整される。これに対し、算出されたデータ転送率が所定値以下であるときは、第1のデータ転送量と第2のデータ転送量との差が大きくなるように、第1のデータ転送量が調整される。

0046

また、このような構成のうち他のタスクについての構成であれば、他のタスクでは、算出されたデータ転送率が所定値を超えるときは、第1のデータ転送量と第2のデータ転送量との差が小さくなるように、第2のデータ転送量が調整される。これに対し、算出されたデータ転送率が所定値以下であるときは、第1のデータ転送量と第2のデータ転送量との差が大きくなるように、第2のデータ転送量が調整される。

発明を実施するための最良の形態

0047

以下、本発明の実施の形態を図面を参照しながら説明する。図1ないし図3は、本発明に係るハードディスクのアクセス制御装置およびハードディスクのアクセス制御タスクの実施の形態を示す図である。

0048

この実施の形態は、本発明に係るハードディスクのアクセス制御装置およびハードディスクのアクセス制御タスクを、複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行うOSにおいて、ハードディスクに対するアクセスを制御する場合について適用したものである。

0049

まず、本発明を適用するコンピュータシステムの構成を図1を参照しながら説明する。図1は、本発明を適用するコンピュータシステムの構成を示すブロック図である。

0050

コンピュータ100は、図1に示すように、制御プログラムに基づいて演算およびシステム全体を制御するCPU30と、所定領域にあらかじめCPU30の制御プログラム等を格納しているROM32と、ROM32等から読み出したデータやCPU30の演算過程で必要な演算結果を格納するためのRAM34と、RAM34の特定領域に格納されているデータを画像信号に変換して表示装置44に出力するCRTC36と、外部装置に対してデータの入出力を媒介するI/F38とで構成されており、これらは、データを転送するための信号線であるバス39で相互にかつデータ授受可能に接続されている。

0051

I/F38には、外部装置として、ヒューマンインターフェースとしてデータの入力が可能なキーボードマウス等からなる入力装置40と、データやテーブル等をファイルとして格納するハードディスク42と、画像信号に基づいて画面を表示する表示装置44とが接続されている。

0052

RAM34は、特定領域として、表示装置44に表示するための表示用データを格納するVRAM35を有しており、VRAM35は、CPU30とCRTC36とで独立にアクセスが可能となっている。

0053

CRTC36は、VRAM35に格納されている表示用データを先頭アドレスから所定周期で順次読み出し、読み出した表示用データを画像信号に変換して表示装置44に出力するようになっている。

0054

ハードディスク42は、図示しないが、駆動モータ等により回転する回転軸と、中心が回転軸に固定されたデータ記憶可能な磁気ディスクと、回転する磁気ディスクに対してデータの読出および書込を行う磁気ヘッドとで構成されている。そのデータ構造は、磁気ディスクにおいてトラックと呼ばれる記憶領域が同心円上に配列され、このトラック上にアドレスを付加されたセクタと呼ばれるさらに小さな記憶領域が配列されており、データへのアクセスは、磁気ヘッドをトラックまで移動するシークというヘッドシーク動作と、ディスクが回転してセクタがヘッドの下に移動してくるのを待ってデータの転送を開始する回転待ち動作と、セクタを検出してから実際にデータの読出または書込を行うデータ転送動作とにより行うようになっている。

0055

CPU30は、マイクロプロセッシングユニットMPU等からなり、起動とともにROM32の所定領域に格納されている所定のプログラムを起動させ、マルチタスクで動作するOSを実行するようになっている。このOSは、ハードディスク42に対してデータの読出および書込を行うアクセス処理を実行し、アクセス処理は、実行中の複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、各アクセス要求に係るアクセスを所定のアクセス単位(例えば、32[kbyte])ごとに時分割で交互に行うようになっている。また、OSは、RAM34の所定領域に格納されている同期オブジェクトと呼ばれるフラグが実行中の一のタスクによって立てられた(以下、これを同期オブジェクトの確保という。)ときは、同期オブジェクトと呼ばれるフラグが元に戻される(以下、これを同期オブジェクトの解放という。)まで、実行中の他のタスクがあってもそれらの実行を禁止し、その一のタスクのみを実行するようになっている。

0056

次に、ハードディスク42に対するアクセスを制御するタスクを図2および図3を参照しながら説明する。図2および図3は、ハードディスク42のハードディスク42に対するアクセスを制御するタスクを示すフローチャートである。

0057

ハードディスク42に対するアクセスを制御するタスクAおよびタスクBはいずれも、OS上で同時に実行されることを想定したタスクであって、ROM32の所定領域に格納されている所定のプログラムを起動させ、ハードディスク42に対するアクセス要求として、ハードディスク42に対して所定データ転送量(例えば、100[Mbyte])のデータ転送(読出または書込)を行うことをOSに要求するようになっている。

0058

初めに、タスクAについて説明すると、タスクAは、タスクBと同時にOS上で実行されると、所定時間ごとに時分割でタスクBと交互に実行されるようになっており、図2に示すように、まず、ステップS100に移行する。

0059

ステップS100では、同期オブジェクトを確保し、ステップS102に移行して、第1のデータ転送量(例えば、32[kbyte])ごとにデータ転送を行うことをOSに要求し、第1のデータ転送量のデータ転送が完了するのを待ってステップS104に移行して、同期オブジェクトを解放し、ステップS106に移行する。なお、タスクAが同期オブジェクトを確保しているステップS100からS104までの間は、タスクBは、その実行が禁止される。

0060

ステップS106では、ステップS102を所定回数繰り返し実行することにより所定データ転送量のデータ転送が終了したか否かを判定し、所定データ転送量のデータ転送が終了したと判定されたとき(Yes)は、一連の処理を終了するが、そうでないと判定されたとき(No)は、ステップS100に移行する。

0061

次に、タスクBについて説明すると、タスクBは、タスクAと同時にOS上で実行されると、所定時間ごとに時分割でタスクAと交互に実行されるようになっており、図3に示すように、まず、ステップS200に移行する。

0062

ステップS200では、同期オブジェクトを確保し、ステップS202に移行して、第1のデータ転送量よりも大きい第2のデータ転送量(例えば、1[Mbyte])ごとにデータ転送を行うことをOSに要求し、第2のデータ転送量のデータ転送が完了するのを待ってステップS204に移行して、同期オブジェクトを解放し、ステップS206に移行する。なお、タスクBが同期オブジェクトを確保しているステップS200からS204までの間は、タスクAは、その実行が禁止される。

0063

ステップS206では、ステップS202を所定回数繰り返し実行することにより所定データ転送量のデータ転送が終了したか否かを判定し、所定データ転送量のデータ転送が終了したと判定されたとき(Yes)は、一連の処理を終了するが、そうでないと判定されたとき(No)は、ステップS200に移行する。

0064

次に、上記実施の形態の動作を説明する。

0065

タスクAおよびタスクBが時間的に同時にOS上で実行される場合であって、タスクAおよびタスクBはいずれも、ハードディスク42に対して100[Mbyte]のデータ転送を行うことをOSに要求するものであり、タスクAは、100[Mbyte]のデータ転送を32[kbyte]ごとに行い、タスクBは、100[Mbyte]のデータ転送を1[Mbyte]ごとに行うようになっている場合を例にとって説明する。

0066

タスクAおよびタスクBが時間的に同時(同時刻において実行開始)にOS上で実行されると、まず、タスクAでは、ステップS100,S102を経て、同期オブジェクトが確保され、32[kbyte]ごとにデータ転送を行うことがOSに要求される。OSでは、こうしたアクセス要求を受けると、ハードディスク42のトラックのうちタスクAのアクセス要求に係るデータが格納されているトラックに磁気ヘッドを移動させ、ハードディスク42に対して32[kbyte]のデータ転送が行われる。そして、タスクAについて32[kbyte]ごとのアクセスが完了すると、タスクAでは、ステップS104を経て、同期オブジェクトが解放され、OSでは、その後所定時間が経過すると次にタスクBに実行が切り換わる。なお、通常一つのファイルは連続したトラックに記憶されているため、タスクAについて32[kbyte]ごとのアクセスについては、磁気ヘッドの移動が最初の一回ですむ。

0067

タスクBでは、ステップS200,S202を経て、同期オブジェクトが確保され、1[Mbyte]ごとにデータ転送を行うことがOSに要求される。OSでは、こうしたアクセス要求を受けると、ハードディスク42に対して通常のアクセス単位である32[kbyte]のデータ転送を行い、タスクAに実行を切り換えようとするが、タスクBについて1[Mbyte]ごとのアクセスが完了するまでの間は、タスクBによって同期オブジェクトが確保されているので、その間はタスクAに実行が切り換わることなく、ハードディスク42のトラックのうちタスクBのアクセス要求に係るデータが格納されているトラックに磁気ヘッドを移動させ、ハードディスク42に対して1[Mbyte]のデータ転送が行われる。そして、タスクBについて1[Mbyte]ごとのアクセスが完了すると、タスクBでは、ステップS204を経て、同期オブジェクトが解放され、OSでは、その後所定時間が経過すると次にタスクAに実行が切り換わる。なお、通常一つのファイルは連続したトラックに記憶されているため、タスクBについて1[Mbyte]ごとのアクセスについては、磁気ヘッドの移動がランダムアクセスする場合に比してきわめて少ない回数ですむ。

0068

このように、タスクAについては32[kbyte]ごと、タスクBについては1[Mbyte]ごとのデータ転送が100回繰り返されると、タスクBが要求する100[Mbyte]のデータ転送がタスクAよりも先に完了するので、その後は、タスクが切り換わることなく、タスクAについてのアクセスのみがハードディスク42に対して継続的に行われる。したがって、タスクAおよびタスクBが要求する100[Mbyte]のデータ転送がそれぞれ完了するまでに、磁気ヘッドの移動は、全体として200回ですむ。ただし、タスクBについて1[Mbyte]ごとのアクセスについては、磁気ヘッドの移動がランダムアクセスする場合に比してきわめて少ない回数ですむので、ここでは、比較を容易とするために1回として計算する。

0069

これに対して、上記従来OSにおいて、タスクAおよびタスクBを時間的に同時に実行した場合は、タスクAについては32[kbyte]ごと、タスクBについても32[kbyte]ごとのデータ転送が行われるので、タスクAおよびタスクBが要求する100[Mbyte]のデータ転送がそれぞれ時間的にほぼ同時に完了するが、それらが完了するまでに、磁気ヘッドの移動は、全体として6400回となる。ただし、タスクBについて1[Mbyte]ごとのアクセスについては、磁気ヘッドの移動がランダムアクセスする場合に比してきわめて少ない回数ですむので、ここでは、比較を容易とするために1回として計算する。

0070

したがって、上記従来OSに比して、タスクAおよびタスクBが時間的に同時にOS上で実行された場合は、タスクBについてのアクセスがタスクAについてのアクセスよりもやや早く完了してしまうが、磁気ヘッドの移動は、全体として200回にまで低減される。

0071

このようにして、本実施の形態では、マルチタスクで動作するOSにおいて、タスクAは、第1のデータ転送量ごとにデータ転送を行うことをOSに要求するとともに、第1のデータ転送量ごとのデータ転送を行っている間は、タスクA以外のタスクの実行を禁止することをOSに要求するようにし、タスクBは、第1のデータ転送量よりも大きい第2のデータ転送量ごとにデータ転送を行うことをOSに要求するとともに、第2のデータ転送量ごとのデータ転送を行っている間は、タスクB以外のタスクの実行を禁止することをOSに要求するようにした。

0072

これにより、タスクAおよびタスクBが同時にOS上で実行された場合は、タスクAのアクセス待ち時間がタスクBのそれに比してやや多くなるが、ハードディスク42のアクセスのうち最も時間を要するシーク動作および回転待ち動作の回数が低減されるので、従来に比して、マルチタスク機能をさほど損なうことなく、ハードディスク42に対するアクセス時間を比較的低減することができる。

0073

上記実施の形態において、ステップS100〜S104およびステップS200〜S204は、請求項1ないし3、6または7記載のアクセス制限手段に対応し、タスクAは、請求項8記載の所定数のタスクに対応し、タスクBは、請求項8記載の他のタスクに対応している。

0074

なお、上記実施の形態においては、タスクAおよびタスクBはいずれも、OSに要求する一回のデータ転送量を固定とする構成であったが、これに限らず、ハードディスク42のデータ転送率に応じて、OSに要求する一回のデータ転送量を可変とする構成としてもよい。

0075

具体的に、タスクBは、ハードディスク42の単位時間当たりの平均的なデータ転送量であるデータ転送率を算出し、算出したデータ転送率が所定値を超えるときは、第1のデータ転送量と第2のデータ転送量との差が小さくなるように、第2のデータ転送量を調整し、算出したデータ転送率が所定値以下であるときは、第1のデータ転送量と第2のデータ転送量との差が大きくなるように、第2のデータ転送量を調整するステップを、ステップS202とステップS204との間に追加することにより構成する。

0076

このような構成であれば、データ転送率が低いときは、マルチタスク機能を損なわないことよりも、アクセス時間を低減させることを優先して動作し、データ転送率が高いときは、アクセス時間を低減することよりも、マルチタスク機能を損なわないことを優先して動作するので、マルチタスク機能の要請を満たすことと、同時アクセス要求が発生したときにハードディスク42に対するアクセス時間の過大な増大を防止することとのバランスを比較的適切に図ることができる。

0077

また、上記実施の形態においては、タスクAおよびタスクBの2つのタスクが同時にOS上で実行される場合について説明したが、これに限らず、さらに多数のタスクが同時にOS上で実行される場合については、各タスクがOSに要求する一回のデータ転送量が異なるように各タスクを構成すれば、上記実施の形態と同じ要領で実現することができる。なお、多数のタスクを同時にOS上で実行する場合は、各タスクがOSに要求する一回のデータ転送量をそれぞれ異ならせる必要はなく、少なくとも一のタスクがOSに要求する一回のデータ転送量と、他のタスクがOSに要求する一回のデータ転送量とが異なっていれば、上記実施の形態の効果が得られる。

0078

また、上記実施の形態においては、タスクAおよびタスクBに同期オブジェクトの確保・解放を行う処理を設けることにより、ハードディスク42に対するアクセスを制御するように構成したが、さらに多数のタスクが同時にOS上で実行される場合は、各タスクにこうした処理を設けるのに手間がかかるので、これに代えて、ハードディスクドライバの中に一回のデータ転送量を制御する処理を設けることにより、ハードディスク42に対するアクセスを制御するように構成してもよい。この場合、具体的には、ある程度のデータ転送量のデータを転送する間は、タスクの切換が起こらないような処理とする。

0079

また、上記実施の形態において、図2および図3のフローチャートに示す処理を実行するにあたってはいずれも、ROM32にあらかじめ格納されている制御プログラムを実行する場合について説明したが、これに限らず、これらの手順を示したプログラムが記憶された記憶媒体から、そのプログラムをRAM34に読み込んで実行するようにしてもよい。

0080

ここで、記憶媒体とは、RAM、ROM等の半導体記憶媒体FD、HD等の磁気記憶型記憶媒体、CD、CDV、LD、DVD等の光学的読取方式記憶媒体、MO等の磁気記憶型/光学的読取方式記憶媒体であって、電子的、磁気的、光学的等の読み取り方法のいかんにかかわらず、コンピュータで読み取り可能な記憶媒体であれば、あらゆる記憶媒体を含むものである。

0081

また、上記実施の形態においては、本発明に係るハードディスクのアクセス制御装置およびハードディスクのアクセス制御タスクを、複数のタスクからハードディスクに対するアクセス要求を同時に受けたときは、各アクセス要求に係るアクセスを所定のアクセス単位ごとに時分割で交互に行うOSにおいて、ハードディスクに対するアクセスを制御する場合について適用したが、これに限らず、本発明の主旨を逸脱しない範囲で他の場合にも適用可能である。

発明の効果

0082

以上説明したように、本発明に係る請求項1ないし7記載のハードディスクのアクセス制御装置によれば、複数のアクセス要求が同時にあった場合は、所定数のアクセス要求を発した処理のアクセス待ち時間が他のアクセス要求を発した処理のそれに比してやや多くなるが、ハードディスクのアクセスのうち最も時間を要するシーク動作および回転待ち動作の回数が低減されるので、従来に比して、マルチタスク機能をさほど損なうことなく、ハードディスクに対するアクセス時間を比較的低減することができるという効果が得られる。

0083

さらに、本発明に係る請求項4または5記載のハードディスクのアクセス制御装置によれば、データ転送率が低いときは、マルチタスク機能を損なわないことよりも、アクセス時間を低減させることを優先して動作し、データ転送率が高いときは、アクセス時間を低減することよりも、マルチタスク機能を損なわないことを優先して動作するので、マルチタスク機能の要請を満たすことと、同時アクセス要求が発生したときにハードディスクに対するアクセス時間の過大な増大を防止することとのバランスを比較的適切に図ることができるという効果も得られる。

0084

さらに、本発明に係る請求項6記載のハードディスクのアクセス制御装置によれば、マルチタスク機能をさらに損なうことなく、ハードディスクに対するアクセス時間を比較的低減することができるという効果も得られる。

0085

一方、本発明に係る請求項8ないし10記載のハードディスクのアクセス制御タスクによれば、複数のタスクからアクセス要求が同時にあった場合は、所定数のタスクのアクセス待ち時間が他のタスクのそれに比してやや多くなるが、ハードディスクのアクセスのうち最も時間を要するシーク動作および回転待ち動作の回数が低減されるので、従来に比して、マルチタスク機能をさほど損なうことなく、ハードディスクに対するアクセス時間を比較的低減することができるという効果が得られる。

0086

さらに、本発明に係る請求項9または10記載のハードディスクのアクセス制御装置によれば、データ転送率が低いときは、マルチタスク機能を損なわないことよりも、アクセス時間を低減させることを優先して動作し、データ転送率が高いときは、アクセス時間を低減することよりも、マルチタスク機能を損なわないことを優先して動作するので、マルチタスク機能の要請を満たすことと、同時アクセス要求が発生したときにハードディスクに対するアクセス時間の過大な増大を防止することとのバランスを比較的適切に図ることができるという効果も得られる。

図面の簡単な説明

0087

図1本発明を適用するコンピュータシステムの構成を示すブロック図である。
図2ハードディスク42のハードディスク42に対するアクセスを制御するタスクAを示すフローチャートである。
図3ハードディスク42のハードディスク42に対するアクセスを制御するタスクBを示すフローチャートである。

--

0088

100コンピュータ
30 CPU
32 ROM
34 RAM
40入力装置
42ハードディスク
44 表示装置

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

該当するデータがありません

関連する公募課題

該当するデータがありません

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

該当するデータがありません

この 技術と関連する公募課題

該当するデータがありません

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ