Quand les gens disent "Sous Unix, tout est un fichier", cela veut dire que les choses qui ne sont pas des fichiers sont traitées comme des fichiers.
Bien sûr, la plupart des systèmes d'exploitation fonctionnent avec des fichiers. Fichiers texte, fichiers image, fichiers son. Mais tous les systèmes d'exploitation ne traitent pas les périphériques comme des fichiers. C'est une différence importante. Si je liste le contenu de mon dossier / dev / dans mon système d'exploitation Ubuntu (basé sur Unix), je reçois une liste de plus de 200 périphériques. Certains de ces périphériques sont matériels, mais apparaissent dans un dossier. Par exemple, les disques durs, les ports USB, la souris et le clavier, les périphériques audio et les imprimantes. Certains des périphériques sont virtuels, par exemple / dev / urandom, qui se comporte comme un fichier infini plein de nombres aléatoires. Ce n'est pas un vrai fichier sur mon disque dur.
Tous ces périphériques sont traités comme des fichiers. Je peux lire et / ou écrire des données dans ces appareils. Vous trouverez ici des exemples de copie de données de différents périphériques dans le périphérique audio. Cela est possible car ils sont traités comme des fichiers. Le résultat (geek) est la capacité d' écouter le contenu du disque dur, le mouvement de la souris, la mémoire de l'ordinateur ou les pixels d'une image. Cela serait beaucoup plus difficile à réaliser si les périphériques n'étaient pas traités comme des fichiers, car chaque périphérique nécessitait des méthodes différentes pour lire et écrire des données.
Cela étant dit, la signification de "tout" varie d'un système à l'autre. Par exemple, OS X est basé sur Unix, mais n’a pas de périphérique / dev / audio. Il utilise un système audio propriétaire appelé CoreAudio. Donc, dans ce cas, on pourrait dire "presque tout est un fichier". Ensuite, dans des systèmes tels que Windows, où "tout n'est pas un fichier", vous pouvez toujours faire des choses comme copier le contenu d'un fichier sur le port d'imprimante (en tapant quelque chose comme copy mydocument.txt >lpt1:
), ce qui revient à copier un document sur le périphérique d'impression sous Unix. systèmes.
Les autres systèmes d'exploitation tels que Windows et OS X ne fonctionnent-ils pas sur les fichiers? Oui ils le font. Windows et OS X fonctionnent sur des fichiers, mais Windows ne traite pas les périphériques comme des fichiers, ce qui fait partie de ce que "tout est un fichier" signifie.