This was originally a way for closed source emulator developers to allow other developers to handle emulation of the different aspects of the console, while the closed source core handles the emulation of the main CPU of the console.
Nintendo 64 emulators use a plugin system.