
thanks

Two GDTs ?? ?? kinda weird idea ... You can simply have DPL3 segments and DPL0 segments in the _Same_ GDT and restrict the limit of those DPL3 segments.Poseidon wrote: I've now two GDTs, one for my kernel and one for userland.
I think you mean you've got 2 GDT entries (or 2 seperate segments), not 2 seperate GDTsPoseidon wrote: I've now two GDTs, one for my kernel and one for userland. That one for userland has a limit with stops at the end of the userspace. It crashes fine when it tries to call to the kernel ;D
Code: Select all
user_func()
{
my_kernel_fn();
}
my_kernel_fn()
{
KERNEL_ENTRY();
..blah..
KERNEL_EXIT();
}
No.Poseidon wrote: i already have a system call system, using an interrupt. I will implement now with extra entries, but can't a process just change its segmentpointers and jump in my kernel and mess the system up?