La conformité Posix est une norme suivie par de nombreuses entreprises. J'ai quelques questions dans ce domaine, 1. tous les systèmes de fichiers doivent-ils être conformes au posix? 2. Les applications doivent-elles également être conformes à Posix? 3. existe-t-il des systèmes de fichiers non posix?
Dans le domaine "nécessite la sémantique du système de fichiers POSIX", ce qui est généralement signifié est:
Parfois, cela signifie également la prise en charge des liens symboliques/hardlink ainsi que des noms de fichiers et des pointeurs de fichiers 32 bits (minimum). Dans certains cas, il est également utilisé pour référencer des fonctionnalités API spécifiques telles que fcntl()
verrouillage, mmap()
ou truncate()
ou AIO.
Lorsque je pense à la conformité POSIX pour les systèmes de fichiers distribués, j'utilise la norme générale selon laquelle un système de fichiers distribué est conforme POSIX si plusieurs processus s'exécutant sur différents nœuds voient le même comportement que s'ils s'exécutaient sur le même nœud à l'aide d'un système de fichiers local. Cela a essentiellement deux implications:
Bien que mes exemples aient été lus/écrits dans un seul fichier, le comportement correct inclut également l'écriture/écriture dans un seul fichier ainsi que la lecture/écriture et l'écriture/écriture dans l'espace de noms hiérarchique via des appels tels que stat/readdir/mkdir/unlink/etc .
Répondre à vos questions de manière très objective:
1. Tous les systèmes de fichiers doivent-ils être compatibles posix? En fait non. En fait, POSIX définit certaines normes pour les systèmes d'exploitation en général. Bon d'avoir, mais pas vraiment nécessaire.
2. Les applications doivent-elles également être conformes au posix? Non.
. y a-t-il des systèmes de fichiers non posix? HDFS (système de fichiers hadoop)