Drive letters in general are a legacy holdover from MS-DOS. The Windows NT kernel doesn’t use them. It is a user-space DLL that maps the kernel’s single tree into drive letters.
All other operating systems use a single tree with mount points instead. Windows supports mount points as well, but its default behavior is to assign a drive letter.
Drive letters are still useful, though, if you have multiple drives and
they’re removable drives (optical disc drives, USB drives, etc), or
they’re internal, but you want to keep them separate (i.e. not RAID).
Other platforms deal with this by reserving a subtree for mount points (/media on Linux, /Volumes on macOS), which is functionally equivalent to drive letters. This does have the advantage that mounted volumes are identified by a name rather than just a single letter, but on the other hand, the path to the mounted volume is longer and less convenient to type.
Drive letters in general are a legacy holdover from MS-DOS. The Windows NT kernel doesn’t use them. It is a user-space DLL that maps the kernel’s single tree into drive letters.
All other operating systems use a single tree with mount points instead. Windows supports mount points as well, but its default behavior is to assign a drive letter.
Drive letters are still useful, though, if you have multiple drives and
Other platforms deal with this by reserving a subtree for mount points (
/media
on Linux,/Volumes
on macOS), which is functionally equivalent to drive letters. This does have the advantage that mounted volumes are identified by a name rather than just a single letter, but on the other hand, the path to the mounted volume is longer and less convenient to type.