|
From: Jeremy F. <je...@go...> - 2004-12-07 17:18:45
|
On Fri, 2004-12-03 at 18:46 -0800, Roland McGrath wrote: > > That could be tricky. It's generally pretty hard to do that kind switch > > between real and virtual CPU, because the virtual CPU has a lot more > > state than the real one. > > I don't think that matters, though I'm also not quite sure what it means. > You don't have to handle "going real" in a general way. Virtual->real is easy, since you just discard all the shadow state. With real->virtual you need to make up a pile of shadow state. I guess You'd just assume that all registers are fully defined, and all memory pointed to is fully defined. This split kernel/user thing is what Jeff did with UML under Valgrind, and it was relatively straightforward since the break was pretty clearly present in the UML process architecture. When you're at a lower abstraction level, it clearly gets more complex. J |