次の例は、_fini() ルーチンを示しています。
int _fini(void) { int error; error = mod_remove(&modlinkage); if (error != 0) { return (error); } /* * Cleanup resources allocated in _init() */ ddi_soft_state_fini(&xxstatep); return (0); }
同様に、ドライバは _fini() で、_init() で割り当てられたリソースをすべて解放します。ドライバは、システムモジュールリストから自身を削除する必要があります。