Windows XP以降ではシンボリックリンクがサポートされていますが、Windowsは引き続きショートカットファイルを使用します(リンクされたファイルの場所をテキストとして保存します)。なぜですか?
いくつかの理由があると思います
これよりも多くの理由がありますが、それを始めるのに十分だと思います:)-@grawityによって提供されるリンクがあります こちら このトピックの一部についてさらに読む。
シンボリックリンクは、ごく少量のファイルシステムの魔法に包まれたパスにすぎません。無効になる(「壊れる」)可能性のある方法はいくつかありますが、そのほとんどは、1つ以上のファイルまたはディレクトリの名前が変更されることを伴います。 Windowsは消費者向けソフトウェアであるため、「標準的な」インストールで多数の非常に不十分に設計されたプログラムが実行されている場合があります。その結果、この種の破損は、ディスクに触れるすべてのプログラムが(理論上は)既知の量であるサーバーよりも回避するのがはるかに困難です。
ショートカットは ほとんどの破損に影響されない です。パスとは無関係にターゲットを追跡するためです。これにより、ユーザーが使いやすくなります。これらは特に「私が言っていることを実行し、詳細については気にしない」というアプローチで、消費者向けに特別に設計されています。
これで、ハードリンクを(ある程度)使用できますが、ハードリンクには多数の 複雑なプロパティ があり、ユーザーの使用には適していません。特に、ファイルが新しいiノード番号を取得するのは非常に簡単であり、一部のバックアップソフトウェアはハードリンクに直面すると、見事に壊れます。前者は(おそらく) ファイルシステムトンネリング で解決できます(実際、ショートカットが関連する問題を解決する方法です)が、後者ははるかに難しい問題です。
(また、トンネリングによるハードリンクの「解決」は、「失われた」メタデータを再接続するだけの問題ではないため、明らかに重要なことです。iノードはディスク割り当てスキームにバインドされているため、任意にマージすることはできません。または、かなりの労力を費やすことなく、事実の後でそれらを再割り当てします。ショートカットは、作成時間など、簡単にトンネルできる他のメタデータを使用するため、この問題はありません)。