【发布时间】:2010-11-15 07:13:26
【问题描述】:
我想在这里收集在 Windows、Linux 和 OSX 上运行可执行文件时会发生什么。特别想了解一下具体的操作顺序:我的猜测是内核加载可执行文件格式(PE、ELF或Mach-O)(但我忽略了ELF的各个部分( Executable and Linkable Format)及其含义),然后你有解析引用的动态链接器,然后运行可执行文件的__init部分,然后是main,然后是__fini,然后程序完成,但我确信它非常粗糙,而且可能是错误的。
编辑:问题现在是 CW。我正在为 linux 做准备。如果有人想为 Win 和 OSX 做同样的事情,那就太好了。
【问题讨论】:
-
只有我一个人,还是这个问题的范围太广了?
-
我觉得不太宽泛,但应该是社区wiki
-
如果我没有得到足够的反馈,我想给它一个赏金。如果是CW,我将无法做到。
-
我同意它可能很广泛。事实是,我想为系统之间的比较奠定基础。我接受建议。