tech-kern archive

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

Re: [ANN] Lunatik -- NetBSD kernel scripting with Lua (GSoC project results)



On Tue, Oct 5, 2010 at 3:24 PM, Lourival Vieira Neto
<lourival.neto%gmail.com@localhost> wrote:
> Hi folks,
>
> I'm glad to announce the results of my GSoC project this year [1].
> We've created the support for scripting the NetBSD kernel with Lua,
> which we called Lunatik and it is composed by a port of the Lua
> interpreter to the kernel, a kernel programming interface for
> extending subsystems and a user-space interface for loading user
> scripts into the kernel. You can see more details on [2]. I am
> currently working on the improvement of its implementation, on the
> documentation and on the integration between Lunatik and other
> subsystems, such as npf(9), to provide a real usage scenario.
>
> I'd like to take this space also to publicly thank Marc Balmer, for
> his kind support; prof. Roberto Ierusalimschy, for his comprehension
> and support; and NetBSD developers for their prompt help.
>
> [1] 
> http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2010/netbsd/t127230760748
> [2] http://netbsd-soc.sourceforge.net/projects/luakern/
>
> Cheers,
> --
> Lourival Vieira Neto
>
>

I eagerly waited to see the results of this project all summer, I did
peruse the code as soon as you put it up on the google code hosting
site.

My brief notes (from memory):

I didn't see any bindings, maybe there were some, but if I missed them
there can't be very many, Lua in the kernel is fairly useless unless
you can call into the public kernel api.

I didn't like the fact that the only option for loading a script into
the kernel was to load the script source. I would make loading
pre-compiled scripts the preferential method. In fact, I would
probably tear eval out of the kernel lua implementation and only
support loading of precompiled byte-code into the kernel.

I hope you continue working on this, I see potential and at some point
I would like to evaluate this for inclusion in DragonFly BSD.

Best,
Sam


Home | Main Index | Thread Index | Old Index