What happens when a dwarf and a daemon start dancing by the light of the silvery moon?
Channel: Andrea Ross
Date: 2015-06-16

by Andrew Cagney

The use of DWARF debug information to dynamically project the embedded extension language Lua’s global environment onto the NetBSD kernel’s internal state.

Traditionally, an embedded extension language such as Lua is only provided with limited and controlled access to its host environment. That access being defined ahead-of-time by a set of hand-written or generated C bindings.

In this presentation we will explore an alternative: the use of DWARF debug information and the in-kernel debugger, ddb, to provide scripts running on a Lua interpreter embedded in the NetBSD kernel with simple and unfetted access to the entire kernel state.