"The user manual contains some significant errors. Most of these are due to last minute changes to achieve a greater degree of compatibility with IBM's implementation of MS-DOS (PC DOS). This includes the use
of "\" instead of "/" as the path separator, and "/" instead of "-"
as the switch character."
it's always kind of interesting when you encounter a fossil trace of someone's Giant Mistake as it happened.
@brennen The weird thing about this is that "/" was the switch character on RT-11, which CP/M imitated (including using "/" as the switch character in PIP.COM), and MS-DOS 1.0 was a carbon copy of CP/M (though I don't remember if it had PIP).
I knew that directories were one of several features Microsoft added that were taken from UNIX, & that Microsoft's status as a UNIX vendor at the time was related, but I was unaware of any plan to make them actually binary-compatible! That would have been a very interesting system.
Was Xenix even using 16 bit words? Unix on micros usually had 18-bit words, right?
@ACE_Recliner @brennen @bhtooefr @kragen
Huh, that strikes me as odd. I was pretty sure that earlier PDP models than the one UNIX was developed on had 18 bit words, & it seems a little weird to change the word length to something without common factors. But, that was early days & maybe digital didn't care the way intel did.
I recall that, somehow, MINIX had 9-bit *bytes*. (At least, a friend who was porting MINIX to modern hardware said that & I don't think he was screwing with me.)
@firstname.lastname@example.org @email@example.com @firstname.lastname@example.org @email@example.com I think another factor was that bitslicing was easier to do with powers of 2, so minis ended up adopting it rather fast once they moved from transistors to MSI logic, along with the evolutionary pressures exerted by microprocessor design as well. But yes, if you're looking to answer questions like why a byte is universally 8 bits and stuff like that, answer is pretty much the System/360 without fail.
@firstname.lastname@example.org @email@example.com @firstname.lastname@example.org @email@example.com Supporting this as well, one of the first major bit-sliced computer designs (the Xerox Alto) used 16-bit words despite most of it's original technical backers coming from SDS and BCC which produced transistorized computers operating on 36 or 24 bit words
@ACE_Recliner @brennen @enkiv2 @bhtooefr The System/360 was certainly an influence, but I suspect that there was also an underlying logic: 6-bit bytes and word-addressable memories led to a lot of uncomfortable compromises in character-processing applications, and so machines designed to be good at character data processing needed byte-addressing and bytes of at least 7 bits. Nobody else adopted the 360's EBCDIC—though Univac used FIELDATA for a while, everyone else went ASCII.
@enkiv2 @ACE_Recliner @brennen @bhtooefr @kragen Unix was implemented on a PDP-7 and later ported to PDP-11. You might be thinking of TOPS-10 and TOPS-20, which were implemented for the PDP-10 and compatible family of computers.
That said, Unix is agnostic about word-length, except insofar as pointers are required to fit in a single word.
Apparently assumptions about byte & word length were all over the codebase & gave him lots of hassle.
I recall hearing about a working port a while back but I have no idea if it's the same one this guy was working on. He moved to finland suddenly & then later dropped off the grid.
@enkiv2 Oh! That makes more sense :)
@enkiv2 @ACE_Recliner @brennen @bhtooefr I think MINIX always had 8-bit bytes, but yes, the original "Unix" ran on the 18-bit PDP-7, from 1969 to 1970. Eventually PDP-7 Unix did do multitasking, but I don't think it ever got, for example, a hierarchical filesystem. https://www.bell-labs.com/usr/dmr/www/hist.pdf is pretty much the only source on this kind of thing.
And yeah, the PDP-7 and PDP-11 were unrelated instruction set architectures.
Server run by the main developers of the project It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!