User space processes are children of init, which is started by the kernel upon boot. They interface with the kernel by means of system calls, file I/O, ioctls, and other mechanisms. The processes are managed by the process scheduler. There activities are fenced by a number of protection mechanisms offered in the system calls.
^^ About a year of a computer science degreee compressed into a paragraph
Unless, are you referring to things like spidev, or uinput -- User space interfaces for kernel subsystems? In this case, the magic is mostly just in exposing the right things in /dev and /sys, for direct manipulation via file descriptor, from userspace.
Last edited by jhwilliams; 12-26-2011 at 11:03 AM.