tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

lua(4), non-invasive and invasive parts

A good part of Lua in the kernel is non-invasive, i.e. it consists of software 
that you can use or not.  These parts, namely the lua(4) device driver, the Lua 
kernel modules that provide Lua bindings to the kernel, and the luactl(8) 
utility, are non-critical since they are "stand-alone" without needing any 
other sources to be changed.

There are, however, more invasive parts:  When an existing piece of software 
want's to make use of Lua, these parts need to be made Lua-aware.  This means 
changing, or rather extending, the source code.  Think e.g. about the tty line 
disciplines which could be modified to allow for line disciplines to be written 
in Lua.  The line disciplines code needs to create a Lua state for that, Lua 
code has to be loaded, and finally the tty line disciplines "subsystem" must 
call into the Lua code.

For such more invasive changes, I foresee to use a kernel option, 'options LUA' 
which will compile such code only when the option is enabled.  It will be 
commented out by default, besides maybe the ALL kernels.

Home | Main Index | Thread Index | Old Index