ram manager

From: Dumas Patrice (dumas@centre-cired.fr)
Date: Wed Nov 15 2000 - 19:55:23 CET

I have had an idea for 4Mo machines, so that it is not mandatory to
clone mulinux on these computers.

Basically, the idea is to have root uncompressed on a floppy like what
is done for installation on such computers, and load in ramdisk only
some files, but not the entire /usr (or add-ons, but...).

When there is a need of a file that is not in ram, the user is prompted
to put the right floppy and the file is loaded in ram. I have no clear
idea on how to implement such a system, nor wether it would be too slow
or not.
In memory, there would be
kernel+libc5+/tmp+modules+some frequently used files of the root floppy
(ash, sed, grep, echo, cd, ls...)+whatever the user use.
?+ 432684 + 300000 + ? + 55704 + not a lot. I think it could be good,
something like 2Mo. As every programm used then would take twice his
place in ram (one time on the ramdisk, one time in ram), it would be not
too hard to compute the size of the ramdisk, with some extra space for
datas of progs. If 1Mo is left for datas, there could be 500k of running
programs at one time, not so much, but sufficient, no ?

But there are some technical issues left :
1) how to know that a file wasn't found, then launch a prog that loads
it in the ramdisk and the execution of the first one continue... I think
that a wrapper around ash that detects ash's "file not found" shouldn't
be sufficient, as the programm would be stopped.

Maybe it could be possible to hack the ash code so that when there is a
file not found ash starts another prog that loads the ram disk ? It
would be something like a "disk change feature" for the shell.

2)assuming this step is done, theree should be a program that
    - knows wether the file needed exists anywhere
    - extract it from a floppy and put it in ram.
the first step would necessitate a database of all the files in mulinux
in root disk.
for the second step, I don't know how to do ! Maybe the use of what you
spoke about, Michele, an offset database in the first block(s) of a
floppy, and then a dd to get the right file.

I don't think that it is a real waste of time to load files on ram-disk
on demand : what is done on demand isn't done at boot time.

Is that kind of questions interesting someone ?


To unsubscribe, e-mail: mulinux-unsubscribe@sunsite.auc.dk
For additional commands, e-mail: mulinux-help@sunsite.auc.dk

This archive was generated by hypermail 2.1.6 : Sat Feb 08 2003 - 15:27:16 CET