cp
、ls
およびchmod
その他のコマンドをpwd
「ユーティリティ」と呼びます。 「アプリケーション」というものを定義できないようです。
定義をより正確にするためにGUIを捨てましょう。
答え1
私の考えでは、ウィキペディアのテーマのタイトルは「実用的なソフトウェア「じゃあ:
ユーティリティソフトウェアは、多くの場合、コンピュータインフラストラクチャ(次を含む)に焦点を当てています。コンピュータハードウェア、オペレーティングシステム、アプリケーションソフトウェアそしてデータ保存)実行。これらの焦点のために、ユーティリティはしばしば非常に技術的で高度なコンピュータ知識を持つ人々を対象としています。アプリケーションソフトウェアこれにより、ユーザーはテキスト文書の作成、ビデオゲームの再生、音楽のリスニング、Webサイトの表示などのタスクを実行できます。
答え2
厳密に言えば、Unixユーティリティ移植可能なシェルスクリプトに使用できる明確に定義された一連のコマンドです。POSIXで指定。
この用語は、UnixおよびLinuxシステムで依然として一般的に使用されている非標準のCLIコマンド(たとえば、他のless
多くemacs
のコマンドperl
などzip
)を含めるために緩やかに使用されます。
アプリケーションは、ユーザー空間で実行され、エンドユーザーと対話するほとんどすべてです。これには、カーネルやデバイスドライバなど、カーネルに密接に関連するものはすべて除外されます。デーモン、システムサービス、およびユーティリティは、状況によっては除外されたり除外されたりすることはありません。
ここで、POSIXは、移植可能なアプリケーション、つまりISO Cで書かれたプログラムが何であるかを再定義して説明します。さまざまなレベルの一貫性彼らは従うことが許された。もちろん、非準拠アプリケーションは、所望のプログラミング言語と移植不可能な機能を使用することができる。
それにもかかわらず、アプリケーションはAPI(アプリケーションプログラミングインターフェース)。
「アプリケーション」は、「オペレーティングシステム」、「データ」などと共に、ディスクに保存されているコンテンツを分類して整理するために使用される用語の1つでもあります。たとえば、オペレーティングシステムはデータを消費し、/dev
データは/usr
バンドルされていないアプリケーションに保存されます。/etc
/var
/opt
答え3
Unixのユーティリティは、コマンドパイプラインまたはスクリプト内でうまく機能するように設計されています。彼らはミッションの実行中に高度な相互作用を期待しません。
アプリケーションは、ジョブやファイル(または複数の項目)を対話的に操作したり、プロジェクト/ワークスペース全体を1単位で保存/ロードしたりできるワークスペースまたはプロジェクトの概念を提供することがよくあります。たとえば、Audacityを使用すると、複数のオーディオクリップを単一のプロジェクトに保存できます。 LMMSは別の例です。 LMMSの「プロジェクト」には、音楽データだけでなく、サンプルや楽器の設定なども含まれます。
cp
同じユーティリティや、他の多くのls
オプションと機能を持つconvert
ユーティリティはavconv
、ファイル/ディレクトリをインポートして処理し、新しいファイルを作成し、別の出力を生成するか、追加の入力なしで既存の単一のファイル/ディレクトリ操作に対して操作を実行します。ユーティリティは通常、ファイルまたは標準入力を入力として使用し、それに対していくつかの操作を実行してから完了します。
答え4
ウィキペディアの比較アプリケーションソフトウェアそしてシステムソフトウェア。後者の:
ハードウェアなどへのアクセスを提供し、アプリケーションソフトウェアのプラットフォームを提供します。
最も一般的なコマンドラインユーティリティなど、システム固有の操作を実行します。ただし、多くのコマンドラインプログラムは実際にはアプリケーションです(例:
wget
、、、make
)ssh
。
アプリケーションソフトウェアは、(理論的には)すべてのオペレーティングシステムで同じ方法で実行できるものと考えることができます。しかし、ここには少し曖昧さがあります。たとえば、tree
アプリケーションかユーティリティですか?これらの区別は、使用や実装に影響を与えない抽象的であるため、すべてがどのように分類されるかは重要ではありません。