this is my first post, I hope this is the right forum section for my question.
I'm developing a kernel, I didn't use FPU in my kernel, until yesterday.
So I try to initialize the FPU with this code and it seems to work because I'm able to execute floating point operation:
Code: Select all
FUNCTION FpuInit
push eax
mov eax, cr0
and eax, 0x080000011
or eax, 0x050022
mov cr0, eax
clts
fninit
pop eax
ENDFUNC FpuInit
I use a far jump to TSS selector to schedule a task and it works pretty good until yesterday
I don't receive any exception or errors, context switching simply doesn't work.
Could someone help me or give me a suggestion?
Thank you.
Daniele