Some questions about multitasking and VM86
Posted: Sun Feb 17, 2008 11:57 am
Hello!
I'm near to start coding my software multitasking code.
For the scheduler I'll use the simple Round-robin algorithm, and in each Timer call (10ms), I'll save the actual registers and I'll load the registers from next task. (no tss)
But I think I have a problem.
AFAIK VM86 mode runs always in ring 3, so if I set up a V86 monitor that will execute the Vesa mode-switching code, how do I switch to different rings task with software multitasking?
To set a ring 3 task, Will I need a TSS per task?
Also, does anyone knows what happened to SANiK and its idea to convert 16 to 32 bits code on the fly? (http://www.osdev.org/phpBB2/viewtopic.php?t=10321 )
Thanks,
Gonzalo
I'm near to start coding my software multitasking code.
For the scheduler I'll use the simple Round-robin algorithm, and in each Timer call (10ms), I'll save the actual registers and I'll load the registers from next task. (no tss)
But I think I have a problem.
AFAIK VM86 mode runs always in ring 3, so if I set up a V86 monitor that will execute the Vesa mode-switching code, how do I switch to different rings task with software multitasking?
To set a ring 3 task, Will I need a TSS per task?
Also, does anyone knows what happened to SANiK and its idea to convert 16 to 32 bits code on the fly? (http://www.osdev.org/phpBB2/viewtopic.php?t=10321 )
Thanks,
Gonzalo