Debugging 当一个人开始调试一个程序时,该程序是否从主存中换出(进入辅助内存)?

Debugging 当一个人开始调试一个程序时,该程序是否从主存中换出(进入辅助内存)?,debugging,memory,operating-system,virtual-memory,Debugging,Memory,Operating System,Virtual Memory,我的教科书提出如下主张: 如果用户怀疑程序中存在错误,他或她可以通过暂停程序的执行、检查和修改程序或数据以及恢复执行来调试程序 在此上下文中,suspend意味着从主内存交换到辅助内存 例如,当我调试一个C/Python/Java程序时,该程序当时是否从主存中调出?还是我误解了作者所说的话?调试并不涉及交换程序。调试中的“挂起”通常是由于强制将断点指令放入流中引起的。这将触发操作系统的断点故障处理程序。调试器和应用程序之间的实际连接取决于操作系统 如果程序被交换到辅助存储器,则无法检查其内存使用

我的教科书提出如下主张:

如果用户怀疑程序中存在错误,他或她可以通过暂停程序的执行、检查和修改程序或数据以及恢复执行来调试程序

在此上下文中,suspend意味着从主内存交换到辅助内存


例如,当我调试一个C/Python/Java程序时,该程序当时是否从主存中调出?还是我误解了作者所说的话?

调试并不涉及交换程序。调试中的“挂起”通常是由于强制将断点指令放入流中引起的。这将触发操作系统的断点故障处理程序。调试器和应用程序之间的实际连接取决于操作系统


如果程序被交换到辅助存储器,则无法检查其内存使用情况。

调试不涉及交换程序。调试中的“挂起”通常是由于强制将断点指令放入流中引起的。这将触发操作系统的断点故障处理程序。调试器和应用程序之间的实际连接取决于操作系统


如果程序被交换到辅助存储器,将无法检查其内存使用情况。

当您调试C程序时,它仍在CPU中一步一步地执行,您可以看到发生了什么,因此它在
主存中
@TonyTannous感谢您的响应。所以教科书的说法是不正确的?我认为他们的意思是你应该用眼睛调试它。在文本编辑器中打开它并开始检查程序。不是在调试器中。也许我错了。。。等待更多响应。@TonyTannous Ok。谢谢你的帮助。:)“挂起意味着从主内存交换到辅助内存”——这不是“挂起”的常规定义。一个进程可以挂起,并且仍然是内存驻留。当你调试一个C程序时,它仍然在CPU中一步一步地执行,你可以看到正在发生什么,因此它在
主存中
@TonyTannous感谢你的响应。所以教科书的说法是不正确的?我认为他们的意思是你应该用眼睛调试它。在文本编辑器中打开它并开始检查程序。不是在调试器中。也许我错了。。。等待更多响应。@TonyTannous Ok。谢谢你的帮助。:)“挂起意味着从主内存交换到辅助内存”——这不是“挂起”的常规定义。进程可以挂起,但仍然驻留在内存中。