I am writing a kernel (using qemu to simulate) for x86 as a school project, and I had a strange problem. Despite the fact that I set the interrupt flag in the eflags register, I do not get any synchronization interruptions (I checked with the qemu data register command and I see eflag = 0x292, which means it is set).
To be precise, when I run the spin test (while (1); program) in user mode, I get one clock interrupt, but after that it stops, qemu doesn't seem to simulate anymore! did this happen to someone else? Is there any other mechanism that can affect interrupts? Does anyone have a key?
Shay.
source share