All 3 cores are accessible to software like games. When starting a new thread the software spawning it (i.E. a game) is able to decide on what core it should be pinned to (but pinning is not a must, it's just a good way to maximise performance).
On one core there's also background stuff running. Not 100% sure right now but IIRC it was core two (cores are numbered from 0 to 2). This background stuff is OS stuff as you expected through, so with clever pinning of tasks one can also maximise OS / hardware API performance here (and yes, I'm taling about also pinning tasks to core two, so they run on the same core as the OS background tasks / system functions)...
Aroma plugins on the other side don't follow this background core sheme IIRC. They can spawn/pin threads on any core they want as they have the same rights as the currently running software. Still didn't see any performance issues in demaning games or stuff caused by this.