程序由 OS 或 IDE 执行?
A program is executed by the OS or the IDE ?
例如:
Visual Studio 2013(F5) 执行编译后的.c程序。 VS是否参与执行程序? .c程序运行是否在Visual Studio程序获取的内存中?或者 OS 会分配不同的内存部分。如果是这样,执行时VS不在画面中!
“.c”文件在 Windows 上编译为 PE 可执行文件。这些是具有典型“.exe”文件扩展名的常用程序。
当您在 Visual Studio 中按 F5 时,它会使用 WinAPI(例如 CreateProcess
)启动此可执行文件。这些 WinAPI 调用进入 OS,它创建了一个具有自己的虚拟地址 space 的新进程。 VS 不为可执行文件分配内存。
VS 将在启动程序之前附加为调试器。所以在执行的时候不是"out of the picture",因为在程序运行的时候还是会影响到
例如: Visual Studio 2013(F5) 执行编译后的.c程序。 VS是否参与执行程序? .c程序运行是否在Visual Studio程序获取的内存中?或者 OS 会分配不同的内存部分。如果是这样,执行时VS不在画面中!
“.c”文件在 Windows 上编译为 PE 可执行文件。这些是具有典型“.exe”文件扩展名的常用程序。
当您在 Visual Studio 中按 F5 时,它会使用 WinAPI(例如 CreateProcess
)启动此可执行文件。这些 WinAPI 调用进入 OS,它创建了一个具有自己的虚拟地址 space 的新进程。 VS 不为可执行文件分配内存。
VS 将在启动程序之前附加为调试器。所以在执行的时候不是"out of the picture",因为在程序运行的时候还是会影响到