On Tue, Oct 9, 2018, at 4:08 AM, Digby R.S. Tarvin wrote:
> I thought there might have been a chance of an early attempt to target the 
> x86 because of its ubiquity and low cost - which could be useful for a 
> networked operating system. And those were 16 bit address constrained in the 
> early days. But its probably not an architecture you would choose to work 
> with if you had a choice.. 68K is what I would have gone for..

Fascinating thread, but I think you're off by a decade with the 16-bit address 
bus comment, unless you're not actually talking about Plan 9.  The 8086 and 
8088 were introduced with 20-bit addressing in 1978 and 1979 respectively.  The 
IBM PC, launched in 1982, had its ROM at the top of that 1MByte space, so it 
couldn't have been constrained in that way.  By the end of the 80s, all my 
schoolmates had 68k-powered computers from Commodore and Atari, showing 
hardware with a 24-bit address space was very much affordable and ubiquitous at 
the time Plan 9 development started.  Almost all of them had 512KB at the time. 
 A few flashy gits had 1MB machines. :)

I still wish I'd kept the better of the Atari STs which made their way down to 
me -- a "1040 STE" -- 1MB with a better keyboard and ROM than the earlier 
"STFM" models.  I remember wanting to try to run Plan 9 on it.  Let's estimate 
how tight it would be...

I think it would be terrible, because I got frustrated enough trying to run a 
4e CPU server with graphics on a 2GB x86.  I kept running out of image memory!  
The trouble was the draw device in 4th edition stores images in the same "image 
memory" the kernel loads programs into, and the 386 CPU kernel 'only' allocates 
64MB of that. :)  

1 bit per pixel would obviously improve matters by a factor of 16 compared to 
my setup, and 640x400 (Atari ST high resolution) would be another 5 times 
smaller than my screen.  Putting these numbers together with my experience, 
you'd have to be careful to use images sparingly on a machine with 800KB free 
RAM after the kernel is loaded.  That's better than I thought, probably 
achievable on that Atari I had, but it couldn't be used as intensively as I 
used Plan 9 back then.  

How could it be used?  I think it would be a good idea to push the draw device 
back to user space and make very sure to have it check for failing malloc!  I 
certainly wouldn't want a terminal with a filesystem and graphics all on a 
single 1MByte 64000-powered computer, because a filesystem on a terminal runs 
in user space, and thus requires some free memory to run the programs to shut 
it down.  Actually, Plan 9's separation of terminal from filesystem seems quite 
the obvious choice when I look at it like this. :)  

Reply via email to