Recentemente mi sono chiesto questa domanda. Perché le immagini PE devono essere eseguibili in MS-DOS? Ho letto sull'argomento e la maggior parte delle risposte che ho visto lo spiegano semplicemente con la compatibilità. Ma cosa significa in realtà questa compatibilità e quali obiettivi?
Se si intendeva consentire a un singolo file eseguibile sia su DOS che su Windows - qual era il problema di includere invece due eseguibili per ciascun sistema operativo?
Alcune delle risposte che ho letto spiegandole con la compatibilità affermano che se i file ".exe" erano puramente formattati nel formato COFF con la firma PE ciò avrebbe comportato un arresto anomalo nel sistema quando eseguito su DOS. Ma mi chiedevo se fosse effettivamente vero. Il controllo MS-DOS per "MZ" non era la firma iniziale e, in caso contrario, sarebbe stato troppo costoso includere tale controllo e forse un altro per stampare un messaggio simile allo stub DOS se l'immagine iniziava con "PE" ( e quindi era un eseguibile PE invece?)