Quando la gente dice "In Unix, tutto è un file", ciò significa che anche le cose che non sono file vengono trattate come file.
Naturalmente la maggior parte dei sistemi operativi funziona con i file. File di testo, file di immagine, file audio. Ma non tutti i sistemi operativi trattano i dispositivi come file. Questa è una differenza importante. Se elenco il contenuto della mia cartella / dev / nel mio sistema operativo Ubuntu (che è basato su Unix), ottengo un elenco di oltre 200 dispositivi. Alcuni di questi dispositivi sono hardware, ma sono mostrati all'interno di una cartella. Ad esempio dischi rigidi, porte USB, mouse e tastiera, dispositivi audio e stampanti, tra gli altri. Alcuni dei dispositivi sono virtuali, ad esempio / dev / urandom, che si comporta come un file infinito pieno di numeri casuali. Non è un vero file sul mio disco rigido.
Tutti questi dispositivi sono trattati come file. Riesco a leggere dati da e / o scrivere dati in quei dispositivi. Qui ci sono esempi di copia dei dati da diversi dispositivi nel dispositivo audio. Questo è possibile perché sono trattati come file. Il risultato (geek) è la capacità di ascoltare il contenuto del disco rigido, il movimento del mouse, la memoria del computer o i pixel di un'immagine. Ciò sarebbe molto più difficile da ottenere se i dispositivi non fossero trattati come file, poiché ciascun dispositivo richiederebbe metodi diversi per leggere e scrivere i dati.
Detto questo, ciò che significa "tutto" varia da sistema a sistema. Ad esempio, OS X è basato su Unix, ma non ha un dispositivo / dev / audio. Utilizza un sistema audio proprietario chiamato CoreAudio. Quindi in questo caso si potrebbe dire "quasi tutto è un file". Quindi, in sistemi come Windows, in cui "tutto non è un file", potresti comunque fare cose come copiare il contenuto di un file sulla porta della stampante (digitando qualcosa di simile copy mydocument.txt >lpt1:
), che è simile alla copia di un documento sul dispositivo della stampante in Unix sistemi.
Altri sistemi operativi come Windows e OS X non funzionano sui file? Si lo fanno. Windows e OS X funzionano su file, ma Windows non tratta i dispositivi come file, il che fa parte del significato di "tutto è un file".