Modern Windows kernels
Might be vastly different to DOS... but they too are steeped in legacy chains that hark back to DOS days.
• Volume letters rather than a single root partition mounted at / (Windows CE is an exception here) so you can only have 26 volumes mounted at a time.
• They still use the backslash in file paths, whereas everyone else these days uses /. (Ever tried typing those in C?)
• By default, all users are made Administrators (a hangover from the fact that DOS had no concept of users).
• Applications come with their own installers, rather than the unified approach used by Linux/BSD distributions (Yes, there are competing package managers, but take a single distribution, you'll find it uses one or two *compatible* package managers.)
• File system is case insensitive (Mac OS X is too, but you can also opt to have a case sensitive file system.)
Some of this might sound petty... the \ vs / thing trips up a lot of people though ... I often see people using \ in URLs for example. Drive letters may be seen as "easy to use", but really...
/mnt/usb (most Linux distributions)
/Volumes/USB Drive (MacOS X)
\Flash Disk (Windows CE)
F: (DOS/Windows NT)
Which one is definitely a USB flash disk? What if the third system had a few HDD partitions mounted? It's definitely a headache for programmers having to concern themselves with what drive letter they're on.
Case sensitivity also catches people out ... there's some documentation I've got for a system in HTML format which I need to refer to. It was written on a Windows computer. Unfortunately, the person writing it didn't stay consistent with his file naming, and thus some files are broken links for no other reason, than they spelled the link in lower case but the file in Title Case.
These are all legacy things that came from DOS.
I still wonder to this day, what Windows would look like if Microsoft had based the OS they developed for IBM on Xenix instead of QDOS.