私はこれらすべてに不慣れで、基本を100%正しく理解したいので、辛抱強く答えてください. 私は機械エンジニアなので、厳しくしないでください。私はいくつかの非常に基本的な低レベルのものについて学んでおり、コンパイラのバックエンドに関連する概念を理解することに興味がありました. C/C++ コンパイラの出力は、おそらくコンピューター アーキテクチャ用に特別に調整されたマシン コードです。これは、Windows と Linux が同じハードウェア (i7 プロセッサなど) で実行されている場合、Windows と Linux で同じであることも意味します。しかし、バイナリ形式の形式には別のレイヤーがあります。つまり、Linux には ELF ( Executable and Linkable Format ) があり、Windows には PE/COFF ( Portable Executable ) があります。
したがって、Linux と Windows のコンパイラには、動作が異なり、バイナリを ELF または PE/COFF 形式で出力するバックエンドがあると思います。
ReactOSは Windows のクローンであり、Windows とある程度のバイナリ互換性があります。
ELF を理解して適切にロードする LOADER を ReactOS に持つことは理論的に可能ですか?
Linux API を ReactOS API にマッピングするソフトウェアのレイヤーが必要であることは理解しています。そのようなマッピング レイヤーが存在する場合、私の質問は理にかなっていますか?