コンピューティングにおいて、システム リソース(または単にリソース) とは、コンピューターからアクセスできる、可用性が制限された物理コンポーネントまたは仮想コンポーネントのことです。接続されているすべてのデバイスと内部システム コンポーネントはリソースです。仮想システム リソースには、ファイル(具体的にはファイル ハンドル)、ネットワーク接続 (具体的にはネットワーク ソケット)、およびメモリ領域が含まれます。
リソースを管理することをリソース管理と呼び、リソース リークの防止(プロセスがリソースの使用を終了したときにリソースを解放しない) とリソース競合の対処(複数のプロセスが限られたリソースにアクセスしようとする場合) の両方が含まれます。クラウド コンピューティングでは、コンピューティング リソースを使用してネットワーク経由でサービスが提供されます。
主なリソースの種類
- 割り込み要求(IRQ) ライン
- ダイレクトメモリアクセス(DMA) チャネル
- ポートマップI/O
- メモリマップI/O
- ロック
- 外部デバイス
- 外部メモリまたはオブジェクト(Java のネイティブ コードで管理されるメモリなど)や、JavaScriptのドキュメント オブジェクト モデル(DOM)内のオブジェクトなど)
一般的なリソース
- CPU、単一CPUでの時間および複数CPUの使用 –マルチタスクを参照
- ランダムアクセスメモリと仮想メモリ–メモリ管理を参照
- ハードディスクドライブには、一般的にスペース、連続した空きスペース(スワップスペースなど)、複数の物理デバイス(「スピンドル」)の使用が含まれます。複数のデバイスを使用すると並列処理が可能になります。
- CPU キャッシュと MMU キャッシュ (変換ルックアサイド バッファ)を含むキャッシュ空間
- ネットワークスループット
- 電力
- 入出力操作
- ランダム性
カテゴリー
一部のリソース、特にメモリとストレージ スペースには「場所」という概念があり、連続した割り当てと連続していない割り当てを区別できます。たとえば、1 GB のメモリを 1 つのブロックに割り当てる場合と、1 MB のサイズのブロック 1,024 個に割り当てる場合です。後者は断片化と呼ばれ、パフォーマンスに重大な影響を与えることが多いため、連続した空き領域はストレージ スペースという一般的なリソースのサブカテゴリです。
圧縮可能なリソースと圧縮不可能なリソースを区別することもできます。[1]圧縮可能なリソース、一般的には CPU やネットワーク帯域幅などのスループット リソースは、無害にスロットリングできます。つまり、スロットリングに比例してユーザーの処理速度が低下しますが、それ以外は通常どおりに処理が進みます。その他のリソース、一般的にはメモリなどのストレージ リソースは、障害 (プロセスが十分なメモリを割り当てられない場合、通常は実行できない) や、スラッシング(ワーキング セットがメモリに収まらず、頻繁にページングが必要な場合、処理速度が大幅に低下する) などによる重大なパフォーマンス低下を引き起こすことなくスロットリングすることはできません。この区別は常に明確であるとは限りません。前述のように、ページング システムではメイン メモリ (プライマリ ストレージ) を圧縮できます (ハード ドライブ (セカンダリ ストレージ) へのページングによって)。また、一部のシステムではキャッシュ用に破棄可能なメモリを許可しており、これはパフォーマンスに壊滅的な影響を与えることなく圧縮できます。電力はある程度圧縮可能です。電力がないと(または十分な電圧がないと)、電気機器は動作できず、停止するかクラッシュしますが、一部の機器、特に携帯電話では、消費電力を抑えて機能低下を防いだり、機器を一時停止させても終了させず、消費電力を大幅に削減したりできます。
参照
参考文献
- ^ Kubernetes リソース モデル: 「CPU やネットワーク帯域幅などの一部のリソースは圧縮可能であるため、その使用量は比較的無害な方法で制限される可能性があります。」
