Extending Erlang

Peter Andersson peppe@REDACTED
Thu Feb 20 17:12:56 CET 2003

About Erlang linked-in drivers and OSE...

Ulf Wiger wrote:
> In OSE, the Erlang VM (not yet released) supports native OSE
> signals, and a linked-in driver becomes an OSE process
> talking to Erlang using OSE signals.

It's true that the VM supports native OSE signals. However, it's port
programs that will execute as separate OSE processes (and communicate
with the VM by means of OSE signals rather than pipes). Linked-in
drivers for Erlang on OSE, though, are linked-in in the traditional
sense. I.e. a driver is implemented by a set of entry points that the
runtime system calls. Driver code runs on the same OSE process as the VM
and no OSE signalling takes place in communication between VM and

Drivers may screw up the Erlang VM just as badly in OSE as in any other
OS. I'm sure you can appreciate the consistency! :-)
> It is possible, I believe, to configure the system so that
> there is memory protection between the VM and the "linked-in
> driver". In this case, the OSE process/driver would be
> pretty much exactly like any other OSE process. The
> difference becomes that messages are passed with copy
> semantics instead of pointer passing.

True for port programs, not for linked-in drivers.

More information about the erlang-questions mailing list