I wish I could claim to have written this, but I can’t. It’s genius and I couldn’t help myself from ripping it off to bulk up the content on my content deprived blog.
For your enjoyment, The Story of Mini and Micro. Safe for work, the people who care won’t get it anyway…
Micro was a real-time operator and dedicated multi-user. His broadband protocol made it easy for him to interface with numerous input/output devices, even if it meant time-sharing.
One evening he arrived home just as the Sun was crashing, and had parked his Motorola 68040 in the main drive (he had missed the 5100 bus that morning), when he noticed an elegant piece of liveware admiring the daisy wheels in his garden. He thought to himself, “She looks user-friendly. I’ll see if she’d like an update tonight.”
Mini was her name, and she was delightfully engineered with eyes like COBOL and a PRIME mainframe architecture that set Micro’s peripherals networking all over the place.
He browsed over to her casually, admiring the power of her twin, 32-bit floating point processors and enquired “How are you, Honeywell?” “Yes, I am well,” she responded, batting her optical fibers engagingly and smoothing her console over her curvilinear functions.
Micro settled for a straight-line approximation. “I’m stand-alone tonight,” he said, “How about computing a vector to my base address? I’ll output a byte to eat, and maybe we could get offset later on.”
Mini ran a priority process for 2.6 milliseconds then transmitted 8 k, “I’ve been dumped myself recently, and a new page is just what I need to refresh my disks. I’ll park my machine cycle in your background and meet you inside.” She walked off, leaving Micro admiring her solenoids and thinking, “Wow, what a global variable, I wonder if she’d like my firmware?”
They sat down at the process table to top of form feed of fiche and chips and a bucket of Baudot. Mini was in conversational mode and expanded on ambiguous arguments while micro gave the occasional acknowledgements, although, in reality, he was analyzing the shortest and least critical path to her entry point. He finally settled on the old would you like to see my benchmark routine, but Mini was again one step ahead.
Suddenly she was up and stripping off her parity bits to reveal the full functionality of her operating system software. “Let’s get BASIC, you RAM,” she said. Micro was loaded by this his hardware was in danger of overflowing its output buffer, a hang-up that Micro had consulted his analyst about. “Core,” was all he could say, as she prepared to log him off.
Micro soon recovered, however, when Mini went down on the DEC and opened her divide files to reveal her data set ready. He accessed his fully packed root device and was just about to start pushing into her CPU stack, when she attempted an escape sequence.
“No, no!” she cried, “You’re not shielded!”
“Reset, Baby,” he replied, “I’ve been debugged.”
“But I haven’t got my current loop enabled, and I can’t support child processes,” she protested.
“Don’t run away,” he said, “I’ll generate an interrupt.”
“No, that’s too error prone, and I can’t abort because of my design philosophy.”
Micro was locked in by this stage, though, and could not be turned off. But Mini soon stopped his thrashing by introducing a voltage spike into his main supply, whereupon he fell over with a head crash and went to sleep.
“Computers!” she thought as she recompiled herself, “All they ever think of is hex!”
I read it here first (and he doesn’t seem to know who wrote it either): http://geekswithblogs.net/dtotzke/archive/2006/02/15/69618.aspx