为什么一个操作系统(Windows)的二进制文件不能在另一个操作系统(Linux)中为相同的底层架构运行?
这可能是一个微不足道的问题,但我很难向我的弟弟解释,即使两个操作系统在同一台机器上运行,Windows二进制文件也不会在另一个不同的操作系统(如Linux)中运行。如果二进制文件(操作码)必须相同才能在相同的底层架构中执行(比如英特尔32位),那么Windows和Linux(甚至Ubuntu和RadHat Linux)的二进制文件之间有什么区别?在处理器执行之前,是否在指令级对二进制文件进行运行时修改?我如何用他能理解的非专业人士/简单术语解释。不同的操作系统有不同的功能,需要不同的使用方法。如果其他操作系统的加载程序可用(例如,通过),则可以加载可执行文件,此时,加载变得非常重要。不同的操作系统有不同的加载程序,需要使用不同的加载程序。如果其他操作系统的加载程序可用(例如,通过),则可以加载可执行文件,此时,加载变得非常重要为什么一个操作系统(Windows)的二进制文件不能在另一个操作系统(Linux)中为相同的底层架构运行?,linux,windows,operating-system,executable,Linux,Windows,Operating System,Executable,这可能是一个微不足道的问题,但我很难向我的弟弟解释,即使两个操作系统在同一台机器上运行,Windows二进制文件也不会在另一个不同的操作系统(如Linux)中运行。如果二进制文件(操作码)必须相同才能在相同的底层架构中执行(比如英特尔32位),那么Windows和Linux(甚至Ubuntu和RadHat Linux)的二进制文件之间有什么区别?在处理器执行之前,是否在指令级对二进制文件进行运行时修改?我如何用他能理解的非专业人士/简单术语解释。不同的操作系统有不同的功能,需要不同的使用方法。如