Live data from Hacker News

Why is the DOS path character "\"? (2005)

web.archive.org

111–120 of 166 posts

Re: Why is the DOS path character "\"? (2005)

#111

Earlier quoted context omitted.

What special about NT kernel that's not in linux kernel ?

* It is (with a lot of ifs and buts) a microkernel * it is optimized for integration with third party software from people who don’t have the source, so for instance the driver model is interesting * the built in configuration system (the registry) and how it’s used throughout * the (underused) personalities system you can use to show different apis to different binaries * the security model is much more interesting,…

The architecture is really quite interesting, even though Microsoft didn’t make a lot of use of a large part of it.

Sadly, that usually means it’s bugged as hell and impossible to use unless you’ve been trained for many years at ms to do that.

Re: Why is the DOS path character "\"? (2005)

#112
The person that made this decision was the author of the original DOS - Al (Allan) Alcorn. I had a conversation with him nearly 2 decades ago about this very subject. I remarked to him how using the "opposite slash" caused grief for untold numbers of developers. His reply was "yeah, I know. It was a poor decision, and I remember it clearly. I was trying to make DOS a bit unique, and that was all. It was stupid, in retrospect." From the author's mouth.

Re: Why is the DOS path character "\"? (2005)

#113
post #102

Earlier quoted context omitted.

Linux User IDs since decades are 32 bit integers; you can just use some mapping system to allocate them automatically and you’ll never run out. The limitation is that there is one user ID, 0 which can do everything and all the other IDs can do almost nothing. This has nothing to do with domains and everything with the distinction you describe between the Windows Administrator, local system or even more powerful trust…

Compared to Windows SIDs, Linux's 32-bit uid is a "smallish integer"

Yes and no. Bear in mind, a large part of a Windows SID is a namespace - the actual id within that namespace is so far without exception under 32-bits. An entire Active Directory domain (read: single domain, not forest) is actually limited to 2^30 RID's being issued - after which no new accounts (including computer accounts) can be created, period. You can technically unlock an extra bit and issue 2^31 RID's starting with WS2012, but compatibility is a potential issue and MS's documentation says you should only use it while planning a migration to a new domain (and for good reason).

This does technically give Windows some advantage here as SID's are namespaced - you can have multiple domains in a forest, domain trusts, etc - but I don't think as far as realistic number of users accessing a network it makes much of a difference.

Where it does suck on Linux, however, is user namespaces. 32-bits is a lot when it comes to just giving out accounts, but it's nowhere near enough to give every user a 16-bit chunk of accounts for mapping the traditional 0-65535 (because nobody) ranges for use with unprivileged user namespaces. I'd really like to see a push for 64-bit uid/gid's for this reason.

Re: Why is the DOS path character "\"? (2005)

#114

Personally I find unix or whatever OS chose / as the bad choice. / is a commonly used character, at least in the USA as dates. It would completely normal for someone to want to name a file "Meeting 12/20/1980.txt" or "Budget Sep/12/1985.doc" Backslash has no common use I know of outside of computer related stuff like regular expressions and escaping things. Some of you might also have forgotten but on Mac pre OS-X, a…

My son used to use \ for dates when he was learning to write; to the point I wondered if he was somewhere above 0 on the dyslexia scale. He's 20 now, and I think has grown out of it.

Re: Why is the DOS path character "\"? (2005)

#115
post #102

Earlier quoted context omitted.

Linux User IDs since decades are 32 bit integers; you can just use some mapping system to allocate them automatically and you’ll never run out. The limitation is that there is one user ID, 0 which can do everything and all the other IDs can do almost nothing. This has nothing to do with domains and everything with the distinction you describe between the Windows Administrator, local system or even more powerful trust…

Compared to Windows SIDs, Linux's 32-bit uid is a "smallish integer"

And yet in practice the only problem with them is when mapping Windows SID is needed. Otherwise, they are fine.

Also, Windows SIDs are fixed-size 128 bit. They were supposed to be GUIDs, but they are not that random; user SIDs contain common prefix from the domain SID.

Re: Why is the DOS path character "\"? (2005)

#116

Personally I find unix or whatever OS chose / as the bad choice. / is a commonly used character, at least in the USA as dates. It would completely normal for someone to want to name a file "Meeting 12/20/1980.txt" or "Budget Sep/12/1985.doc" Backslash has no common use I know of outside of computer related stuff like regular expressions and escaping things. Some of you might also have forgotten but on Mac pre OS-X, a…

RM/COS used . as a path separator. I think this is from OS/360. It makes sense to me in that member selection in C also uses '.'.

Yeah, from the OS/360 wiki: "The file naming system allows files to be managed as hierarchies with at most 8 character names at each level, e.g. PROJECT.USER.FILENAME. This is tied to the implementation of the system catalog (SYSCTLG) and Control Volumes (CVOLs), which used records with 8 byte keys."

Re: Why is the DOS path character "\"? (2005)

#117
post #73

Earlier quoted context omitted.

I don't have an answer but it's exactly the same phenomenon as when people refer to '#' as a hash-tag.

Exactly. Everyone knows it's an octothorp.

i've just started calling it "shift 3". that seems to be the least confusing way to communicate the character haha

Re: Why is the DOS path character "\"? (2005)

#118

The person that made this decision was the author of the original DOS - Al (Allan) Alcorn. I had a conversation with him nearly 2 decades ago about this very subject. I remarked to him how using the "opposite slash" caused grief for untold numbers of developers. His reply was "yeah, I know. It was a poor decision, and I remember it clearly. I was trying to make DOS a bit unique, and that was all. It was stupid, in re…

Funny, i've always imagined it was chosen only because it wasn't a regular slash like other systems. I never mentioned it though because i figured I was wrong.

Re: Why is the DOS path character "\"? (2005)

#119
post #17

Earlier quoted context omitted.

IOCP! https://en.wikipedia.org/wiki/Input/output_completion_port

Almost every time I talked to pseudo nt gurus, IOCP was mentioned as something nt did and linux don't. Now, io_uring seems to have finally closed the gap.

io_uring is more like RIO, which is better than IOCP if your packet rates are high.

Re: Why is the DOS path character "\"? (2005)

#120
post #109
post #73

Earlier quoted context omitted.

I don't have an answer but it's exactly the same phenomenon as when people refer to '#' as a hash-tag.

Or you can raise musicians' blood pressure by calling it a sharp-sign.

Only recently did I find out those aren't the same character. Then again, I'm very tolerant to character substitutions; "Bb" doesn't bother me either. My pen when I'm marking sheet music doesn't know the difference.
Post reply on HN