Building robust systems Some possible approaches Polling device drivers Interrupt mitigation Scheduling of CPU between kernel and user processes.