Re: A suggestion to all developers

Matty (matt@blitzen.canberra.edu.au)
Thu, 9 May 1996 15:15:04 +1000 (EST)


On Sun, 5 May 1996, Eyal Lebedinsky wrote:

> [BTW, I do use modules+kerneld for everything and am very happy with it]

Me too.. My kernel is now <300K and everything still works as normal.
Say, did you ever have to use that version of the modules package where
you had to hack some of the .c files to get it to compile?
*reminisces*

> I think that this will be useful in shortening the iterative nature of build
> problems that are so common when global structural changes are happening.

Well I don't set the global version symbol and redo my modules every new
kernel, but that was due to some problems I had with an older module not
working properly on a new kernel even though the version info was
correct..

Modules are also useful - or may I even say "necessary" - for machines
tight on RAM - such as mine, and one I run on campus
(rudolf.canberra.edu.au) which have only 8Mb and don't need extra crap in
memory (even if it is swapped out)

Another trick I use is the dynamic-virtual-console thingy where I run only
one getty, and another one can be popped up for a new login by hitting
Alt-Up-Arrow (or whatever key I set Spawn_Console to in my keymap)
All it means is running cspawnd to execute getty on the next available
terminal and clean up unused terminals ready for next use.
cspawnd is about the same size as a getty process, so considering that I
now run just the one getty and cspawnd instead of 8 or so getty's, that's
a saving of 6x700K or so.. very handy. (I'd run X, which would make
this redundant, but due to memory requirements and other irritations like
video card support and a dodgy binutils...:(

I'm all for taking miscellaneous crap out of the kernel and modularising
the whole thing.. a small kernel means a fast kernel (or am I talking out
of my arse as usual?) - anyway surely there must be benefits in a system
that is tuned perfectly to the hardware it is running on?

Take QNX, for instance - 8K of code and support for all devices &
filesystems are modularized options [so I've heard - I'll admit I've never
used QNX so I may be talking out of my arse again] - perfect for the
real-time/embedded systems it was designed for and I think it'd be good if
Linux could do this as well. It'll keep the idea alive that the system
you use at work is the same as you use at home...

(note: I know linux is capable of it, but for people like myself who
aren't comfortable playing with kernel sources to actually _do_ the
necessary modifications...)

Hopefully this was some food for thought, and not just useless ramblings
of an idiot who woke up in -verbose mode)

-- Matt