Wave Fronts

http://blogs.sun.com/microwaves/date/20060714 Friday July 14, 2006

Immortal Source Code

The ISA of a VM (i.e. it's bytecode set and the semantic definition of all the bytecodes) can change and hypothetically all existing higher level ("source") code can be moved forward to the new ISA/VM combination with a well understood compiler bootstrapping process. So not only does a VM insulate source code collections from necessary hardware and low level ISA evolution, it supports evolution of the higher level ISA of the VM itself. An example of this that has been going on for years is concurrent evolution of the Java virtual machine and maintenance of backward compatibilty, providing "immortal source code." And for where the GPL is involved one gets "immortal open source code." I wonder if Forest (Earl) Gilmore, Don Parce, and Robert (Bob) Nichols shared a vision of this possible future when they launched Business Application Systems in 1978 to create BASPort? (BASPort was a portable operating system: Think Java on top of an extremely simple OS kernel and *everything* but the kernel itself and the virtual machine being in the portable language.)

http://blogs.sun.com/microwaves/date/20060618 Sunday June 18, 2006

Intelligent Multiboot Support for Windows, Linux and Unix

Multiboot selection should be possible with a single command line or GUI, trivial to accomplish locally or remotely, and generally available.

There ought to be a way to trivially utter to my computer:
Reboot with a boot menu choice like "3:5" where "3" means "first menu choice three" and "5" means "first menu choice three's fifth menu choice."

Why? I'm sitting here in the living room with a Powerbook, and my Sun Ultra-20 is sitting nine feet below me running Solaris 10. Should I have to get up, hike to the basement, do an init 6, and step through the above choices manually just so I can run a command that is only available to me through another operating environment choice?

Surely the keepers of Grub and its Windows multiboot equivalent can agree to about three bits of shared state to support this feature? Guys: how about lunch in Portland for a nice chat and agreement that a command like "init -- 3:5 6" will just do the right thing? Of course a remote desktop would need an icon/dialog set that you click a few times (no keyboarding, please). Do this and the world will thank you. And you can spend the lunch just getting to know each other!

This would serve well until virtualization becomes so easy and available that something like the following can be uttered:
as

for example:

javac | `as ddeal/FC4 tac` | less

http://blogs.sun.com/microwaves/date/20060615 Thursday June 15, 2006

Belated OpenSolaris Birthday Celebration

OpenSolaris is the next OE on my list to learn about.

I couldn't make Mozilla speak IRC at the office and couldn't take the time to go find something that worked. So I missed the celebration of the first birthday of OpenSolaris. Here's a progression cum evolutionary tribute.

This is an incomplete and not quite correctly ordered list of the operating environments I've spent a reasonable amount of time using or that I had a hand in writing:
Univac Exec VIII
Univac APL
Unnamed OE (I wrote this on the bare metal of a Data General Nova 1200 while we [Univ. of Alabama Huntsville Isolation Lab] were waiting for our Nova 2+software order to be filled. It used a decent quality 300 baud cassette tape drive of some sort and a very nice 300 baud thermal paper terminal)
Data General RTOS
Data General RDOS
Data General timeshare doc system
Data General AOS
Data General Easy (DG too stupid to ship this)
Texas Instruments DX10
Business Application Systems BASPort
(Wrote part of one VM, one native assembler, one native linker, a native debugger, and various other bits and pieces long forgotten. Other members of the BASPort team included Steve Goldman, Bob Leivian, Don Parce, George Franzen, and my name memory just collapsed. Forest Earl Gilmore managed us [RIP, dear friend].)
SWTP 6800 MIKBUG
SWTP 6809 UNIFLEX (+ Bob Uiterwyk's Basic: Bill's Altair Basic blew chunks)
MSDOS
DRDOS
Unnamed OEs inside Network Products BabyMux, BabyNet and Commponent products (I wrote these with Steve Schleimer and others)
Version 7
System III
Opus Unix
BSD
SVR4
Mach
Linux
Solaris

And now, at long last, OpenSolaris is well and truly in the world. Some times you have to be patient before you end up with something really, really good designed for the long haul. I'm looking forward to running OpenSolaris on an Ultra-20 in my basement as soon as I can. But the download's going to have to get easier.

So:
Happy birthday to you,
Happy birthday to you,
Happy birthday OpenSolaris,
Happy birthday to you,
And many morrrrrrrrrrrre!
21


Valid HTML! Valid CSS!

This is a personal weblog, I do not speak for my employer.