Wenn Leute sagen "In Unix ist alles eine Datei", meinen sie, dass auch Dinge, die keine Dateien sind, als Dateien behandelt werden.
Natürlich arbeiten die meisten Betriebssysteme mit Dateien. Textdateien, Bilddateien, Audiodateien. Aber nicht alle Betriebssysteme behandeln Geräte als Dateien. Das ist ein wichtiger Unterschied. Wenn ich den Inhalt meines / dev / -Ordners in meinem Ubuntu-Betriebssystem (das auf Unix basiert) aufführe, erhalte ich eine Liste mit mehr als 200 Geräten. Einige dieser Geräte sind Hardware-Geräte, werden jedoch in einem Ordner angezeigt. Beispielsweise Festplatten, USB-Anschlüsse, Maus und Tastatur, Audiogeräte und Drucker. Einige der Geräte sind virtuell, zum Beispiel / dev / urandom, das sich wie eine unendliche Datei voller Zufallszahlen verhält. Es ist keine echte Datei auf meiner Festplatte.
Alle diese Geräte werden als Dateien behandelt. Ich kann Daten von diesen Geräten lesen und / oder darauf schreiben. Hier finden Sie Beispiele für das Kopieren von Daten von verschiedenen Geräten in das Audiogerät. Dies ist möglich, weil sie als Dateien behandelt werden. Das (geeky) Ergebnis ist die Fähigkeit , zu hören , um den Inhalt von der Festplatte, der Maus - Bewegung, dem Computerspeicher oder den Pixeln eines Bildes. Dies wäre viel schwieriger zu erreichen, wenn Geräte nicht als Dateien behandelt würden, da für jedes Gerät unterschiedliche Methoden zum Lesen und Schreiben von Daten erforderlich wären.
Was "alles" bedeutet, ist jedoch von System zu System unterschiedlich. Beispielsweise basiert OS X auf Unix, verfügt jedoch nicht über ein / dev / audio-Gerät. Es verwendet ein proprietäres Audiosystem namens CoreAudio. In diesem Fall könnte man also sagen "fast alles ist eine Datei". In Systemen wie Windows, in denen "Alles ist keine Datei" ist, können Sie weiterhin den Inhalt einer Datei auf den Druckeranschluss kopieren (z. B. eingeben copy mydocument.txt >lpt1:
). Dies ähnelt dem Kopieren eines Dokuments auf das Druckergerät in Unix systeme.
Arbeiten andere Betriebssysteme wie Windows und OS X nicht mit Dateien? Ja, das tun sie. Windows und OS X verarbeiten Dateien, aber Windows behandelt Geräte nicht als Dateien. Dies ist Teil der Bedeutung von "Alles ist eine Datei".