Windows XP et versions ultérieures prennent en charge les liens symboliques. Pourtant, Windows continue à utiliser des fichiers de raccourci (qui stockent essentiellement l'emplacement du fichier lié sous forme de texte). Pourquoi?
Un certain nombre de raisons, je suppose
Il y aura plus de raisons que cela, mais je pense que cela suffit pour vous lancer :) - Il y a un lien fourni par @grawity ici qui vous en donnera des lectures supplémentaires sur certaines parties de ce sujet.
Un lien symbolique n'est rien de plus qu'un chemin encapsulé dans une très petite quantité de magie du système de fichiers. Cela peut devenir invalide de plusieurs façons, la plupart impliquant un ou plusieurs fichiers ou répertoires renommés. Windows étant un logiciel grand public, il est possible qu'un grand nombre de programmes très mal conçus s'exécutent sur une installation "typique". En conséquence, ce type de casse est beaucoup plus difficile à éviter que sur un serveur où (en théorie) chaque programme qui touche le disque est une quantité connue.
Les raccourcis sont à l'abri de la plupart des bris car ils suivent leurs cibles indépendamment du chemin. Cela les rend plus conviviaux. Ils sont spécialement conçus pour les consommateurs, avec une approche "faites juste ce que je veux dire et ne me dérange pas sur les détails".
Vous pouvez maintenant utiliser des liens durs pour cela (dans une certaine mesure), mais ces liens ont un certain nombre de propriétés compliquées qui les rendent impropres à la consommation. En particulier, les fichiers reçoivent très facilement les nouveaux numéros d'inodes et certains logiciels de sauvegarde se cassent de manière assez spectaculaire lorsqu'ils sont confrontés à des liens physiques. Les premiers pourraient (peut-être) être résolus avec le tunneling du système de fichiers (qui est en fait comment les raccourcis résolvent un problème connexe), mais le second est un problème beaucoup plus dur .
(Je devrais aussi probablement noter que "résoudre" des liens physiques avec le tunneling est décidément non trivial puisqu'il ne s'agit pas simplement de rattacher des métadonnées "perdues". Les inodes sont liés dans le schéma d'allocation de disque, vous ne pouvez donc pas fusionner arbitrairement ou les réaffecter après coup sans un minimum de travail. Comme les raccourcis utilisent d’autres métadonnées qui peuvent être facilement tunnellisées, comme l’heure de la création, ils n’ont pas ce problème.)