(57)【要約】携帯ストリーミング機器（１００）におけるメモリ使用を制御する方法（２）、携帯ストリーミング機器（１００）、および機械可読媒体（１１０）。携帯ストリーミング機器（１００）は、少なくとも一つのメモリ（１０２）と、少なくとも一つの処理装置（１０１）と、前記処理装置（１０１）の制御のもとで前記メモリ（１０２）と機能的に接続されている少なくとも一つの記憶装置（１０３）とを有する。前記携帯ストリーミング機器の前記メモリ内のディスク・スケジューラー・バッファ・メモリの大きさは前記方法（２）によって常時適応的に最大化される。前記携帯ストリーミング機器内の利用可能な空きメモリは割り当てが随時行われ（５０）、前記利用可能な空きメモリの少なくとも一部分がディスク・スケジューラー・バッファ・メモリとして指定される（６０）。こうして前記携帯ストリーミング機器の半導体メモリの利用効率の向上が実現し、利用可能なディスク・バッファ・メモリの大きさが大きくなることによって、記憶装置の始動・停止サイクルが少なくなり、前記携帯ストリーミング機器の寿命を長くすることにもつながる。
2006510979.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つのメモリと、少なくとも一つの処理装置と、前記処理装置の制御のもとで前記メモリと機能的に接続されている少なくとも一つの記憶装置とを有する携帯ストリーミング機器におけるメモリ使用を制御する方法であって、
前記携帯ストリーミング機器における前記メモリ内のディスク・スケジューラー・バッファ・メモリの大きさを適応的に最大化し、
前記携帯ストリーミング機器における利用可能な空きメモリの割り当てを随時行い、
前記割り当てられた空きメモリの少なくとも一部をディスク・スケジューラー・バッファ・メモリとして指定し、使用する、ステップを有することを特徴とする方法。
【請求項２】
前記ディスク・スケジューラー・バッファの大きさを最大化するステップが、割り当てられた空きメモリが前記携帯ストリーミング機器における既存のディスク・スケジューラー・バッファ・メモリと組み合わせてディスク・スケジューラー・バッファ・メモリとして使用される形で、前記携帯ストリーミング機器における利用可能なディスク・スケジューラー・バッファ・メモリ全体の量を上昇させることを特徴とする、請求項１記載の方法。
【請求項３】
前記ディスク・スケジューラー・バッファ・メモリ内において個々のバッファの大きさが個々のストリームに対して指定され、バッファ・メモリの大きさが前記ストリームのビットレートに依存することを特徴とする、請求項１または２記載の方法。
【請求項４】
前記ディスク・スケジューラー・バッファ・メモリの大きさを適応的に最大化するステップが、前記携帯ストリーミング機器の全メモリを複数のサブセクションとして随時構成するステップを有し、該サブセクションが、
バッファ・メモリとしてディスク・スケジューラーに完全にリザーブされる固定部分である第一のメモリ・セクションと、
さらなるバッファ・メモリとして前記ディスク・スケジューラーによって使われる可変部分である第二のメモリ・セクションと、
当該携帯ストリーミング機器の前記スケジューラー以外のすべてのアプリケーションによって、またオペレーティング・システムＯＳによって使用される第三のメモリ・セクションと、
第二のセクションと第三のセクションとの間にあって安全マージンとされる第四のメモリ・セクションとを有し、
第三のメモリ・セクションが、第四のメモリ・セクションからメモリの割り当てを受けて増大したり第四のメモリ・セクションにメモリを割り当てることで減少したりし、
第二のメモリ・セクションが、第四のメモリ・セクションからメモリの割り当てを受けて増大したり第四のメモリ・セクションにメモリを割り当てることで減少したりすることを特徴とする、請求項１記載の方法。
【請求項５】
前記四つのメモリ・セクションのうち少なくとも一つのメモリ・サイズが零に等しいことを特徴とする、請求項４記載の方法。
【請求項６】
さらに常時メモリ・プール管理を有する請求項４または５記載の方法であって、該メモリ・プール管理が、
前記アプリケーションおよび前記ＯＳのメモリ要求に依存しつつ、第二・第三のメモリ・セクションの一方または両方を増加または減少させ、あるいは一方を増加させて他方を減少させ、
第四のメモリ・セクションの利用可能なメモリの少なくとも一部を前記第二のメモリ・セクションに割り当てるステップを有することを特徴とする方法。
【請求項７】
第一のメモリ・セクションと第二のメモリ・セクションを有するスケジューラー・バッファが待ち行列として構成される、請求項６記載の方法。
【請求項８】
請求項６記載の方法であって、前記の常時メモリ・プール管理がさらに、
メモリ使用を時間を追って追跡し、
前記第四のメモリ・セクションの大きさを、前記のメモリ使用追跡に基づくメモリ使用統計に基づいて制御するステップを有することを特徴とする方法。
【請求項９】
前記使用統計が恒久的に、好ましくはファイル・システム内に、保存されることを特徴とする請求項８記載の方法。
【請求項１０】
第一・第二・第三・第四のメモリ・セクションのいずれかが前記携帯ストリーミング機器の連続的でないメモリ・セクションであることを特徴とする、請求項４ないし８のうちいずれか一項記載の方法。
【請求項１１】
メモリと、少なくとも一つの処理装置と、前記処理装置の制御のもとで前記メモリと機能的に接続されている記憶装置とを有する携帯ストリーミング機器であって、
前記処理装置が、前記携帯ストリーミング機器における前記メモリ内のディスク・スケジューラー・バッファ・メモリの大きさを適応的に最大化することを特徴とする機器。
【請求項１２】
前記記憶装置が光ディスクドライブであることを特徴とする請求項１１記載の携帯ストリーミング機器。
【請求項１３】
前記記憶装置がハードディスクをベースとするディスクドライブであることを特徴とする請求項１１記載の携帯ストリーミング機器。
【請求項１４】
前記メモリがホットスポットの問題のない不揮発性半導体メモリを有することを特徴とする請求項１１記載の携帯ストリーミング機器。
【請求項１５】
前記メモリが磁気抵抗ランダム・アクセス・メモリを有することを特徴とする請求項１４記載の携帯ストリーミング機器。
【請求項１６】
処理装置によって処理するためのコンピュータ・プログラムが記録されている機械可読媒体であって、該コンピュータ・プログラムが：
携帯ストリーミング機器のメモリ内のディスク・スケジューラー・バッファ・メモリを適応的に最大化するコード・セグメントを有することを特徴とする媒体。
【請求項１７】
請求項１１に基づく携帯ストリーミング機器の使用。
【請求項１８】
請求項１に基づく方法の使用。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、一般には携帯記憶装置の分野に、より特定的にはディスクをベースとする携帯電子ストリーミング機器の分野に、さらにより特定的には記憶媒体をベースとする携帯電子ストリーミング機器における電力消費の節減に関するものである。
【０００２】
【背景技術】
【０００３】
携帯オーディオプレーヤーや携帯ビデオプレーヤーのようなディスクをベースとする携帯ストリーミング機器が急速に広まりつつある。これらの機器は、たとえばユーザーによって携帯される場合、バッテリーによって駆動されており、バッテリーを充電したり交換したりしなければならなくなるまでの全再生時間は、そのような機器が受け入れられるかどうかを分ける決定的な要素である。全再生時間は機器のバッテリー寿命に直接的に依存し、バッテリー寿命は今度はバッテリーの容量と携帯記憶装置の電力消費とに依存する。携帯機器は、音楽クリップやビデオ映像などのデータを記憶するための、ハードディスクドライブや光ディスクドライブなどの記憶装置を備えており、その携帯記憶装置が前記データをストリーム処理する。これらの記憶装置は記憶媒体を機械的に駆動する電気駆動式モーターを有している。その動作は、前記携帯記憶装置を構成する他のユニットとの関係で見て、主要な電量消費要因であって、費消される全電力の相当な部分の原因となっている。これらの記憶装置の電力消費を最小限にするために、ディスク・スケジューリングが導入されている。ディスク・スケジューリングにおいては、前記携帯記憶装置はキャッシュメモリを有し、データはディスクドライブからキャッシュメモリへと転送され、キャッシュメモリから引き出されたデータが処理にかけられ、あるいは逆に、データはいったんキャッシュメモリに蓄えられてからディスクドライブに送られる。携帯ストリーミング機器におけるディスク・スケジューラーは、記憶装置からデータを読み出すビット・エンジンの、待機時間と動作時間の比を最適化する。ディスク・スケジューラーの制御のもと、記憶装置の記憶媒体からバースト的な方法でデータを出し入れすることによって、前記記憶装置はできうる限り長い間スピンダウンさせられる、すなわちモーター・ユニットのスイッチがオフにされる。このことは、大きなスケジューリング・バッファを使い、携帯記憶装置が記憶媒体にアクセスしてから次にアクセスするまでの間の待機時間を最大化できるようにすることによって実現される。携帯記憶装置中で利用可能な全半導体メモリのうちの固定された部分がこの目的のためにリザーブされる。携帯ストリーミング機器の中ではしばしば、メモリ回路を有する独立した専用ハードウェアがバッファメモリとして配される。バッファが大きいほど、ドライブをオフにしていられる時間も長くなり、そのため電力の節約は大きくなる。同じ量のメモリなら時がたつにつれて安価になる傾向があるとはいえ、やはり、単一の利用目的、現在の場合ではディスク・スケジューリング・バッファのためにリザーブされるハードウェアの量は最低限にすることが、コストを下げ、携帯ストリーミング機器のパフォーマンスを向上させるためには望ましい。
【０００４】
それに加えて、携帯ストリーミング機器の記憶装置をオン・オフするという上述した方針に付随してはさらなる問題がある。それは、記憶装置の寿命が、該記憶装置の磨耗を受ける機械部品の一定数の始動・停止サイクルに限られるということである。したがって、このためだけからでも、できうる限り大きなバッファを持っておくことが望ましい。時間がたつうちに経る開始・停止のサイクル数を減らし、それによって記憶装置の寿命を伸ばし、ひいては携帯ストリーミング機器全体の寿命をも伸ばすためである。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は従来技術における上に特定された欠陥を克服し、常時メモリ・バッファの大きさを最大にすることによって上記の問題を解決するものである。本発明の好ましい実施形態に基づく、方法、携帯ストリーミング装置、および機械可読媒体が、独立して付属する特許請求の範囲のとおりに開示される。
【０００６】
本発明の第一の側面では携帯ストリーミング機器においてメモリ使用を制御する方法が提供される。前記携帯ストリーミング機器は、少なくとも一つのメモリと、少なくとも一つの処理装置と、前記処理装置の制御のもとに前記メモリと機能的に接続されている少なくとも一つの記憶装置とを有する。この方法によれば、前記携帯ストリーミング機器における前記メモリ内のディスク・スケジューラー・バッファ・メモリは適応的に最大化される。利用可能な空きメモリの少なくとも一部分の割り当てが随時行われ、ディスク・スケジューラー・バッファ・メモリとして指定され、使用される。
【０００７】
本発明の別の側面では、メモリと、少なくとも一つの処理装置と、前記処理装置の制御のもとに前記メモリと機能的に接続されている記憶装置とを有する携帯ストリーミング装置が提供される。前記処理装置は、メモリ内の空きメモリの割り当てを随時行い、前記空きメモリの少なくとも一部分をディスク・スケジューラー・バッファとして指定する。
【０００８】
本発明のさらなる側面では、処理装置に、携帯ストリーミング機器のメモリ内のディスク・スケジューラー・バッファ・メモリの大きさを適応的に最大化するよう命令するコード・セグメントを有する機械可読媒体が提供される。
【０００９】
本発明の目的は、携帯ストリーミング機器の既存のメモリをより効率的に利用することである。本発明のさらなる目的は、既存のハードウェアを修正することなく携帯ストリーミング機器の寿命を伸ばすことである。本発明のさらに別の目的は、ディスク・バッファリングのためにリザーブしておくのに必要とされる専用メモリの量を最低限にすることである。さらに、本発明の目的として、既存のディスク・スケジューリング方式を改良しつつそれとの互換性を維持することがある。
【発明を実施するための最良の形態】
【００１０】
本発明の好ましい実施形態が付属の図面を参照しつつ、下記の詳細な開示によって説明される。
【００１１】
本発明によれば、ディスク・スケジューリング・バッファのバッファ・サイズは常時適応的に最大化される。ある好ましい実施形態によれば、スケジューリング・バッファは、従来型のスケジューラーと同様の固定サイズ部分のほかに追加の可変サイズ部分が提供される。この可変サイズ部分は、携帯ストリーミング機器における半導体メモリの空き領域の空き具合に従って適応的にそのサイズが変わるようになっている。固定サイズ部分は零ということもある。その場合、当該機器は可変メモリ部分だけで動作することになる。
【００１２】
図２はフローチャートの形で本発明のある側面に基づく方法２を図解している。ある携帯ストリーミング機器において、ディスク・スケジューラー・バッファ・メモリの大きさは、前記携帯ストリーミング機器のメモリ内において適応的に最大化される。空きメモリは随時割り当てが行われ、それがステップ５０である。ステップ６０では前記の割り当てられた空きメモリの少なくとも一部分がディスク・スケジューラー・バッファ・メモリとして指定され、使用される。割り当ては随時繰り返されるか、あるいはステップ７０で終了する。
【００１３】
ある装置内で利用可能な半導体メモリ（ＤＲＡＭ、ＳＲＡＭなど）全体の量は本来的に限界があり、大きさは決まっており、システム内の複数の異なるコンポーネントによって共有されている。スケジューリング・バッファはその一つでしかなく、同じメモリ・プールを利用するものとしてはほかに、当該アプリケーション、ＯＳ、そして他の可能性としてシステム内の内部バスに接続されたビデオ・コーデックなどのその他の内部デバイスといったものがある。空きメモリ領域、すなわち現在使用されていないメモリをディスク・スケジューラー・バッファに割り当てることによって、スケジューラー・バッファの平均的なサイズが著しく増大し、当該ビット・エンジンの待機時間を長くすることにつながり、ひいては電力消費を減らし、寿命を伸ばすことになる。このことは当該携帯ストリーミング機器の半導体メモリの利用効率の向上にもつながる。
【００１４】
オーディオ・ビデオの一方または両方の記録・再生の一方または両方といった典型的な携帯機器でのリアルタイム・アプリケーションにおいては、スケジューリングを用いないタスクのメモリ使用は実質的に時間的に定常的であるであろう。そのような状況では、未使用のメモリは容易にスケジューリング・バッファに加えることができる。携帯娯楽情報機器はおびただしい数の異なるアプリケーションの一群を実行できる柔軟性に富む機器であるから、利用できる空きメモリは通例相当なものである。全利用可能メモリはメモリ使用の観点から最も必要としているアプリケーションに振り向けられるが、そうしたアプリケーションは一般にはビデオコンテンツの再生や録画ではない。
【００１５】
エンコードされたビデオの再生を、本発明を制限するものではない一例で考えてみると、圧縮していないフレームを一時的に保存するために使用される全メモリは、標準解像度のビデオコンテンツについてはしばしば８ＭＢに満たない。典型的な例として６４ＭＢの全メモリを有する携帯ストリーミング機器の場合、スケジューラー・バッファの固定サイズ部分をたとえば３２ＭＢとすると、このバッファに２４ＭＢの追加メモリを加えることができ、スケジューラー・バッファの全サイズは５６ＭＢとなる。これは本発明のこの特定の例について、待機時間と動作時間の比をほぼ二倍にすることになる。費用のかさむ既存ハードウェアの修正もなく、それでいてこれにより装置の寿命もほぼ二倍になる。
【００１６】
レイヤー化エンコーディング形式におけるような複数のオーディオ・ビデオ・ストリームの場合、利用可能な半導体メモリの空き領域は複数のストリームの間で分割される。ここで、各ストリームの間でのメモリの分配は均等である必要はない。それぞれのストリームのためのバッファ・サイズは個々のストリームのビットレートにも依存する。低ビットレートのストリームは必要とするバッファ・サイズも小さく、したがって利用可能メモリは高ビットレートのストリームに使われることが好ましい。リアルタイムのストリーミング・アプリケーションと同時に実行されているアプリケーションがより多くのメモリを要求しはじめた場合には、スケジューラー・バッファ・サイズは徐々にもとの固定サイズにまで減らされる。
【００１７】
ストリーミング・アプリケーションと同時に実行されているアプリケーションやバックグラウンド・タスクでメモリ使用の面から見てバースト的なものについては、いくつかの追加措置が講じられる。しかし、出先での、すなわち電力節減が最も重要となる局面でのビデオコンテンツの再生や録画は一般には携帯ストリーミング機器の処理を完全に占有してしまうタスクであることに注意しておきたい。大量のメモリを消費するタスクが他にたくさんあることはあまりありそうもない。これは主として、ビデオを見たり録画したりといった活動は、一般的に言って、携帯ストリーミング機器のユーザーがそれにかかりきりになることを要求するものだという事実からきている。したがって、他のタスクは実行されておらず、したがって大量の追加メモリが要求されることもないであろう。しかし、最大限のスケジューラー・バッファを用いてビデオを再生しているときに、ストリーミングでないアプリケーションやＯＳが、スケジューラー・バッファによって使用されていて利用できなくなっているメモリを要求する可能性はある。この状況は、装置内で利用可能な全メモリを、下記に述べるような特定の仕方で構成し、組織し、そのような状況の発生回数を減少させることによって解決される。
【００１８】
図１は本発明の好ましい実施形態の仮想メモリ空間を図示する概念図である。携帯ストリーミング機器における利用可能な全メモリ１はセクション１０、２０、３０、４０に細分されており、各セクションはストリーミング・アプリケーションなどの特定の目的のためにリザーブされているか、あるいは一般的な用途に利用可能で、たとえば他のアプリケーションやＯＳなどで使えるかのいずれかである。メモリ・セクション１０、２０、３０、４０は携帯ストリーミング機器における連続的なメモリ・セクションである必要はない。図１の図解は純粋に解説のためのものであって、メモリ・セクション１０、２０、３０、４０が携帯ストリーミング機器における連続的なメモリ・セクションであることが必要であるなどと解釈してはならない。それどころか、この四つのメモリ・セクションは携帯ストリーミング機器内の異なるメモリ範囲やメモリ・デバイスに分散していてもよい。それに加えて、メモリ・セクション１０、２０、３０、４０の少なくとも一部は、すでに上で述べたように、零に等しくてもよい。図１における各メモリ・セクションの相対的な大きさも純粋に図解のためのものであり、必ずしも実際の大きさの比を表したものではない。メモリ・セクション１０はバッファ・メモリとして完全にスケジューラーのためにリザーブされる固定部分として使われる。メモリ・セクション２０はさらなるバッファ・メモリとしてディスク・スケジューラーによって使われる可変部分である。メモリ・セクション４０はスケジューラー以外のすべてのアプリケーションによって、またＯＳによって使われる。メモリ・セクション４０は下から上に向かって矢印Ｂのように伸び、スケジューラー・バッファは上から下に向かって矢印Ａのように伸び、セクション２０、４０の間にはある安全マージン３０が残る。スケジューラー部分１０、２０は、スケジューラー・バッファ内で、ディスクへの書き込みまたはデコーダーもしくはネットワーク接続への転送のために最初に必要とされるビデオ・データがバッファのいちばん上近くに位置するように実装される。これを実現するためには、たとえばＯＳの拡張部分のような何らかの中心的な要素が、当該携帯機器におけるあらゆるメモリ消費要素が使うメモリ・プール１全体を集中管理する必要がある。
【００１９】
記憶媒体からの読み出し（再生ともいう）の場合、次のようになる。媒体からデータを読み出す場合、すなわち再生の際には、スケジューラー・バッファ内の期限の早い内容を上書きする形でアプリケーションやＯＳがメモリを割り当てることは避けられる。安全マージンを超える場合に上書きされるのは、最も遠い将来に要求されるデータのみであるべきである。換言すれば、媒体から再度引き出すのにまだ十分な時間のあるデータということである。それでもそのようなデータの引き出しはもともと予定されたよりは早く、好ましくは次に媒体にアクセスするときであろう。このような上書きが起こるのは、安全マージン３０全体が完全に消費されたときだけである。上で議論したように、従来型のスケジューラー・バッファのサイズに等しい最低限のスケジューラー・バッファ・サイズ１０をリザーブしておくことで、動作・停止サイクルによる電力使用という点での全体的なパフォーマンスが従来型のスケジューラーより悪くなることは決してないであろう。
【００２０】
図１で描かれているスケジューラー・バッファ１０、２０は概念としては待ち行列であり、循環バッファとして実装するのが好ましい。データは常に前から追加されて後ろから読み出される（好ましくは比較的大きな塊で）のでデータのフラグメンテーションは問題にならない。待ち行列の最後のデータ、すなわち最も最近追加されたデータだけが、他のアプリケーションのために必要となった場合に上書きされる。装置内での他のタスク、すなわちスケジューラー以外のバッファ使用については事情が異なる。というのも、たとえば割り当てられたメモリのある塊がもっと最近に割り当てられたデータよりもあとに開放されるからである。このためメモリの割り当てにギャップが生じ、メモリ・プールの底の部分にフラグメンテーションが生じる。底の部分、すなわちアプリケーションとＯＳ用のメモリ４０のフラグメンテーションは、能動的なデフラグメンテーションを実行するか、あるいは、割り当てられた部分の間にあるより小さなギャップを利用するスキャッタ・ギャザー様のメモリ割り当てのようなより進んだメモリ・プール管理方法を用いることによって減らすことができる。
【００２１】
記憶媒体への書き込み（記録ともいう）の場合、次のようになる。記録モードでは一般により大きなバッファ・サイズが必要とされる。電源障害のために、あるいは記録中にスケジューラー・バッファ・メモリの一部が携帯ストリーミング機器によってたとえばＯＳやさまざまなアプリケーションの他のタスクのために要求されるために、データが失われてしまう危険がある。後者の場合、他のタスクの使用のためにメモリを節約するには、強制的にスケジューラー・バッファの一部の内容を記憶媒体に吐き出すことを必要とすることができる。このことによって、記憶媒体への書き出しを行っている短い時間の間、メモリの利用資格を得られないアプリケーションが停止することになるかもしれない。しかし、短時間アプリケーションが停止することは、そもそもこれらのアプリケーションはリアルタイムのものではないと考えられるので大きな問題ではない。一方、記録中の貴重なデータを失うことはずっと大きな問題であり、上記の犠牲を正当化しうるものである。それでも、最低限のバッファ・サイズがあるので、適切な安全マージンを選ぶことによって、これらの状況の発生回数は納得できる程度に抑えられる。特に、これを実装する側が当該装置上で走っているすべてのタスクを完全に制御できる場合はそうである。もう一方の電源障害の場合には、電力消費スケジューリングを最適化するために大きなバッファ・サイズを用いているために、データ損失の量が著しく大きくなることがありうる。特に、記録アプリケーションにとっては、このことは次の説明例で見るように重大問題となりうる。バッファ・サイズを６４ＭＢとし、カムコーダーのような携帯ストリーミング機器によってビデオを１２Ｍｂｐｓのレートで録画することを考えると、電源障害のあとでは、従来型のメモリ回路では全部で４０秒以上もの映像が失われる。これにはカムコーダーを操作していたユーザーが撮影中だった、かけがえのない思い入れのある貴重なイベントが含まれるかもしれない。本発明のある実施形態では、これらの記録装置は、いわゆるホットスポットの問題のない、すなわちメモリ・セルあたりの書き込み回数が制限されている不揮発性の半導体メモリを有する。好ましくは、この目的のためには、上述した種類のメモリであるＭＲＡＭ（磁気抵抗ランダム・アクセス・メモリ）が用いられる。ＭＲＡＭは高速でありかつホットスポットの問題がない半導体メモリである。従来型のランダム・アクセス・メモリ（ＲＡＭ）を用いたコンピュータ・チップは電気が通じている間しか情報を記憶せず、この目的のためには適切ではない。電源が失われれば情報も失われてしまう。しかし、ＭＲＡＭは電源が切れたあとでもデータを保持する。ＭＲＡＭは、データ・ビットを、ＤＲＡＭ（ダイナミック・ランダム・アクセス・メモリ）によって用いられるような電荷の代わりに磁荷を用いて記憶するという原理に従って動作する。ＤＲＡＭの代わりにＭＲＡＭを用いることによって、記録の場合に携帯ストリーミング機器におけるデータ損失を防ぐことができる。この方法では、電源障害があったあとでもＭＲＡＭに保存されているビデオ情報は恒久的に保存されており、再び電源をつないだあとで回復することができる。
【００２２】
装置内のあらゆるプロセスのためにメモリの割り当てを担っているメモリ・プール・マネージャによって安全マージン３０が使い尽くされてしまうことの発生件数を制限するためには、メモリ・プール・マネージャは、時間を追ってメモリ使用を追跡することによって、さまざまなタスクやアプリケーションのメモリ使用を追跡しておく。これらのメモリ使用の統計は、のちに安全マージン３０を制御するのに使われるか、あるいはマージンの必要性を完全になくしてしまうかもしれない。
【００２３】
このメモリ使用情報が恒久的に、たとえばファイル・システムの中に保存されていれば、同じコンテンツを再生したり、同じアプリケーションやコーデックの一方または両方を使ったりするときに参照することができる。必要とあれば、メモリ使用情報はソフトウェアに限られることなく、再生されるコンテンツにも使われてよい。すなわち、コンテンツによっては他のコンテンツよりも大きな中間バッファを必要とするものもあると思われるのである。
【００２４】
図３は本発明の別の側面に基づく携帯ストリーミング機器を示している。携帯ストリーミング機器１００はメモリ１０２と、少なくとも一つの処理装置１０１と、前記処理装置１０１の制御のもとに前記メモリ１０２と機能的に接続されている記憶装置１０３とを有している。前記処理装置１０１は、前記携帯ストリーミング機器における前記メモリ１０２内のディスク・スケジューラー・バッファ・メモリの大きさを、好ましくは上述した方法によって適応的に最大化する。
【００２５】
図４は本発明のさらなる側面に基づく機械可読媒体１１０を示している。機械可読媒体１１０は処理装置１１２によって処理するためのコンピュータ・プログラム１１１を有している。コンピュータ・プログラム１１１は携帯ストリーミング機器のメモリ内のディスク・スケジューラー・バッファ・メモリの大きさを、好ましくは上述した方法によって適応的に最大化するためのコード・セグメントを有する。
【実施例】
【００２６】
光ディスクはたとえば書き換え可能なＣＤやＤＶＤ，または小型光ディスク（ＳＦＦＯ）でもよい。小型光ディスク（ＳＦＦＯ）ドライブは大容量を有する光ディスクドライブの小型版である。ＳＦＦＯ技術は、携帯ストリーミング機器のような携帯機器に特に適する。
【００２７】
ある場合には、携帯ストリーミング機器はいわゆるＥＳＰメモリを有する。ＥＳＰメモリというのはエレクトロニック・ショック・プロテクション・メモリの略である。ここで、このメモリはＣＤプレーヤーのような携帯ストリーミング機器や車載ＣＤプレーヤーといった、外的な衝撃によるノイズの問題を抱えている環境で使われている。きれいな音を得るには、前記バッファ・メモリ内にある量のデータをバッファリングしておくＥＳＰ（エレクトロニック・ショック・プロテクション）システムが用いられる。ＥＳＰシステムは外的な衝撃があまりに長く続けばメモリが足りなくなってノイズを除去しきれなくなる。その時間制限はメモリ・バッファ・サイズとデータ圧縮率に依存する。ここでもバッファ・サイズはできうる限り大きいことが望ましい。本発明に基づく方法はディスク・スケジューラー・メモリの代わりにＥＳＰメモリのために使うこともできる。また逆に、本発明の方法を実装するにあたって、ＥＳＰメモリを上述したメモリ・セクションの一つに割り当てることもできる。
【００２８】
本発明を電力消費を減らすための既存のディスク・スケジューリング方式と組み合わせて用いることも可能である。
【００２９】
上述した本発明に基づく電力節約方針の応用と用途は多様であり、携帯ＭＰ３プレーヤーや携帯カムコーダーのような代表例となる分野のみならず、ストリーミングデータを扱えるハンドヘルドパソコン、ノートパソコン、ラップトップパソコンといった携帯型パソコンをも含む。
【００３０】
上記では本発明は特定の実施形態を参照して記述してきた。しかし、たとえばメモリやＯＳ，携帯機器に上述したものとは異なる種類のものを使ったり、上記の方法をハードウェアまたはソフトウェアによって実行したりするなど、上記以外の実施形態も付属する特許請求の範囲内において同じように可能である。
【００３１】
さらに、「有する」という表現は他の要素やステップを排除するものではない。単数形の表現も複数を排除するものではない。特許請求の範囲において挙げられている複数のユニットまたは回路の機能を単一の処理装置または他の装置が実行してもよい。
【００３２】
本発明は、携帯ストリーミング機器（１００）におけるメモリ使用を制御する方法（２）、携帯ストリーミング機器（１００）、そして機械可読媒体（１１０）として要約できる。携帯ストリーミング機器（１００）は、少なくとも一つのメモリ（１０２）と、少なくとも一つの処理装置（１０１）と、前記処理装置（１０１）の制御のもとで前記メモリ（１０２）と機能的に接続されている少なくとも一つの記憶装置（１０３）とを有する。前記携帯ストリーミング機器の前記メモリ内のディスク・スケジューラー・バッファ・メモリの大きさは前記方法（２）によって常時適応的に最大化される。前記携帯ストリーミング機器内の利用可能な空きメモリは割り当てが随時行われ（５０）、前記利用可能な空きメモリの少なくとも一部分がディスク・スケジューラー・バッファ・メモリとして指定される（６０）。こうして前記携帯ストリーミング機器の半導体メモリの利用効率の向上が実現し、利用可能なディスク・バッファ・メモリの大きさが大きくなることによって、記憶装置の始動・停止サイクルが少なくなり、前記携帯ストリーミング機器の寿命を長くすることにもつながる。
【図面の簡単な説明】
【００３３】
【図１】本発明の一つの実施形態においてメモリを扱う原理の概略図である。
【図２】本発明のある側面に基づく方法を図解するフローチャートである。
【図３】本発明の別の側面に基づく携帯ストリーミング機器を図解する図である。
【図４】本発明のさらに別の側面に基づく機械可読媒体を示す図である。
【図１】
2006510979.tif 000003
【図２】
2006510979.tif 000004
【図３】
2006510979.tif 000005
【図４】
2006510979.tif 000006
【国際調査報告】
2006510979.tif 000007
2006510979.tif 000008
2006510979.tif 000009