2016-09-08 5 views
-4

初めて学んだときにはと書かれていましたが、ほとんどの場合、はLinuxのファイルです。今朝、私はそれを私のガールフレンドに繰り返しました。彼女は何が尋ねなかったのですか?私は半日の例を見つけようとしました。Linuxのファイルではない

私の質問はLinuxのファイルではないのですか?

+0

まず、ファイルの定義をここで行うことができます。関連:https://en.wikipedia.org/wiki/Everything_is_a_file。 – Evert

+0

プロセスはファイルではありません。 – lapk

+1

アクセス許可はファイルではありません。 – Evert

答えて

1

ほぼ。 Posixのほとんどはファイルの記述子で処理されます。つまり、ファイル操作に使用されるのと同じ機能がパイプ、ソケット、およびハードウェアデバイスにも適用されます。これは、select(またはより良い選択肢の1つ)を使用すると、可能なすべての入力を待つプログラム内の1つのポイントを持つことができるということも意味します。

これまで述べてきたように、Posixや特にLinuxでは、明らかにファイルではありません。

最も明白なものはシグナルです。これらはプログラムの実行とは非同期に処理されるため、ファイルインタフェースを使用することはできません。この目的のために、pselectとその優れた選択肢の1つが発明されました。

ファイルはスレッド同期構造(ミューテックス、セマフォなど)よりも微妙なことはありません。ファイルディスクリプタとして利用できるようにしようとする試みがいくつか行われています(signalfdeventfdを参照)。私は、これが大部分の場合、それを扱う慣習的な方法とは大きく異なるパフォーマンスプロファイルを持つためだと考えています。

0

たとえば、コンピュータハードウェア(CPU、RAMなど)は実際にはファイルではありませんが、linuxではファイルとして表されます。

More details here

関連する問題