**已关闭。**此问题为not about programming or software development。目前不接受答案。
此问题似乎与a specific programming problem, a software algorithm, or software tools primarily used by programmers无关。如果您认为此问题与another Stack Exchange site相关,您可以留下评论,说明在何处可以找到此问题的答案。
3天前关闭。
Improve this question
我在Coursera上一门操作系统的课程
它提到,当在windows中创建文件时,一个条目被添加到主文件表中,快捷方式只是引用另一个目标的另一个文件(它在mft中有它的条目)
而符号链接只是文件系统级别的快捷方式,则它在mft中的条目指向另一个条目的名称
我对此有点困惑,无法真正理解symLink和快捷方式之间的区别,以及它们各自的确切功能
创建文本文件并为其创建快捷方式时,打开快捷方式时显示无法读取的文本,但使用符号链接时,快捷方式工作正常(文本可读)
我不理解这种行为
1条答案
按热度按时间ivqmmu1c1#
经典捷径(.lnk文件)是一种二进制文件格式。在那些日子里,只有Explorer/shell32.dll可以解析它,但格式是now documented。如果它是一个文件夹的快捷方式,Explorer将尝试导航到目标文件夹。如果目标是其他文件,它将只执行目标,基本上与双击目标文件相同。无论是NTFS文件系统驱动程序还是Windows内核都不知道.lnk文件或它们是如何工作的,它对它们来说只是一个普通的文件。
符号链接则相反。符号链接对大多数普通程序是透明的。符号链接是存储在磁盘上的文件,但这是NTFS实现细节。这些文件具有
FILE_ATTRIBUTE_REPARSE_POINT
属性集。当程序打开具有此属性集的文件或目录时,X1 E1 F1 X必须通过将请求重新路由到适当的驱动器来进行额外的工作,这种重新路由对普通应用程序是隐藏的,它们认为符号链接只是一个普通文件,对文件的阅读/写是在符号链接目标上透明地进行的。