The contents of this page must be revised to reflect the current state of MINIX3.
This is a stub for the System Event Framework (SEF), a component of the system library that deals with system events in a centralized and convenient way.
As of now, the framework has 2 entry points declared in <minix/sef.h> and defined in lib/syslib/sef.c:
_PROTOTYPE( void sef_startup, (void) ); _PROTOTYPE( int sef_receive, (endpoint_t src, message *m_ptr) );
Every system service (server or device driver) must call sef_startup() at startup time to handle initialization and sef_receive() when receiving a message. The developer can register callbacks to provide handlers for each particular type of event. When no callback is registered for one particular event, the default behavior is assumed (read the default callback is called). The developer can also reuse some predefined callback implementations provided by SEF for each particular event type.
Ideally, all the cross-cutting concerns should be integrated into SEF. The SEF framework is, however, still WIP. So far, the following event types have been integrated into SEF:
Questions / Comments / Interested in getting involved? Let us know.