liam_on_linux: (Default)
 A lot of history in computing is being lost. Stuff that was mainstream, common knowledge early in my career is largely forgotten now.

This includes simple knowledge about how to operate computers… which is I think why Linux desktops (e.g. GNOME and Pantheon) just throw stuff out: because their developers don’t know how this stuff works, or why it is that way, so they think it’s unimportant.

Some of these big companies have stuff they’ve forgotten about. They don’t know it’s historically important. They don’t know that it’s not related to any modern product. The version numbering of Windows was intentionally obscure.

Example: NT. First release of NT was, logically, 1.0. But it wasn’t called that. It was called 3.1. Why?

Casual apparent reason: well because mainstream Windows was version 3.1 so it was in parallel.

This is marketing. It’s not actually true.

Real reason: MS had a deal in place with Novell to include some handling of Novell Netware client drive mappings. Novell gave MS a little bit of Novell’s client source code, so that Novell shares looked like other network shares, meaning peer-to-peer file shares in Windows for Workgroups.

(Sound weird? It wasn’t. Parallel example: 16-bit Windows (i.e. 3.x) did not include TCP/IP or any form of dial-up networking stack. Just a terminal emulator for BBS use, no networking over modems. People used a 3rd party tool for this.

But Internet Explorer was supported on Windows 3.1x. So MS had to write its own alll-new dialup PPP stack and bundle it with 16-bit IE. Otherwise you could download the MS browser for the MS OS and it couldn’t connect and that would look very foolish.

The dialup stack only did dialup and could not work over a LAN connection. The LAN connection could not do PPP or SLIP over a serial connection. Totally separate stacks.

Well, the dominant server OS was Netware and again the stack was totally separate, with different drivers, different protocols, everything. So Windows couldn’t make or break Novell drive mappings, and the Novell tools couldn’t make or break MS network connections.

Thus the need for some sharing of intellectual property and code.)

Novell was, very reasonably, super wary of Microsoft. MS has a history of stealing code: DoubleSpace contained stolen STAC code; Video for Windows contained stolen Apple QuickTime code; etc. etc.

The agreement with Novell only covered “Windows 3.1”. That is why the second, finished, working edition of Windows for Workgroups, a big version with massive changes, was called… Windows for Workgroups 3.11.

And that’s why NT was also called 3.1. Because that way it fell under the Novell agreement.

Postscript

A decade ago I wrote about the decline and fall of Netware:
https://www.theregister.com/Print/2013/07/16/netware_4_anniversary/

But I didn't mention another pecularity of the Novell/MS uneasy relationship around the time of the launch of NT.

Novell did not really believe that a new MS
 OS had a chance. So, although MS kept asking, and provided Novell with betas, Novell did not write a Netware client for NT. 

So MS wrote its own. It reverse-engineered the protocol and embedded its own Netware client into NT. It was initially able to connect to Netware 3 servers, but later gained basic authentication-only support for Netware 4's NDS as well.

Novell backpedalled and hastily wrote a client. If I recall correctly – it's more than 30 years ago now – it shipped after NT 3.1 came out. So it was initally buggy and that meant it could crash the new crash-proof OS.

Meaning that they competed: admins, including me, had a choice. Run the functionally-limited but stable MS client, or the feature-rich Novell client that could destabilise your very expensive high-end workstations?

Worse was to come. Since they'd already reverse-engineered the client, MS implemented a server as well. NT could pretend to be a Netware server, and unmodified Netware client PCs (DOS, Windows 3, Windows for Workgroups, whatever) could connect to an NT box without changing the client. And as that was elaborate and involved a lot of memory optimisation, that helped.

The server emulation wasn't a deal-breaker, but it weakened the Novell position. But failing to write a client for what rapidly became a serious business workstation OS was a critical error and at that extremely risky time for Novell, it contributed to the company's fall.

liam_on_linux: (Default)
From a Quora answer.

