Windows下面有PE文件格式,和之前的Dos下的格式不同,Unix下面ELF文件格式。我很疑惑的是,这些文件格式是如何产生的,比如PE文件格式,是由微软自己制定的么?如果是微软制定的,它如何转换为CPU可以执行的一条条的指令?比较傻的问题,但是的确困惑我很久了,尽情拍砖!

解决方案 »

  1.   

    当然是由OS的开发商来决定啊,PE格式在制定的时候就考虑了各种各样的CPU执行的情况。就是说PE是为支持的CPU所制定的格式。
    去看看PE格式文档就会很清楚了,给你个链接:
    http://blog.csdn.net/benny5609/archive/2007/09/17/1787852.aspx
      

  2.   

    操作系统windows的与Linux的就不相同
      

  3.   

    既然是操作系统负责解释的,那么操作系统是如何将这种文件转换为CPU可以执行的一条条的指令?同是IA32架构下的Windows系统和Linux系统,也就是说在同一个CPU上执行,那么PE文件和ELF文件如何被翻译解释为机器可以执行的文件?