Methods and apparatus for implementing partial and start-over threads in a
kernel of an operating system are disclosed. In a computing system having
at least one CPU, registers for executing threads, and memory, a method
for executing a partial thread includes executing a first thread in the
registers, initiating an interrupt event that signals the activation of
another thread, saving a first portion of registers to a memory location,
wherein a second portion of the registers is unsaved, the first portion
including information associated with the first thread, executing in the
registers, the another thread, and conducting further computing system
operations. Additionally, conducting further computing system operations
can include restoring the saved first portion of registers from the
memory location to the registers and resuming execution of the first
thread. Also, another embodiment incorporates the foregoing method into a
computer device.