WinFS (pour Windows Future Storage(en)[1]) est une extension annulée puis redéveloppée du système de fichierNTFS, ou plus exactement une nouvelle procédure d’accès aux fichiers dont le support NTFS sous-jacent serait resté en place, dans les coulisses de Windows.
Historique et but
Dans le passé, lors de l’apparition de disques durs de grande capacité, il est d’un constat courant qu’à partir de la centaine de fichiers, on doit considérer impossible de gérer tous ces noms dans un espace unique. C’est pourquoi, les informaticiens ont inventé le système de fichiers hiérarchique, utilisé par la plupart des systèmes d’exploitation comme Unix puis DOS. Ainsi, tous les fichiers sont accessibles via leur chemin d’accès (ou adresse), et non simplement via leur nom.
Plusieurs répertoires signifie que les fichiers ne sont plus accessibles en tout temps par leur nom, ce qui se révéla peu pratique. On a donc proposé plusieurs palliatifs, par exemple :
compléter les noms d'un suffixe indiquant à la fois le type du contenu associé et le type de traitement suggéré (Datapoint TRW 2200, 1975) ;
chercher un exécutable que dans les répertoires connus déclarés comme en contenant (PATH, notion venant d’UNIX), pour singer une commande interne ;
chaque application cherche ses fichiers propres dans un répertoire qu’elle a créé à cet effet (par exemple ALDUS).
Lorsque l’on commença à atteindre les 40 000 fichiers, un autre problème se posa : comment gérer les fichiers efficacement en matière d’ergonomie : les utilisateurs se perdaient en effet dans le foisonnement des répertoires et sous-répertoires[réf. souhaitée]. Le problème déjà bien connu du temps de UNIX[réf. souhaitée]. Il existe beaucoup de fichiers SETUP.EXE ou README.TXT, ce problème est appelé multiples synonymies. Un fichier ne pouvait de ce fait être déplacé automatiquement sans risquer de perdre sa signification en perdant son contexte.
IBM s’était occupé de cette question dès les années 1970 avec son projet FS, prévu pour remplacer l’architecture antérieure. Ce projet a été abandonné en 1975, mais a eu pour retombée vers 1979 le System 38(en), puis l’AS/400 : sa solution consistait à ne plus avoir pour l’utilisateur de hiérarchie de répertoires, mais une base de données relationnelle des fichiers. Justement les brevets IBM[réf. nécessaire], qui couvraient pour 20 ans sa propriété du procédé, étaient sur le point de tomber dans le domaine public.
Le but de WinFS est d’adopter la même solution, et de rendre à son tour l’usage des fichiers plus intuitif et plus simple pour l’utilisateur.
Pour l’instant, la majorité des systèmes de fichier sont organisés sous forme d’arborescence. WinFS, avec l’aide de métadonnées, permettrait à l’utilisateur d’effectuer la recherche d’un fichier non pas en fonction de son nom ou/et de sa place dans l’arborescence, mais en fonction de son contenu. À partir de là, si l’on recherche un document parlant de la planète Mars, il suffira juste de taper dans une interface de recherche (similaire à celle de Google, par exemple) ce que l’on en connaît (nom, contenu texte, type du fichier, métadonnées), et le système de gestion de fichiers fera le reste. Les noms seront à nouveau apparemment dans un espace unique, l’utilisateur n’étant pas dérangé avec le détail de l’organisation hiérarchique qui ne lui apparaîtra plus. Bien que plus onéreuse en ressources machine (ce qui pose d’ailleurs peu de problème avec des machines modernes), cette approche se solderait par un gain de productivité pour l’utilisateur[réf. nécessaire].
Alors qu'une version bêta 2 était prévue pour , Microsoft a annulé WinFS le , à la surprise générale. Quentin Clark, développeur en chef, écrit sur son blog que le code sera utilisé dans la prochaine version de SQL Server et d’ADO.NET.[réf. souhaitée]
Finalement, le projet WinFS, toujours en développement aux dernières nouvelles, sera peut-être repris dans une future version de Windows, bien que Windows 10 ne montre aucun signe de WinFS.
Innovation
Comme service de fichiers
WinFS n’est pas une innovation de la part de Microsoft. Le principe d’associer des métadonnées aux fichiers avait déjà été utilisé par le System 38(en), l’OS/400, OS/2 (auquel avait participé d’ailleurs Microsoft), et BFS, le système de fichiers de BeOS. Le système d’exploitation Pick comprenait également en standard une base de données relationnelle intégrée au système.
La version 4 du système de fichiers ReiserFS utilise également des métadonnées. En fait, l’Ext2 de Rémy Card en utilisait lui-même aussi, bien que se limitant à quelques bits de méta-attributs (commande chattr de Linux).
La disponibilité de WinFS comme nouveau système de fichiers de Windows Vista est repoussée plusieurs fois avant d’être annulée en . Certaines technologies développées sont elles, conservées et intégrées dans d’autres produits de Microsoft comme SQL Server 2008, ADO.NET Entity Framework[2].