4 ms·
Note that MS did implement this in DOS 2 as AVAILDEV. With AVAILDEV=FALSE special device files only existed in \DEV. They still existed on all drives but at lea
by xenadu02 5y ago
Note that MS did implement this in DOS 2 as AVAILDEV. With AVAILDEV=FALSE special device files only existed in \DEV. They still existed on all drives but at least they were constrained to a special device directory. With that setting the console was at \DEV\CON, first serial port at \DEV\COM1, and so forth.
I can only assume IBM pitched a fit and made MS remove it like they did with SWITCHAR.
If you didn't know about SWITCHAR it allowed you to change DOS to use Unix's "-" switch delimiter instead of "/". This is why DOS/Windows also accepted either "/" or "\" as path separators (and still do).
- gpvos 5y agoMentioned recently: https://news.ycombinator.com/item?id=26272844 https://news.ycombinator.com/item?id=26272844 I wonder why the blame is put on IBM; what problem did they have with this?
- WorldMaker 5y agoIBM had massive style guides put together by committees and based on things they'd done for decades before. Some of what they wanted out of the PC was as a poor man's mainframe to potentially get more sales of their mainframes. They wanted DOS to look like the solid, stable System/360 and OS/360 they sold (well, leased in most cases), not some weird upstart UNIX clone from IBM's competitors.
- pwdisswordfish8 5y agoWhich isn’t such a great design either. DEV is after all a perfectly legitimate directory name. It would have been even weirder to be able to have a file named AUX.H in any directory except C:\DEV. I wonder why didn’t they instead add a switch to bring back the requirement of a colon after the device name.
- zinekeller 5y ago> Which isn’t such a great design either. I'll guess that you didn't knew that DOS 1.x don't have any concept of directories. It's essentially a novo terra for DOS applications, and makes sense considering that Unix also standardised at /dev.
- pwdisswordfish8 5y agoI did know that. The point is that unlike Unix, MS-DOS had no FHS to go with its hierarchical file system, which would cleanly separate the namespaces of user files from device nodes. (The file system layout didn’t even start becoming standardised until the Windows 95 days.) One could fairly legitimately create a DEV directory in the root of the file system and expect to be able to keep their own files there, naming them arbitrarily. The edge case is now harder to hit, but it’s still basically the same mistake. DJGPP even has a FAQ item about a similar issue: <http://www.delorie.com/djgpp/v2faq/faq22_21.html http://www.delorie.com/djgpp/v2faq/faq22_21.html> (though that one is caused by DJGPP’s own Unix emulation layer)
- scruffyherder 5y agoThe same IBM that wouldn’t let them port Windows to run ON OS/2 or let them ship 80386 features like v86 mode support. Microsoft even had 1.0 betas of v86 multitasking on OS/2 in 87, but it only shipped in Windows/386.. and of course 386 flat mode in Xenix 386.