Returning after a long hiatus

David elfspice@eml.cc
Thu, 24 Oct 2002 11:20:21 +1000


Howdy folks, I used to be on this list - well maybe not precisely this li=
st=20
but tunes in general (David Vennik is my name) I am now completing a=20
multimedia course and doing my major project in PHP/MySQL, and in the mid=
st=20
of designing the architecture of my project I have finally worked out the=
=20
basic concept of a tunes-type OS that I intend to build at some point.=20

Basically it doesn't much matter what kernel/non-kernel core is used, but=
 the=20
main thing is to create two main system elements, the bootstrap core that=
=20
brings the system up (after the kernel is loaded) and a persistent storag=
e=20
system which manages the loading of data into memory and back to disk, us=
ing=20
a journalling system that uses ~10% of the volume of the disks that are=20
attached to the OS. Rather than the usual type of filesystem, the filesys=
tem=20
implements a systemwide namespace, similar to the unix filesystem, but ra=
ther=20
than stopping at the level of the 'file' object, the system stores the da=
ta=20
definitions as source of the language the system is implemented in. Oh, a=
nd=20
an optimising bytecode compiler. The various different types of relations=
hips=20
between data elements is also stored in objects, in an aspect-oriented wa=
y.=20
All source code for everything is always available, and always available =
for=20
other programs to modify and all changes flag the system to recompile the=
 new=20
module immediately so it is run as bytecode only.

This is completely open and customisable, a base from which a self-optimi=
sing=20
mutating, customisable system could be built. The main thing is to find a=
=20
good kernel base, preferably one which can easily be abstracted so other=20
hardware platforms can be used. The compiler would have to be written in =
the=20
native language of the system so that if optimisation heuristics or other=
=20
methods were applied to it it could immediately be updated.

For complex applications which already possess an excellent binary execut=
able=20
format, a wrapper system could be written to incorporate binary modules i=
nto=20
the system, for example putting gecko into the system... Or GTK - or=20
whatever. Then a glade-like system could be used to create an application=
,=20
where for example an illustration document module creates a graphical pan=
e=20
within the application, which has methods to invoke saving and deeper acc=
ess=20
to the data through functions like creating object hierarchies and attach=
ing=20
scripts (a la flash).=20

The main idea is to create an OS where a person can plug things together =
to=20
suit their needs, and create interfaces to script everything.=20

Doing all this web scripting a lot of ideas about how to improve the=20
programming experience have occurred to me, function/class tree browsers,=
=20
visual represational systems (there are some simple applications that bei=
ng=20
able to visually create an information process can be useful - for exampl=
e in=20
batch processing of data or whatever.

When I get time I will begin creating a design prototype and post up some=
=20
specs.

There is so much software already out there it would be great if we could=
 just=20
rip it all apart and put it together in a more streamlined and intelligen=
t=20
manner, I would like to see an OS that facilitates the transition from th=
e=20
current multi-platform malaise into a situation where the system can be m=
ade=20
to transport itself by using a system description file that allows the=20
recomposition of the compiler's output and change the binary modules that=
 are=20
neccessary for the different hardware.

Dave