1. A router comprising: a processor; a memory addressable by a plurality of addresses; a routing engine software instance executing on the processor, wherein the routing engine software instance comprises a first multitask, interrupt driven, fully preemptive software instance; an interface controller software instance concurrently executing on the processor with the routing engine software instance, wherein the interface controller software instance comprises a second single task, run-to-completion software instance; a first set of exception handlers stored within the memory, wherein the first set of exception handlers processes all interrupts for the respective routing engine software instance executing on the processor; a second set of exception handlers stored at a different starting address within the memory than the first set of exception handlers, wherein the second set of exception handlers processes all interrupts for the interface controller software instance executing on the processor; a hyper scheduler that switches between the first set of exception handlers and the second set of exception handlers when the processor executes the routing engine software instance and the interface controller software instance, wherein the hyper scheduler executes independent from both the routing engine software instance and the interface controller software instance, wherein the processor includes a first instance timer that is configurable to a first rate for the routing engine software instance by which the routing engine software instance executes and a second instance timer configurable to a second rate different from the first rate for the interface controller software instance by which the interface controller software instance executes, and wherein the hyper scheduler concurrently executes the routing engine software instance and the interface controller software instance on the processor at the corresponding first and second rates defined by the respective first and second instance timers.