On Fri, Dec 13, 2013 at 4:46 PM, Jeff Simmons <jsimm...@goblin.punk.net> wrote:
> On Friday, December 13, 2013 01:23:15 pm Ted Unangst wrote:
>> On Fri, Dec 13, 2013 at 12:33, Jeff Simmons wrote:
>> > "Nobody will ever need more than 640k RAM!" -- Bill Gates, 1981
>>
>> I realize this is often quoted in jest, but I've taken to setting the
>> record straight because I think the truth is more interesting than the
>> lie. People who don't know the real history are doomed to repeat it
>> without even realizing it.
>>
>> The 8088 CPU in the original PC, which was designed and built by IBM
>> before MS was involved, had a 20 bit physical address space. That's
>> one megabyte. So the most RAM the PC ever could have supported was
>> 1MB, not so very much more than 640KB. But then out of that 1MB you
>> have to carve out some space for things like the BIOS and the video card
>> (and sound card, and network, and ISA whatever). So the engineers at
>> IBM said that the top 384K of the address space would be wired up to
>> peripherals instead of RAM, leaving 640K. It's a hardware limitation,
>> not one of software. OpenBSD doesn't use that 384K either.
>>
>> And it's not a limitation that only happened once. If you stick 4GB of
>> RAM into your PC and boot OpenBSD i386, you'll see that you only get
>> about 3GB. Basically the same thing. Space has been reserved for
>> peripherals, so you don't get to use the RAM in that space. If you
>> boot amd64, you'll get to use it because the memory is remapped higher
>> up, above 4GB. (And if you bought a 80386 and booted 32-bit Windows,
>> you got to use the memory above 640K too).
>>
>> Nobody ever proclaims "3GB of RAM will be enough for everybody!"
>> -- random dude at Intel, but that's exactly what happened. The same
>> "mistake" was repeated. And then came the various workarounds like
>> PAE, just like there were workarounds like expanded memory in the DOS
>> days. For that matter, nobody ever says "80 bytes of memory will be
>> enough for everybody!" -- John Mauchly (ENIAC)
>>
>> There's a lesson in there about foreseeing future requirements, but
>> there's also a lesson that should be learned about real world products
>> being subject to real world constraints. You go to market with the CPU
>> architecture you have, not the CPU architecture you want. I'm reminded
>> of Bjarne Stroustrup's comment about there being languages people like
>> and languages people use.
>>
>> Sorry to spoil the fun.
>
> Not at all. Once upon a time, I made a lot of money using memory managers to
> cram stuff into that 384k, especially Novell Netware drivers. And I cut my
> teeth hacking PDPs in the early 1970s, so I'm fairly familiar with memory
> limits in early machines.
>
> And I still (especially given the context in which Mr. Gates said it) think
> it's funny.

More war stories:

- At Interactive Data Corp., with the technical people coming largely
from the MIT Lincoln Lab and IBM Cambridge, we ran a time-shared
stock-screening service on IBM 360/67s running CP/CMS. CP created
virtual 360s, accurate enough to run OS/360 (I'm not positive of this,
but CP may have been the earliest system to create virtual machines on
which you could run a full-blown OS, ala VMWare or QEMU). We ran this
service initially on a 360/67 with 256KB of memory (the memory unit
was the size of at least two refrigerators).

- I don't recall if anyone famous said it, but we certainly thought
that the 18-bits of (36-bit word) address space on the PDP-10 would be
enough for a very long time, maybe forever.

- There's an entertaining talk by Bob Kahn (I'll have to do a little
digging to find it), one of the key visionaries behind the Internet
(TCP/IP was originally called the Kahn-Cerf Protocol) about how they
thought 32-bit IP addresses would be fine for a very long time. Six
months later, Bob Metcalfe's little invention, Ethernet, became
public, and Kahn realized that their thinking about address space,
based on the handful of networks that existed when IP was designed,
was wrong. They bought time by defining network classes that carved up
the 32 bits in different ways, but they knew then, post-Ethernet, that
32 bits wasn't going to suffice.

>
> --
> Jeff Simmons                                           
> jsimm...@goblin.punk.net
> Simmons Consulting - Network Engineering, Administration, Security
> "You guys, I don't hear any noise.  Are you sure you're doing it right?"
>         --  My Life With The Thrill Kill Kult

Reply via email to