[ros-kernel] SEH
KJK::Hyperion
noog at libero.it
Mon Apr 19 02:43:09 CEST 2004
At 01.00 19/04/2004, you wrote:
>Hi, is this article (I just got a hint to) already known?
that approach is very well known. The (known) problems are that 1) you can
only define SEH frames dynamically on x86 (on all other architectures they
are generated statically by the compiler, and they contain information only
available to the compiler, like the size of locals), 2) on most recent
Windows versions even x86 SEH frames must be resident in a section of the
executable for security reasons (it was too easy to abuse effectively of
stack-based handlers), and 3) not being a syntactical construct you miss a
lot of functionality that you have to reimplement yourself, in a non
necessarily efficient way (for example, jumping around the body of the
function must be implemented with setjmp/longjmp, adding a lot of weight to
the virtually overhead-less __try, and the locals that need to be available
in the exception filter and handling blocks must be enclosed in a throwaway
structure)
More information about the Ros-kernel
mailing list