0

我在这里阅读 pintool 邮件列表中问题的回复。它提到异步信号的传递被延迟到 pintool 中的分析例程结束。我很好奇 Windows 中的哪些异常可以作为异步信号。

4

1 回答 1

4

基本上什么都没有。但那是因为你在错误的词周围有引号。Windows 没有“信号”。

让我澄清一下。你指的是Linux,它和UNIX 一样有一个signal机制。这是真正的操作系统级功能。奇怪的是,这个操作系统特性使它成为了 C 语言(不像目录等更有用的东西)。Windows 不提供 UNIX 信号,因此 Windows 的 C 编译器必须伪造它们。

Windows 确实有异常,特别是结构化异常。这些处理方式完全不同。例如,它们通常由基于堆栈的异常处理程序处理——这对于“异步信号”甚至没有意义。在 Linux 上,信号处理程序往往保持不变,在 Windows 上,异常处理程序可能会在每次函数调用时发生变化。延迟异常可能会将其传递给完全错误的处理程序。

于 2015-04-08T20:41:36.657 回答