![「軽量」とは何ですか? [閉鎖]](https://linux33.com/image/44262/%E3%80%8C%E8%BB%BD%E9%87%8F%E3%80%8D%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F%20%5B%E9%96%89%E9%8E%96%5D.png)
「軽量」という用語の技術的定義はありますか?それとも、少なくともいくつかの基本概念がありますか?
ただ「コンピュータリソースをあまり消費しない」ランダムなのでしょうか?
それとも、「アプリケーションは新しいプロセスを分岐しません」(シングルプロセスまたはスレッドのみ)ですか?
技術的な定義がなければ、軽いかどうかについての最良の経験則を提示する答えを受け入れます。
答え1
良い定義は、「これを古いコンピュータで使用しようとするとスムーズに動作します」と思います。
たとえば、Pentium II システムは今はあまりにも古いので、一部の人々は軽量化に焦点を当てるのではなく、「しかし古いです」と言うかもしれませんが、問題はウィンドウマネージャがあるということです(そして以前はXFCEのような単純なDEかもしれません) )。もっと膨らみ始める)これはあなたのマシンでうまく機能します。彼らはとても軽いです。
Firefox、OTOHには、複数の開いたタブを保持するために数百メガバイトを必要とするメモリリークがあります。 Firefox 2がリリースされる前は、もはや軽くなかった。
「コンピュータリソースをあまり消費しないこと」も別の可能なベンチマークです。この古いシステムのベンチマークメモリはしばしば最大の問題です。 LibreOfficeなどのプログラムは遅くない場合でも、より多くのメモリが必要です(例:UNIXテキストエディタ)。Emacs
、vi
またはnano
Butterflyまたは同様のもの)。
それでも、CPU使用率やディスクアクセスは考慮すべきもう1つの問題かもしれません。私は新しいGTKファイルセレクタが好きではありません。ユーザーインターフェースの再設計また、古いコンピュータを使用するときに変更の1つが単にドラッグできないファイルスニッフィング機能を導入したという事実にも気づいたからです。これにより、一部のGTK +アプリケーションがファイルセレクタを開くたびに、特に複数のファイルがあるディレクトリで長い遅延が発生する可能性があります。 lsを実行するか、QTファイルセレクタを使用するのは迅速で簡単です。 Firefoxには独自のファイルセレクタもあります。ただし、たとえばGTK +ファイルセレクタを持つFirefoxでは、/ usr / binを開くようにバイナリファイルを要求するメッセージが表示され、処理に数秒かかります。その時点から、GTK+ファイルセレクタが軽くないと言えそうです。このスニッフィングは非常に集中的であるため、軽いツールキットを使用するとこのスニッフィングをオフにできます。
「アプリケーションは新しいプロセスを分岐しません。」、「(単一プロセスまたはスレッドのみ)」:どのくらいかはわかりませんが、プロセスがスレッドより遅くなる可能性があります。はい。スレッド/マルチプロセスについて考えることをお勧めします(後者が前者より遅い場合でも) - 分岐したプログラムについて話さない限りたくさん(例えば、良い昔ながらのbash
フォーク爆弾のような)多くのリソースを使用しませんが、応答性を向上させることができます。起こり得る1つのことは、プログラムが反応性であれば軽量と見なされ、プログラムがバックグラウンドで数秒間ブロックされている場合、プログラムは軽量ではないということです。これを避けてください。 1つのアプローチは別々のスレッドを使用し、1つはUIを処理することです。もう1つは後ろからこれらのことを処理します。
軽量とは「必要な機能だけ備えた」という意味でもあります。たとえば、私はマウスやGUIを使用するのがあまり好きではないので、多数のボタンやコントロールを持つGUIプレーヤーではなくファイルで実行し、キーボードショートカットだけを使用してファイルを表示できるメディアプレーヤーを好みます。マウス。mplayer
GUIに比べて軽いとvlc
言えますcvlc
。最後に、メモリやCPUリソースがあまり必要ない場合でも、「画面スペースを節約」と考えると、依然として「軽量」と見なすことができます。
デスクトップ環境と比較して、多くのウィンドウマネージャは軽いと言えます。 DEはさまざまなタスクを実行するためのさまざまなアプリケーションとツールを提供しますが、WMはウィンドウのみを管理するためです(実際、DEはWMをコンポーネントとして使用します)。
特定のタスクを実行する小さなコマンドラインツールは、同じタスクを実行するために複数のメニューを提供するいくつかのGUIアプリケーションと比較して軽いです。特に、タスクが完了したときにコマンドを実行するためにメニューとオプションをナビゲートする必要がある場合は、これがさらに重要です。早く。 (ここでは偏見があるかもしれませんが、以前のコンピュータと同様に、これらのGUIツールは通常GUIのため遅いです。)
答え2
「軽量」の技術的な定義もなく、古いコンピュータのリソース消費やパフォーマンスの提案もなく、いかなる意味でも絶対的な、技術的な、または経験則ではありません。
しかし、これは非常に明確で具体的な意味を持つという意味ではありません。
軽量手段使用を検討できる他のものよりも軽い。
したがって、メモ帳はWordよりも軽いので、軽いテキストエディタです。 JSONはXMLよりも軽いため、軽量データ型です。ネットブックはPCよりも軽いので軽量PCです。
答え3
「スレッドは軽いプロセスです。」つまり、オーバーヘッドはあまりありません。
これが私の情報科学教授が使用した唯一の言葉です。
したがって、より一般的には、リソース消費が「通常」より低い場合は、「軽量」と見なすことができます。カーン彼の答えと同じ方向に行きます。
答え4
「軽量」は他のものと比較してのみ意味があります。スレッドはプロセスよりも軽いです。 XfceはGnomeよりも軽いです。子犬のLinuxはUbuntuよりも軽いです。
しかし、「軽量」とみなされるものに対する厳格で迅速なルールはありません。一般的に、軽いものは物事をあまり消費しませんが、「もの」はCPUリソース、メモリ、ディスク領域など多くのものかもしれません。