Restoring YC's Xerox Alto day 9: tracing a crash through software and hardware
righto.com
righto.com
That said, you could iteratively design both the language code generator and the microcode to optimize for speed or code density or low interrupt latency, what ever. As a young engineer at Intel (my wife was an engineer at Xerox) I felt like that sort of architecture was 20 years ahead of its time, and eventually the nearly all hard coded instructions of microprocessors would be considered quaint. Watching these concepts come in and go out of favor several times, reading about the Alto feels like looking at the embryo of the future.
Seriously, though, this is by far the most interesting series of articles I've read in at least 10 years. Digging in and understanding equipment from decades ago, where everything is potentially questionable is a heroic effort. It's like all the good parts of Radio Electronics & Byte magazine combined. A mystery who-done-it for nerds.
My Acorn System 1 does fine with 1.125K
Seems a bit reckless to me.
PS: The articles have been a great read.
So the Alto and Acorn are in totally different worlds as far as memory. (Not to put down the Acorn.)
https://blogs.oracle.com/ksplice/entry/attack_of_the_cosmic_...
Last year I saw a talk [1] where the guy told the story of a bug on web application. It was a scheme->js (based on bigloo) framework. Many servers were involved only one had the bug, some exception, digging led an arithmetic issue (some NaN or oo), then to a floating point issue, many wrong theories about low level architectures. Turns out it was a locale problem, changing the libc parsing of float (, vs .). Who said text was easy ?
[1] was lucky and proud to grab a seat at C. Queinnec (of L.I.S.P) jubilee.
This is where using multiple debuggers simultaneously is extremely helpful. Where the control flow diverges is where the problem is likely to be. The other skill that's valuable is binary search --- narrowing down the "window" between when everything is still OK and when something goes amiss, gets you exactly where the bug is.
On that note, my laptop had developed this issue that it will no longer see the charger if i leave it plugged in across a sleep cycle.
Only way i have found to temporarily remedy this is to unplug the charger at the wall, wait, and eventually it will momentarily think it has been plugged in before going back to an unplugged state.
https://www.amazon.com/Code-Language-Computer-Hardware-Softw...
I still say there are that many layers of abstraction, maybe more. Individual bits, ganged as words, with logic to treat as such, and ability to store and move along a bus. Then you add the ability to act on data: Control logic, arithmetic units, caches, and interpret data as instructions -- microcode running in the CPU, and processor instructions.Now move up to main memory, storage subsystems, networking, graphics (GPUs!!) etc. etc. etc. That gets you through the hardware. Now add software: BIOS, operating system, drivers, user space code, compilers, interpreters, it just goes on and on. And for every one of these giant groups of something, there are just so many logical groupings and abstractions.
It's like individual cells in a body, forming organelles, forming organs, forming creatures. So many layers of organization. Amazing beauty.
But always at the bottom of the pile, there is a switch.
It sounds like it would be a fascinating system to play with.
I imagine a FPGA-based Alto would be straightforward since there's not a whole lot of hardware. The tricky part is the Alto is very tied to the hardware, so you'd also need to simulate the low-level display hardware, the disk interface, and so forth. There's no real abstraction layer. For instance, the microcode processes each word as it is read from disk, so the disk drive timing is important.
What era computer will we not be able do this anymore ? For example if you have a multilayer PCB with damages it is very hard to fix. Also components become so small it is hard to physically exchange them. Will all newer than round 1987 hardware become nonworking museum pieces in a few years ?
Cool story that ultimately doesn't go anywhere, bummer.