4 ms·
It had junction points and hard links but symbolic links were added in Vista/Server 2008.
by jborean93 1y ago
It had junction points and hard links but symbolic links were added in Vista/Server 2008.
- chasil 1y agoThis seems odd, as there was a POSIX layer in Windows from the beginning, and I can't see how it could do without symbolic links. https://en.wikipedia.org/wiki/Microsoft_POSIX_subsystem https://en.wikipedia.org/wiki/Microsoft_POSIX_subsystem
- jborean93 1y agoNo idea if the POSIX subsystem used NTFS or some other filesystem but if it was NTFS it probably just used the same reparse data buffer. It's just that Windows only added a symlink buffer structure in Vista/2008. You can manually use the same data buffer in older Windows versions it just won't know what to do with them just like all the other reparse data structures.
- chasil 1y agoSo the "reparse data buffer" would be able to implement symlink() as a POSIX system call? https://pubs.opengroup.org/onlinepubs/009695299/functions/symlink.html https://pubs.opengroup.org/onlinepubs/009695299/functions/sy...
- jborean93 1y agoThe subsystem in question would be the one to handle the logic for the syscall. So the POSIX subsystem would use the reparse data buffer as needed. It's just that the Win32 subsystem added its own symlink one in Vista/2008. This is all a guess, the POSIX subsystems were a bit before my time and I've never actually used them. I just know how symlinks work on Windows/NTFS and when they were added.