Windows 10 is Windows NT version 10. Windows NT copied the patterns of MS-DOS, because DOS was the dominant OS when NT was launched in 1993.

DOS copies its disk assignment methods from Digital Research CP/M, because DOS started out as a copy of CP/M.
https://en.wikipedia.org/wiki/CP/M

What Microsoft bought was originally called QDOS, Quick and Dirty OS, from Seattle Computer Products.
https://en.wikipedia.org/wiki/Seattle_Computer_Products

The way IBM PC-compatibles assign disk drives is copied from the way the IBM PC running PC DOS assigned them. PC DOS is IBM’s brand of MS-DOS. See the answer about Apricot computers for how (some) non-IBM-compatible DOS computers assign drive letters.

The way that CP/M and MS-DOS originally assigned drive letters was simple.
The drive you booted from was the first, so it was called A. It doesn’t matter what kind of drive. But floppy drives were expensive and hard drives were very expensive, so in the late 1970s when this stuff was standardized, most machines only had a floppy drive or 2.

If you only had 1 drive, which was common, then the OS called it both A and B. This is so that you could copy files from one disk to another; otherwise there would be no way.

So, you copied from A: to a the virtual drive B: and the OS prompted you to swap disks as necessary.
Floppy drives got cheaper, and it became common to have 2. So, the one you booted from was A, and the second drive was B.

So far, so simple. If you were rich and added more floppy drives, you got A, B, C, D etc. and if you were lucky enough to have good firmware that let you boot from any of them, the one you booted off was A and the rest were simply enumerated.

It is common to read that "certain drive letters are reserved for floppies". This is wrong. Nothing was reserved for anything.

If you had a floppy and a hard disk, then if you booted off the floppy, the floppy drive was A and the hard disk was B. If you booted off the hard disk — and early hard disks were often not bootable — then the hard disk became A and the floppy became B.

You didn't need the virtual drive thing any more; to copy from one floppy to another, you copy from floppy to hard disk, then swap floppies, then copy back.

However, having drives change letter depending on which you booted from was confusing — again, see the Apricot comment — so later firmware started changing this. So, for instance, in the Amstrad PCW range, the last new CP/M computers made, Amstrad hard-wired the drive letters.
https://en.wikipedia.org/wiki/Amstrad_PCW

The first floppy was A. The second, if you had one, was B. And the rest of the machine's RAM aside from the 64 kB that CP/M used was made into a RAMdisk called drive M: "M" for Memory.

The IBM PC hard-wired some letters too. Floppy 1, A. Floppy 2, B, even if not there. Partition 1 on hard disk 1, C. Partition 1 on hard disk 2, D. Partitions 2+ on HD #1, E/F etc. Partitions 2+ on HD #2, G/H etc.

This was very common as up to and including MS-DOS 3.3, DOS only supported partitions of up to 32 MB. So, for instance, in 1989 I installed an IBM PS/2 Model 80 with a 330MB hard disk as a server running the DOS-based 3Com 3+Share NOS.
https://en.wikipedia.org/wiki/3%2BShare

It had hard disk partitions lettered C, D, E, F, G, H, I, J, K, L and M. (!)

DOS has a setting called LASTDRIVE. This tells it how many drive letters to reserve for assignment. Each takes some memory and you only had 640 kB to use, no matter how much was fitted. https://en.wikipedia.org/wiki/Conventional_memory

The default value for LASTDRIVE is E. Thus, the rival Novell Netware OS used the first drive after that as the "network drive" with the login command and so on: F.
https://en.wikipedia.org/wiki/NetWare

So, drive letters are not "reserved". They were originally assigned sequentially starting with the boot drive, and then by hardware ID number, and later by that and partition number, according to a slightly complex scheme that several people have linked to.

It is a convention that A was the first floppy and C was the first hard disk, and everything else was assigned at boot time.

July 2025

S M T W T F S
  1234 5
6789101112
13141516171819
20212223242526
2728293031  

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 10th, 2025 03:03 am
Powered by Dreamwidth Studios