第一点
linux和windows系统的格式不同,格式就是协议,就是在固定位置有意义的数据。linux下的可执行程序是 elf ,可以使用 readelf 命令查看 elf 文件头。
而windows下的可执行程序是PE格式,它是一种可移植的可执行文件。
还有一点
因为Linux系统和Windows系统的API不同,这个API是指操作系统的API。Linux中的API被称为系统调用,是通过 int0x80 这个软中断实现的。而Windows中的API时放在动态链接库文件中的,也就是Windows开发人员所说的 DLL ,这是一个库,里面包含代码和数据。Linux中的可执行程序获得系统资源的方法和Windows不一样。