strangest systems I've sent email from

Swift Griggs swiftgriggs at
Tue May 24 16:32:14 CDT 2016

On Tue, 24 May 2016, Fred Cisin wrote:
> (OB_Picky:  Due to the overlap of segment and offset, on machines that had 21
> address bits, real mode actually had a maximum of 1114096 (10FFF0h) bytes,
> instead of 1048576 (100000h).

This was always the biggest pustule on the facade of x86 to me. Gate A20 
and other chicanery was nasty business. It always struck me as a hardware 
hack to work around earlier bad design. Sure, you can eschew segmentation 
and try to use multiple instructions to delivery some flat addressing, and 
then your code was snail-slow. Real mode in 16 bit on x86 was/is some 
fairly vulgar stuff due to segmentation (hate hate hate). Then it was made 
"all better now" by protected mode and segment descriptors later *pat 
pat*. Yeah. Ugh. Pleah. Ick.

All that fun sent me running into the arms of the M68k and it's git, and 
later MIPS (queue hallelujah chrous from the clouds). I'm not a MIPS god 
(we have a some here), but much love and respect to the architecture 
nonetheless. I know enough to know "that's the good stuff". Nowadays I 
wonder, since I'm using flat memory on the Unix boxes I code in (now 
pretty much just in C, I haven't done ASM in a long while), what kind of 
masochist maintains the SLAB/SLUB allocators for x86 Unix variants these 
days. I want to buy them a six pack, pat them on the back, and say "you're 
a braver man than, I."


More information about the cctalk mailing list