Some processors have two sets of registers, one for integer operations and one for floating point (fp) operations. The registers used in integer operations are always saved and restored during every context switch whether it is preemptive multithreading or non-preemptive multithreading(since they are also used for calculations for instructions, such as memory address calculation, branch target calculation etc.) However, for most machines it is not very clear what will happen to the floating point registers.
As a programmer, for which architectures do you need to save and restore floating point registers? state your reasons.
e) Machine uses non-preemptive multithreading and you know that the kernel is designed so that it also supports saving of floating point registers. However, there is a unified stack for integer and floating point operations.
I only mentioned (e) part as I only want explanation of (e) part