Minor nit-pick: The PC came out in 1981 but the XT came out in 1983. But they both have 8088 chips running at 4.77 MHz. The main difference was that you could get it with a 10 MB hard drive, but my PC (not XT) had upgraded ROM BIOS chips (you had to change the actual chips because they were not flashable) from around 1984 and so it has a 20 MB Seagate hard drive. (Which still works.) The XT also drops the cassette port.<p>I recently got ahold of my PC from storage again and when I opened it up I was surprised that the floppy drive uses up one of the five 8-bit ISA slots, even though it has very few simple chips. (The XT has 8 slots.)<p>(Pic of the floppy controller. <a href="http://upload.wikimedia.org/wikipedia/commons/a/a6/IBM_PC_Original_5.25_Diskette_Drive_Adapter.jpg" rel="nofollow">http://upload.wikimedia.org/wikipedia/commons/a/a6/IBM_PC_Or...</a> )
Though multitasking and VMs on the AGC were a feat, that's not what amazes me. The IBM 360 demonstrated that both were possible at the time, and the AGC impressively did it on less hardware. What does amaze me is how long it took such things to come to the personal computer, and arguably how much DOS/early Windows held things back. Unix, with its multitasking, ran on PCs and Macs in the 80s, so we only waited 20 years after the 360 (and 15 after the AGC) for multitasking. But usable VMs didn't come (or at least weren't commonplace) until, what, mid-90s? 30 years after the 360, and 25 after the minimal AGC? What the heck took so long?
Well, I started coding on an 8 bit machine, 3.5 ~~GHz~~ MHz, up to total 64 kB of memory (static and dynamic together) - but keyword here is "up to", initially it was less than that. I had all the "OS" pretty clearly mapped out in my head, by address no less. My programs did contain sometimes jumps to physical addresses.<p>So I think I've some idea how the AGC operated.
For those interested in this subject, I highly recommend "The Apollo Guidance Computer: Architecture and Operation":<p><a href="http://www.amazon.com/The-Apollo-Guidance-Computer-Architecture/dp/1441908765/" rel="nofollow">http://www.amazon.com/The-Apollo-Guidance-Computer-Architect...</a><p>John Pultorak built a Block I AGC (think "version 1") and provides all of his work in the Public Domain here:<p><a href="http://klabs.org/history/build_agc/" rel="nofollow">http://klabs.org/history/build_agc/</a>
I think looking back at computer clock rates and memory is a silly endeavor. I remember a few months ago people commenting about "why we put a 2Mpx camera on the Curiosity Rover". The simple fact is, mission critical hardware/software is a different ball-game. You need reliability and fault tolerance.<p>If I was going to the moon today and had the choice of flight computers. Hands down, I would choose the Apollo 11 AGC over an iPhone A6 processor based system.
tl;dr - The Apollo 11 computer ran at 0.001GHz with 0.000002GB memory and 0.000032GB of storage (read-only at that). The display amounted to a few dozen 1-bit pixels.<p>And it took them to the Moon.
The AGC is quite a feat, but already from the digital age. I find the TDC's used during the WWII more fascinating. I wonder how the space age would look like with electromechanical computers :)<p><a href="http://en.wikipedia.org/wiki/Torpedo_Data_Computer" rel="nofollow">http://en.wikipedia.org/wiki/Torpedo_Data_Computer</a>
Far Travelers is an awesome book about satellites that you can read for free. Much more information than you'd care to know about, it's amazing.<p>"Another significant improvement included the addition of extra "brain power" to allow the orbiters to perform more complex functions. Viking orbiters possessed two 4096-word, general-purpose computers that could operate in parallel or tandem modes. These replaced the small special purpose computers contained in Mariners 8 and 9. The capability for more rapid picture taking allowed for better site surveys and special regional studies. This capability was augmented by tape recorder systems that could store 2.112 megabits per second, with a capacity of 55 TV pictures-over half a billion bits of information."<p><a href="http://history.nasa.gov/SP-480/ch12.htm" rel="nofollow">http://history.nasa.gov/SP-480/ch12.htm</a><p><a href="http://history.nasa.gov/SP-480/contents.htm" rel="nofollow">http://history.nasa.gov/SP-480/contents.htm</a>
As someone who spends his time writing in High Level languages (though I have done lower level stuff in the distant past) these kinds of embedded computers hold a real fascination for me.<p>On my long term list of things to-do is get back into electronics and learn Ada (mostly because it's a million miles away from PHP).
followed the links to the guy who built an AGC from scratch - <a href="http://klabs.org/history/build_agc/" rel="nofollow">http://klabs.org/history/build_agc/</a> - detailed technical info plus photos - amazing!
The comparison with an early PC is not imaginative.<p>Think of the original Sinclair ZX81 with 1K of RAM and 8K ROM. Swap out the Z80 for a 6502 to get approximately the same register count. Without a screen to worry about (it took up too much RAM + CPU time) and you could do a lot, e.g. 1K chess or, as the adverts said, run a nucular power station with it. You could also service I/O with hardware interrupts.
The details on the software and the in-flight patching in the Apollo 14 mission are quite amazing. Another point to make is that nowadays we have tremendous amount of computing power combined with comprehensive numerical analysis tools <i>on the planet</i> which allows engineers to perform thorough simulations for the stages of space/air/sea travel and the behavior of vehicles.
"(1/1000th of 1 MHz, much as 1 MHz is 1/1000 of 1 GHz)"<p>Half of 1 MHz is 500 KHz not 500 Hz ... it may sound slow but the PIC uCs we were using in the '90s were clocked at 20 MHz maximum and executed about 4 MIPS. For the 1960s, that computer really was rocket science!